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

; 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_t4 = external constant ptr, align 8
@w2c_hermes_t3 = external constant ptr, align 8
@w2c_hermes_t6 = external constant ptr, align 8

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

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

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

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

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

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

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

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

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

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

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

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i32 noundef, i64 noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ADynamicStringPrimitive0x3Cchar0x2C0x20false0x3E0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x20hermes0x3A0x3Avm0x3A0x3AExternalStringPrimitive0x3Cchar0x3E0x3A0x3Acreate0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnPropertyInternal0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A0x7EGCScope0x280x29(ptr noundef, i32 noundef) #3

declare void @w2c_hermes_abort(ptr noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef, i32 noundef) #3

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCPointerBase0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AGCCell0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

declare i32 @w2c_hermes_0x5F_memcpy(ptr noundef, i32 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 i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseSyntaxError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef, i32 noundef, i32 noundef) #0

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

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

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

; Function Attrs: inlinehint nounwind uwtable
declare hidden double @f64_reinterpret_i64(i64 noundef) #2

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

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

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

declare void @w2c_hermes_void0x20hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AsetNamedSlotValueUnsafe0x3C0x28hermes0x3A0x3Avm0x3A0x3AArrayStorageBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x3A0x3AInline0x2900x3E0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHermesValue320x3A0x3AunboxToHV0x28hermes0x3A0x3Avm0x3A0x3APointerBase0x260x290x20const(ptr noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

; Function Attrs: inlinehint nounwind uwtable
declare hidden zeroext i1 @func_types_eq(ptr noundef, ptr noundef) #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #3

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

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef) #3

; Function Attrs: nounwind uwtable
declare hidden double @wasm_fabs(double noundef) #0

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

declare i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Acompare0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef, i32 noundef, i64 noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

; Function Attrs: inlinehint nounwind uwtable
declare hidden i64 @i64_reinterpret_f64(double noundef) #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedSlotValue0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i32 noundef, i32 noundef, i64 noundef) #3

declare double @w2c_hermes_fmod(ptr noundef, double noundef, double noundef) #3

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

; Function Attrs: nounwind uwtable
define dso_local void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AinterpretFunction0x28hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3) #0 {
  %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 i32, align 4
  %32 = alloca i32, align 4
  %33 = alloca i32, align 4
  %34 = alloca i32, align 4
  %35 = alloca i32, align 4
  %36 = alloca i32, align 4
  %37 = alloca i32, align 4
  %38 = alloca i32, align 4
  %39 = alloca i64, align 8
  %40 = alloca i64, align 8
  %41 = alloca i64, align 8
  %42 = alloca i64, align 8
  %43 = alloca double, align 8
  %44 = alloca double, align 8
  %45 = alloca i32, align 4
  %46 = alloca i32, align 4
  %47 = alloca i32, 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 i64, align 8
  %55 = alloca i64, align 8
  %56 = alloca i64, align 8
  %57 = alloca i64, align 8
  %58 = alloca i64, align 8
  %59 = alloca i64, align 8
  %60 = alloca double, align 8
  %61 = alloca double, align 8
  %62 = alloca double, align 8
  %63 = alloca double, align 8
  %64 = 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) #6
  store i32 0, ptr %9, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %10) #6
  store i32 0, ptr %10, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #6
  store i32 0, ptr %11, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #6
  store i32 0, ptr %12, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #6
  store i32 0, ptr %13, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #6
  store i32 0, ptr %14, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #6
  store i32 0, ptr %15, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %16) #6
  store i32 0, ptr %16, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %17) #6
  store i32 0, ptr %17, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %18) #6
  store i32 0, ptr %18, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %19) #6
  store i32 0, ptr %19, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #6
  store i32 0, ptr %20, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #6
  store i32 0, ptr %21, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #6
  store i32 0, ptr %22, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %23) #6
  store i32 0, ptr %23, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #6
  store i32 0, ptr %24, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %25) #6
  store i32 0, ptr %25, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #6
  store i32 0, ptr %26, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %27) #6
  store i32 0, ptr %27, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #6
  store i32 0, ptr %28, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #6
  store i32 0, ptr %29, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #6
  store i32 0, ptr %30, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #6
  store i32 0, ptr %31, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %32) #6
  store i32 0, ptr %32, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #6
  store i32 0, ptr %33, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  store i32 0, ptr %34, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #6
  store i32 0, ptr %35, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #6
  store i32 0, ptr %36, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #6
  store i32 0, ptr %37, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %38) #6
  store i32 0, ptr %38, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %39) #6
  store i64 0, ptr %39, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %40) #6
  store i64 0, ptr %40, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #6
  store i64 0, ptr %41, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #6
  store i64 0, ptr %42, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #6
  store double 0.000000e+00, ptr %43, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 8, ptr %44) #6
  store double 0.000000e+00, ptr %44, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 4, ptr %45) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %47) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %48) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %49) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %50) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %51) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %52) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %53) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %54) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %55) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %56) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %57) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %58) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %59) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %60) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %61) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %62) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %63) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %64) #6
  %65 = load ptr, ptr %5, align 8, !tbaa !5
  %66 = getelementptr inbounds %struct.w2c_hermes, ptr %65, i32 0, i32 3
  %67 = load i32, ptr %66, align 8, !tbaa !15
  store i32 %67, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %68 = load i32, ptr %46, align 4, !tbaa !9
  %69 = load i32, ptr %45, align 4, !tbaa !9
  %70 = sub i32 %69, %68
  store i32 %70, ptr %45, align 4, !tbaa !9
  %71 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %71, ptr %32, align 4, !tbaa !9
  %72 = load i32, ptr %45, align 4, !tbaa !9
  %73 = load ptr, ptr %5, align 8, !tbaa !5
  %74 = getelementptr inbounds %struct.w2c_hermes, ptr %73, i32 0, i32 3
  store i32 %72, ptr %74, align 8, !tbaa !15
  %75 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %75, ptr %45, align 4, !tbaa !9
  %76 = load ptr, ptr %5, align 8, !tbaa !5
  %77 = getelementptr inbounds %struct.w2c_hermes, ptr %76, i32 0, i32 6
  %78 = load i32, ptr %45, align 4, !tbaa !9
  %79 = zext i32 %78 to i64
  %80 = add i64 %79, 8
  %81 = call i32 @i32_load(ptr noundef %77, i64 noundef %80)
  store i32 %81, ptr %45, align 4, !tbaa !9
  %82 = load i32, ptr %45, align 4, !tbaa !9
  %83 = icmp ne i32 %82, 0
  br i1 %83, label %84, label %85

84:                                               ; preds = %4
  br label %102

85:                                               ; preds = %4
  %86 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %86, ptr %45, align 4, !tbaa !9
  %87 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %87, ptr %46, align 4, !tbaa !9
  %88 = load ptr, ptr %5, align 8, !tbaa !5
  %89 = load i32, ptr %45, align 4, !tbaa !9
  %90 = load i32, ptr %46, align 4, !tbaa !9
  %91 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %88, i32 noundef %89, i32 noundef %90)
  store i32 %91, ptr %45, align 4, !tbaa !9
  %92 = load i32, ptr %45, align 4, !tbaa !9
  %93 = icmp ne i32 %92, 0
  br i1 %93, label %94, label %95

94:                                               ; preds = %85
  br label %102

95:                                               ; preds = %85
  %96 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %96, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %97 = load ptr, ptr %5, align 8, !tbaa !5
  %98 = getelementptr inbounds %struct.w2c_hermes, ptr %97, i32 0, i32 6
  %99 = load i32, ptr %45, align 4, !tbaa !9
  %100 = zext i32 %99 to i64
  %101 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %98, i64 noundef %100, i32 noundef %101)
  br label %43645

102:                                              ; preds = %94, %84
  %103 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %103, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %104 = load ptr, ptr %5, align 8, !tbaa !5
  %105 = getelementptr inbounds %struct.w2c_hermes, ptr %104, i32 0, i32 6
  %106 = load i32, ptr %45, align 4, !tbaa !9
  %107 = zext i32 %106 to i64
  %108 = add i64 %107, 12
  %109 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %105, i64 noundef %108, i32 noundef %109)
  %110 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %110, ptr %45, align 4, !tbaa !9
  %111 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %111, ptr %46, align 4, !tbaa !9
  %112 = load ptr, ptr %5, align 8, !tbaa !5
  %113 = getelementptr inbounds %struct.w2c_hermes, ptr %112, i32 0, i32 6
  %114 = load i32, ptr %45, align 4, !tbaa !9
  %115 = zext i32 %114 to i64
  %116 = add i64 %115, 8
  %117 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %113, i64 noundef %116, i32 noundef %117)
  %118 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %118, ptr %45, align 4, !tbaa !9
  %119 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %119, ptr %31, align 4, !tbaa !9
  %120 = load ptr, ptr %5, align 8, !tbaa !5
  %121 = getelementptr inbounds %struct.w2c_hermes, ptr %120, i32 0, i32 3
  %122 = load i32, ptr %121, align 8, !tbaa !15
  store i32 %122, ptr %45, align 4, !tbaa !9
  store i32 528, ptr %46, align 4, !tbaa !9
  %123 = load i32, ptr %46, align 4, !tbaa !9
  %124 = load i32, ptr %45, align 4, !tbaa !9
  %125 = sub i32 %124, %123
  store i32 %125, ptr %45, align 4, !tbaa !9
  %126 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %126, ptr %9, align 4, !tbaa !9
  %127 = load i32, ptr %45, align 4, !tbaa !9
  %128 = load ptr, ptr %5, align 8, !tbaa !5
  %129 = getelementptr inbounds %struct.w2c_hermes, ptr %128, i32 0, i32 3
  store i32 %127, ptr %129, align 8, !tbaa !15
  %130 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %130, ptr %45, align 4, !tbaa !9
  %131 = load ptr, ptr %5, align 8, !tbaa !5
  %132 = getelementptr inbounds %struct.w2c_hermes, ptr %131, i32 0, i32 6
  %133 = load i32, ptr %45, align 4, !tbaa !9
  %134 = zext i32 %133 to i64
  %135 = add i64 %134, 8
  %136 = call i32 @i32_load(ptr noundef %132, i64 noundef %135)
  store i32 %136, ptr %45, align 4, !tbaa !9
  %137 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %137, ptr %12, align 4, !tbaa !9
  %138 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %138, ptr %45, align 4, !tbaa !9
  %139 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %139, ptr %10, align 4, !tbaa !9
  %140 = load ptr, ptr %5, align 8, !tbaa !5
  %141 = getelementptr inbounds %struct.w2c_hermes, ptr %140, i32 0, i32 6
  %142 = load i32, ptr %45, align 4, !tbaa !9
  %143 = zext i32 %142 to i64
  %144 = add i64 %143, 5808
  %145 = call i32 @i32_load(ptr noundef %141, i64 noundef %144)
  store i32 %145, ptr %45, align 4, !tbaa !9
  %146 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %146, ptr %36, align 4, !tbaa !9
  %147 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %147, ptr %45, align 4, !tbaa !9
  store i32 5608, ptr %46, align 4, !tbaa !9
  %148 = load i32, ptr %46, align 4, !tbaa !9
  %149 = load i32, ptr %45, align 4, !tbaa !9
  %150 = add i32 %149, %148
  store i32 %150, ptr %45, align 4, !tbaa !9
  %151 = load ptr, ptr %5, align 8, !tbaa !5
  %152 = getelementptr inbounds %struct.w2c_hermes, ptr %151, i32 0, i32 6
  %153 = load i32, ptr %45, align 4, !tbaa !9
  %154 = zext i32 %153 to i64
  %155 = call i32 @i32_load(ptr noundef %152, i64 noundef %154)
  store i32 %155, ptr %45, align 4, !tbaa !9
  %156 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %156, ptr %46, align 4, !tbaa !9
  %157 = load ptr, ptr %5, align 8, !tbaa !5
  %158 = getelementptr inbounds %struct.w2c_hermes, ptr %157, i32 0, i32 6
  %159 = load i32, ptr %46, align 4, !tbaa !9
  %160 = zext i32 %159 to i64
  %161 = add i64 %160, 5604
  %162 = call i32 @i32_load(ptr noundef %158, i64 noundef %161)
  store i32 %162, ptr %46, align 4, !tbaa !9
  %163 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %163, ptr %47, align 4, !tbaa !9
  %164 = load i32, ptr %47, align 4, !tbaa !9
  %165 = load i32, ptr %46, align 4, !tbaa !9
  %166 = sub i32 %165, %164
  store i32 %166, ptr %46, align 4, !tbaa !9
  %167 = load i32, ptr %45, align 4, !tbaa !9
  %168 = load i32, ptr %46, align 4, !tbaa !9
  %169 = icmp uge i32 %167, %168
  %170 = zext i1 %169 to i32
  store i32 %170, ptr %45, align 4, !tbaa !9
  %171 = load i32, ptr %45, align 4, !tbaa !9
  %172 = icmp ne i32 %171, 0
  br i1 %172, label %173, label %174

173:                                              ; preds = %102
  br label %269

174:                                              ; preds = %102
  %175 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %175, ptr %45, align 4, !tbaa !9
  store i32 5612, ptr %46, align 4, !tbaa !9
  %176 = load i32, ptr %46, align 4, !tbaa !9
  %177 = load i32, ptr %45, align 4, !tbaa !9
  %178 = add i32 %177, %176
  store i32 %178, ptr %45, align 4, !tbaa !9
  %179 = load ptr, ptr %5, align 8, !tbaa !5
  %180 = getelementptr inbounds %struct.w2c_hermes, ptr %179, i32 0, i32 6
  %181 = load i32, ptr %45, align 4, !tbaa !9
  %182 = zext i32 %181 to i64
  %183 = call i32 @i32_load(ptr noundef %180, i64 noundef %182)
  store i32 %183, ptr %45, align 4, !tbaa !9
  %184 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %184, ptr %7, align 4, !tbaa !9
  %185 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %185, ptr %45, align 4, !tbaa !9
  %186 = load ptr, ptr %5, align 8, !tbaa !5
  %187 = getelementptr inbounds %struct.w2c_hermes, ptr %186, i32 0, i32 5
  %188 = load i32, ptr %187, align 8, !tbaa !20
  store i32 %188, ptr %46, align 4, !tbaa !9
  %189 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %189, ptr %6, align 4, !tbaa !9
  %190 = load ptr, ptr %5, align 8, !tbaa !5
  %191 = getelementptr inbounds %struct.w2c_hermes, ptr %190, i32 0, i32 6
  %192 = load i32, ptr %45, align 4, !tbaa !9
  %193 = zext i32 %192 to i64
  %194 = add i64 %193, 304
  %195 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %191, i64 noundef %194, i32 noundef %195)
  %196 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %196, ptr %45, align 4, !tbaa !9
  %197 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %197, ptr %46, align 4, !tbaa !9
  %198 = load ptr, ptr %5, align 8, !tbaa !5
  %199 = getelementptr inbounds %struct.w2c_hermes, ptr %198, i32 0, i32 4
  %200 = load i32, ptr %199, align 4, !tbaa !21
  store i32 %200, ptr %47, align 4, !tbaa !9
  %201 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %201, ptr %48, align 4, !tbaa !9
  %202 = load i32, ptr %48, align 4, !tbaa !9
  %203 = load i32, ptr %47, align 4, !tbaa !9
  %204 = add i32 %203, %202
  store i32 %204, ptr %47, align 4, !tbaa !9
  %205 = load i32, ptr %47, align 4, !tbaa !9
  %206 = load i32, ptr %46, align 4, !tbaa !9
  %207 = sub i32 %206, %205
  store i32 %207, ptr %46, align 4, !tbaa !9
  %208 = load ptr, ptr %5, align 8, !tbaa !5
  %209 = getelementptr inbounds %struct.w2c_hermes, ptr %208, i32 0, i32 6
  %210 = load i32, ptr %45, align 4, !tbaa !9
  %211 = zext i32 %210 to i64
  %212 = add i64 %211, 308
  %213 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %209, i64 noundef %212, i32 noundef %213)
  %214 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %214, ptr %45, align 4, !tbaa !9
  %215 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %215, ptr %46, align 4, !tbaa !9
  %216 = load ptr, ptr %5, align 8, !tbaa !5
  %217 = getelementptr inbounds %struct.w2c_hermes, ptr %216, i32 0, i32 6
  %218 = load i32, ptr %46, align 4, !tbaa !9
  %219 = zext i32 %218 to i64
  %220 = add i64 %219, 304
  %221 = call i32 @i32_load(ptr noundef %217, i64 noundef %220)
  store i32 %221, ptr %46, align 4, !tbaa !9
  %222 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %222, ptr %7, align 4, !tbaa !9
  %223 = load ptr, ptr %5, align 8, !tbaa !5
  %224 = getelementptr inbounds %struct.w2c_hermes, ptr %223, i32 0, i32 6
  %225 = load i32, ptr %45, align 4, !tbaa !9
  %226 = zext i32 %225 to i64
  %227 = add i64 %226, 5604
  %228 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %224, i64 noundef %227, i32 noundef %228)
  %229 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %229, ptr %45, align 4, !tbaa !9
  %230 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %230, ptr %46, align 4, !tbaa !9
  %231 = load ptr, ptr %5, align 8, !tbaa !5
  %232 = getelementptr inbounds %struct.w2c_hermes, ptr %231, i32 0, i32 6
  %233 = load i32, ptr %46, align 4, !tbaa !9
  %234 = zext i32 %233 to i64
  %235 = add i64 %234, 308
  %236 = call i32 @i32_load(ptr noundef %232, i64 noundef %235)
  store i32 %236, ptr %46, align 4, !tbaa !9
  %237 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %237, ptr %6, align 4, !tbaa !9
  %238 = load ptr, ptr %5, align 8, !tbaa !5
  %239 = getelementptr inbounds %struct.w2c_hermes, ptr %238, i32 0, i32 6
  %240 = load i32, ptr %45, align 4, !tbaa !9
  %241 = zext i32 %240 to i64
  %242 = add i64 %241, 5608
  %243 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %239, i64 noundef %242, i32 noundef %243)
  %244 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %244, ptr %45, align 4, !tbaa !9
  %245 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %245, ptr %46, align 4, !tbaa !9
  %246 = load i32, ptr %46, align 4, !tbaa !9
  %247 = load i32, ptr %45, align 4, !tbaa !9
  %248 = sub i32 %247, %246
  store i32 %248, ptr %45, align 4, !tbaa !9
  %249 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %249, ptr %46, align 4, !tbaa !9
  %250 = load i32, ptr %45, align 4, !tbaa !9
  %251 = load i32, ptr %46, align 4, !tbaa !9
  %252 = icmp ule i32 %250, %251
  %253 = zext i1 %252 to i32
  store i32 %253, ptr %45, align 4, !tbaa !9
  %254 = load i32, ptr %45, align 4, !tbaa !9
  %255 = icmp ne i32 %254, 0
  br i1 %255, label %256, label %257

256:                                              ; preds = %174
  br label %269

257:                                              ; preds = %174
  %258 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %258, ptr %45, align 4, !tbaa !9
  %259 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %259, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %260 = load ptr, ptr %5, align 8, !tbaa !5
  %261 = load i32, ptr %46, align 4, !tbaa !9
  %262 = load i32, ptr %47, align 4, !tbaa !9
  %263 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseStackOverflow0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AStackOverflowKind0x29(ptr noundef %260, i32 noundef %261, i32 noundef %262)
  store i32 %263, ptr %46, align 4, !tbaa !9
  %264 = load ptr, ptr %5, align 8, !tbaa !5
  %265 = getelementptr inbounds %struct.w2c_hermes, ptr %264, i32 0, i32 6
  %266 = load i32, ptr %45, align 4, !tbaa !9
  %267 = zext i32 %266 to i64
  %268 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %265, i64 noundef %267, i32 noundef %268)
  br label %43629

269:                                              ; preds = %256, %173
  %270 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %270, ptr %45, align 4, !tbaa !9
  %271 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %271, ptr %46, align 4, !tbaa !9
  %272 = load ptr, ptr %5, align 8, !tbaa !5
  %273 = getelementptr inbounds %struct.w2c_hermes, ptr %272, i32 0, i32 6
  %274 = load i32, ptr %45, align 4, !tbaa !9
  %275 = zext i32 %274 to i64
  %276 = add i64 %275, 344
  %277 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %273, i64 noundef %276, i32 noundef %277)
  %278 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %278, ptr %45, align 4, !tbaa !9
  %279 = load ptr, ptr %5, align 8, !tbaa !5
  %280 = getelementptr inbounds %struct.w2c_hermes, ptr %279, i32 0, i32 6
  %281 = load i32, ptr %45, align 4, !tbaa !9
  %282 = zext i32 %281 to i64
  %283 = add i64 %282, 4
  %284 = call i32 @i32_load(ptr noundef %280, i64 noundef %283)
  store i32 %284, ptr %45, align 4, !tbaa !9
  %285 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %285, ptr %7, align 4, !tbaa !9
  %286 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %286, ptr %45, align 4, !tbaa !9
  store i32 492, ptr %46, align 4, !tbaa !9
  %287 = load i32, ptr %46, align 4, !tbaa !9
  %288 = load i32, ptr %45, align 4, !tbaa !9
  %289 = add i32 %288, %287
  store i32 %289, ptr %45, align 4, !tbaa !9
  %290 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %290, ptr %6, align 4, !tbaa !9
  %291 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %291, ptr %46, align 4, !tbaa !9
  store i32 352, ptr %47, align 4, !tbaa !9
  %292 = load i32, ptr %47, align 4, !tbaa !9
  %293 = load i32, ptr %46, align 4, !tbaa !9
  %294 = add i32 %293, %292
  store i32 %294, ptr %46, align 4, !tbaa !9
  %295 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %295, ptr %30, align 4, !tbaa !9
  %296 = load ptr, ptr %5, align 8, !tbaa !5
  %297 = getelementptr inbounds %struct.w2c_hermes, ptr %296, i32 0, i32 6
  %298 = load i32, ptr %45, align 4, !tbaa !9
  %299 = zext i32 %298 to i64
  %300 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %297, i64 noundef %299, i32 noundef %300)
  %301 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %301, ptr %45, align 4, !tbaa !9
  store i64 17179869185, ptr %55, align 8, !tbaa !11
  %302 = load ptr, ptr %5, align 8, !tbaa !5
  %303 = getelementptr inbounds %struct.w2c_hermes, ptr %302, i32 0, i32 6
  %304 = load i32, ptr %45, align 4, !tbaa !9
  %305 = zext i32 %304 to i64
  %306 = add i64 %305, 484
  %307 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %303, i64 noundef %306, i64 noundef %307)
  %308 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %308, ptr %45, align 4, !tbaa !9
  %309 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %309, ptr %46, align 4, !tbaa !9
  %310 = load ptr, ptr %5, align 8, !tbaa !5
  %311 = getelementptr inbounds %struct.w2c_hermes, ptr %310, i32 0, i32 6
  %312 = load i32, ptr %45, align 4, !tbaa !9
  %313 = zext i32 %312 to i64
  %314 = add i64 %313, 480
  %315 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %311, i64 noundef %314, i32 noundef %315)
  %316 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %316, ptr %45, align 4, !tbaa !9
  %317 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %317, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %321 = zext i32 %320 to i64
  %322 = add i64 %321, 348
  %323 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %319, i64 noundef %322, i32 noundef %323)
  %324 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %324, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %328 = zext i32 %327 to i64
  %329 = add i64 %328, 516
  %330 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %326, i64 noundef %329, i32 noundef %330)
  %331 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %331, ptr %45, align 4, !tbaa !9
  %332 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %332, ptr %46, align 4, !tbaa !9
  store i32 480, ptr %47, align 4, !tbaa !9
  %333 = load i32, ptr %47, align 4, !tbaa !9
  %334 = load i32, ptr %46, align 4, !tbaa !9
  %335 = add i32 %334, %333
  store i32 %335, ptr %46, align 4, !tbaa !9
  %336 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %336, ptr %19, align 4, !tbaa !9
  %337 = load ptr, ptr %5, align 8, !tbaa !5
  %338 = getelementptr inbounds %struct.w2c_hermes, ptr %337, i32 0, i32 6
  %339 = load i32, ptr %45, align 4, !tbaa !9
  %340 = zext i32 %339 to i64
  %341 = add i64 %340, 512
  %342 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %338, i64 noundef %341, i32 noundef %342)
  %343 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %343, ptr %45, align 4, !tbaa !9
  %344 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %344, ptr %46, align 4, !tbaa !9
  store i32 344, ptr %47, align 4, !tbaa !9
  %345 = load i32, ptr %47, align 4, !tbaa !9
  %346 = load i32, ptr %46, align 4, !tbaa !9
  %347 = add i32 %346, %345
  store i32 %347, ptr %46, align 4, !tbaa !9
  %348 = load ptr, ptr %5, align 8, !tbaa !5
  %349 = getelementptr inbounds %struct.w2c_hermes, ptr %348, i32 0, i32 6
  %350 = load i32, ptr %45, align 4, !tbaa !9
  %351 = zext i32 %350 to i64
  %352 = add i64 %351, 4
  %353 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %349, i64 noundef %352, i32 noundef %353)
  %354 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %354, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %355 = load ptr, ptr %5, align 8, !tbaa !5
  %356 = getelementptr inbounds %struct.w2c_hermes, ptr %355, i32 0, i32 6
  %357 = load i32, ptr %45, align 4, !tbaa !9
  %358 = zext i32 %357 to i64
  %359 = add i64 %358, 352
  %360 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %356, i64 noundef %359, i64 noundef %360)
  %361 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %361, ptr %45, align 4, !tbaa !9
  %362 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %362, ptr %46, align 4, !tbaa !9
  store i32 360, ptr %47, align 4, !tbaa !9
  %363 = load i32, ptr %47, align 4, !tbaa !9
  %364 = load i32, ptr %46, align 4, !tbaa !9
  %365 = add i32 %364, %363
  store i32 %365, ptr %46, align 4, !tbaa !9
  %366 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %366, ptr %20, align 4, !tbaa !9
  %367 = load ptr, ptr %5, align 8, !tbaa !5
  %368 = getelementptr inbounds %struct.w2c_hermes, ptr %367, i32 0, i32 6
  %369 = load i32, ptr %45, align 4, !tbaa !9
  %370 = zext i32 %369 to i64
  %371 = add i64 %370, 508
  %372 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %368, i64 noundef %371, i32 noundef %372)
  %373 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %373, ptr %45, align 4, !tbaa !9
  store i32 192, ptr %46, align 4, !tbaa !9
  %374 = load i32, ptr %46, align 4, !tbaa !9
  %375 = load i32, ptr %45, align 4, !tbaa !9
  %376 = add i32 %375, %374
  store i32 %376, ptr %45, align 4, !tbaa !9
  %377 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %377, ptr %37, align 4, !tbaa !9
  %378 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %378, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %379 = load i32, ptr %46, align 4, !tbaa !9
  %380 = load i32, ptr %45, align 4, !tbaa !9
  %381 = add i32 %380, %379
  store i32 %381, ptr %45, align 4, !tbaa !9
  %382 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %382, ptr %35, align 4, !tbaa !9
  %383 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %383, ptr %45, align 4, !tbaa !9
  store i32 520, ptr %46, align 4, !tbaa !9
  %384 = load i32, ptr %46, align 4, !tbaa !9
  %385 = load i32, ptr %45, align 4, !tbaa !9
  %386 = add i32 %385, %384
  store i32 %386, ptr %45, align 4, !tbaa !9
  %387 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %387, ptr %38, align 4, !tbaa !9
  %388 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %388, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %389 = load i32, ptr %46, align 4, !tbaa !9
  %390 = load i32, ptr %45, align 4, !tbaa !9
  %391 = add i32 %390, %389
  store i32 %391, ptr %45, align 4, !tbaa !9
  %392 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %392, ptr %29, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  %393 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %393, ptr %6, align 4, !tbaa !9
  br label %394

394:                                              ; preds = %4610, %4590, %4260, %4240, %269
  %395 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %395, ptr %45, align 4, !tbaa !9
  %396 = load ptr, ptr %5, align 8, !tbaa !5
  %397 = getelementptr inbounds %struct.w2c_hermes, ptr %396, i32 0, i32 6
  %398 = load i32, ptr %45, align 4, !tbaa !9
  %399 = zext i32 %398 to i64
  %400 = add i64 %399, 5760
  %401 = call i32 @i32_load(ptr noundef %397, i64 noundef %400)
  store i32 %401, ptr %45, align 4, !tbaa !9
  %402 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %402, ptr %24, align 4, !tbaa !9
  %403 = load ptr, ptr %5, align 8, !tbaa !5
  %404 = getelementptr inbounds %struct.w2c_hermes, ptr %403, i32 0, i32 6
  %405 = load i32, ptr %45, align 4, !tbaa !9
  %406 = zext i32 %405 to i64
  %407 = add i64 %406, 60
  %408 = call i32 @i32_load8_u(ptr noundef %404, i64 noundef %407)
  store i32 %408, ptr %45, align 4, !tbaa !9
  %409 = load i32, ptr %45, align 4, !tbaa !9
  %410 = icmp ne i32 %409, 0
  br i1 %410, label %411, label %412

411:                                              ; preds = %394
  br label %2543

412:                                              ; preds = %394
  store i32 138337, ptr %45, align 4, !tbaa !9
  %413 = load ptr, ptr %5, align 8, !tbaa !5
  %414 = getelementptr inbounds %struct.w2c_hermes, ptr %413, i32 0, i32 6
  %415 = load i32, ptr %45, align 4, !tbaa !9
  %416 = zext i32 %415 to i64
  %417 = call i32 @i32_load8_u(ptr noundef %414, i64 noundef %416)
  store i32 %417, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %418 = load i32, ptr %46, align 4, !tbaa !9
  %419 = load i32, ptr %45, align 4, !tbaa !9
  %420 = and i32 %419, %418
  store i32 %420, ptr %45, align 4, !tbaa !9
  %421 = load i32, ptr %45, align 4, !tbaa !9
  %422 = icmp ne i32 %421, 0
  %423 = xor i1 %422, true
  %424 = zext i1 %423 to i32
  store i32 %424, ptr %45, align 4, !tbaa !9
  %425 = load i32, ptr %45, align 4, !tbaa !9
  %426 = icmp ne i32 %425, 0
  br i1 %426, label %427, label %428

427:                                              ; preds = %412
  br label %2543

428:                                              ; preds = %412
  %429 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %429, ptr %45, align 4, !tbaa !9
  %430 = load ptr, ptr %5, align 8, !tbaa !5
  %431 = getelementptr inbounds %struct.w2c_hermes, ptr %430, i32 0, i32 6
  %432 = load i32, ptr %45, align 4, !tbaa !9
  %433 = zext i32 %432 to i64
  %434 = call i32 @i32_load(ptr noundef %431, i64 noundef %433)
  store i32 %434, ptr %45, align 4, !tbaa !9
  %435 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %435, ptr %17, align 4, !tbaa !9
  %436 = load ptr, ptr %5, align 8, !tbaa !5
  %437 = getelementptr inbounds %struct.w2c_hermes, ptr %436, i32 0, i32 3
  %438 = load i32, ptr %437, align 8, !tbaa !15
  store i32 %438, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %439 = load i32, ptr %46, align 4, !tbaa !9
  %440 = load i32, ptr %45, align 4, !tbaa !9
  %441 = sub i32 %440, %439
  store i32 %441, ptr %45, align 4, !tbaa !9
  %442 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %442, ptr %27, align 4, !tbaa !9
  %443 = load i32, ptr %45, align 4, !tbaa !9
  %444 = load ptr, ptr %5, align 8, !tbaa !5
  %445 = getelementptr inbounds %struct.w2c_hermes, ptr %444, i32 0, i32 3
  store i32 %443, ptr %445, align 8, !tbaa !15
  %446 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %446, ptr %45, align 4, !tbaa !9
  %447 = load ptr, ptr %5, align 8, !tbaa !5
  %448 = getelementptr inbounds %struct.w2c_hermes, ptr %447, i32 0, i32 6
  %449 = load i32, ptr %45, align 4, !tbaa !9
  %450 = zext i32 %449 to i64
  %451 = add i64 %450, 28
  %452 = call i32 @i32_load(ptr noundef %448, i64 noundef %451)
  store i32 %452, ptr %45, align 4, !tbaa !9
  %453 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %453, ptr %14, align 4, !tbaa !9
  %454 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %454, ptr %45, align 4, !tbaa !9
  %455 = load ptr, ptr %5, align 8, !tbaa !5
  %456 = getelementptr inbounds %struct.w2c_hermes, ptr %455, i32 0, i32 6
  %457 = load i32, ptr %45, align 4, !tbaa !9
  %458 = zext i32 %457 to i64
  %459 = add i64 %458, 40
  %460 = call i32 @i32_load(ptr noundef %456, i64 noundef %459)
  store i32 %460, ptr %45, align 4, !tbaa !9
  %461 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %461, ptr %21, align 4, !tbaa !9
  %462 = load i32, ptr %45, align 4, !tbaa !9
  %463 = icmp ne i32 %462, 0
  %464 = xor i1 %463, true
  %465 = zext i1 %464 to i32
  store i32 %465, ptr %45, align 4, !tbaa !9
  %466 = load i32, ptr %45, align 4, !tbaa !9
  %467 = icmp ne i32 %466, 0
  br i1 %467, label %468, label %469

468:                                              ; preds = %428
  br label %568

469:                                              ; preds = %428
  %470 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %470, ptr %45, align 4, !tbaa !9
  %471 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %471, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %472 = load i32, ptr %47, align 4, !tbaa !9
  %473 = load i32, ptr %46, align 4, !tbaa !9
  %474 = sub i32 %473, %472
  store i32 %474, ptr %46, align 4, !tbaa !9
  %475 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %475, ptr %13, align 4, !tbaa !9
  %476 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %476, ptr %47, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %477 = load i32, ptr %48, align 4, !tbaa !9
  %478 = and i32 %477, 31
  %479 = load i32, ptr %47, align 4, !tbaa !9
  %480 = lshr i32 %479, %478
  store i32 %480, ptr %47, align 4, !tbaa !9
  %481 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %481, ptr %48, align 4, !tbaa !9
  store i32 9, ptr %49, align 4, !tbaa !9
  %482 = load i32, ptr %49, align 4, !tbaa !9
  %483 = and i32 %482, 31
  %484 = load i32, ptr %48, align 4, !tbaa !9
  %485 = lshr i32 %484, %483
  store i32 %485, ptr %48, align 4, !tbaa !9
  %486 = load i32, ptr %48, align 4, !tbaa !9
  %487 = load i32, ptr %47, align 4, !tbaa !9
  %488 = xor i32 %487, %486
  store i32 %488, ptr %47, align 4, !tbaa !9
  %489 = load i32, ptr %47, align 4, !tbaa !9
  %490 = load i32, ptr %46, align 4, !tbaa !9
  %491 = and i32 %490, %489
  store i32 %491, ptr %46, align 4, !tbaa !9
  %492 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %492, ptr %11, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %493 = load i32, ptr %47, align 4, !tbaa !9
  %494 = and i32 %493, 31
  %495 = load i32, ptr %46, align 4, !tbaa !9
  %496 = shl i32 %495, %494
  store i32 %496, ptr %46, align 4, !tbaa !9
  %497 = load i32, ptr %46, align 4, !tbaa !9
  %498 = load i32, ptr %45, align 4, !tbaa !9
  %499 = add i32 %498, %497
  store i32 %499, ptr %45, align 4, !tbaa !9
  %500 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %500, ptr %8, align 4, !tbaa !9
  %501 = load ptr, ptr %5, align 8, !tbaa !5
  %502 = getelementptr inbounds %struct.w2c_hermes, ptr %501, i32 0, i32 6
  %503 = load i32, ptr %45, align 4, !tbaa !9
  %504 = zext i32 %503 to i64
  %505 = call i32 @i32_load(ptr noundef %502, i64 noundef %504)
  store i32 %505, ptr %45, align 4, !tbaa !9
  %506 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %506, ptr %26, align 4, !tbaa !9
  %507 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %507, ptr %46, align 4, !tbaa !9
  %508 = load i32, ptr %45, align 4, !tbaa !9
  %509 = load i32, ptr %46, align 4, !tbaa !9
  %510 = icmp eq i32 %508, %509
  %511 = zext i1 %510 to i32
  store i32 %511, ptr %45, align 4, !tbaa !9
  %512 = load i32, ptr %45, align 4, !tbaa !9
  %513 = icmp ne i32 %512, 0
  br i1 %513, label %514, label %515

514:                                              ; preds = %469
  br label %579

515:                                              ; preds = %469
  store i32 1, ptr %45, align 4, !tbaa !9
  %516 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %516, ptr %7, align 4, !tbaa !9
  br label %517

517:                                              ; preds = %566, %515
  %518 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %518, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %519 = load i32, ptr %45, align 4, !tbaa !9
  %520 = load i32, ptr %46, align 4, !tbaa !9
  %521 = icmp eq i32 %519, %520
  %522 = zext i1 %521 to i32
  store i32 %522, ptr %45, align 4, !tbaa !9
  %523 = load i32, ptr %45, align 4, !tbaa !9
  %524 = icmp ne i32 %523, 0
  br i1 %524, label %525, label %526

525:                                              ; preds = %517
  br label %568

526:                                              ; preds = %517
  %527 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %527, ptr %45, align 4, !tbaa !9
  %528 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %528, ptr %46, align 4, !tbaa !9
  %529 = load i32, ptr %46, align 4, !tbaa !9
  %530 = load i32, ptr %45, align 4, !tbaa !9
  %531 = add i32 %530, %529
  store i32 %531, ptr %45, align 4, !tbaa !9
  %532 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %532, ptr %8, align 4, !tbaa !9
  %533 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %533, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %534 = load i32, ptr %46, align 4, !tbaa !9
  %535 = load i32, ptr %45, align 4, !tbaa !9
  %536 = add i32 %535, %534
  store i32 %536, ptr %45, align 4, !tbaa !9
  %537 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %537, ptr %7, align 4, !tbaa !9
  %538 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %538, ptr %45, align 4, !tbaa !9
  %539 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %539, ptr %46, align 4, !tbaa !9
  %540 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %540, ptr %47, align 4, !tbaa !9
  %541 = load i32, ptr %47, align 4, !tbaa !9
  %542 = load i32, ptr %46, align 4, !tbaa !9
  %543 = and i32 %542, %541
  store i32 %543, ptr %46, align 4, !tbaa !9
  %544 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %544, ptr %11, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %545 = load i32, ptr %47, align 4, !tbaa !9
  %546 = and i32 %545, 31
  %547 = load i32, ptr %46, align 4, !tbaa !9
  %548 = shl i32 %547, %546
  store i32 %548, ptr %46, align 4, !tbaa !9
  %549 = load i32, ptr %46, align 4, !tbaa !9
  %550 = load i32, ptr %45, align 4, !tbaa !9
  %551 = add i32 %550, %549
  store i32 %551, ptr %45, align 4, !tbaa !9
  %552 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %552, ptr %8, align 4, !tbaa !9
  %553 = load ptr, ptr %5, align 8, !tbaa !5
  %554 = getelementptr inbounds %struct.w2c_hermes, ptr %553, i32 0, i32 6
  %555 = load i32, ptr %45, align 4, !tbaa !9
  %556 = zext i32 %555 to i64
  %557 = call i32 @i32_load(ptr noundef %554, i64 noundef %556)
  store i32 %557, ptr %45, align 4, !tbaa !9
  %558 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %558, ptr %26, align 4, !tbaa !9
  %559 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %559, ptr %46, align 4, !tbaa !9
  %560 = load i32, ptr %45, align 4, !tbaa !9
  %561 = load i32, ptr %46, align 4, !tbaa !9
  %562 = icmp ne i32 %560, %561
  %563 = zext i1 %562 to i32
  store i32 %563, ptr %45, align 4, !tbaa !9
  %564 = load i32, ptr %45, align 4, !tbaa !9
  %565 = icmp ne i32 %564, 0
  br i1 %565, label %566, label %567

566:                                              ; preds = %526
  br label %517

567:                                              ; preds = %526
  br label %579

568:                                              ; preds = %525, %468
  %569 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %569, ptr %45, align 4, !tbaa !9
  %570 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %570, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %571 = load i32, ptr %47, align 4, !tbaa !9
  %572 = and i32 %571, 31
  %573 = load i32, ptr %46, align 4, !tbaa !9
  %574 = shl i32 %573, %572
  store i32 %574, ptr %46, align 4, !tbaa !9
  %575 = load i32, ptr %46, align 4, !tbaa !9
  %576 = load i32, ptr %45, align 4, !tbaa !9
  %577 = add i32 %576, %575
  store i32 %577, ptr %45, align 4, !tbaa !9
  %578 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %578, ptr %8, align 4, !tbaa !9
  br label %579

579:                                              ; preds = %568, %567, %514
  %580 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %580, ptr %45, align 4, !tbaa !9
  %581 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %581, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %582 = load i32, ptr %47, align 4, !tbaa !9
  %583 = and i32 %582, 31
  %584 = load i32, ptr %46, align 4, !tbaa !9
  %585 = shl i32 %584, %583
  store i32 %585, ptr %46, align 4, !tbaa !9
  %586 = load i32, ptr %46, align 4, !tbaa !9
  %587 = load i32, ptr %45, align 4, !tbaa !9
  %588 = add i32 %587, %586
  store i32 %588, ptr %45, align 4, !tbaa !9
  %589 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %589, ptr %46, align 4, !tbaa !9
  %590 = load i32, ptr %45, align 4, !tbaa !9
  %591 = load i32, ptr %46, align 4, !tbaa !9
  %592 = icmp eq i32 %590, %591
  %593 = zext i1 %592 to i32
  store i32 %593, ptr %45, align 4, !tbaa !9
  %594 = load i32, ptr %45, align 4, !tbaa !9
  %595 = icmp ne i32 %594, 0
  br i1 %595, label %596, label %2490

596:                                              ; preds = %579
  %597 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %597, ptr %45, align 4, !tbaa !9
  %598 = load ptr, ptr %5, align 8, !tbaa !5
  %599 = getelementptr inbounds %struct.w2c_hermes, ptr %598, i32 0, i32 6
  %600 = load i32, ptr %45, align 4, !tbaa !9
  %601 = zext i32 %600 to i64
  %602 = add i64 %601, 24
  %603 = call i32 @i32_load(ptr noundef %599, i64 noundef %602)
  store i32 %603, ptr %45, align 4, !tbaa !9
  %604 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %604, ptr %7, align 4, !tbaa !9
  %605 = load i32, ptr %45, align 4, !tbaa !9
  %606 = icmp ne i32 %605, 0
  br i1 %606, label %607, label %622

607:                                              ; preds = %596
  %608 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %608, ptr %45, align 4, !tbaa !9
  %609 = load ptr, ptr %5, align 8, !tbaa !5
  %610 = getelementptr inbounds %struct.w2c_hermes, ptr %609, i32 0, i32 6
  %611 = load i32, ptr %45, align 4, !tbaa !9
  %612 = zext i32 %611 to i64
  %613 = add i64 %612, 8
  %614 = call i32 @i32_load(ptr noundef %610, i64 noundef %613)
  store i32 %614, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %615 = load i32, ptr %46, align 4, !tbaa !9
  %616 = load i32, ptr %45, align 4, !tbaa !9
  %617 = add i32 %616, %615
  store i32 %617, ptr %45, align 4, !tbaa !9
  %618 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %618, ptr %46, align 4, !tbaa !9
  %619 = load ptr, ptr %5, align 8, !tbaa !5
  %620 = load i32, ptr %45, align 4, !tbaa !9
  %621 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %619, i32 noundef %620, i32 noundef %621)
  br label %622

622:                                              ; preds = %607, %596
  %623 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %623, ptr %45, align 4, !tbaa !9
  %624 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %624, ptr %46, align 4, !tbaa !9
  %625 = load ptr, ptr %5, align 8, !tbaa !5
  %626 = getelementptr inbounds %struct.w2c_hermes, ptr %625, i32 0, i32 6
  %627 = load i32, ptr %45, align 4, !tbaa !9
  %628 = zext i32 %627 to i64
  %629 = add i64 %628, 36
  %630 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %626, i64 noundef %629, i32 noundef %630)
  %631 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %631, ptr %45, align 4, !tbaa !9
  store i32 36, ptr %46, align 4, !tbaa !9
  %632 = load i32, ptr %46, align 4, !tbaa !9
  %633 = load i32, ptr %45, align 4, !tbaa !9
  %634 = add i32 %633, %632
  store i32 %634, ptr %45, align 4, !tbaa !9
  %635 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %635, ptr %23, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  %636 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %636, ptr %8, align 4, !tbaa !9
  %637 = load ptr, ptr %5, align 8, !tbaa !5
  %638 = getelementptr inbounds %struct.w2c_hermes, ptr %637, i32 0, i32 3
  %639 = load i32, ptr %638, align 8, !tbaa !15
  store i32 %639, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %640 = load i32, ptr %46, align 4, !tbaa !9
  %641 = load i32, ptr %45, align 4, !tbaa !9
  %642 = sub i32 %641, %640
  store i32 %642, ptr %45, align 4, !tbaa !9
  %643 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %643, ptr %14, align 4, !tbaa !9
  %644 = load i32, ptr %45, align 4, !tbaa !9
  %645 = load ptr, ptr %5, align 8, !tbaa !5
  %646 = getelementptr inbounds %struct.w2c_hermes, ptr %645, i32 0, i32 3
  store i32 %644, ptr %646, align 8, !tbaa !15
  %647 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %647, ptr %45, align 4, !tbaa !9
  store i32 44, ptr %46, align 4, !tbaa !9
  %648 = load i32, ptr %46, align 4, !tbaa !9
  %649 = load i32, ptr %45, align 4, !tbaa !9
  %650 = add i32 %649, %648
  store i32 %650, ptr %45, align 4, !tbaa !9
  %651 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %651, ptr %25, align 4, !tbaa !9
  %652 = load ptr, ptr %5, align 8, !tbaa !5
  %653 = getelementptr inbounds %struct.w2c_hermes, ptr %652, i32 0, i32 6
  %654 = load i32, ptr %45, align 4, !tbaa !9
  %655 = zext i32 %654 to i64
  %656 = add i64 %655, 12
  %657 = call i32 @i32_load(ptr noundef %653, i64 noundef %656)
  store i32 %657, ptr %45, align 4, !tbaa !9
  %658 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %658, ptr %18, align 4, !tbaa !9
  %659 = load i32, ptr %45, align 4, !tbaa !9
  %660 = icmp ne i32 %659, 0
  %661 = xor i1 %660, true
  %662 = zext i1 %661 to i32
  store i32 %662, ptr %45, align 4, !tbaa !9
  %663 = load i32, ptr %45, align 4, !tbaa !9
  %664 = icmp ne i32 %663, 0
  br i1 %664, label %665, label %666

665:                                              ; preds = %622
  br label %825

666:                                              ; preds = %622
  %667 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %667, ptr %45, align 4, !tbaa !9
  %668 = load ptr, ptr %5, align 8, !tbaa !5
  %669 = getelementptr inbounds %struct.w2c_hermes, ptr %668, i32 0, i32 6
  %670 = load i32, ptr %45, align 4, !tbaa !9
  %671 = zext i32 %670 to i64
  %672 = call i32 @i32_load(ptr noundef %669, i64 noundef %671)
  store i32 %672, ptr %45, align 4, !tbaa !9
  %673 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %673, ptr %16, align 4, !tbaa !9
  %674 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %674, ptr %46, align 4, !tbaa !9
  %675 = load ptr, ptr %5, align 8, !tbaa !5
  %676 = getelementptr inbounds %struct.w2c_hermes, ptr %675, i32 0, i32 6
  %677 = load i32, ptr %46, align 4, !tbaa !9
  %678 = zext i32 %677 to i64
  %679 = call i32 @i32_load(ptr noundef %676, i64 noundef %678)
  store i32 %679, ptr %46, align 4, !tbaa !9
  %680 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %680, ptr %15, align 4, !tbaa !9
  %681 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %681, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %682 = load i32, ptr %48, align 4, !tbaa !9
  %683 = load i32, ptr %47, align 4, !tbaa !9
  %684 = sub i32 %683, %682
  store i32 %684, ptr %47, align 4, !tbaa !9
  %685 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %685, ptr %21, align 4, !tbaa !9
  %686 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %686, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %687 = load i32, ptr %49, align 4, !tbaa !9
  %688 = and i32 %687, 31
  %689 = load i32, ptr %48, align 4, !tbaa !9
  %690 = lshr i32 %689, %688
  store i32 %690, ptr %48, align 4, !tbaa !9
  %691 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %691, ptr %49, align 4, !tbaa !9
  store i32 9, ptr %50, align 4, !tbaa !9
  %692 = load i32, ptr %50, align 4, !tbaa !9
  %693 = and i32 %692, 31
  %694 = load i32, ptr %49, align 4, !tbaa !9
  %695 = lshr i32 %694, %693
  store i32 %695, ptr %49, align 4, !tbaa !9
  %696 = load i32, ptr %49, align 4, !tbaa !9
  %697 = load i32, ptr %48, align 4, !tbaa !9
  %698 = xor i32 %697, %696
  store i32 %698, ptr %48, align 4, !tbaa !9
  %699 = load i32, ptr %48, align 4, !tbaa !9
  %700 = load i32, ptr %47, align 4, !tbaa !9
  %701 = and i32 %700, %699
  store i32 %701, ptr %47, align 4, !tbaa !9
  %702 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %702, ptr %26, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %703 = load i32, ptr %48, align 4, !tbaa !9
  %704 = and i32 %703, 31
  %705 = load i32, ptr %47, align 4, !tbaa !9
  %706 = shl i32 %705, %704
  store i32 %706, ptr %47, align 4, !tbaa !9
  %707 = load i32, ptr %47, align 4, !tbaa !9
  %708 = load i32, ptr %46, align 4, !tbaa !9
  %709 = add i32 %708, %707
  store i32 %709, ptr %46, align 4, !tbaa !9
  %710 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %710, ptr %13, align 4, !tbaa !9
  %711 = load ptr, ptr %5, align 8, !tbaa !5
  %712 = getelementptr inbounds %struct.w2c_hermes, ptr %711, i32 0, i32 6
  %713 = load i32, ptr %46, align 4, !tbaa !9
  %714 = zext i32 %713 to i64
  %715 = call i32 @i32_load(ptr noundef %712, i64 noundef %714)
  store i32 %715, ptr %46, align 4, !tbaa !9
  %716 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %716, ptr %7, align 4, !tbaa !9
  %717 = load i32, ptr %45, align 4, !tbaa !9
  %718 = load i32, ptr %46, align 4, !tbaa !9
  %719 = icmp ne i32 %717, %718
  %720 = zext i1 %719 to i32
  store i32 %720, ptr %45, align 4, !tbaa !9
  %721 = load i32, ptr %45, align 4, !tbaa !9
  %722 = icmp ne i32 %721, 0
  br i1 %722, label %723, label %814

723:                                              ; preds = %666
  store i32 1, ptr %45, align 4, !tbaa !9
  %724 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %724, ptr %28, align 4, !tbaa !9
  br label %725

725:                                              ; preds = %812, %723
  %726 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %726, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %727 = load i32, ptr %45, align 4, !tbaa !9
  %728 = load i32, ptr %46, align 4, !tbaa !9
  %729 = icmp eq i32 %727, %728
  %730 = zext i1 %729 to i32
  store i32 %730, ptr %45, align 4, !tbaa !9
  %731 = load i32, ptr %45, align 4, !tbaa !9
  %732 = icmp ne i32 %731, 0
  br i1 %732, label %733, label %746

733:                                              ; preds = %725
  %734 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %734, ptr %45, align 4, !tbaa !9
  %735 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %735, ptr %46, align 4, !tbaa !9
  %736 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %736, ptr %47, align 4, !tbaa !9
  %737 = load i32, ptr %47, align 4, !tbaa !9
  %738 = icmp ne i32 %737, 0
  br i1 %738, label %739, label %741

739:                                              ; preds = %733
  %740 = load i32, ptr %45, align 4, !tbaa !9
  br label %743

741:                                              ; preds = %733
  %742 = load i32, ptr %46, align 4, !tbaa !9
  br label %743

743:                                              ; preds = %741, %739
  %744 = phi i32 [ %740, %739 ], [ %742, %741 ]
  store i32 %744, ptr %45, align 4, !tbaa !9
  %745 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %745, ptr %8, align 4, !tbaa !9
  br label %825

746:                                              ; preds = %725
  %747 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %747, ptr %45, align 4, !tbaa !9
  %748 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %748, ptr %46, align 4, !tbaa !9
  %749 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %749, ptr %47, align 4, !tbaa !9
  %750 = load i32, ptr %47, align 4, !tbaa !9
  %751 = icmp ne i32 %750, 0
  br i1 %751, label %752, label %754

752:                                              ; preds = %746
  %753 = load i32, ptr %45, align 4, !tbaa !9
  br label %756

754:                                              ; preds = %746
  %755 = load i32, ptr %46, align 4, !tbaa !9
  br label %756

756:                                              ; preds = %754, %752
  %757 = phi i32 [ %753, %752 ], [ %755, %754 ]
  store i32 %757, ptr %45, align 4, !tbaa !9
  %758 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %758, ptr %46, align 4, !tbaa !9
  %759 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %759, ptr %47, align 4, !tbaa !9
  store i32 -8, ptr %48, align 4, !tbaa !9
  %760 = load i32, ptr %47, align 4, !tbaa !9
  %761 = load i32, ptr %48, align 4, !tbaa !9
  %762 = icmp eq i32 %760, %761
  %763 = zext i1 %762 to i32
  store i32 %763, ptr %47, align 4, !tbaa !9
  %764 = load i32, ptr %47, align 4, !tbaa !9
  %765 = icmp ne i32 %764, 0
  br i1 %765, label %766, label %768

766:                                              ; preds = %756
  %767 = load i32, ptr %45, align 4, !tbaa !9
  br label %770

768:                                              ; preds = %756
  %769 = load i32, ptr %46, align 4, !tbaa !9
  br label %770

770:                                              ; preds = %768, %766
  %771 = phi i32 [ %767, %766 ], [ %769, %768 ]
  store i32 %771, ptr %45, align 4, !tbaa !9
  %772 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %772, ptr %8, align 4, !tbaa !9
  %773 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %773, ptr %45, align 4, !tbaa !9
  %774 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %774, ptr %46, align 4, !tbaa !9
  %775 = load i32, ptr %46, align 4, !tbaa !9
  %776 = load i32, ptr %45, align 4, !tbaa !9
  %777 = add i32 %776, %775
  store i32 %777, ptr %45, align 4, !tbaa !9
  %778 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %778, ptr %7, align 4, !tbaa !9
  %779 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %779, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %780 = load i32, ptr %46, align 4, !tbaa !9
  %781 = load i32, ptr %45, align 4, !tbaa !9
  %782 = add i32 %781, %780
  store i32 %782, ptr %45, align 4, !tbaa !9
  %783 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %783, ptr %28, align 4, !tbaa !9
  %784 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %784, ptr %45, align 4, !tbaa !9
  %785 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %785, ptr %46, align 4, !tbaa !9
  %786 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %786, ptr %47, align 4, !tbaa !9
  %787 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %787, ptr %48, align 4, !tbaa !9
  %788 = load i32, ptr %48, align 4, !tbaa !9
  %789 = load i32, ptr %47, align 4, !tbaa !9
  %790 = and i32 %789, %788
  store i32 %790, ptr %47, align 4, !tbaa !9
  %791 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %791, ptr %26, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %792 = load i32, ptr %48, align 4, !tbaa !9
  %793 = and i32 %792, 31
  %794 = load i32, ptr %47, align 4, !tbaa !9
  %795 = shl i32 %794, %793
  store i32 %795, ptr %47, align 4, !tbaa !9
  %796 = load i32, ptr %47, align 4, !tbaa !9
  %797 = load i32, ptr %46, align 4, !tbaa !9
  %798 = add i32 %797, %796
  store i32 %798, ptr %46, align 4, !tbaa !9
  %799 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %799, ptr %13, align 4, !tbaa !9
  %800 = load ptr, ptr %5, align 8, !tbaa !5
  %801 = getelementptr inbounds %struct.w2c_hermes, ptr %800, i32 0, i32 6
  %802 = load i32, ptr %46, align 4, !tbaa !9
  %803 = zext i32 %802 to i64
  %804 = call i32 @i32_load(ptr noundef %801, i64 noundef %803)
  store i32 %804, ptr %46, align 4, !tbaa !9
  %805 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %805, ptr %7, align 4, !tbaa !9
  %806 = load i32, ptr %45, align 4, !tbaa !9
  %807 = load i32, ptr %46, align 4, !tbaa !9
  %808 = icmp ne i32 %806, %807
  %809 = zext i1 %808 to i32
  store i32 %809, ptr %45, align 4, !tbaa !9
  %810 = load i32, ptr %45, align 4, !tbaa !9
  %811 = icmp ne i32 %810, 0
  br i1 %811, label %812, label %813

812:                                              ; preds = %770
  br label %725

813:                                              ; preds = %770
  br label %814

814:                                              ; preds = %813, %666
  store i32 0, ptr %45, align 4, !tbaa !9
  %815 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %815, ptr %8, align 4, !tbaa !9
  %816 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %816, ptr %45, align 4, !tbaa !9
  %817 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %817, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %818 = load i32, ptr %47, align 4, !tbaa !9
  %819 = and i32 %818, 31
  %820 = load i32, ptr %46, align 4, !tbaa !9
  %821 = shl i32 %820, %819
  store i32 %821, ptr %46, align 4, !tbaa !9
  %822 = load i32, ptr %46, align 4, !tbaa !9
  %823 = load i32, ptr %45, align 4, !tbaa !9
  %824 = add i32 %823, %822
  store i32 %824, ptr %45, align 4, !tbaa !9
  br label %856

825:                                              ; preds = %743, %665
  %826 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %826, ptr %45, align 4, !tbaa !9
  %827 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %827, ptr %46, align 4, !tbaa !9
  %828 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %828, ptr %47, align 4, !tbaa !9
  %829 = load ptr, ptr %5, align 8, !tbaa !5
  %830 = load i32, ptr %45, align 4, !tbaa !9
  %831 = load i32, ptr %46, align 4, !tbaa !9
  %832 = load i32, ptr %47, align 4, !tbaa !9
  %833 = call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x2A0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x2A0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AInstruction0x2A0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AInstruction0x2A0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x260x29(ptr noundef %829, i32 noundef %830, i32 noundef %831, i32 noundef %832)
  store i32 %833, ptr %45, align 4, !tbaa !9
  %834 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %834, ptr %13, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %835, ptr %8, align 4, !tbaa !9
  %836 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %836, ptr %45, align 4, !tbaa !9
  %837 = load ptr, ptr %5, align 8, !tbaa !5
  %838 = getelementptr inbounds %struct.w2c_hermes, ptr %837, i32 0, i32 6
  %839 = load i32, ptr %45, align 4, !tbaa !9
  %840 = zext i32 %839 to i64
  %841 = call i32 @i32_load(ptr noundef %838, i64 noundef %840)
  store i32 %841, ptr %45, align 4, !tbaa !9
  %842 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %842, ptr %46, align 4, !tbaa !9
  %843 = load ptr, ptr %5, align 8, !tbaa !5
  %844 = getelementptr inbounds %struct.w2c_hermes, ptr %843, i32 0, i32 6
  %845 = load i32, ptr %46, align 4, !tbaa !9
  %846 = zext i32 %845 to i64
  %847 = add i64 %846, 12
  %848 = call i32 @i32_load(ptr noundef %844, i64 noundef %847)
  store i32 %848, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %849 = load i32, ptr %47, align 4, !tbaa !9
  %850 = and i32 %849, 31
  %851 = load i32, ptr %46, align 4, !tbaa !9
  %852 = shl i32 %851, %850
  store i32 %852, ptr %46, align 4, !tbaa !9
  %853 = load i32, ptr %46, align 4, !tbaa !9
  %854 = load i32, ptr %45, align 4, !tbaa !9
  %855 = add i32 %854, %853
  store i32 %855, ptr %45, align 4, !tbaa !9
  br label %856

856:                                              ; preds = %825, %814
  %857 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %857, ptr %7, align 4, !tbaa !9
  %858 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %858, ptr %45, align 4, !tbaa !9
  %859 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %859, ptr %46, align 4, !tbaa !9
  %860 = load ptr, ptr %5, align 8, !tbaa !5
  %861 = getelementptr inbounds %struct.w2c_hermes, ptr %860, i32 0, i32 6
  %862 = load i32, ptr %45, align 4, !tbaa !9
  %863 = zext i32 %862 to i64
  %864 = add i64 %863, 28
  %865 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %861, i64 noundef %864, i32 noundef %865)
  %866 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %866, ptr %45, align 4, !tbaa !9
  %867 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %867, ptr %46, align 4, !tbaa !9
  %868 = load i32, ptr %46, align 4, !tbaa !9
  %869 = zext i32 %868 to i64
  store i64 %869, ptr %55, align 8, !tbaa !11
  %870 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %870, ptr %47, align 4, !tbaa !9
  %871 = load i32, ptr %47, align 4, !tbaa !9
  %872 = zext i32 %871 to i64
  store i64 %872, ptr %56, align 8, !tbaa !11
  store i64 32, ptr %57, align 8, !tbaa !11
  %873 = load i64, ptr %57, align 8, !tbaa !11
  %874 = and i64 %873, 63
  %875 = load i64, ptr %56, align 8, !tbaa !11
  %876 = shl i64 %875, %874
  store i64 %876, ptr %56, align 8, !tbaa !11
  %877 = load i64, ptr %56, align 8, !tbaa !11
  %878 = load i64, ptr %55, align 8, !tbaa !11
  %879 = or i64 %878, %877
  store i64 %879, ptr %55, align 8, !tbaa !11
  %880 = load ptr, ptr %5, align 8, !tbaa !5
  %881 = getelementptr inbounds %struct.w2c_hermes, ptr %880, i32 0, i32 6
  %882 = load i32, ptr %45, align 4, !tbaa !9
  %883 = zext i32 %882 to i64
  %884 = add i64 %883, 20
  %885 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %881, i64 noundef %884, i64 noundef %885)
  %886 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %886, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %887 = load i32, ptr %46, align 4, !tbaa !9
  %888 = load i32, ptr %45, align 4, !tbaa !9
  %889 = add i32 %888, %887
  store i32 %889, ptr %45, align 4, !tbaa !9
  %890 = load i32, ptr %45, align 4, !tbaa !9
  %891 = load ptr, ptr %5, align 8, !tbaa !5
  %892 = getelementptr inbounds %struct.w2c_hermes, ptr %891, i32 0, i32 3
  store i32 %890, ptr %892, align 8, !tbaa !15
  %893 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %893, ptr %45, align 4, !tbaa !9
  %894 = load ptr, ptr %5, align 8, !tbaa !5
  %895 = getelementptr inbounds %struct.w2c_hermes, ptr %894, i32 0, i32 6
  %896 = load i32, ptr %45, align 4, !tbaa !9
  %897 = zext i32 %896 to i64
  %898 = add i64 %897, 40
  %899 = call i32 @i32_load(ptr noundef %895, i64 noundef %898)
  store i32 %899, ptr %45, align 4, !tbaa !9
  %900 = load ptr, ptr %5, align 8, !tbaa !5
  %901 = getelementptr inbounds %struct.w2c_hermes, ptr %900, i32 0, i32 6
  %902 = load i32, ptr %45, align 4, !tbaa !9
  %903 = zext i32 %902 to i64
  %904 = add i64 %903, 8
  %905 = call i32 @i32_load(ptr noundef %901, i64 noundef %904)
  store i32 %905, ptr %45, align 4, !tbaa !9
  %906 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %906, ptr %14, align 4, !tbaa !9
  %907 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %907, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %908 = load i32, ptr %46, align 4, !tbaa !9
  %909 = load i32, ptr %45, align 4, !tbaa !9
  %910 = add i32 %909, %908
  store i32 %910, ptr %45, align 4, !tbaa !9
  %911 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %911, ptr %21, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %912 = load ptr, ptr %5, align 8, !tbaa !5
  %913 = getelementptr inbounds %struct.w2c_hermes, ptr %912, i32 0, i32 6
  %914 = load i32, ptr %45, align 4, !tbaa !9
  %915 = zext i32 %914 to i64
  %916 = add i64 %915, 8
  %917 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %913, i64 noundef %916, i32 noundef %917)
  %918 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %918, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %919 = load ptr, ptr %5, align 8, !tbaa !5
  %920 = getelementptr inbounds %struct.w2c_hermes, ptr %919, i32 0, i32 6
  %921 = load i32, ptr %45, align 4, !tbaa !9
  %922 = zext i32 %921 to i64
  %923 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %920, i64 noundef %922, i64 noundef %923)
  %924 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %924, ptr %45, align 4, !tbaa !9
  %925 = load i32, ptr %45, align 4, !tbaa !9
  %926 = icmp ne i32 %925, 0
  %927 = xor i1 %926, true
  %928 = zext i1 %927 to i32
  store i32 %928, ptr %45, align 4, !tbaa !9
  %929 = load i32, ptr %45, align 4, !tbaa !9
  %930 = icmp ne i32 %929, 0
  br i1 %930, label %931, label %932

931:                                              ; preds = %856
  br label %1090

932:                                              ; preds = %856
  %933 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %933, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %934 = load i32, ptr %45, align 4, !tbaa !9
  %935 = load i32, ptr %46, align 4, !tbaa !9
  %936 = icmp slt i32 %934, %935
  %937 = zext i1 %936 to i32
  store i32 %937, ptr %45, align 4, !tbaa !9
  %938 = load i32, ptr %45, align 4, !tbaa !9
  %939 = icmp ne i32 %938, 0
  br i1 %939, label %940, label %941

940:                                              ; preds = %932
  br label %1092

941:                                              ; preds = %932
  %942 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %942, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %943 = load i32, ptr %46, align 4, !tbaa !9
  %944 = load i32, ptr %45, align 4, !tbaa !9
  %945 = sub i32 %944, %943
  store i32 %945, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %946 = load i32, ptr %46, align 4, !tbaa !9
  %947 = and i32 %946, 31
  %948 = load i32, ptr %45, align 4, !tbaa !9
  %949 = lshr i32 %948, %947
  store i32 %949, ptr %45, align 4, !tbaa !9
  %950 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %950, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %951 = load i32, ptr %46, align 4, !tbaa !9
  %952 = load i32, ptr %45, align 4, !tbaa !9
  %953 = add i32 %952, %951
  store i32 %953, ptr %45, align 4, !tbaa !9
  %954 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %954, ptr %7, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %955 = load i32, ptr %46, align 4, !tbaa !9
  %956 = and i32 %955, 31
  %957 = load i32, ptr %45, align 4, !tbaa !9
  %958 = shl i32 %957, %956
  store i32 %958, ptr %45, align 4, !tbaa !9
  %959 = load ptr, ptr %5, align 8, !tbaa !5
  %960 = load i32, ptr %45, align 4, !tbaa !9
  %961 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %959, i32 noundef %960)
  store i32 %961, ptr %45, align 4, !tbaa !9
  %962 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %962, ptr %13, align 4, !tbaa !9
  %963 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %963, ptr %45, align 4, !tbaa !9
  %964 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %964, ptr %46, align 4, !tbaa !9
  %965 = load ptr, ptr %5, align 8, !tbaa !5
  %966 = getelementptr inbounds %struct.w2c_hermes, ptr %965, i32 0, i32 6
  %967 = load i32, ptr %45, align 4, !tbaa !9
  %968 = zext i32 %967 to i64
  %969 = add i64 %968, 8
  %970 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %966, i64 noundef %969, i32 noundef %970)
  %971 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %971, ptr %45, align 4, !tbaa !9
  %972 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %972, ptr %46, align 4, !tbaa !9
  %973 = load ptr, ptr %5, align 8, !tbaa !5
  %974 = getelementptr inbounds %struct.w2c_hermes, ptr %973, i32 0, i32 6
  %975 = load i32, ptr %45, align 4, !tbaa !9
  %976 = zext i32 %975 to i64
  %977 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %974, i64 noundef %976, i32 noundef %977)
  %978 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %978, ptr %45, align 4, !tbaa !9
  %979 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %979, ptr %46, align 4, !tbaa !9
  %980 = load ptr, ptr %5, align 8, !tbaa !5
  %981 = getelementptr inbounds %struct.w2c_hermes, ptr %980, i32 0, i32 6
  %982 = load i32, ptr %45, align 4, !tbaa !9
  %983 = zext i32 %982 to i64
  %984 = add i64 %983, 4
  %985 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %981, i64 noundef %984, i32 noundef %985)
  %986 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %986, ptr %45, align 4, !tbaa !9
  %987 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %987, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  %988 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %988, ptr %48, align 4, !tbaa !9
  store i32 33, ptr %49, align 4, !tbaa !9
  %989 = load i32, ptr %48, align 4, !tbaa !9
  %990 = load i32, ptr %49, align 4, !tbaa !9
  %991 = icmp uge i32 %989, %990
  %992 = zext i1 %991 to i32
  store i32 %992, ptr %48, align 4, !tbaa !9
  %993 = load i32, ptr %48, align 4, !tbaa !9
  %994 = icmp ne i32 %993, 0
  br i1 %994, label %995, label %997

995:                                              ; preds = %941
  %996 = load i32, ptr %46, align 4, !tbaa !9
  br label %999

997:                                              ; preds = %941
  %998 = load i32, ptr %47, align 4, !tbaa !9
  br label %999

999:                                              ; preds = %997, %995
  %1000 = phi i32 [ %996, %995 ], [ %998, %997 ]
  store i32 %1000, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %1001 = load i32, ptr %47, align 4, !tbaa !9
  %1002 = and i32 %1001, 31
  %1003 = load i32, ptr %46, align 4, !tbaa !9
  %1004 = shl i32 %1003, %1002
  store i32 %1004, ptr %46, align 4, !tbaa !9
  %1005 = load i32, ptr %46, align 4, !tbaa !9
  %1006 = load i32, ptr %45, align 4, !tbaa !9
  %1007 = add i32 %1006, %1005
  store i32 %1007, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %1008 = load ptr, ptr %5, align 8, !tbaa !5
  %1009 = getelementptr inbounds %struct.w2c_hermes, ptr %1008, i32 0, i32 6
  %1010 = load i32, ptr %45, align 4, !tbaa !9
  %1011 = zext i32 %1010 to i64
  %1012 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1009, i64 noundef %1011, i32 noundef %1012)
  %1013 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1013, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %1014 = load i32, ptr %46, align 4, !tbaa !9
  %1015 = and i32 %1014, 31
  %1016 = load i32, ptr %45, align 4, !tbaa !9
  %1017 = lshr i32 %1016, %1015
  store i32 %1017, ptr %45, align 4, !tbaa !9
  %1018 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1018, ptr %7, align 4, !tbaa !9
  %1019 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1019, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %1020 = load i32, ptr %45, align 4, !tbaa !9
  %1021 = load i32, ptr %46, align 4, !tbaa !9
  %1022 = icmp uge i32 %1020, %1021
  %1023 = zext i1 %1022 to i32
  store i32 %1023, ptr %45, align 4, !tbaa !9
  %1024 = load i32, ptr %45, align 4, !tbaa !9
  %1025 = icmp ne i32 %1024, 0
  br i1 %1025, label %1026, label %1038

1026:                                             ; preds = %999
  %1027 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1027, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %1028 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1028, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %1029 = load i32, ptr %48, align 4, !tbaa !9
  %1030 = and i32 %1029, 31
  %1031 = load i32, ptr %47, align 4, !tbaa !9
  %1032 = shl i32 %1031, %1030
  store i32 %1032, ptr %47, align 4, !tbaa !9
  %1033 = load ptr, ptr %5, align 8, !tbaa !5
  %1034 = load i32, ptr %45, align 4, !tbaa !9
  %1035 = load i32, ptr %46, align 4, !tbaa !9
  %1036 = load i32, ptr %47, align 4, !tbaa !9
  %1037 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %1033, i32 noundef %1034, i32 noundef %1035, i32 noundef %1036)
  store i32 %1037, ptr %45, align 4, !tbaa !9
  br label %1038

1038:                                             ; preds = %1026, %999
  %1039 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1039, ptr %45, align 4, !tbaa !9
  store i32 -32, ptr %46, align 4, !tbaa !9
  %1040 = load i32, ptr %46, align 4, !tbaa !9
  %1041 = load i32, ptr %45, align 4, !tbaa !9
  %1042 = and i32 %1041, %1040
  store i32 %1042, ptr %45, align 4, !tbaa !9
  %1043 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1043, ptr %46, align 4, !tbaa !9
  %1044 = load i32, ptr %45, align 4, !tbaa !9
  %1045 = load i32, ptr %46, align 4, !tbaa !9
  %1046 = icmp eq i32 %1044, %1045
  %1047 = zext i1 %1046 to i32
  store i32 %1047, ptr %45, align 4, !tbaa !9
  %1048 = load i32, ptr %45, align 4, !tbaa !9
  %1049 = icmp ne i32 %1048, 0
  br i1 %1049, label %1050, label %1051

1050:                                             ; preds = %1038
  br label %1090

1051:                                             ; preds = %1038
  %1052 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1052, ptr %45, align 4, !tbaa !9
  %1053 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1053, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %1054 = load i32, ptr %47, align 4, !tbaa !9
  %1055 = and i32 %1054, 31
  %1056 = load i32, ptr %46, align 4, !tbaa !9
  %1057 = shl i32 %1056, %1055
  store i32 %1057, ptr %46, align 4, !tbaa !9
  %1058 = load i32, ptr %46, align 4, !tbaa !9
  %1059 = load i32, ptr %45, align 4, !tbaa !9
  %1060 = add i32 %1059, %1058
  store i32 %1060, ptr %45, align 4, !tbaa !9
  %1061 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1061, ptr %7, align 4, !tbaa !9
  %1062 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1062, ptr %46, align 4, !tbaa !9
  %1063 = load ptr, ptr %5, align 8, !tbaa !5
  %1064 = getelementptr inbounds %struct.w2c_hermes, ptr %1063, i32 0, i32 6
  %1065 = load i32, ptr %46, align 4, !tbaa !9
  %1066 = zext i32 %1065 to i64
  %1067 = call i32 @i32_load(ptr noundef %1064, i64 noundef %1066)
  store i32 %1067, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  store i32 32, ptr %48, align 4, !tbaa !9
  %1068 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1068, ptr %49, align 4, !tbaa !9
  store i32 31, ptr %50, align 4, !tbaa !9
  %1069 = load i32, ptr %50, align 4, !tbaa !9
  %1070 = load i32, ptr %49, align 4, !tbaa !9
  %1071 = and i32 %1070, %1069
  store i32 %1071, ptr %49, align 4, !tbaa !9
  %1072 = load i32, ptr %49, align 4, !tbaa !9
  %1073 = load i32, ptr %48, align 4, !tbaa !9
  %1074 = sub i32 %1073, %1072
  store i32 %1074, ptr %48, align 4, !tbaa !9
  %1075 = load i32, ptr %48, align 4, !tbaa !9
  %1076 = and i32 %1075, 31
  %1077 = load i32, ptr %47, align 4, !tbaa !9
  %1078 = lshr i32 %1077, %1076
  store i32 %1078, ptr %47, align 4, !tbaa !9
  store i32 -1, ptr %48, align 4, !tbaa !9
  %1079 = load i32, ptr %48, align 4, !tbaa !9
  %1080 = load i32, ptr %47, align 4, !tbaa !9
  %1081 = xor i32 %1080, %1079
  store i32 %1081, ptr %47, align 4, !tbaa !9
  %1082 = load i32, ptr %47, align 4, !tbaa !9
  %1083 = load i32, ptr %46, align 4, !tbaa !9
  %1084 = and i32 %1083, %1082
  store i32 %1084, ptr %46, align 4, !tbaa !9
  %1085 = load ptr, ptr %5, align 8, !tbaa !5
  %1086 = getelementptr inbounds %struct.w2c_hermes, ptr %1085, i32 0, i32 6
  %1087 = load i32, ptr %45, align 4, !tbaa !9
  %1088 = zext i32 %1087 to i64
  %1089 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1086, i64 noundef %1088, i32 noundef %1089)
  br label %1090

1090:                                             ; preds = %1051, %1050, %931
  %1091 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1091, ptr %45, align 4, !tbaa !9
  br label %1094

1092:                                             ; preds = %940
  %1093 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_abort(ptr noundef %1093)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

1094:                                             ; preds = %1090
  %1095 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1095, ptr %25, align 4, !tbaa !9
  %1096 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1096, ptr %45, align 4, !tbaa !9
  %1097 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1097, ptr %46, align 4, !tbaa !9
  %1098 = load ptr, ptr %5, align 8, !tbaa !5
  %1099 = getelementptr inbounds %struct.w2c_hermes, ptr %1098, i32 0, i32 6
  %1100 = load i32, ptr %45, align 4, !tbaa !9
  %1101 = zext i32 %1100 to i64
  %1102 = add i64 %1101, 20
  %1103 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1099, i64 noundef %1102, i32 noundef %1103)
  %1104 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1104, ptr %45, align 4, !tbaa !9
  %1105 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1105, ptr %46, align 4, !tbaa !9
  %1106 = load ptr, ptr %5, align 8, !tbaa !5
  %1107 = getelementptr inbounds %struct.w2c_hermes, ptr %1106, i32 0, i32 6
  %1108 = load i32, ptr %46, align 4, !tbaa !9
  %1109 = zext i32 %1108 to i64
  %1110 = call i32 @i32_load(ptr noundef %1107, i64 noundef %1109)
  store i32 %1110, ptr %46, align 4, !tbaa !9
  %1111 = load ptr, ptr %5, align 8, !tbaa !5
  %1112 = getelementptr inbounds %struct.w2c_hermes, ptr %1111, i32 0, i32 6
  %1113 = load i32, ptr %45, align 4, !tbaa !9
  %1114 = zext i32 %1113 to i64
  %1115 = add i64 %1114, 24
  %1116 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1112, i64 noundef %1115, i32 noundef %1116)
  %1117 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1117, ptr %45, align 4, !tbaa !9
  %1118 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1118, ptr %46, align 4, !tbaa !9
  %1119 = load ptr, ptr %5, align 8, !tbaa !5
  %1120 = getelementptr inbounds %struct.w2c_hermes, ptr %1119, i32 0, i32 6
  %1121 = load i32, ptr %46, align 4, !tbaa !9
  %1122 = zext i32 %1121 to i64
  %1123 = add i64 %1122, 4
  %1124 = call i32 @i32_load(ptr noundef %1120, i64 noundef %1123)
  store i32 %1124, ptr %46, align 4, !tbaa !9
  %1125 = load ptr, ptr %5, align 8, !tbaa !5
  %1126 = getelementptr inbounds %struct.w2c_hermes, ptr %1125, i32 0, i32 6
  %1127 = load i32, ptr %45, align 4, !tbaa !9
  %1128 = zext i32 %1127 to i64
  %1129 = add i64 %1128, 28
  %1130 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1126, i64 noundef %1129, i32 noundef %1130)
  %1131 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1131, ptr %45, align 4, !tbaa !9
  %1132 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1132, ptr %46, align 4, !tbaa !9
  %1133 = load ptr, ptr %5, align 8, !tbaa !5
  %1134 = getelementptr inbounds %struct.w2c_hermes, ptr %1133, i32 0, i32 6
  %1135 = load i32, ptr %46, align 4, !tbaa !9
  %1136 = zext i32 %1135 to i64
  %1137 = add i64 %1136, 8
  %1138 = call i32 @i32_load(ptr noundef %1134, i64 noundef %1137)
  store i32 %1138, ptr %46, align 4, !tbaa !9
  %1139 = load ptr, ptr %5, align 8, !tbaa !5
  %1140 = getelementptr inbounds %struct.w2c_hermes, ptr %1139, i32 0, i32 6
  %1141 = load i32, ptr %45, align 4, !tbaa !9
  %1142 = zext i32 %1141 to i64
  %1143 = add i64 %1142, 32
  %1144 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1140, i64 noundef %1143, i32 noundef %1144)
  %1145 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1145, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %1146 = load ptr, ptr %5, align 8, !tbaa !5
  %1147 = getelementptr inbounds %struct.w2c_hermes, ptr %1146, i32 0, i32 6
  %1148 = load i32, ptr %45, align 4, !tbaa !9
  %1149 = zext i32 %1148 to i64
  %1150 = add i64 %1149, 8
  %1151 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1147, i64 noundef %1150, i32 noundef %1151)
  %1152 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %1152, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %1153 = load ptr, ptr %5, align 8, !tbaa !5
  %1154 = getelementptr inbounds %struct.w2c_hermes, ptr %1153, i32 0, i32 6
  %1155 = load i32, ptr %45, align 4, !tbaa !9
  %1156 = zext i32 %1155 to i64
  %1157 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1154, i64 noundef %1156, i64 noundef %1157)
  store i32 0, ptr %45, align 4, !tbaa !9
  %1158 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1158, ptr %8, align 4, !tbaa !9
  %1159 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1159, ptr %45, align 4, !tbaa !9
  %1160 = load ptr, ptr %5, align 8, !tbaa !5
  %1161 = getelementptr inbounds %struct.w2c_hermes, ptr %1160, i32 0, i32 6
  %1162 = load i32, ptr %45, align 4, !tbaa !9
  %1163 = zext i32 %1162 to i64
  %1164 = add i64 %1163, 40
  %1165 = call i32 @i32_load(ptr noundef %1161, i64 noundef %1164)
  store i32 %1165, ptr %45, align 4, !tbaa !9
  %1166 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1166, ptr %15, align 4, !tbaa !9
  %1167 = load i32, ptr %45, align 4, !tbaa !9
  %1168 = icmp ne i32 %1167, 0
  %1169 = xor i1 %1168, true
  %1170 = zext i1 %1169 to i32
  store i32 %1170, ptr %45, align 4, !tbaa !9
  %1171 = load i32, ptr %45, align 4, !tbaa !9
  %1172 = icmp ne i32 %1171, 0
  br i1 %1172, label %1173, label %1174

1173:                                             ; preds = %1094
  br label %1335

1174:                                             ; preds = %1094
  %1175 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1175, ptr %45, align 4, !tbaa !9
  %1176 = load ptr, ptr %5, align 8, !tbaa !5
  %1177 = getelementptr inbounds %struct.w2c_hermes, ptr %1176, i32 0, i32 6
  %1178 = load i32, ptr %45, align 4, !tbaa !9
  %1179 = zext i32 %1178 to i64
  %1180 = add i64 %1179, 20
  %1181 = call i32 @i32_load(ptr noundef %1177, i64 noundef %1180)
  store i32 %1181, ptr %45, align 4, !tbaa !9
  %1182 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1182, ptr %18, align 4, !tbaa !9
  %1183 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1183, ptr %46, align 4, !tbaa !9
  %1184 = load ptr, ptr %5, align 8, !tbaa !5
  %1185 = getelementptr inbounds %struct.w2c_hermes, ptr %1184, i32 0, i32 6
  %1186 = load i32, ptr %46, align 4, !tbaa !9
  %1187 = zext i32 %1186 to i64
  %1188 = add i64 %1187, 28
  %1189 = call i32 @i32_load(ptr noundef %1185, i64 noundef %1188)
  store i32 %1189, ptr %46, align 4, !tbaa !9
  %1190 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1190, ptr %14, align 4, !tbaa !9
  %1191 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1191, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %1192 = load i32, ptr %48, align 4, !tbaa !9
  %1193 = load i32, ptr %47, align 4, !tbaa !9
  %1194 = sub i32 %1193, %1192
  store i32 %1194, ptr %47, align 4, !tbaa !9
  %1195 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1195, ptr %21, align 4, !tbaa !9
  %1196 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1196, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %1197 = load i32, ptr %49, align 4, !tbaa !9
  %1198 = and i32 %1197, 31
  %1199 = load i32, ptr %48, align 4, !tbaa !9
  %1200 = lshr i32 %1199, %1198
  store i32 %1200, ptr %48, align 4, !tbaa !9
  %1201 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1201, ptr %49, align 4, !tbaa !9
  store i32 9, ptr %50, align 4, !tbaa !9
  %1202 = load i32, ptr %50, align 4, !tbaa !9
  %1203 = and i32 %1202, 31
  %1204 = load i32, ptr %49, align 4, !tbaa !9
  %1205 = lshr i32 %1204, %1203
  store i32 %1205, ptr %49, align 4, !tbaa !9
  %1206 = load i32, ptr %49, align 4, !tbaa !9
  %1207 = load i32, ptr %48, align 4, !tbaa !9
  %1208 = xor i32 %1207, %1206
  store i32 %1208, ptr %48, align 4, !tbaa !9
  %1209 = load i32, ptr %48, align 4, !tbaa !9
  %1210 = load i32, ptr %47, align 4, !tbaa !9
  %1211 = and i32 %1210, %1209
  store i32 %1211, ptr %47, align 4, !tbaa !9
  %1212 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1212, ptr %7, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %1213 = load i32, ptr %48, align 4, !tbaa !9
  %1214 = and i32 %1213, 31
  %1215 = load i32, ptr %47, align 4, !tbaa !9
  %1216 = shl i32 %1215, %1214
  store i32 %1216, ptr %47, align 4, !tbaa !9
  %1217 = load i32, ptr %47, align 4, !tbaa !9
  %1218 = load i32, ptr %46, align 4, !tbaa !9
  %1219 = add i32 %1218, %1217
  store i32 %1219, ptr %46, align 4, !tbaa !9
  %1220 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1220, ptr %13, align 4, !tbaa !9
  %1221 = load ptr, ptr %5, align 8, !tbaa !5
  %1222 = getelementptr inbounds %struct.w2c_hermes, ptr %1221, i32 0, i32 6
  %1223 = load i32, ptr %46, align 4, !tbaa !9
  %1224 = zext i32 %1223 to i64
  %1225 = call i32 @i32_load(ptr noundef %1222, i64 noundef %1224)
  store i32 %1225, ptr %46, align 4, !tbaa !9
  %1226 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1226, ptr %11, align 4, !tbaa !9
  %1227 = load i32, ptr %45, align 4, !tbaa !9
  %1228 = load i32, ptr %46, align 4, !tbaa !9
  %1229 = icmp ne i32 %1227, %1228
  %1230 = zext i1 %1229 to i32
  store i32 %1230, ptr %45, align 4, !tbaa !9
  %1231 = load i32, ptr %45, align 4, !tbaa !9
  %1232 = icmp ne i32 %1231, 0
  br i1 %1232, label %1233, label %1324

1233:                                             ; preds = %1174
  store i32 1, ptr %45, align 4, !tbaa !9
  %1234 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1234, ptr %26, align 4, !tbaa !9
  br label %1235

1235:                                             ; preds = %1322, %1233
  %1236 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1236, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1237 = load i32, ptr %45, align 4, !tbaa !9
  %1238 = load i32, ptr %46, align 4, !tbaa !9
  %1239 = icmp eq i32 %1237, %1238
  %1240 = zext i1 %1239 to i32
  store i32 %1240, ptr %45, align 4, !tbaa !9
  %1241 = load i32, ptr %45, align 4, !tbaa !9
  %1242 = icmp ne i32 %1241, 0
  br i1 %1242, label %1243, label %1256

1243:                                             ; preds = %1235
  %1244 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1244, ptr %45, align 4, !tbaa !9
  %1245 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1245, ptr %46, align 4, !tbaa !9
  %1246 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1246, ptr %47, align 4, !tbaa !9
  %1247 = load i32, ptr %47, align 4, !tbaa !9
  %1248 = icmp ne i32 %1247, 0
  br i1 %1248, label %1249, label %1251

1249:                                             ; preds = %1243
  %1250 = load i32, ptr %45, align 4, !tbaa !9
  br label %1253

1251:                                             ; preds = %1243
  %1252 = load i32, ptr %46, align 4, !tbaa !9
  br label %1253

1253:                                             ; preds = %1251, %1249
  %1254 = phi i32 [ %1250, %1249 ], [ %1252, %1251 ]
  store i32 %1254, ptr %45, align 4, !tbaa !9
  %1255 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1255, ptr %8, align 4, !tbaa !9
  br label %1335

1256:                                             ; preds = %1235
  %1257 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1257, ptr %45, align 4, !tbaa !9
  %1258 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1258, ptr %46, align 4, !tbaa !9
  %1259 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1259, ptr %47, align 4, !tbaa !9
  %1260 = load i32, ptr %47, align 4, !tbaa !9
  %1261 = icmp ne i32 %1260, 0
  br i1 %1261, label %1262, label %1264

1262:                                             ; preds = %1256
  %1263 = load i32, ptr %45, align 4, !tbaa !9
  br label %1266

1264:                                             ; preds = %1256
  %1265 = load i32, ptr %46, align 4, !tbaa !9
  br label %1266

1266:                                             ; preds = %1264, %1262
  %1267 = phi i32 [ %1263, %1262 ], [ %1265, %1264 ]
  store i32 %1267, ptr %45, align 4, !tbaa !9
  %1268 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1268, ptr %46, align 4, !tbaa !9
  %1269 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1269, ptr %47, align 4, !tbaa !9
  store i32 -8, ptr %48, align 4, !tbaa !9
  %1270 = load i32, ptr %47, align 4, !tbaa !9
  %1271 = load i32, ptr %48, align 4, !tbaa !9
  %1272 = icmp eq i32 %1270, %1271
  %1273 = zext i1 %1272 to i32
  store i32 %1273, ptr %47, align 4, !tbaa !9
  %1274 = load i32, ptr %47, align 4, !tbaa !9
  %1275 = icmp ne i32 %1274, 0
  br i1 %1275, label %1276, label %1278

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

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

1280:                                             ; preds = %1278, %1276
  %1281 = phi i32 [ %1277, %1276 ], [ %1279, %1278 ]
  store i32 %1281, ptr %45, align 4, !tbaa !9
  %1282 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1282, ptr %8, align 4, !tbaa !9
  %1283 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1283, ptr %45, align 4, !tbaa !9
  %1284 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1284, ptr %46, align 4, !tbaa !9
  %1285 = load i32, ptr %46, align 4, !tbaa !9
  %1286 = load i32, ptr %45, align 4, !tbaa !9
  %1287 = add i32 %1286, %1285
  store i32 %1287, ptr %45, align 4, !tbaa !9
  %1288 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1288, ptr %7, align 4, !tbaa !9
  %1289 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1289, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1290 = load i32, ptr %46, align 4, !tbaa !9
  %1291 = load i32, ptr %45, align 4, !tbaa !9
  %1292 = add i32 %1291, %1290
  store i32 %1292, ptr %45, align 4, !tbaa !9
  %1293 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1293, ptr %26, align 4, !tbaa !9
  %1294 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1294, ptr %45, align 4, !tbaa !9
  %1295 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1295, ptr %46, align 4, !tbaa !9
  %1296 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1296, ptr %47, align 4, !tbaa !9
  %1297 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1297, ptr %48, align 4, !tbaa !9
  %1298 = load i32, ptr %48, align 4, !tbaa !9
  %1299 = load i32, ptr %47, align 4, !tbaa !9
  %1300 = and i32 %1299, %1298
  store i32 %1300, ptr %47, align 4, !tbaa !9
  %1301 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1301, ptr %7, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %1302 = load i32, ptr %48, align 4, !tbaa !9
  %1303 = and i32 %1302, 31
  %1304 = load i32, ptr %47, align 4, !tbaa !9
  %1305 = shl i32 %1304, %1303
  store i32 %1305, ptr %47, align 4, !tbaa !9
  %1306 = load i32, ptr %47, align 4, !tbaa !9
  %1307 = load i32, ptr %46, align 4, !tbaa !9
  %1308 = add i32 %1307, %1306
  store i32 %1308, ptr %46, align 4, !tbaa !9
  %1309 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1309, ptr %13, align 4, !tbaa !9
  %1310 = load ptr, ptr %5, align 8, !tbaa !5
  %1311 = getelementptr inbounds %struct.w2c_hermes, ptr %1310, i32 0, i32 6
  %1312 = load i32, ptr %46, align 4, !tbaa !9
  %1313 = zext i32 %1312 to i64
  %1314 = call i32 @i32_load(ptr noundef %1311, i64 noundef %1313)
  store i32 %1314, ptr %46, align 4, !tbaa !9
  %1315 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1315, ptr %11, align 4, !tbaa !9
  %1316 = load i32, ptr %45, align 4, !tbaa !9
  %1317 = load i32, ptr %46, align 4, !tbaa !9
  %1318 = icmp ne i32 %1316, %1317
  %1319 = zext i1 %1318 to i32
  store i32 %1319, ptr %45, align 4, !tbaa !9
  %1320 = load i32, ptr %45, align 4, !tbaa !9
  %1321 = icmp ne i32 %1320, 0
  br i1 %1321, label %1322, label %1323

1322:                                             ; preds = %1280
  br label %1235

1323:                                             ; preds = %1280
  br label %1324

1324:                                             ; preds = %1323, %1174
  store i32 0, ptr %45, align 4, !tbaa !9
  %1325 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1325, ptr %7, align 4, !tbaa !9
  %1326 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1326, ptr %45, align 4, !tbaa !9
  %1327 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1327, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %1328 = load i32, ptr %47, align 4, !tbaa !9
  %1329 = and i32 %1328, 31
  %1330 = load i32, ptr %46, align 4, !tbaa !9
  %1331 = shl i32 %1330, %1329
  store i32 %1331, ptr %46, align 4, !tbaa !9
  %1332 = load i32, ptr %46, align 4, !tbaa !9
  %1333 = load i32, ptr %45, align 4, !tbaa !9
  %1334 = add i32 %1333, %1332
  store i32 %1334, ptr %45, align 4, !tbaa !9
  br label %2428

1335:                                             ; preds = %1253, %1173
  %1336 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1336, ptr %45, 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 %45, align 4, !tbaa !9
  %1340 = zext i32 %1339 to i64
  %1341 = add i64 %1340, 32
  %1342 = call i32 @i32_load(ptr noundef %1338, i64 noundef %1341)
  store i32 %1342, ptr %45, align 4, !tbaa !9
  %1343 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1343, ptr %21, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %1344 = load i32, ptr %46, align 4, !tbaa !9
  %1345 = and i32 %1344, 31
  %1346 = load i32, ptr %45, align 4, !tbaa !9
  %1347 = shl i32 %1346, %1345
  store i32 %1347, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %1348 = load i32, ptr %46, align 4, !tbaa !9
  %1349 = load i32, ptr %45, align 4, !tbaa !9
  %1350 = add i32 %1349, %1348
  store i32 %1350, ptr %45, align 4, !tbaa !9
  %1351 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1351, ptr %46, align 4, !tbaa !9
  %1352 = load ptr, ptr %5, align 8, !tbaa !5
  %1353 = getelementptr inbounds %struct.w2c_hermes, ptr %1352, i32 0, i32 6
  %1354 = load i32, ptr %46, align 4, !tbaa !9
  %1355 = zext i32 %1354 to i64
  %1356 = add i64 %1355, 40
  %1357 = call i32 @i32_load(ptr noundef %1353, i64 noundef %1356)
  store i32 %1357, ptr %46, align 4, !tbaa !9
  %1358 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1358, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %1359 = load i32, ptr %47, align 4, !tbaa !9
  %1360 = load i32, ptr %46, align 4, !tbaa !9
  %1361 = mul i32 %1360, %1359
  store i32 %1361, ptr %46, align 4, !tbaa !9
  %1362 = load i32, ptr %45, align 4, !tbaa !9
  %1363 = load i32, ptr %46, align 4, !tbaa !9
  %1364 = icmp uge i32 %1362, %1363
  %1365 = zext i1 %1364 to i32
  store i32 %1365, ptr %45, align 4, !tbaa !9
  %1366 = load i32, ptr %45, align 4, !tbaa !9
  %1367 = icmp ne i32 %1366, 0
  br i1 %1367, label %1368, label %1375

1368:                                             ; preds = %1335
  %1369 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1369, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1370 = load i32, ptr %46, align 4, !tbaa !9
  %1371 = and i32 %1370, 31
  %1372 = load i32, ptr %45, align 4, !tbaa !9
  %1373 = shl i32 %1372, %1371
  store i32 %1373, ptr %45, align 4, !tbaa !9
  %1374 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1374, ptr %7, align 4, !tbaa !9
  br label %1408

1375:                                             ; preds = %1335
  %1376 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1376, ptr %45, align 4, !tbaa !9
  %1377 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1377, ptr %7, align 4, !tbaa !9
  %1378 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1378, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %1379 = load i32, ptr %47, align 4, !tbaa !9
  %1380 = load i32, ptr %46, align 4, !tbaa !9
  %1381 = xor i32 %1380, %1379
  store i32 %1381, ptr %46, align 4, !tbaa !9
  %1382 = load i32, ptr %46, align 4, !tbaa !9
  %1383 = load i32, ptr %45, align 4, !tbaa !9
  %1384 = add i32 %1383, %1382
  store i32 %1384, ptr %45, align 4, !tbaa !9
  %1385 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1385, ptr %46, align 4, !tbaa !9
  %1386 = load ptr, ptr %5, align 8, !tbaa !5
  %1387 = getelementptr inbounds %struct.w2c_hermes, ptr %1386, i32 0, i32 6
  %1388 = load i32, ptr %46, align 4, !tbaa !9
  %1389 = zext i32 %1388 to i64
  %1390 = add i64 %1389, 36
  %1391 = call i32 @i32_load(ptr noundef %1387, i64 noundef %1390)
  store i32 %1391, ptr %46, align 4, !tbaa !9
  %1392 = load i32, ptr %46, align 4, !tbaa !9
  %1393 = load i32, ptr %45, align 4, !tbaa !9
  %1394 = sub i32 %1393, %1392
  store i32 %1394, ptr %45, align 4, !tbaa !9
  %1395 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1395, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %1396 = load i32, ptr %47, align 4, !tbaa !9
  %1397 = and i32 %1396, 31
  %1398 = load i32, ptr %46, align 4, !tbaa !9
  %1399 = lshr i32 %1398, %1397
  store i32 %1399, ptr %46, align 4, !tbaa !9
  %1400 = load i32, ptr %45, align 4, !tbaa !9
  %1401 = load i32, ptr %46, align 4, !tbaa !9
  %1402 = icmp ugt i32 %1400, %1401
  %1403 = zext i1 %1402 to i32
  store i32 %1403, ptr %45, align 4, !tbaa !9
  %1404 = load i32, ptr %45, align 4, !tbaa !9
  %1405 = icmp ne i32 %1404, 0
  br i1 %1405, label %1406, label %1407

1406:                                             ; preds = %1375
  br label %2283

1407:                                             ; preds = %1375
  br label %1408

1408:                                             ; preds = %1407, %1368
  %1409 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1409, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %1410 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1410, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %1411 = load i32, ptr %48, align 4, !tbaa !9
  %1412 = load i32, ptr %47, align 4, !tbaa !9
  %1413 = sub i32 %1412, %1411
  store i32 %1413, ptr %47, align 4, !tbaa !9
  %1414 = load i32, ptr %47, align 4, !tbaa !9
  %1415 = zext i32 %1414 to i64
  store i64 %1415, ptr %56, align 8, !tbaa !11
  %1416 = load i64, ptr %56, align 8, !tbaa !11
  store i64 %1416, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %57, align 8, !tbaa !11
  %1417 = load i64, ptr %57, align 8, !tbaa !11
  %1418 = and i64 %1417, 63
  %1419 = load i64, ptr %56, align 8, !tbaa !11
  %1420 = lshr i64 %1419, %1418
  store i64 %1420, ptr %56, align 8, !tbaa !11
  %1421 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1421, ptr %57, align 8, !tbaa !11
  %1422 = load i64, ptr %57, align 8, !tbaa !11
  %1423 = load i64, ptr %56, align 8, !tbaa !11
  %1424 = or i64 %1423, %1422
  store i64 %1424, ptr %56, align 8, !tbaa !11
  %1425 = load i64, ptr %56, align 8, !tbaa !11
  store i64 %1425, ptr %39, align 8, !tbaa !11
  store i64 2, ptr %57, align 8, !tbaa !11
  %1426 = load i64, ptr %57, align 8, !tbaa !11
  %1427 = and i64 %1426, 63
  %1428 = load i64, ptr %56, align 8, !tbaa !11
  %1429 = lshr i64 %1428, %1427
  store i64 %1429, ptr %56, align 8, !tbaa !11
  %1430 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1430, ptr %57, align 8, !tbaa !11
  %1431 = load i64, ptr %57, align 8, !tbaa !11
  %1432 = load i64, ptr %56, align 8, !tbaa !11
  %1433 = or i64 %1432, %1431
  store i64 %1433, ptr %56, align 8, !tbaa !11
  %1434 = load i64, ptr %56, align 8, !tbaa !11
  store i64 %1434, ptr %39, align 8, !tbaa !11
  store i64 4, ptr %57, align 8, !tbaa !11
  %1435 = load i64, ptr %57, align 8, !tbaa !11
  %1436 = and i64 %1435, 63
  %1437 = load i64, ptr %56, align 8, !tbaa !11
  %1438 = lshr i64 %1437, %1436
  store i64 %1438, ptr %56, align 8, !tbaa !11
  %1439 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1439, ptr %57, align 8, !tbaa !11
  %1440 = load i64, ptr %57, align 8, !tbaa !11
  %1441 = load i64, ptr %56, align 8, !tbaa !11
  %1442 = or i64 %1441, %1440
  store i64 %1442, ptr %56, align 8, !tbaa !11
  %1443 = load i64, ptr %56, align 8, !tbaa !11
  store i64 %1443, ptr %39, align 8, !tbaa !11
  store i64 8, ptr %57, align 8, !tbaa !11
  %1444 = load i64, ptr %57, align 8, !tbaa !11
  %1445 = and i64 %1444, 63
  %1446 = load i64, ptr %56, align 8, !tbaa !11
  %1447 = lshr i64 %1446, %1445
  store i64 %1447, ptr %56, align 8, !tbaa !11
  %1448 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1448, ptr %57, align 8, !tbaa !11
  %1449 = load i64, ptr %57, align 8, !tbaa !11
  %1450 = load i64, ptr %56, align 8, !tbaa !11
  %1451 = or i64 %1450, %1449
  store i64 %1451, ptr %56, align 8, !tbaa !11
  %1452 = load i64, ptr %56, align 8, !tbaa !11
  store i64 %1452, ptr %39, align 8, !tbaa !11
  store i64 16, ptr %57, align 8, !tbaa !11
  %1453 = load i64, ptr %57, align 8, !tbaa !11
  %1454 = and i64 %1453, 63
  %1455 = load i64, ptr %56, align 8, !tbaa !11
  %1456 = lshr i64 %1455, %1454
  store i64 %1456, ptr %56, align 8, !tbaa !11
  %1457 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %1457, ptr %57, align 8, !tbaa !11
  %1458 = load i64, ptr %57, align 8, !tbaa !11
  %1459 = load i64, ptr %56, align 8, !tbaa !11
  %1460 = or i64 %1459, %1458
  store i64 %1460, ptr %56, align 8, !tbaa !11
  %1461 = load i64, ptr %56, align 8, !tbaa !11
  %1462 = trunc i64 %1461 to i32
  store i32 %1462, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %1463 = load i32, ptr %48, align 4, !tbaa !9
  %1464 = load i32, ptr %47, align 4, !tbaa !9
  %1465 = add i32 %1464, %1463
  store i32 %1465, ptr %47, align 4, !tbaa !9
  %1466 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1466, ptr %7, align 4, !tbaa !9
  %1467 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1467, ptr %48, align 4, !tbaa !9
  store i32 64, ptr %49, align 4, !tbaa !9
  %1468 = load i32, ptr %48, align 4, !tbaa !9
  %1469 = load i32, ptr %49, align 4, !tbaa !9
  %1470 = icmp ule i32 %1468, %1469
  %1471 = zext i1 %1470 to i32
  store i32 %1471, ptr %48, align 4, !tbaa !9
  %1472 = load i32, ptr %48, align 4, !tbaa !9
  %1473 = icmp ne i32 %1472, 0
  br i1 %1473, label %1474, label %1476

1474:                                             ; preds = %1408
  %1475 = load i32, ptr %46, align 4, !tbaa !9
  br label %1478

1476:                                             ; preds = %1408
  %1477 = load i32, ptr %47, align 4, !tbaa !9
  br label %1478

1478:                                             ; preds = %1476, %1474
  %1479 = phi i32 [ %1475, %1474 ], [ %1477, %1476 ]
  store i32 %1479, ptr %46, align 4, !tbaa !9
  %1480 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1480, ptr %7, align 4, !tbaa !9
  %1481 = load ptr, ptr %5, align 8, !tbaa !5
  %1482 = getelementptr inbounds %struct.w2c_hermes, ptr %1481, i32 0, i32 6
  %1483 = load i32, ptr %45, align 4, !tbaa !9
  %1484 = zext i32 %1483 to i64
  %1485 = add i64 %1484, 40
  %1486 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1482, i64 noundef %1485, i32 noundef %1486)
  %1487 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1487, ptr %45, align 4, !tbaa !9
  %1488 = load ptr, ptr %5, align 8, !tbaa !5
  %1489 = getelementptr inbounds %struct.w2c_hermes, ptr %1488, i32 0, i32 6
  %1490 = load i32, ptr %45, align 4, !tbaa !9
  %1491 = zext i32 %1490 to i64
  %1492 = add i64 %1491, 28
  %1493 = call i32 @i32_load(ptr noundef %1489, i64 noundef %1492)
  store i32 %1493, ptr %45, align 4, !tbaa !9
  %1494 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1494, ptr %8, align 4, !tbaa !9
  %1495 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1495, ptr %45, align 4, !tbaa !9
  %1496 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1496, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %1497 = load i32, ptr %47, align 4, !tbaa !9
  %1498 = and i32 %1497, 31
  %1499 = load i32, ptr %46, align 4, !tbaa !9
  %1500 = shl i32 %1499, %1498
  store i32 %1500, ptr %46, align 4, !tbaa !9
  %1501 = load ptr, ptr %5, align 8, !tbaa !5
  %1502 = load i32, ptr %46, align 4, !tbaa !9
  %1503 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %1501, i32 noundef %1502)
  store i32 %1503, ptr %46, align 4, !tbaa !9
  %1504 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1504, ptr %7, 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 %45, align 4, !tbaa !9
  %1508 = zext i32 %1507 to i64
  %1509 = add i64 %1508, 28
  %1510 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1506, i64 noundef %1509, i32 noundef %1510)
  %1511 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1511, ptr %45, align 4, !tbaa !9
  %1512 = load i32, ptr %45, align 4, !tbaa !9
  %1513 = icmp ne i32 %1512, 0
  %1514 = xor i1 %1513, true
  %1515 = zext i1 %1514 to i32
  store i32 %1515, ptr %45, align 4, !tbaa !9
  %1516 = load i32, ptr %45, align 4, !tbaa !9
  %1517 = icmp ne i32 %1516, 0
  br i1 %1517, label %1518, label %1668

1518:                                             ; preds = %1478
  %1519 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1519, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %1520 = load ptr, ptr %5, align 8, !tbaa !5
  %1521 = getelementptr inbounds %struct.w2c_hermes, ptr %1520, i32 0, i32 6
  %1522 = load i32, ptr %45, align 4, !tbaa !9
  %1523 = zext i32 %1522 to i64
  %1524 = add i64 %1523, 32
  %1525 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1521, i64 noundef %1524, i64 noundef %1525)
  %1526 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1526, ptr %45, align 4, !tbaa !9
  %1527 = load ptr, ptr %5, align 8, !tbaa !5
  %1528 = getelementptr inbounds %struct.w2c_hermes, ptr %1527, i32 0, i32 6
  %1529 = load i32, ptr %45, align 4, !tbaa !9
  %1530 = zext i32 %1529 to i64
  %1531 = add i64 %1530, 40
  %1532 = call i32 @i32_load(ptr noundef %1528, i64 noundef %1531)
  store i32 %1532, ptr %45, align 4, !tbaa !9
  %1533 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1533, ptr %11, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1534 = load i32, ptr %46, align 4, !tbaa !9
  %1535 = load i32, ptr %45, align 4, !tbaa !9
  %1536 = sub i32 %1535, %1534
  store i32 %1536, ptr %45, align 4, !tbaa !9
  store i32 268435455, ptr %46, align 4, !tbaa !9
  %1537 = load i32, ptr %46, align 4, !tbaa !9
  %1538 = load i32, ptr %45, align 4, !tbaa !9
  %1539 = and i32 %1538, %1537
  store i32 %1539, ptr %45, align 4, !tbaa !9
  %1540 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1540, ptr %14, align 4, !tbaa !9
  %1541 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1541, ptr %45, align 4, !tbaa !9
  %1542 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1542, ptr %8, align 4, !tbaa !9
  %1543 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1543, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %1544 = load i32, ptr %46, align 4, !tbaa !9
  %1545 = load i32, ptr %45, align 4, !tbaa !9
  %1546 = and i32 %1545, %1544
  store i32 %1546, ptr %45, align 4, !tbaa !9
  %1547 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1547, ptr %21, align 4, !tbaa !9
  %1548 = load i32, ptr %45, align 4, !tbaa !9
  %1549 = icmp ne i32 %1548, 0
  br i1 %1549, label %1550, label %1578

1550:                                             ; preds = %1518
  store i32 0, ptr %45, align 4, !tbaa !9
  %1551 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1551, ptr %13, align 4, !tbaa !9
  br label %1552

1552:                                             ; preds = %1576, %1550
  %1553 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1553, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1554 = load ptr, ptr %5, align 8, !tbaa !5
  %1555 = getelementptr inbounds %struct.w2c_hermes, ptr %1554, i32 0, i32 6
  %1556 = load i32, ptr %45, align 4, !tbaa !9
  %1557 = zext i32 %1556 to i64
  %1558 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1555, i64 noundef %1557, i32 noundef %1558)
  %1559 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1559, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %1560 = load i32, ptr %46, align 4, !tbaa !9
  %1561 = load i32, ptr %45, align 4, !tbaa !9
  %1562 = add i32 %1561, %1560
  store i32 %1562, ptr %45, align 4, !tbaa !9
  %1563 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1563, ptr %8, align 4, !tbaa !9
  %1564 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1564, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1565 = load i32, ptr %46, align 4, !tbaa !9
  %1566 = load i32, ptr %45, align 4, !tbaa !9
  %1567 = add i32 %1566, %1565
  store i32 %1567, ptr %45, align 4, !tbaa !9
  %1568 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1568, ptr %13, align 4, !tbaa !9
  %1569 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1569, ptr %46, align 4, !tbaa !9
  %1570 = load i32, ptr %45, align 4, !tbaa !9
  %1571 = load i32, ptr %46, align 4, !tbaa !9
  %1572 = icmp ne i32 %1570, %1571
  %1573 = zext i1 %1572 to i32
  store i32 %1573, ptr %45, align 4, !tbaa !9
  %1574 = load i32, ptr %45, align 4, !tbaa !9
  %1575 = icmp ne i32 %1574, 0
  br i1 %1575, label %1576, label %1577

1576:                                             ; preds = %1552
  br label %1552

1577:                                             ; preds = %1552
  br label %1578

1578:                                             ; preds = %1577, %1518
  %1579 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1579, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %1580 = load i32, ptr %45, align 4, !tbaa !9
  %1581 = load i32, ptr %46, align 4, !tbaa !9
  %1582 = icmp ult i32 %1580, %1581
  %1583 = zext i1 %1582 to i32
  store i32 %1583, ptr %45, align 4, !tbaa !9
  %1584 = load i32, ptr %45, align 4, !tbaa !9
  %1585 = icmp ne i32 %1584, 0
  br i1 %1585, label %1586, label %1587

1586:                                             ; preds = %1578
  br label %2138

1587:                                             ; preds = %1578
  %1588 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1588, ptr %45, align 4, !tbaa !9
  %1589 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1589, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %1590 = load i32, ptr %47, align 4, !tbaa !9
  %1591 = and i32 %1590, 31
  %1592 = load i32, ptr %46, align 4, !tbaa !9
  %1593 = shl i32 %1592, %1591
  store i32 %1593, ptr %46, align 4, !tbaa !9
  %1594 = load i32, ptr %46, align 4, !tbaa !9
  %1595 = load i32, ptr %45, align 4, !tbaa !9
  %1596 = add i32 %1595, %1594
  store i32 %1596, ptr %45, align 4, !tbaa !9
  %1597 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1597, ptr %13, align 4, !tbaa !9
  br label %1598

1598:                                             ; preds = %1666, %1587
  %1599 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1599, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1600 = load ptr, ptr %5, align 8, !tbaa !5
  %1601 = getelementptr inbounds %struct.w2c_hermes, ptr %1600, i32 0, i32 6
  %1602 = load i32, ptr %45, align 4, !tbaa !9
  %1603 = zext i32 %1602 to i64
  %1604 = add i64 %1603, 112
  %1605 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1601, i64 noundef %1604, i32 noundef %1605)
  %1606 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1606, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1607 = load ptr, ptr %5, align 8, !tbaa !5
  %1608 = getelementptr inbounds %struct.w2c_hermes, ptr %1607, i32 0, i32 6
  %1609 = load i32, ptr %45, align 4, !tbaa !9
  %1610 = zext i32 %1609 to i64
  %1611 = add i64 %1610, 96
  %1612 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1608, i64 noundef %1611, i32 noundef %1612)
  %1613 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1613, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1614 = load ptr, ptr %5, align 8, !tbaa !5
  %1615 = getelementptr inbounds %struct.w2c_hermes, ptr %1614, i32 0, i32 6
  %1616 = load i32, ptr %45, align 4, !tbaa !9
  %1617 = zext i32 %1616 to i64
  %1618 = add i64 %1617, 80
  %1619 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1615, i64 noundef %1618, i32 noundef %1619)
  %1620 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1620, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1621 = load ptr, ptr %5, align 8, !tbaa !5
  %1622 = getelementptr inbounds %struct.w2c_hermes, ptr %1621, i32 0, i32 6
  %1623 = load i32, ptr %45, align 4, !tbaa !9
  %1624 = zext i32 %1623 to i64
  %1625 = add i64 %1624, 64
  %1626 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1622, i64 noundef %1625, i32 noundef %1626)
  %1627 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1627, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1628 = load ptr, ptr %5, align 8, !tbaa !5
  %1629 = getelementptr inbounds %struct.w2c_hermes, ptr %1628, i32 0, i32 6
  %1630 = load i32, ptr %45, align 4, !tbaa !9
  %1631 = zext i32 %1630 to i64
  %1632 = add i64 %1631, 48
  %1633 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1629, i64 noundef %1632, i32 noundef %1633)
  %1634 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1634, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1635 = load ptr, ptr %5, align 8, !tbaa !5
  %1636 = getelementptr inbounds %struct.w2c_hermes, ptr %1635, i32 0, i32 6
  %1637 = load i32, ptr %45, align 4, !tbaa !9
  %1638 = zext i32 %1637 to i64
  %1639 = add i64 %1638, 32
  %1640 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1636, i64 noundef %1639, i32 noundef %1640)
  %1641 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1641, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1642 = load ptr, ptr %5, align 8, !tbaa !5
  %1643 = getelementptr inbounds %struct.w2c_hermes, ptr %1642, i32 0, i32 6
  %1644 = load i32, ptr %45, align 4, !tbaa !9
  %1645 = zext i32 %1644 to i64
  %1646 = add i64 %1645, 16
  %1647 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1643, i64 noundef %1646, i32 noundef %1647)
  %1648 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1648, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1649 = load ptr, ptr %5, align 8, !tbaa !5
  %1650 = getelementptr inbounds %struct.w2c_hermes, ptr %1649, i32 0, i32 6
  %1651 = load i32, ptr %45, align 4, !tbaa !9
  %1652 = zext i32 %1651 to i64
  %1653 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1650, i64 noundef %1652, i32 noundef %1653)
  %1654 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1654, ptr %45, align 4, !tbaa !9
  store i32 128, ptr %46, align 4, !tbaa !9
  %1655 = load i32, ptr %46, align 4, !tbaa !9
  %1656 = load i32, ptr %45, align 4, !tbaa !9
  %1657 = add i32 %1656, %1655
  store i32 %1657, ptr %45, align 4, !tbaa !9
  %1658 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1658, ptr %8, align 4, !tbaa !9
  %1659 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1659, ptr %46, align 4, !tbaa !9
  %1660 = load i32, ptr %45, align 4, !tbaa !9
  %1661 = load i32, ptr %46, align 4, !tbaa !9
  %1662 = icmp ne i32 %1660, %1661
  %1663 = zext i1 %1662 to i32
  store i32 %1663, ptr %45, align 4, !tbaa !9
  %1664 = load i32, ptr %45, align 4, !tbaa !9
  %1665 = icmp ne i32 %1664, 0
  br i1 %1665, label %1666, label %1667

1666:                                             ; preds = %1598
  br label %1598

1667:                                             ; preds = %1598
  br label %2138

1668:                                             ; preds = %1478
  %1669 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %1669, ptr %45, align 4, !tbaa !9
  %1670 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1670, ptr %7, align 4, !tbaa !9
  %1671 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1671, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %1672 = load i32, ptr %47, align 4, !tbaa !9
  %1673 = and i32 %1672, 31
  %1674 = load i32, ptr %46, align 4, !tbaa !9
  %1675 = shl i32 %1674, %1673
  store i32 %1675, ptr %46, align 4, !tbaa !9
  %1676 = load i32, ptr %46, align 4, !tbaa !9
  %1677 = load i32, ptr %45, align 4, !tbaa !9
  %1678 = add i32 %1677, %1676
  store i32 %1678, ptr %45, align 4, !tbaa !9
  %1679 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1679, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  %1680 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1680, ptr %11, align 4, !tbaa !9
  %1681 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1681, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %1682 = load ptr, ptr %5, align 8, !tbaa !5
  %1683 = getelementptr inbounds %struct.w2c_hermes, ptr %1682, i32 0, i32 6
  %1684 = load i32, ptr %45, align 4, !tbaa !9
  %1685 = zext i32 %1684 to i64
  %1686 = add i64 %1685, 32
  %1687 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1683, i64 noundef %1686, i64 noundef %1687)
  %1688 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1688, ptr %45, align 4, !tbaa !9
  %1689 = load ptr, ptr %5, align 8, !tbaa !5
  %1690 = getelementptr inbounds %struct.w2c_hermes, ptr %1689, i32 0, i32 6
  %1691 = load i32, ptr %45, align 4, !tbaa !9
  %1692 = zext i32 %1691 to i64
  %1693 = add i64 %1692, 40
  %1694 = call i32 @i32_load(ptr noundef %1690, i64 noundef %1693)
  store i32 %1694, ptr %45, align 4, !tbaa !9
  %1695 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1695, ptr %15, align 4, !tbaa !9
  %1696 = load i32, ptr %45, align 4, !tbaa !9
  %1697 = icmp ne i32 %1696, 0
  %1698 = xor i1 %1697, true
  %1699 = zext i1 %1698 to i32
  store i32 %1699, ptr %45, align 4, !tbaa !9
  %1700 = load i32, ptr %45, align 4, !tbaa !9
  %1701 = icmp ne i32 %1700, 0
  br i1 %1701, label %1702, label %1703

1702:                                             ; preds = %1668
  br label %1843

1703:                                             ; preds = %1668
  %1704 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1704, ptr %45, align 4, !tbaa !9
  %1705 = load ptr, ptr %5, align 8, !tbaa !5
  %1706 = getelementptr inbounds %struct.w2c_hermes, ptr %1705, i32 0, i32 6
  %1707 = load i32, ptr %45, align 4, !tbaa !9
  %1708 = zext i32 %1707 to i64
  %1709 = add i64 %1708, 28
  %1710 = call i32 @i32_load(ptr noundef %1706, i64 noundef %1709)
  store i32 %1710, ptr %45, align 4, !tbaa !9
  %1711 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1711, ptr %14, align 4, !tbaa !9
  %1712 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1712, ptr %13, align 4, !tbaa !9
  %1713 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1713, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %1714 = load i32, ptr %46, align 4, !tbaa !9
  %1715 = load i32, ptr %45, align 4, !tbaa !9
  %1716 = and i32 %1715, %1714
  store i32 %1716, ptr %45, align 4, !tbaa !9
  %1717 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1717, ptr %21, align 4, !tbaa !9
  %1718 = load i32, ptr %45, align 4, !tbaa !9
  %1719 = icmp ne i32 %1718, 0
  br i1 %1719, label %1720, label %1747

1720:                                             ; preds = %1703
  br label %1721

1721:                                             ; preds = %1745, %1720
  %1722 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1722, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1723 = load ptr, ptr %5, align 8, !tbaa !5
  %1724 = getelementptr inbounds %struct.w2c_hermes, ptr %1723, i32 0, i32 6
  %1725 = load i32, ptr %45, align 4, !tbaa !9
  %1726 = zext i32 %1725 to i64
  %1727 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1724, i64 noundef %1726, i32 noundef %1727)
  %1728 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1728, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %1729 = load i32, ptr %46, align 4, !tbaa !9
  %1730 = load i32, ptr %45, align 4, !tbaa !9
  %1731 = add i32 %1730, %1729
  store i32 %1731, ptr %45, align 4, !tbaa !9
  %1732 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1732, ptr %13, align 4, !tbaa !9
  %1733 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1733, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1734 = load i32, ptr %46, align 4, !tbaa !9
  %1735 = load i32, ptr %45, align 4, !tbaa !9
  %1736 = add i32 %1735, %1734
  store i32 %1736, ptr %45, align 4, !tbaa !9
  %1737 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1737, ptr %11, align 4, !tbaa !9
  %1738 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1738, ptr %46, align 4, !tbaa !9
  %1739 = load i32, ptr %45, align 4, !tbaa !9
  %1740 = load i32, ptr %46, align 4, !tbaa !9
  %1741 = icmp ne i32 %1739, %1740
  %1742 = zext i1 %1741 to i32
  store i32 %1742, ptr %45, align 4, !tbaa !9
  %1743 = load i32, ptr %45, align 4, !tbaa !9
  %1744 = icmp ne i32 %1743, 0
  br i1 %1744, label %1745, label %1746

1745:                                             ; preds = %1721
  br label %1721

1746:                                             ; preds = %1721
  br label %1747

1747:                                             ; preds = %1746, %1703
  %1748 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1748, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1749 = load i32, ptr %46, align 4, !tbaa !9
  %1750 = load i32, ptr %45, align 4, !tbaa !9
  %1751 = sub i32 %1750, %1749
  store i32 %1751, ptr %45, align 4, !tbaa !9
  store i32 268435455, ptr %46, align 4, !tbaa !9
  %1752 = load i32, ptr %46, align 4, !tbaa !9
  %1753 = load i32, ptr %45, align 4, !tbaa !9
  %1754 = and i32 %1753, %1752
  store i32 %1754, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %1755 = load i32, ptr %45, align 4, !tbaa !9
  %1756 = load i32, ptr %46, align 4, !tbaa !9
  %1757 = icmp ult i32 %1755, %1756
  %1758 = zext i1 %1757 to i32
  store i32 %1758, ptr %45, align 4, !tbaa !9
  %1759 = load i32, ptr %45, align 4, !tbaa !9
  %1760 = icmp ne i32 %1759, 0
  br i1 %1760, label %1761, label %1762

1761:                                             ; preds = %1747
  br label %1843

1762:                                             ; preds = %1747
  %1763 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1763, ptr %45, align 4, !tbaa !9
  %1764 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1764, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %1765 = load i32, ptr %47, align 4, !tbaa !9
  %1766 = and i32 %1765, 31
  %1767 = load i32, ptr %46, align 4, !tbaa !9
  %1768 = shl i32 %1767, %1766
  store i32 %1768, ptr %46, align 4, !tbaa !9
  %1769 = load i32, ptr %46, align 4, !tbaa !9
  %1770 = load i32, ptr %45, align 4, !tbaa !9
  %1771 = add i32 %1770, %1769
  store i32 %1771, ptr %45, align 4, !tbaa !9
  %1772 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1772, ptr %21, align 4, !tbaa !9
  br label %1773

1773:                                             ; preds = %1841, %1762
  %1774 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1774, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1775 = load ptr, ptr %5, align 8, !tbaa !5
  %1776 = getelementptr inbounds %struct.w2c_hermes, ptr %1775, i32 0, i32 6
  %1777 = load i32, ptr %45, align 4, !tbaa !9
  %1778 = zext i32 %1777 to i64
  %1779 = add i64 %1778, 112
  %1780 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1776, i64 noundef %1779, i32 noundef %1780)
  %1781 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1781, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1782 = load ptr, ptr %5, align 8, !tbaa !5
  %1783 = getelementptr inbounds %struct.w2c_hermes, ptr %1782, i32 0, i32 6
  %1784 = load i32, ptr %45, align 4, !tbaa !9
  %1785 = zext i32 %1784 to i64
  %1786 = add i64 %1785, 96
  %1787 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1783, i64 noundef %1786, i32 noundef %1787)
  %1788 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1788, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1789 = load ptr, ptr %5, align 8, !tbaa !5
  %1790 = getelementptr inbounds %struct.w2c_hermes, ptr %1789, i32 0, i32 6
  %1791 = load i32, ptr %45, align 4, !tbaa !9
  %1792 = zext i32 %1791 to i64
  %1793 = add i64 %1792, 80
  %1794 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1790, i64 noundef %1793, i32 noundef %1794)
  %1795 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1795, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1796 = load ptr, ptr %5, align 8, !tbaa !5
  %1797 = getelementptr inbounds %struct.w2c_hermes, ptr %1796, i32 0, i32 6
  %1798 = load i32, ptr %45, align 4, !tbaa !9
  %1799 = zext i32 %1798 to i64
  %1800 = add i64 %1799, 64
  %1801 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1797, i64 noundef %1800, i32 noundef %1801)
  %1802 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1802, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1803 = load ptr, ptr %5, align 8, !tbaa !5
  %1804 = getelementptr inbounds %struct.w2c_hermes, ptr %1803, i32 0, i32 6
  %1805 = load i32, ptr %45, align 4, !tbaa !9
  %1806 = zext i32 %1805 to i64
  %1807 = add i64 %1806, 48
  %1808 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1804, i64 noundef %1807, i32 noundef %1808)
  %1809 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1809, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1810 = load ptr, ptr %5, align 8, !tbaa !5
  %1811 = getelementptr inbounds %struct.w2c_hermes, ptr %1810, i32 0, i32 6
  %1812 = load i32, ptr %45, align 4, !tbaa !9
  %1813 = zext i32 %1812 to i64
  %1814 = add i64 %1813, 32
  %1815 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1811, i64 noundef %1814, i32 noundef %1815)
  %1816 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1816, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1817 = load ptr, ptr %5, align 8, !tbaa !5
  %1818 = getelementptr inbounds %struct.w2c_hermes, ptr %1817, i32 0, i32 6
  %1819 = load i32, ptr %45, align 4, !tbaa !9
  %1820 = zext i32 %1819 to i64
  %1821 = add i64 %1820, 16
  %1822 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1818, i64 noundef %1821, i32 noundef %1822)
  %1823 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1823, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, 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 %45, align 4, !tbaa !9
  %1827 = zext i32 %1826 to i64
  %1828 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1825, i64 noundef %1827, i32 noundef %1828)
  %1829 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1829, ptr %45, align 4, !tbaa !9
  store i32 128, ptr %46, align 4, !tbaa !9
  %1830 = load i32, ptr %46, align 4, !tbaa !9
  %1831 = load i32, ptr %45, align 4, !tbaa !9
  %1832 = add i32 %1831, %1830
  store i32 %1832, ptr %45, align 4, !tbaa !9
  %1833 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1833, ptr %13, align 4, !tbaa !9
  %1834 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1834, ptr %46, align 4, !tbaa !9
  %1835 = load i32, ptr %45, align 4, !tbaa !9
  %1836 = load i32, ptr %46, align 4, !tbaa !9
  %1837 = icmp ne i32 %1835, %1836
  %1838 = zext i1 %1837 to i32
  store i32 %1838, ptr %45, align 4, !tbaa !9
  %1839 = load i32, ptr %45, align 4, !tbaa !9
  %1840 = icmp ne i32 %1839, 0
  br i1 %1840, label %1841, label %1842

1841:                                             ; preds = %1773
  br label %1773

1842:                                             ; preds = %1773
  br label %1843

1843:                                             ; preds = %1842, %1761, %1702
  %1844 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1844, ptr %45, align 4, !tbaa !9
  %1845 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1845, ptr %46, align 4, !tbaa !9
  %1846 = load i32, ptr %45, align 4, !tbaa !9
  %1847 = load i32, ptr %46, align 4, !tbaa !9
  %1848 = icmp ne i32 %1846, %1847
  %1849 = zext i1 %1848 to i32
  store i32 %1849, ptr %45, align 4, !tbaa !9
  %1850 = load i32, ptr %45, align 4, !tbaa !9
  %1851 = icmp ne i32 %1850, 0
  br i1 %1851, label %1852, label %2118

1852:                                             ; preds = %1843
  br label %1853

1853:                                             ; preds = %2116, %1852
  %1854 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %1854, ptr %45, align 4, !tbaa !9
  %1855 = load ptr, ptr %5, align 8, !tbaa !5
  %1856 = getelementptr inbounds %struct.w2c_hermes, ptr %1855, i32 0, i32 6
  %1857 = load i32, ptr %45, align 4, !tbaa !9
  %1858 = zext i32 %1857 to i64
  %1859 = call i32 @i32_load(ptr noundef %1856, i64 noundef %1858)
  store i32 %1859, ptr %45, align 4, !tbaa !9
  %1860 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1860, ptr %16, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %1861 = load i32, ptr %46, align 4, !tbaa !9
  %1862 = load i32, ptr %45, align 4, !tbaa !9
  %1863 = add i32 %1862, %1861
  store i32 %1863, ptr %45, align 4, !tbaa !9
  %1864 = load i32, ptr %45, align 4, !tbaa !9
  switch i32 %1864, label %1870 [
    i32 0, label %1865
    i32 1, label %1866
    i32 2, label %1867
    i32 3, label %1868
    i32 4, label %1869
  ]

1865:                                             ; preds = %1853
  br label %2103

1866:                                             ; preds = %1853
  br label %1871

1867:                                             ; preds = %1853
  br label %1871

1868:                                             ; preds = %1853
  br label %1871

1869:                                             ; preds = %1853
  br label %2103

1870:                                             ; preds = %1853
  br label %1871

1871:                                             ; preds = %1870, %1868, %1867, %1866
  %1872 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1872, ptr %45, align 4, !tbaa !9
  %1873 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1873, ptr %46, align 4, !tbaa !9
  %1874 = load ptr, ptr %5, align 8, !tbaa !5
  %1875 = getelementptr inbounds %struct.w2c_hermes, ptr %1874, i32 0, i32 6
  %1876 = load i32, ptr %46, align 4, !tbaa !9
  %1877 = zext i32 %1876 to i64
  %1878 = add i64 %1877, 28
  %1879 = call i32 @i32_load(ptr noundef %1875, i64 noundef %1878)
  store i32 %1879, ptr %46, align 4, !tbaa !9
  %1880 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1880, ptr %15, align 4, !tbaa !9
  %1881 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1881, ptr %47, align 4, !tbaa !9
  %1882 = load ptr, ptr %5, align 8, !tbaa !5
  %1883 = getelementptr inbounds %struct.w2c_hermes, ptr %1882, i32 0, i32 6
  %1884 = load i32, ptr %47, align 4, !tbaa !9
  %1885 = zext i32 %1884 to i64
  %1886 = add i64 %1885, 40
  %1887 = call i32 @i32_load(ptr noundef %1883, i64 noundef %1886)
  store i32 %1887, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %1888 = load i32, ptr %48, align 4, !tbaa !9
  %1889 = load i32, ptr %47, align 4, !tbaa !9
  %1890 = sub i32 %1889, %1888
  store i32 %1890, ptr %47, align 4, !tbaa !9
  %1891 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1891, ptr %14, align 4, !tbaa !9
  %1892 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1892, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %1893 = load i32, ptr %49, align 4, !tbaa !9
  %1894 = and i32 %1893, 31
  %1895 = load i32, ptr %48, align 4, !tbaa !9
  %1896 = lshr i32 %1895, %1894
  store i32 %1896, ptr %48, align 4, !tbaa !9
  %1897 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1897, ptr %49, align 4, !tbaa !9
  store i32 9, ptr %50, align 4, !tbaa !9
  %1898 = load i32, ptr %50, align 4, !tbaa !9
  %1899 = and i32 %1898, 31
  %1900 = load i32, ptr %49, align 4, !tbaa !9
  %1901 = lshr i32 %1900, %1899
  store i32 %1901, ptr %49, align 4, !tbaa !9
  %1902 = load i32, ptr %49, align 4, !tbaa !9
  %1903 = load i32, ptr %48, align 4, !tbaa !9
  %1904 = xor i32 %1903, %1902
  store i32 %1904, ptr %48, align 4, !tbaa !9
  %1905 = load i32, ptr %48, align 4, !tbaa !9
  %1906 = load i32, ptr %47, align 4, !tbaa !9
  %1907 = and i32 %1906, %1905
  store i32 %1907, ptr %47, align 4, !tbaa !9
  %1908 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1908, ptr %26, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %1909 = load i32, ptr %48, align 4, !tbaa !9
  %1910 = and i32 %1909, 31
  %1911 = load i32, ptr %47, align 4, !tbaa !9
  %1912 = shl i32 %1911, %1910
  store i32 %1912, ptr %47, align 4, !tbaa !9
  %1913 = load i32, ptr %47, align 4, !tbaa !9
  %1914 = load i32, ptr %46, align 4, !tbaa !9
  %1915 = add i32 %1914, %1913
  store i32 %1915, ptr %46, align 4, !tbaa !9
  %1916 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1916, ptr %11, align 4, !tbaa !9
  %1917 = load ptr, ptr %5, align 8, !tbaa !5
  %1918 = getelementptr inbounds %struct.w2c_hermes, ptr %1917, i32 0, i32 6
  %1919 = load i32, ptr %46, align 4, !tbaa !9
  %1920 = zext i32 %1919 to i64
  %1921 = call i32 @i32_load(ptr noundef %1918, i64 noundef %1920)
  store i32 %1921, ptr %46, align 4, !tbaa !9
  %1922 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %1922, ptr %28, align 4, !tbaa !9
  %1923 = load i32, ptr %45, align 4, !tbaa !9
  %1924 = load i32, ptr %46, align 4, !tbaa !9
  %1925 = icmp eq i32 %1923, %1924
  %1926 = zext i1 %1925 to i32
  store i32 %1926, ptr %45, align 4, !tbaa !9
  %1927 = load i32, ptr %45, align 4, !tbaa !9
  %1928 = icmp ne i32 %1927, 0
  br i1 %1928, label %1929, label %1930

1929:                                             ; preds = %1871
  br label %2022

1930:                                             ; preds = %1871
  store i32 0, ptr %45, align 4, !tbaa !9
  %1931 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1931, ptr %13, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %1932 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1932, ptr %17, align 4, !tbaa !9
  br label %1933

1933:                                             ; preds = %2020, %1930
  %1934 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %1934, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %1935 = load i32, ptr %45, align 4, !tbaa !9
  %1936 = load i32, ptr %46, align 4, !tbaa !9
  %1937 = icmp eq i32 %1935, %1936
  %1938 = zext i1 %1937 to i32
  store i32 %1938, ptr %45, align 4, !tbaa !9
  %1939 = load i32, ptr %45, align 4, !tbaa !9
  %1940 = icmp ne i32 %1939, 0
  br i1 %1940, label %1941, label %1954

1941:                                             ; preds = %1933
  %1942 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1942, ptr %45, align 4, !tbaa !9
  %1943 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1943, ptr %46, align 4, !tbaa !9
  %1944 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1944, ptr %47, align 4, !tbaa !9
  %1945 = load i32, ptr %47, align 4, !tbaa !9
  %1946 = icmp ne i32 %1945, 0
  br i1 %1946, label %1947, label %1949

1947:                                             ; preds = %1941
  %1948 = load i32, ptr %45, align 4, !tbaa !9
  br label %1951

1949:                                             ; preds = %1941
  %1950 = load i32, ptr %46, align 4, !tbaa !9
  br label %1951

1951:                                             ; preds = %1949, %1947
  %1952 = phi i32 [ %1948, %1947 ], [ %1950, %1949 ]
  store i32 %1952, ptr %45, align 4, !tbaa !9
  %1953 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1953, ptr %11, align 4, !tbaa !9
  br label %2022

1954:                                             ; preds = %1933
  %1955 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1955, ptr %45, align 4, !tbaa !9
  %1956 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %1956, ptr %46, align 4, !tbaa !9
  %1957 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1957, ptr %47, align 4, !tbaa !9
  %1958 = load i32, ptr %47, align 4, !tbaa !9
  %1959 = icmp ne i32 %1958, 0
  br i1 %1959, label %1960, label %1962

1960:                                             ; preds = %1954
  %1961 = load i32, ptr %45, align 4, !tbaa !9
  br label %1964

1962:                                             ; preds = %1954
  %1963 = load i32, ptr %46, align 4, !tbaa !9
  br label %1964

1964:                                             ; preds = %1962, %1960
  %1965 = phi i32 [ %1961, %1960 ], [ %1963, %1962 ]
  store i32 %1965, ptr %45, align 4, !tbaa !9
  %1966 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1966, ptr %46, align 4, !tbaa !9
  %1967 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %1967, ptr %47, align 4, !tbaa !9
  store i32 -8, ptr %48, align 4, !tbaa !9
  %1968 = load i32, ptr %47, align 4, !tbaa !9
  %1969 = load i32, ptr %48, align 4, !tbaa !9
  %1970 = icmp eq i32 %1968, %1969
  %1971 = zext i1 %1970 to i32
  store i32 %1971, ptr %47, align 4, !tbaa !9
  %1972 = load i32, ptr %47, align 4, !tbaa !9
  %1973 = icmp ne i32 %1972, 0
  br i1 %1973, label %1974, label %1976

1974:                                             ; preds = %1964
  %1975 = load i32, ptr %45, align 4, !tbaa !9
  br label %1978

1976:                                             ; preds = %1964
  %1977 = load i32, ptr %46, align 4, !tbaa !9
  br label %1978

1978:                                             ; preds = %1976, %1974
  %1979 = phi i32 [ %1975, %1974 ], [ %1977, %1976 ]
  store i32 %1979, ptr %45, align 4, !tbaa !9
  %1980 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1980, ptr %13, align 4, !tbaa !9
  %1981 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1981, ptr %45, align 4, !tbaa !9
  %1982 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1982, ptr %46, align 4, !tbaa !9
  %1983 = load i32, ptr %46, align 4, !tbaa !9
  %1984 = load i32, ptr %45, align 4, !tbaa !9
  %1985 = add i32 %1984, %1983
  store i32 %1985, ptr %45, align 4, !tbaa !9
  %1986 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1986, ptr %21, align 4, !tbaa !9
  %1987 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1987, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %1988 = load i32, ptr %46, align 4, !tbaa !9
  %1989 = load i32, ptr %45, align 4, !tbaa !9
  %1990 = add i32 %1989, %1988
  store i32 %1990, ptr %45, align 4, !tbaa !9
  %1991 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %1991, ptr %17, align 4, !tbaa !9
  %1992 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1992, ptr %45, align 4, !tbaa !9
  %1993 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %1993, ptr %46, align 4, !tbaa !9
  %1994 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1994, ptr %47, align 4, !tbaa !9
  %1995 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1995, ptr %48, align 4, !tbaa !9
  %1996 = load i32, ptr %48, align 4, !tbaa !9
  %1997 = load i32, ptr %47, align 4, !tbaa !9
  %1998 = and i32 %1997, %1996
  store i32 %1998, ptr %47, align 4, !tbaa !9
  %1999 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %1999, ptr %26, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %2000 = load i32, ptr %48, align 4, !tbaa !9
  %2001 = and i32 %2000, 31
  %2002 = load i32, ptr %47, align 4, !tbaa !9
  %2003 = shl i32 %2002, %2001
  store i32 %2003, ptr %47, align 4, !tbaa !9
  %2004 = load i32, ptr %47, align 4, !tbaa !9
  %2005 = load i32, ptr %46, align 4, !tbaa !9
  %2006 = add i32 %2005, %2004
  store i32 %2006, ptr %46, align 4, !tbaa !9
  %2007 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2007, ptr %11, align 4, !tbaa !9
  %2008 = load ptr, ptr %5, align 8, !tbaa !5
  %2009 = getelementptr inbounds %struct.w2c_hermes, ptr %2008, i32 0, i32 6
  %2010 = load i32, ptr %46, align 4, !tbaa !9
  %2011 = zext i32 %2010 to i64
  %2012 = call i32 @i32_load(ptr noundef %2009, i64 noundef %2011)
  store i32 %2012, ptr %46, align 4, !tbaa !9
  %2013 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2013, ptr %28, align 4, !tbaa !9
  %2014 = load i32, ptr %45, align 4, !tbaa !9
  %2015 = load i32, ptr %46, align 4, !tbaa !9
  %2016 = icmp ne i32 %2014, %2015
  %2017 = zext i1 %2016 to i32
  store i32 %2017, ptr %45, align 4, !tbaa !9
  %2018 = load i32, ptr %45, align 4, !tbaa !9
  %2019 = icmp ne i32 %2018, 0
  br i1 %2019, label %2020, label %2021

2020:                                             ; preds = %1978
  br label %1933

2021:                                             ; preds = %1978
  br label %2022

2022:                                             ; preds = %2021, %1951, %1929
  %2023 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2023, ptr %45, align 4, !tbaa !9
  %2024 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2024, ptr %46, align 4, !tbaa !9
  %2025 = load ptr, ptr %5, align 8, !tbaa !5
  %2026 = getelementptr inbounds %struct.w2c_hermes, ptr %2025, i32 0, i32 6
  %2027 = load i32, ptr %45, align 4, !tbaa !9
  %2028 = zext i32 %2027 to i64
  %2029 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2026, i64 noundef %2028, i32 noundef %2029)
  %2030 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2030, ptr %45, align 4, !tbaa !9
  %2031 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2031, ptr %46, align 4, !tbaa !9
  %2032 = load ptr, ptr %5, align 8, !tbaa !5
  %2033 = getelementptr inbounds %struct.w2c_hermes, ptr %2032, i32 0, i32 6
  %2034 = load i32, ptr %46, align 4, !tbaa !9
  %2035 = zext i32 %2034 to i64
  %2036 = add i64 %2035, 4
  %2037 = call i32 @i32_load(ptr noundef %2033, i64 noundef %2036)
  store i32 %2037, ptr %46, align 4, !tbaa !9
  %2038 = load ptr, ptr %5, align 8, !tbaa !5
  %2039 = getelementptr inbounds %struct.w2c_hermes, ptr %2038, i32 0, i32 6
  %2040 = load i32, ptr %45, align 4, !tbaa !9
  %2041 = zext i32 %2040 to i64
  %2042 = add i64 %2041, 4
  %2043 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2039, i64 noundef %2042, i32 noundef %2043)
  %2044 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2044, ptr %45, align 4, !tbaa !9
  %2045 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2045, ptr %46, align 4, !tbaa !9
  %2046 = load ptr, ptr %5, align 8, !tbaa !5
  %2047 = getelementptr inbounds %struct.w2c_hermes, ptr %2046, i32 0, i32 6
  %2048 = load i32, ptr %46, align 4, !tbaa !9
  %2049 = zext i32 %2048 to i64
  %2050 = add i64 %2049, 8
  %2051 = call i32 @i32_load(ptr noundef %2047, i64 noundef %2050)
  store i32 %2051, ptr %46, align 4, !tbaa !9
  %2052 = load ptr, ptr %5, align 8, !tbaa !5
  %2053 = getelementptr inbounds %struct.w2c_hermes, ptr %2052, i32 0, i32 6
  %2054 = load i32, ptr %45, align 4, !tbaa !9
  %2055 = zext i32 %2054 to i64
  %2056 = add i64 %2055, 8
  %2057 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2053, i64 noundef %2056, i32 noundef %2057)
  %2058 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2058, ptr %45, align 4, !tbaa !9
  %2059 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2059, ptr %46, align 4, !tbaa !9
  %2060 = load ptr, ptr %5, align 8, !tbaa !5
  %2061 = getelementptr inbounds %struct.w2c_hermes, ptr %2060, i32 0, i32 6
  %2062 = load i32, ptr %46, align 4, !tbaa !9
  %2063 = zext i32 %2062 to i64
  %2064 = add i64 %2063, 12
  %2065 = call i32 @i32_load(ptr noundef %2061, i64 noundef %2064)
  store i32 %2065, ptr %46, align 4, !tbaa !9
  %2066 = load ptr, ptr %5, align 8, !tbaa !5
  %2067 = getelementptr inbounds %struct.w2c_hermes, ptr %2066, i32 0, i32 6
  %2068 = load i32, ptr %45, align 4, !tbaa !9
  %2069 = zext i32 %2068 to i64
  %2070 = add i64 %2069, 12
  %2071 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2067, i64 noundef %2070, i32 noundef %2071)
  %2072 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2072, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %2073 = load ptr, ptr %5, align 8, !tbaa !5
  %2074 = getelementptr inbounds %struct.w2c_hermes, ptr %2073, i32 0, i32 6
  %2075 = load i32, ptr %45, align 4, !tbaa !9
  %2076 = zext i32 %2075 to i64
  %2077 = add i64 %2076, 12
  %2078 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2074, i64 noundef %2077, i32 noundef %2078)
  %2079 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2079, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %2080 = load ptr, ptr %5, align 8, !tbaa !5
  %2081 = getelementptr inbounds %struct.w2c_hermes, ptr %2080, i32 0, i32 6
  %2082 = load i32, ptr %45, align 4, !tbaa !9
  %2083 = zext i32 %2082 to i64
  %2084 = add i64 %2083, 4
  %2085 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2081, i64 noundef %2084, i64 noundef %2085)
  %2086 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2086, ptr %45, align 4, !tbaa !9
  %2087 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2087, ptr %46, align 4, !tbaa !9
  %2088 = load ptr, ptr %5, align 8, !tbaa !5
  %2089 = getelementptr inbounds %struct.w2c_hermes, ptr %2088, i32 0, i32 6
  %2090 = load i32, ptr %46, align 4, !tbaa !9
  %2091 = zext i32 %2090 to i64
  %2092 = add i64 %2091, 32
  %2093 = call i32 @i32_load(ptr noundef %2089, i64 noundef %2092)
  store i32 %2093, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %2094 = load i32, ptr %47, align 4, !tbaa !9
  %2095 = load i32, ptr %46, align 4, !tbaa !9
  %2096 = add i32 %2095, %2094
  store i32 %2096, ptr %46, align 4, !tbaa !9
  %2097 = load ptr, ptr %5, align 8, !tbaa !5
  %2098 = getelementptr inbounds %struct.w2c_hermes, ptr %2097, i32 0, i32 6
  %2099 = load i32, ptr %45, align 4, !tbaa !9
  %2100 = zext i32 %2099 to i64
  %2101 = add i64 %2100, 32
  %2102 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2098, i64 noundef %2101, i32 noundef %2102)
  br label %2103

2103:                                             ; preds = %2022, %1869, %1865
  %2104 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2104, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %2105 = load i32, ptr %46, align 4, !tbaa !9
  %2106 = load i32, ptr %45, align 4, !tbaa !9
  %2107 = add i32 %2106, %2105
  store i32 %2107, ptr %45, align 4, !tbaa !9
  %2108 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2108, ptr %7, align 4, !tbaa !9
  %2109 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2109, ptr %46, align 4, !tbaa !9
  %2110 = load i32, ptr %45, align 4, !tbaa !9
  %2111 = load i32, ptr %46, align 4, !tbaa !9
  %2112 = icmp ne i32 %2110, %2111
  %2113 = zext i1 %2112 to i32
  store i32 %2113, ptr %45, align 4, !tbaa !9
  %2114 = load i32, ptr %45, align 4, !tbaa !9
  %2115 = icmp ne i32 %2114, 0
  br i1 %2115, label %2116, label %2117

2116:                                             ; preds = %2103
  br label %1853

2117:                                             ; preds = %2103
  br label %2118

2118:                                             ; preds = %2117, %1843
  %2119 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2119, ptr %45, align 4, !tbaa !9
  %2120 = load ptr, ptr %5, align 8, !tbaa !5
  %2121 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %2120, i32 noundef %2121)
  %2122 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2122, ptr %45, align 4, !tbaa !9
  %2123 = load ptr, ptr %5, align 8, !tbaa !5
  %2124 = getelementptr inbounds %struct.w2c_hermes, ptr %2123, i32 0, i32 6
  %2125 = load i32, ptr %45, align 4, !tbaa !9
  %2126 = zext i32 %2125 to i64
  %2127 = add i64 %2126, 28
  %2128 = call i32 @i32_load(ptr noundef %2124, i64 noundef %2127)
  store i32 %2128, ptr %45, align 4, !tbaa !9
  %2129 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2129, ptr %7, align 4, !tbaa !9
  %2130 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2130, ptr %45, align 4, !tbaa !9
  %2131 = load ptr, ptr %5, align 8, !tbaa !5
  %2132 = getelementptr inbounds %struct.w2c_hermes, ptr %2131, i32 0, i32 6
  %2133 = load i32, ptr %45, align 4, !tbaa !9
  %2134 = zext i32 %2133 to i64
  %2135 = add i64 %2134, 40
  %2136 = call i32 @i32_load(ptr noundef %2132, i64 noundef %2135)
  store i32 %2136, ptr %45, align 4, !tbaa !9
  %2137 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2137, ptr %11, align 4, !tbaa !9
  br label %2138

2138:                                             ; preds = %2118, %1667, %1586
  %2139 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2139, ptr %45, align 4, !tbaa !9
  %2140 = load ptr, ptr %5, align 8, !tbaa !5
  %2141 = getelementptr inbounds %struct.w2c_hermes, ptr %2140, i32 0, i32 6
  %2142 = load i32, ptr %45, align 4, !tbaa !9
  %2143 = zext i32 %2142 to i64
  %2144 = add i64 %2143, 20
  %2145 = call i32 @i32_load(ptr noundef %2141, i64 noundef %2144)
  store i32 %2145, ptr %45, align 4, !tbaa !9
  %2146 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2146, ptr %13, align 4, !tbaa !9
  %2147 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2147, ptr %46, align 4, !tbaa !9
  %2148 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2148, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %2149 = load i32, ptr %48, align 4, !tbaa !9
  %2150 = load i32, ptr %47, align 4, !tbaa !9
  %2151 = sub i32 %2150, %2149
  store i32 %2151, ptr %47, align 4, !tbaa !9
  %2152 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %2152, ptr %21, align 4, !tbaa !9
  %2153 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2153, ptr %48, align 4, !tbaa !9
  store i32 4, ptr %49, align 4, !tbaa !9
  %2154 = load i32, ptr %49, align 4, !tbaa !9
  %2155 = and i32 %2154, 31
  %2156 = load i32, ptr %48, align 4, !tbaa !9
  %2157 = lshr i32 %2156, %2155
  store i32 %2157, ptr %48, align 4, !tbaa !9
  %2158 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2158, ptr %49, align 4, !tbaa !9
  store i32 9, ptr %50, align 4, !tbaa !9
  %2159 = load i32, ptr %50, align 4, !tbaa !9
  %2160 = and i32 %2159, 31
  %2161 = load i32, ptr %49, align 4, !tbaa !9
  %2162 = lshr i32 %2161, %2160
  store i32 %2162, ptr %49, align 4, !tbaa !9
  %2163 = load i32, ptr %49, align 4, !tbaa !9
  %2164 = load i32, ptr %48, align 4, !tbaa !9
  %2165 = xor i32 %2164, %2163
  store i32 %2165, ptr %48, align 4, !tbaa !9
  %2166 = load i32, ptr %48, align 4, !tbaa !9
  %2167 = load i32, ptr %47, align 4, !tbaa !9
  %2168 = and i32 %2167, %2166
  store i32 %2168, ptr %47, align 4, !tbaa !9
  %2169 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %2169, ptr %11, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %2170 = load i32, ptr %48, align 4, !tbaa !9
  %2171 = and i32 %2170, 31
  %2172 = load i32, ptr %47, align 4, !tbaa !9
  %2173 = shl i32 %2172, %2171
  store i32 %2173, ptr %47, align 4, !tbaa !9
  %2174 = load i32, ptr %47, align 4, !tbaa !9
  %2175 = load i32, ptr %46, align 4, !tbaa !9
  %2176 = add i32 %2175, %2174
  store i32 %2176, ptr %46, align 4, !tbaa !9
  %2177 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2177, ptr %8, align 4, !tbaa !9
  %2178 = load ptr, ptr %5, align 8, !tbaa !5
  %2179 = getelementptr inbounds %struct.w2c_hermes, ptr %2178, i32 0, i32 6
  %2180 = load i32, ptr %46, align 4, !tbaa !9
  %2181 = zext i32 %2180 to i64
  %2182 = call i32 @i32_load(ptr noundef %2179, i64 noundef %2181)
  store i32 %2182, ptr %46, align 4, !tbaa !9
  %2183 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2183, ptr %28, align 4, !tbaa !9
  %2184 = load i32, ptr %45, align 4, !tbaa !9
  %2185 = load i32, ptr %46, align 4, !tbaa !9
  %2186 = icmp eq i32 %2184, %2185
  %2187 = zext i1 %2186 to i32
  store i32 %2187, ptr %45, align 4, !tbaa !9
  %2188 = load i32, ptr %45, align 4, !tbaa !9
  %2189 = icmp ne i32 %2188, 0
  br i1 %2189, label %2190, label %2191

2190:                                             ; preds = %2138
  br label %2291

2191:                                             ; preds = %2138
  store i32 0, ptr %45, align 4, !tbaa !9
  %2192 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2192, ptr %26, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %2193 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2193, ptr %17, align 4, !tbaa !9
  br label %2194

2194:                                             ; preds = %2281, %2191
  %2195 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %2195, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %2196 = load i32, ptr %45, align 4, !tbaa !9
  %2197 = load i32, ptr %46, align 4, !tbaa !9
  %2198 = icmp eq i32 %2196, %2197
  %2199 = zext i1 %2198 to i32
  store i32 %2199, ptr %45, align 4, !tbaa !9
  %2200 = load i32, ptr %45, align 4, !tbaa !9
  %2201 = icmp ne i32 %2200, 0
  br i1 %2201, label %2202, label %2215

2202:                                             ; preds = %2194
  %2203 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2203, ptr %45, align 4, !tbaa !9
  %2204 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2204, ptr %46, align 4, !tbaa !9
  %2205 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2205, ptr %47, align 4, !tbaa !9
  %2206 = load i32, ptr %47, align 4, !tbaa !9
  %2207 = icmp ne i32 %2206, 0
  br i1 %2207, label %2208, label %2210

2208:                                             ; preds = %2202
  %2209 = load i32, ptr %45, align 4, !tbaa !9
  br label %2212

2210:                                             ; preds = %2202
  %2211 = load i32, ptr %46, align 4, !tbaa !9
  br label %2212

2212:                                             ; preds = %2210, %2208
  %2213 = phi i32 [ %2209, %2208 ], [ %2211, %2210 ]
  store i32 %2213, ptr %45, align 4, !tbaa !9
  %2214 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2214, ptr %8, align 4, !tbaa !9
  br label %2283

2215:                                             ; preds = %2194
  %2216 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2216, ptr %45, align 4, !tbaa !9
  %2217 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2217, ptr %46, align 4, !tbaa !9
  %2218 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2218, ptr %47, align 4, !tbaa !9
  %2219 = load i32, ptr %47, align 4, !tbaa !9
  %2220 = icmp ne i32 %2219, 0
  br i1 %2220, label %2221, label %2223

2221:                                             ; preds = %2215
  %2222 = load i32, ptr %45, align 4, !tbaa !9
  br label %2225

2223:                                             ; preds = %2215
  %2224 = load i32, ptr %46, align 4, !tbaa !9
  br label %2225

2225:                                             ; preds = %2223, %2221
  %2226 = phi i32 [ %2222, %2221 ], [ %2224, %2223 ]
  store i32 %2226, ptr %45, align 4, !tbaa !9
  %2227 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2227, ptr %46, align 4, !tbaa !9
  %2228 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %2228, ptr %47, align 4, !tbaa !9
  store i32 -8, ptr %48, align 4, !tbaa !9
  %2229 = load i32, ptr %47, align 4, !tbaa !9
  %2230 = load i32, ptr %48, align 4, !tbaa !9
  %2231 = icmp eq i32 %2229, %2230
  %2232 = zext i1 %2231 to i32
  store i32 %2232, ptr %47, align 4, !tbaa !9
  %2233 = load i32, ptr %47, align 4, !tbaa !9
  %2234 = icmp ne i32 %2233, 0
  br i1 %2234, label %2235, label %2237

2235:                                             ; preds = %2225
  %2236 = load i32, ptr %45, align 4, !tbaa !9
  br label %2239

2237:                                             ; preds = %2225
  %2238 = load i32, ptr %46, align 4, !tbaa !9
  br label %2239

2239:                                             ; preds = %2237, %2235
  %2240 = phi i32 [ %2236, %2235 ], [ %2238, %2237 ]
  store i32 %2240, ptr %45, align 4, !tbaa !9
  %2241 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2241, ptr %26, align 4, !tbaa !9
  %2242 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %2242, ptr %45, align 4, !tbaa !9
  %2243 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2243, ptr %46, align 4, !tbaa !9
  %2244 = load i32, ptr %46, align 4, !tbaa !9
  %2245 = load i32, ptr %45, align 4, !tbaa !9
  %2246 = add i32 %2245, %2244
  store i32 %2246, ptr %45, align 4, !tbaa !9
  %2247 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2247, ptr %8, align 4, !tbaa !9
  %2248 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2248, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %2249 = load i32, ptr %46, align 4, !tbaa !9
  %2250 = load i32, ptr %45, align 4, !tbaa !9
  %2251 = add i32 %2250, %2249
  store i32 %2251, ptr %45, align 4, !tbaa !9
  %2252 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2252, ptr %17, align 4, !tbaa !9
  %2253 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2253, ptr %45, align 4, !tbaa !9
  %2254 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2254, ptr %46, align 4, !tbaa !9
  %2255 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2255, ptr %47, align 4, !tbaa !9
  %2256 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2256, ptr %48, align 4, !tbaa !9
  %2257 = load i32, ptr %48, align 4, !tbaa !9
  %2258 = load i32, ptr %47, align 4, !tbaa !9
  %2259 = and i32 %2258, %2257
  store i32 %2259, ptr %47, align 4, !tbaa !9
  %2260 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %2260, ptr %11, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %2261 = load i32, ptr %48, align 4, !tbaa !9
  %2262 = and i32 %2261, 31
  %2263 = load i32, ptr %47, align 4, !tbaa !9
  %2264 = shl i32 %2263, %2262
  store i32 %2264, ptr %47, align 4, !tbaa !9
  %2265 = load i32, ptr %47, align 4, !tbaa !9
  %2266 = load i32, ptr %46, align 4, !tbaa !9
  %2267 = add i32 %2266, %2265
  store i32 %2267, ptr %46, align 4, !tbaa !9
  %2268 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2268, ptr %8, align 4, !tbaa !9
  %2269 = load ptr, ptr %5, align 8, !tbaa !5
  %2270 = getelementptr inbounds %struct.w2c_hermes, ptr %2269, i32 0, i32 6
  %2271 = load i32, ptr %46, align 4, !tbaa !9
  %2272 = zext i32 %2271 to i64
  %2273 = call i32 @i32_load(ptr noundef %2270, i64 noundef %2272)
  store i32 %2273, ptr %46, align 4, !tbaa !9
  %2274 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2274, ptr %28, align 4, !tbaa !9
  %2275 = load i32, ptr %45, align 4, !tbaa !9
  %2276 = load i32, ptr %46, align 4, !tbaa !9
  %2277 = icmp ne i32 %2275, %2276
  %2278 = zext i1 %2277 to i32
  store i32 %2278, ptr %45, align 4, !tbaa !9
  %2279 = load i32, ptr %45, align 4, !tbaa !9
  %2280 = icmp ne i32 %2279, 0
  br i1 %2280, label %2281, label %2282

2281:                                             ; preds = %2239
  br label %2194

2282:                                             ; preds = %2239
  br label %2291

2283:                                             ; preds = %2212, %1406
  %2284 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2284, ptr %45, align 4, !tbaa !9
  %2285 = load ptr, ptr %5, align 8, !tbaa !5
  %2286 = getelementptr inbounds %struct.w2c_hermes, ptr %2285, i32 0, i32 6
  %2287 = load i32, ptr %45, align 4, !tbaa !9
  %2288 = zext i32 %2287 to i64
  %2289 = call i32 @i32_load(ptr noundef %2286, i64 noundef %2288)
  store i32 %2289, ptr %45, align 4, !tbaa !9
  %2290 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2290, ptr %13, align 4, !tbaa !9
  br label %2291

2291:                                             ; preds = %2283, %2282, %2190
  %2292 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2292, ptr %45, align 4, !tbaa !9
  %2293 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2293, ptr %46, align 4, !tbaa !9
  %2294 = load ptr, ptr %5, align 8, !tbaa !5
  %2295 = getelementptr inbounds %struct.w2c_hermes, ptr %2294, i32 0, i32 6
  %2296 = load i32, ptr %46, align 4, !tbaa !9
  %2297 = zext i32 %2296 to i64
  %2298 = add i64 %2297, 32
  %2299 = call i32 @i32_load(ptr noundef %2295, i64 noundef %2298)
  store i32 %2299, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %2300 = load i32, ptr %47, align 4, !tbaa !9
  %2301 = load i32, ptr %46, align 4, !tbaa !9
  %2302 = add i32 %2301, %2300
  store i32 %2302, ptr %46, align 4, !tbaa !9
  %2303 = load ptr, ptr %5, align 8, !tbaa !5
  %2304 = getelementptr inbounds %struct.w2c_hermes, ptr %2303, i32 0, i32 6
  %2305 = load i32, ptr %45, align 4, !tbaa !9
  %2306 = zext i32 %2305 to i64
  %2307 = add i64 %2306, 32
  %2308 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2304, i64 noundef %2307, i32 noundef %2308)
  %2309 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2309, ptr %45, align 4, !tbaa !9
  store i32 -4, ptr %46, align 4, !tbaa !9
  %2310 = load i32, ptr %45, align 4, !tbaa !9
  %2311 = load i32, ptr %46, align 4, !tbaa !9
  %2312 = icmp ne i32 %2310, %2311
  %2313 = zext i1 %2312 to i32
  store i32 %2313, ptr %45, align 4, !tbaa !9
  %2314 = load i32, ptr %45, align 4, !tbaa !9
  %2315 = icmp ne i32 %2314, 0
  br i1 %2315, label %2316, label %2334

2316:                                             ; preds = %2291
  %2317 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2317, ptr %45, align 4, !tbaa !9
  %2318 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2318, ptr %46, align 4, !tbaa !9
  %2319 = load ptr, ptr %5, align 8, !tbaa !5
  %2320 = getelementptr inbounds %struct.w2c_hermes, ptr %2319, i32 0, i32 6
  %2321 = load i32, ptr %46, align 4, !tbaa !9
  %2322 = zext i32 %2321 to i64
  %2323 = add i64 %2322, 36
  %2324 = call i32 @i32_load(ptr noundef %2320, i64 noundef %2323)
  store i32 %2324, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %2325 = load i32, ptr %47, align 4, !tbaa !9
  %2326 = load i32, ptr %46, align 4, !tbaa !9
  %2327 = sub i32 %2326, %2325
  store i32 %2327, ptr %46, align 4, !tbaa !9
  %2328 = load ptr, ptr %5, align 8, !tbaa !5
  %2329 = getelementptr inbounds %struct.w2c_hermes, ptr %2328, i32 0, i32 6
  %2330 = load i32, ptr %45, align 4, !tbaa !9
  %2331 = zext i32 %2330 to i64
  %2332 = add i64 %2331, 36
  %2333 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2329, i64 noundef %2332, i32 noundef %2333)
  br label %2334

2334:                                             ; preds = %2316, %2291
  %2335 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2335, ptr %45, align 4, !tbaa !9
  %2336 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2336, ptr %46, align 4, !tbaa !9
  %2337 = load ptr, ptr %5, align 8, !tbaa !5
  %2338 = getelementptr inbounds %struct.w2c_hermes, ptr %2337, i32 0, i32 6
  %2339 = load i32, ptr %46, align 4, !tbaa !9
  %2340 = zext i32 %2339 to i64
  %2341 = add i64 %2340, 20
  %2342 = call i32 @i32_load(ptr noundef %2338, i64 noundef %2341)
  store i32 %2342, ptr %46, align 4, !tbaa !9
  %2343 = load ptr, ptr %5, align 8, !tbaa !5
  %2344 = getelementptr inbounds %struct.w2c_hermes, ptr %2343, i32 0, i32 6
  %2345 = load i32, ptr %45, align 4, !tbaa !9
  %2346 = zext i32 %2345 to i64
  %2347 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2344, i64 noundef %2346, i32 noundef %2347)
  %2348 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2348, ptr %45, align 4, !tbaa !9
  %2349 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2349, ptr %46, align 4, !tbaa !9
  %2350 = load ptr, ptr %5, align 8, !tbaa !5
  %2351 = getelementptr inbounds %struct.w2c_hermes, ptr %2350, i32 0, i32 6
  %2352 = load i32, ptr %46, align 4, !tbaa !9
  %2353 = zext i32 %2352 to i64
  %2354 = add i64 %2353, 24
  %2355 = call i32 @i32_load(ptr noundef %2351, i64 noundef %2354)
  store i32 %2355, ptr %46, align 4, !tbaa !9
  %2356 = load ptr, ptr %5, align 8, !tbaa !5
  %2357 = getelementptr inbounds %struct.w2c_hermes, ptr %2356, i32 0, i32 6
  %2358 = load i32, ptr %45, align 4, !tbaa !9
  %2359 = zext i32 %2358 to i64
  %2360 = add i64 %2359, 4
  %2361 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2357, i64 noundef %2360, i32 noundef %2361)
  %2362 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2362, ptr %45, align 4, !tbaa !9
  %2363 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2363, ptr %46, align 4, !tbaa !9
  %2364 = load ptr, ptr %5, align 8, !tbaa !5
  %2365 = getelementptr inbounds %struct.w2c_hermes, ptr %2364, i32 0, i32 6
  %2366 = load i32, ptr %46, align 4, !tbaa !9
  %2367 = zext i32 %2366 to i64
  %2368 = add i64 %2367, 28
  %2369 = call i32 @i32_load(ptr noundef %2365, i64 noundef %2368)
  store i32 %2369, ptr %46, align 4, !tbaa !9
  %2370 = load ptr, ptr %5, align 8, !tbaa !5
  %2371 = getelementptr inbounds %struct.w2c_hermes, ptr %2370, i32 0, i32 6
  %2372 = load i32, ptr %45, align 4, !tbaa !9
  %2373 = zext i32 %2372 to i64
  %2374 = add i64 %2373, 8
  %2375 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2371, i64 noundef %2374, i32 noundef %2375)
  %2376 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2376, ptr %45, align 4, !tbaa !9
  %2377 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2377, ptr %46, align 4, !tbaa !9
  %2378 = load ptr, ptr %5, align 8, !tbaa !5
  %2379 = getelementptr inbounds %struct.w2c_hermes, ptr %2378, i32 0, i32 6
  %2380 = load i32, ptr %46, align 4, !tbaa !9
  %2381 = zext i32 %2380 to i64
  %2382 = add i64 %2381, 32
  %2383 = call i32 @i32_load(ptr noundef %2379, i64 noundef %2382)
  store i32 %2383, ptr %46, align 4, !tbaa !9
  %2384 = load ptr, ptr %5, align 8, !tbaa !5
  %2385 = getelementptr inbounds %struct.w2c_hermes, ptr %2384, i32 0, i32 6
  %2386 = load i32, ptr %45, align 4, !tbaa !9
  %2387 = zext i32 %2386 to i64
  %2388 = add i64 %2387, 12
  %2389 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2385, i64 noundef %2388, i32 noundef %2389)
  %2390 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2390, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %2391 = load ptr, ptr %5, align 8, !tbaa !5
  %2392 = getelementptr inbounds %struct.w2c_hermes, ptr %2391, i32 0, i32 6
  %2393 = load i32, ptr %45, align 4, !tbaa !9
  %2394 = zext i32 %2393 to i64
  %2395 = add i64 %2394, 32
  %2396 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2392, i64 noundef %2395, i32 noundef %2396)
  %2397 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2397, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %2398 = load ptr, ptr %5, align 8, !tbaa !5
  %2399 = getelementptr inbounds %struct.w2c_hermes, ptr %2398, i32 0, i32 6
  %2400 = load i32, ptr %45, align 4, !tbaa !9
  %2401 = zext i32 %2400 to i64
  %2402 = add i64 %2401, 24
  %2403 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2399, i64 noundef %2402, i64 noundef %2403)
  %2404 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2404, ptr %45, align 4, !tbaa !9
  %2405 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2405, ptr %13, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %2406 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2406, ptr %7, align 4, !tbaa !9
  %2407 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2407, ptr %45, align 4, !tbaa !9
  %2408 = load ptr, ptr %5, align 8, !tbaa !5
  %2409 = getelementptr inbounds %struct.w2c_hermes, ptr %2408, i32 0, i32 6
  %2410 = load i32, ptr %45, align 4, !tbaa !9
  %2411 = zext i32 %2410 to i64
  %2412 = add i64 %2411, 28
  %2413 = call i32 @i32_load(ptr noundef %2409, i64 noundef %2412)
  store i32 %2413, ptr %45, align 4, !tbaa !9
  %2414 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2414, ptr %46, align 4, !tbaa !9
  %2415 = load ptr, ptr %5, align 8, !tbaa !5
  %2416 = getelementptr inbounds %struct.w2c_hermes, ptr %2415, i32 0, i32 6
  %2417 = load i32, ptr %46, align 4, !tbaa !9
  %2418 = zext i32 %2417 to i64
  %2419 = add i64 %2418, 40
  %2420 = call i32 @i32_load(ptr noundef %2416, i64 noundef %2419)
  store i32 %2420, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %2421 = load i32, ptr %47, align 4, !tbaa !9
  %2422 = and i32 %2421, 31
  %2423 = load i32, ptr %46, align 4, !tbaa !9
  %2424 = shl i32 %2423, %2422
  store i32 %2424, ptr %46, align 4, !tbaa !9
  %2425 = load i32, ptr %46, align 4, !tbaa !9
  %2426 = load i32, ptr %45, align 4, !tbaa !9
  %2427 = add i32 %2426, %2425
  store i32 %2427, ptr %45, align 4, !tbaa !9
  br label %2428

2428:                                             ; preds = %2334, %1324
  %2429 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2429, ptr %8, align 4, !tbaa !9
  %2430 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %2430, ptr %45, align 4, !tbaa !9
  %2431 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2431, ptr %46, align 4, !tbaa !9
  %2432 = load ptr, ptr %5, align 8, !tbaa !5
  %2433 = getelementptr inbounds %struct.w2c_hermes, ptr %2432, i32 0, i32 6
  %2434 = load i32, ptr %45, align 4, !tbaa !9
  %2435 = zext i32 %2434 to i64
  %2436 = add i64 %2435, 8
  %2437 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %2433, i64 noundef %2436, i32 noundef %2437)
  %2438 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %2438, ptr %45, align 4, !tbaa !9
  %2439 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2439, ptr %46, align 4, !tbaa !9
  %2440 = load ptr, ptr %5, align 8, !tbaa !5
  %2441 = getelementptr inbounds %struct.w2c_hermes, ptr %2440, i32 0, i32 6
  %2442 = load i32, ptr %45, align 4, !tbaa !9
  %2443 = zext i32 %2442 to i64
  %2444 = add i64 %2443, 4
  %2445 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2441, i64 noundef %2444, i32 noundef %2445)
  %2446 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %2446, ptr %45, align 4, !tbaa !9
  %2447 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2447, ptr %46, align 4, !tbaa !9
  %2448 = load ptr, ptr %5, align 8, !tbaa !5
  %2449 = getelementptr inbounds %struct.w2c_hermes, ptr %2448, i32 0, i32 6
  %2450 = load i32, ptr %45, align 4, !tbaa !9
  %2451 = zext i32 %2450 to i64
  %2452 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2449, i64 noundef %2451, i32 noundef %2452)
  %2453 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2453, ptr %45, align 4, !tbaa !9
  %2454 = load ptr, ptr %5, align 8, !tbaa !5
  %2455 = getelementptr inbounds %struct.w2c_hermes, ptr %2454, i32 0, i32 6
  %2456 = load i32, ptr %45, align 4, !tbaa !9
  %2457 = zext i32 %2456 to i64
  %2458 = add i64 %2457, 24
  %2459 = call i32 @i32_load(ptr noundef %2455, i64 noundef %2458)
  store i32 %2459, ptr %45, align 4, !tbaa !9
  %2460 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2460, ptr %7, align 4, !tbaa !9
  %2461 = load i32, ptr %45, align 4, !tbaa !9
  %2462 = icmp ne i32 %2461, 0
  br i1 %2462, label %2463, label %2467

2463:                                             ; preds = %2428
  %2464 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2464, ptr %45, align 4, !tbaa !9
  %2465 = load ptr, ptr %5, align 8, !tbaa !5
  %2466 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %2465, i32 noundef %2466)
  br label %2467

2467:                                             ; preds = %2463, %2428
  %2468 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %2468, ptr %45, align 4, !tbaa !9
  %2469 = load ptr, ptr %5, align 8, !tbaa !5
  %2470 = getelementptr inbounds %struct.w2c_hermes, ptr %2469, i32 0, i32 6
  %2471 = load i32, ptr %45, align 4, !tbaa !9
  %2472 = zext i32 %2471 to i64
  %2473 = call i32 @i32_load(ptr noundef %2470, i64 noundef %2472)
  store i32 %2473, ptr %45, align 4, !tbaa !9
  %2474 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2474, ptr %7, align 4, !tbaa !9
  %2475 = load i32, ptr %45, align 4, !tbaa !9
  %2476 = icmp ne i32 %2475, 0
  br i1 %2476, label %2477, label %2481

2477:                                             ; preds = %2467
  %2478 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2478, ptr %45, align 4, !tbaa !9
  %2479 = load ptr, ptr %5, align 8, !tbaa !5
  %2480 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %2479, i32 noundef %2480)
  br label %2481

2481:                                             ; preds = %2477, %2467
  %2482 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2482, ptr %45, align 4, !tbaa !9
  %2483 = load ptr, ptr %5, align 8, !tbaa !5
  %2484 = getelementptr inbounds %struct.w2c_hermes, ptr %2483, i32 0, i32 6
  %2485 = load i32, ptr %45, align 4, !tbaa !9
  %2486 = zext i32 %2485 to i64
  %2487 = add i64 %2486, 36
  %2488 = call i32 @i32_load(ptr noundef %2484, i64 noundef %2487)
  store i32 %2488, ptr %45, align 4, !tbaa !9
  %2489 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2489, ptr %8, align 4, !tbaa !9
  br label %2490

2490:                                             ; preds = %2481, %579
  %2491 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %2491, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %2492 = load i32, ptr %46, align 4, !tbaa !9
  %2493 = load i32, ptr %45, align 4, !tbaa !9
  %2494 = add i32 %2493, %2492
  store i32 %2494, ptr %45, align 4, !tbaa !9
  %2495 = load i32, ptr %45, align 4, !tbaa !9
  %2496 = load ptr, ptr %5, align 8, !tbaa !5
  %2497 = getelementptr inbounds %struct.w2c_hermes, ptr %2496, i32 0, i32 3
  store i32 %2495, ptr %2497, align 8, !tbaa !15
  %2498 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2498, ptr %45, align 4, !tbaa !9
  %2499 = load ptr, ptr %5, align 8, !tbaa !5
  %2500 = getelementptr inbounds %struct.w2c_hermes, ptr %2499, i32 0, i32 6
  %2501 = load i32, ptr %45, align 4, !tbaa !9
  %2502 = zext i32 %2501 to i64
  %2503 = add i64 %2502, 4
  %2504 = call i32 @i32_load(ptr noundef %2500, i64 noundef %2503)
  store i32 %2504, ptr %45, align 4, !tbaa !9
  %2505 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2505, ptr %46, align 4, !tbaa !9
  %2506 = load ptr, ptr %5, align 8, !tbaa !5
  %2507 = getelementptr inbounds %struct.w2c_hermes, ptr %2506, i32 0, i32 6
  %2508 = load i32, ptr %46, align 4, !tbaa !9
  %2509 = zext i32 %2508 to i64
  %2510 = add i64 %2509, 12
  %2511 = call i32 @i32_load(ptr noundef %2507, i64 noundef %2510)
  store i32 %2511, ptr %46, align 4, !tbaa !9
  %2512 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2512, ptr %8, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %2513 = load i32, ptr %47, align 4, !tbaa !9
  %2514 = and i32 %2513, 31
  %2515 = load i32, ptr %46, align 4, !tbaa !9
  %2516 = lshr i32 %2515, %2514
  store i32 %2516, ptr %46, align 4, !tbaa !9
  store i32 536870908, ptr %47, align 4, !tbaa !9
  %2517 = load i32, ptr %47, align 4, !tbaa !9
  %2518 = load i32, ptr %46, align 4, !tbaa !9
  %2519 = and i32 %2518, %2517
  store i32 %2519, ptr %46, align 4, !tbaa !9
  %2520 = load i32, ptr %46, align 4, !tbaa !9
  %2521 = load i32, ptr %45, align 4, !tbaa !9
  %2522 = add i32 %2521, %2520
  store i32 %2522, ptr %45, align 4, !tbaa !9
  %2523 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2523, ptr %7, align 4, !tbaa !9
  %2524 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2524, ptr %46, align 4, !tbaa !9
  %2525 = load ptr, ptr %5, align 8, !tbaa !5
  %2526 = getelementptr inbounds %struct.w2c_hermes, ptr %2525, i32 0, i32 6
  %2527 = load i32, ptr %46, align 4, !tbaa !9
  %2528 = zext i32 %2527 to i64
  %2529 = call i32 @i32_load(ptr noundef %2526, i64 noundef %2528)
  store i32 %2529, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %2530 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2530, ptr %48, align 4, !tbaa !9
  %2531 = load i32, ptr %48, align 4, !tbaa !9
  %2532 = and i32 %2531, 31
  %2533 = load i32, ptr %47, align 4, !tbaa !9
  %2534 = shl i32 %2533, %2532
  store i32 %2534, ptr %47, align 4, !tbaa !9
  %2535 = load i32, ptr %47, align 4, !tbaa !9
  %2536 = load i32, ptr %46, align 4, !tbaa !9
  %2537 = or i32 %2536, %2535
  store i32 %2537, ptr %46, align 4, !tbaa !9
  %2538 = load ptr, ptr %5, align 8, !tbaa !5
  %2539 = getelementptr inbounds %struct.w2c_hermes, ptr %2538, i32 0, i32 6
  %2540 = load i32, ptr %45, align 4, !tbaa !9
  %2541 = zext i32 %2540 to i64
  %2542 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2539, i64 noundef %2541, i32 noundef %2542)
  br label %2543

2543:                                             ; preds = %2490, %427, %411
  %2544 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2544, ptr %45, align 4, !tbaa !9
  %2545 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2545, ptr %46, align 4, !tbaa !9
  %2546 = load ptr, ptr %5, align 8, !tbaa !5
  %2547 = getelementptr inbounds %struct.w2c_hermes, ptr %2546, i32 0, i32 6
  %2548 = load i32, ptr %46, align 4, !tbaa !9
  %2549 = zext i32 %2548 to i64
  %2550 = add i64 %2549, 5588
  %2551 = call i32 @i32_load(ptr noundef %2547, i64 noundef %2550)
  store i32 %2551, ptr %46, align 4, !tbaa !9
  %2552 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2552, ptr %14, align 4, !tbaa !9
  %2553 = load ptr, ptr %5, align 8, !tbaa !5
  %2554 = getelementptr inbounds %struct.w2c_hermes, ptr %2553, i32 0, i32 6
  %2555 = load i32, ptr %45, align 4, !tbaa !9
  %2556 = zext i32 %2555 to i64
  %2557 = add i64 %2556, 5600
  %2558 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2554, i64 noundef %2557, i32 noundef %2558)
  %2559 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2559, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %2560 = load i32, ptr %46, align 4, !tbaa !9
  %2561 = load i32, ptr %45, align 4, !tbaa !9
  %2562 = sub i32 %2561, %2560
  store i32 %2562, ptr %45, align 4, !tbaa !9
  %2563 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2563, ptr %13, align 4, !tbaa !9
  %2564 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2564, ptr %46, align 4, !tbaa !9
  %2565 = load ptr, ptr %5, align 8, !tbaa !5
  %2566 = getelementptr inbounds %struct.w2c_hermes, ptr %2565, i32 0, i32 6
  %2567 = load i32, ptr %46, align 4, !tbaa !9
  %2568 = zext i32 %2567 to i64
  %2569 = add i64 %2568, 5808
  %2570 = call i64 @i64_load32_u(ptr noundef %2566, i64 noundef %2569)
  store i64 %2570, ptr %55, align 8, !tbaa !11
  %2571 = load ptr, ptr %5, align 8, !tbaa !5
  %2572 = getelementptr inbounds %struct.w2c_hermes, ptr %2571, i32 0, i32 6
  %2573 = load i32, ptr %45, align 4, !tbaa !9
  %2574 = zext i32 %2573 to i64
  %2575 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2572, i64 noundef %2574, i64 noundef %2575)
  %2576 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2576, ptr %45, align 4, !tbaa !9
  %2577 = load ptr, ptr %5, align 8, !tbaa !5
  %2578 = getelementptr inbounds %struct.w2c_hermes, ptr %2577, i32 0, i32 6
  %2579 = load i32, ptr %45, align 4, !tbaa !9
  %2580 = zext i32 %2579 to i64
  %2581 = add i64 %2580, 5584
  %2582 = call i32 @i32_load(ptr noundef %2578, i64 noundef %2581)
  store i32 %2582, ptr %45, align 4, !tbaa !9
  %2583 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2583, ptr %46, align 4, !tbaa !9
  %2584 = load i32, ptr %46, align 4, !tbaa !9
  %2585 = load i32, ptr %45, align 4, !tbaa !9
  %2586 = sub i32 %2585, %2584
  store i32 %2586, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %2587 = load i32, ptr %45, align 4, !tbaa !9
  %2588 = load i32, ptr %46, align 4, !tbaa !9
  %2589 = and i32 %2588, 31
  %2590 = ashr i32 %2587, %2589
  store i32 %2590, ptr %45, align 4, !tbaa !9
  %2591 = load i32, ptr %45, align 4, !tbaa !9
  %2592 = zext i32 %2591 to i64
  store i64 %2592, ptr %54, align 8, !tbaa !11
  %2593 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2593, ptr %46, align 4, !tbaa !9
  %2594 = load ptr, ptr %5, align 8, !tbaa !5
  %2595 = getelementptr inbounds %struct.w2c_hermes, ptr %2594, i32 0, i32 6
  %2596 = load i32, ptr %46, align 4, !tbaa !9
  %2597 = zext i32 %2596 to i64
  %2598 = add i64 %2597, 4
  %2599 = call i32 @i32_load(ptr noundef %2595, i64 noundef %2598)
  store i32 %2599, ptr %46, align 4, !tbaa !9
  %2600 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2600, ptr %7, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %2601 = load i32, ptr %47, align 4, !tbaa !9
  %2602 = load i32, ptr %46, align 4, !tbaa !9
  %2603 = and i32 %2602, %2601
  store i32 %2603, ptr %46, align 4, !tbaa !9
  %2604 = load i32, ptr %46, align 4, !tbaa !9
  %2605 = icmp ne i32 %2604, 0
  br i1 %2605, label %2606, label %2614

2606:                                             ; preds = %2543
  %2607 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2607, ptr %46, align 4, !tbaa !9
  %2608 = load ptr, ptr %5, align 8, !tbaa !5
  %2609 = getelementptr inbounds %struct.w2c_hermes, ptr %2608, i32 0, i32 6
  %2610 = load i32, ptr %46, align 4, !tbaa !9
  %2611 = zext i32 %2610 to i64
  %2612 = add i64 %2611, 19
  %2613 = call i32 @i32_load(ptr noundef %2609, i64 noundef %2612)
  store i32 %2613, ptr %46, align 4, !tbaa !9
  br label %2626

2614:                                             ; preds = %2543
  %2615 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2615, ptr %46, align 4, !tbaa !9
  %2616 = load ptr, ptr %5, align 8, !tbaa !5
  %2617 = getelementptr inbounds %struct.w2c_hermes, ptr %2616, i32 0, i32 6
  %2618 = load i32, ptr %46, align 4, !tbaa !9
  %2619 = zext i32 %2618 to i64
  %2620 = add i64 %2619, 8
  %2621 = call i32 @i32_load(ptr noundef %2617, i64 noundef %2620)
  store i32 %2621, ptr %46, align 4, !tbaa !9
  store i32 25, ptr %47, align 4, !tbaa !9
  %2622 = load i32, ptr %47, align 4, !tbaa !9
  %2623 = and i32 %2622, 31
  %2624 = load i32, ptr %46, align 4, !tbaa !9
  %2625 = lshr i32 %2624, %2623
  store i32 %2625, ptr %46, align 4, !tbaa !9
  br label %2626

2626:                                             ; preds = %2614, %2606
  store i32 1, ptr %47, align 4, !tbaa !9
  %2627 = load i32, ptr %47, align 4, !tbaa !9
  %2628 = load i32, ptr %46, align 4, !tbaa !9
  %2629 = add i32 %2628, %2627
  store i32 %2629, ptr %46, align 4, !tbaa !9
  %2630 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2630, ptr %7, align 4, !tbaa !9
  %2631 = load i32, ptr %46, align 4, !tbaa !9
  %2632 = zext i32 %2631 to i64
  store i64 %2632, ptr %55, align 8, !tbaa !11
  store i64 32, ptr %56, align 8, !tbaa !11
  %2633 = load i64, ptr %56, align 8, !tbaa !11
  %2634 = load i64, ptr %55, align 8, !tbaa !11
  %2635 = add i64 %2634, %2633
  store i64 %2635, ptr %55, align 8, !tbaa !11
  %2636 = load i64, ptr %54, align 8, !tbaa !11
  %2637 = load i64, ptr %55, align 8, !tbaa !11
  %2638 = icmp uge i64 %2636, %2637
  %2639 = zext i1 %2638 to i32
  store i32 %2639, ptr %45, align 4, !tbaa !9
  %2640 = load i32, ptr %45, align 4, !tbaa !9
  %2641 = icmp ne i32 %2640, 0
  br i1 %2641, label %2642, label %2835

2642:                                             ; preds = %2626
  %2643 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2643, ptr %45, align 4, !tbaa !9
  %2644 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2644, ptr %46, align 4, !tbaa !9
  %2645 = load ptr, ptr %5, align 8, !tbaa !5
  %2646 = load i32, ptr %45, align 4, !tbaa !9
  %2647 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AallocStack0x28unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %2645, i32 noundef %2646, i32 noundef %2647)
  %2648 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2648, ptr %45, align 4, !tbaa !9
  %2649 = load ptr, ptr %5, align 8, !tbaa !5
  %2650 = getelementptr inbounds %struct.w2c_hermes, ptr %2649, i32 0, i32 6
  %2651 = load i32, ptr %45, align 4, !tbaa !9
  %2652 = zext i32 %2651 to i64
  %2653 = add i64 %2652, 8
  %2654 = call i32 @i32_load(ptr noundef %2650, i64 noundef %2653)
  store i32 %2654, ptr %45, align 4, !tbaa !9
  %2655 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2655, ptr %33, align 4, !tbaa !9
  %2656 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2656, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %2657 = load i32, ptr %46, align 4, !tbaa !9
  %2658 = load i32, ptr %45, align 4, !tbaa !9
  %2659 = sub i32 %2658, %2657
  store i32 %2659, ptr %45, align 4, !tbaa !9
  %2660 = load ptr, ptr %5, align 8, !tbaa !5
  %2661 = getelementptr inbounds %struct.w2c_hermes, ptr %2660, i32 0, i32 6
  %2662 = load i32, ptr %45, align 4, !tbaa !9
  %2663 = zext i32 %2662 to i64
  %2664 = call i64 @i64_load(ptr noundef %2661, i64 noundef %2663)
  store i64 %2664, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %2665 = load i64, ptr %54, align 8, !tbaa !11
  %2666 = load i64, ptr %55, align 8, !tbaa !11
  %2667 = and i64 %2666, 63
  %2668 = ashr i64 %2665, %2667
  store i64 %2668, ptr %54, align 8, !tbaa !11
  store i64 4294967295, ptr %55, align 8, !tbaa !11
  %2669 = load i64, ptr %55, align 8, !tbaa !11
  %2670 = load i64, ptr %54, align 8, !tbaa !11
  %2671 = and i64 %2670, %2669
  store i64 %2671, ptr %54, align 8, !tbaa !11
  store i64 4294967284, ptr %55, align 8, !tbaa !11
  %2672 = load i64, ptr %54, align 8, !tbaa !11
  %2673 = load i64, ptr %55, align 8, !tbaa !11
  %2674 = icmp ne i64 %2672, %2673
  %2675 = zext i1 %2674 to i32
  store i32 %2675, ptr %45, align 4, !tbaa !9
  %2676 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2676, ptr %8, align 4, !tbaa !9
  %2677 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2677, ptr %46, align 4, !tbaa !9
  %2678 = load ptr, ptr %5, align 8, !tbaa !5
  %2679 = getelementptr inbounds %struct.w2c_hermes, ptr %2678, i32 0, i32 6
  %2680 = load i32, ptr %46, align 4, !tbaa !9
  %2681 = zext i32 %2680 to i64
  %2682 = add i64 %2681, 4
  %2683 = call i32 @i32_load(ptr noundef %2679, i64 noundef %2682)
  store i32 %2683, ptr %46, align 4, !tbaa !9
  %2684 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2684, ptr %21, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %2685 = load i32, ptr %47, align 4, !tbaa !9
  %2686 = load i32, ptr %46, align 4, !tbaa !9
  %2687 = and i32 %2686, %2685
  store i32 %2687, ptr %46, align 4, !tbaa !9
  %2688 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2688, ptr %7, align 4, !tbaa !9
  %2689 = load i32, ptr %46, align 4, !tbaa !9
  %2690 = icmp ne i32 %2689, 0
  br i1 %2690, label %2691, label %2696

2691:                                             ; preds = %2642
  %2692 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2692, ptr %46, align 4, !tbaa !9
  store i32 29, ptr %47, align 4, !tbaa !9
  %2693 = load i32, ptr %47, align 4, !tbaa !9
  %2694 = load i32, ptr %46, align 4, !tbaa !9
  %2695 = add i32 %2694, %2693
  store i32 %2695, ptr %46, align 4, !tbaa !9
  br label %2701

2696:                                             ; preds = %2642
  %2697 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2697, ptr %46, align 4, !tbaa !9
  store i32 15, ptr %47, align 4, !tbaa !9
  %2698 = load i32, ptr %47, align 4, !tbaa !9
  %2699 = load i32, ptr %46, align 4, !tbaa !9
  %2700 = add i32 %2699, %2698
  store i32 %2700, ptr %46, align 4, !tbaa !9
  br label %2701

2701:                                             ; preds = %2696, %2691
  %2702 = load ptr, ptr %5, align 8, !tbaa !5
  %2703 = getelementptr inbounds %struct.w2c_hermes, ptr %2702, i32 0, i32 6
  %2704 = load i32, ptr %46, align 4, !tbaa !9
  %2705 = zext i32 %2704 to i64
  %2706 = call i32 @i32_load8_u(ptr noundef %2703, i64 noundef %2705)
  store i32 %2706, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %2707 = load i32, ptr %47, align 4, !tbaa !9
  %2708 = load i32, ptr %46, align 4, !tbaa !9
  %2709 = and i32 %2708, %2707
  store i32 %2709, ptr %46, align 4, !tbaa !9
  %2710 = load i32, ptr %45, align 4, !tbaa !9
  %2711 = load i32, ptr %46, align 4, !tbaa !9
  %2712 = icmp eq i32 %2710, %2711
  %2713 = zext i1 %2712 to i32
  store i32 %2713, ptr %45, align 4, !tbaa !9
  %2714 = load i32, ptr %45, align 4, !tbaa !9
  %2715 = icmp ne i32 %2714, 0
  br i1 %2715, label %2716, label %2808

2716:                                             ; preds = %2701
  %2717 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2717, ptr %45, align 4, !tbaa !9
  %2718 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %2718, ptr %46, 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 %45, align 4, !tbaa !9
  %2722 = zext i32 %2721 to i64
  %2723 = add i64 %2722, 5808
  %2724 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2720, i64 noundef %2723, i32 noundef %2724)
  %2725 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %2725, ptr %45, align 4, !tbaa !9
  %2726 = load i32, ptr %45, align 4, !tbaa !9
  %2727 = icmp ne i32 %2726, 0
  %2728 = xor i1 %2727, true
  %2729 = zext i1 %2728 to i32
  store i32 %2729, ptr %45, align 4, !tbaa !9
  %2730 = load i32, ptr %45, align 4, !tbaa !9
  %2731 = icmp ne i32 %2730, 0
  br i1 %2731, label %2732, label %2770

2732:                                             ; preds = %2716
  %2733 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2733, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %2734 = load ptr, ptr %5, align 8, !tbaa !5
  %2735 = getelementptr inbounds %struct.w2c_hermes, ptr %2734, i32 0, i32 6
  %2736 = load i32, ptr %45, align 4, !tbaa !9
  %2737 = zext i32 %2736 to i64
  %2738 = add i64 %2737, 336
  %2739 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2735, i64 noundef %2738, i32 noundef %2739)
  %2740 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2740, ptr %45, align 4, !tbaa !9
  store i64 158913789953, ptr %55, align 8, !tbaa !11
  %2741 = load ptr, ptr %5, align 8, !tbaa !5
  %2742 = getelementptr inbounds %struct.w2c_hermes, ptr %2741, i32 0, i32 6
  %2743 = load i32, ptr %45, align 4, !tbaa !9
  %2744 = zext i32 %2743 to i64
  %2745 = add i64 %2744, 328
  %2746 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2742, i64 noundef %2745, i64 noundef %2746)
  %2747 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2747, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, 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 %45, align 4, !tbaa !9
  %2751 = zext i32 %2750 to i64
  %2752 = add i64 %2751, 312
  %2753 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2749, i64 noundef %2752, i32 noundef %2753)
  %2754 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2754, ptr %45, align 4, !tbaa !9
  store i32 18296, ptr %46, align 4, !tbaa !9
  %2755 = load ptr, ptr %5, align 8, !tbaa !5
  %2756 = getelementptr inbounds %struct.w2c_hermes, ptr %2755, i32 0, i32 6
  %2757 = load i32, ptr %45, align 4, !tbaa !9
  %2758 = zext i32 %2757 to i64
  %2759 = add i64 %2758, 304
  %2760 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2756, i64 noundef %2759, i32 noundef %2760)
  %2761 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2761, ptr %45, align 4, !tbaa !9
  %2762 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2762, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %2763 = load i32, ptr %47, align 4, !tbaa !9
  %2764 = load i32, ptr %46, align 4, !tbaa !9
  %2765 = add i32 %2764, %2763
  store i32 %2765, ptr %46, align 4, !tbaa !9
  %2766 = load ptr, ptr %5, align 8, !tbaa !5
  %2767 = load i32, ptr %45, align 4, !tbaa !9
  %2768 = load i32, ptr %46, align 4, !tbaa !9
  %2769 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %2766, i32 noundef %2767, i32 noundef %2768)
  store i32 %2769, ptr %45, align 4, !tbaa !9
  br label %2849

2770:                                             ; preds = %2716
  %2771 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2771, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %2772 = load ptr, ptr %5, align 8, !tbaa !5
  %2773 = getelementptr inbounds %struct.w2c_hermes, ptr %2772, i32 0, i32 6
  %2774 = load i32, ptr %45, align 4, !tbaa !9
  %2775 = zext i32 %2774 to i64
  %2776 = add i64 %2775, 336
  %2777 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2773, i64 noundef %2776, i32 noundef %2777)
  %2778 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2778, ptr %45, align 4, !tbaa !9
  store i64 124554051585, ptr %55, align 8, !tbaa !11
  %2779 = load ptr, ptr %5, align 8, !tbaa !5
  %2780 = getelementptr inbounds %struct.w2c_hermes, ptr %2779, i32 0, i32 6
  %2781 = load i32, ptr %45, align 4, !tbaa !9
  %2782 = zext i32 %2781 to i64
  %2783 = add i64 %2782, 328
  %2784 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2780, i64 noundef %2783, i64 noundef %2784)
  %2785 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2785, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %2786 = load ptr, ptr %5, align 8, !tbaa !5
  %2787 = getelementptr inbounds %struct.w2c_hermes, ptr %2786, i32 0, i32 6
  %2788 = load i32, ptr %45, align 4, !tbaa !9
  %2789 = zext i32 %2788 to i64
  %2790 = add i64 %2789, 312
  %2791 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2787, i64 noundef %2790, i32 noundef %2791)
  %2792 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2792, ptr %45, align 4, !tbaa !9
  store i32 36034, ptr %46, align 4, !tbaa !9
  %2793 = load ptr, ptr %5, align 8, !tbaa !5
  %2794 = getelementptr inbounds %struct.w2c_hermes, ptr %2793, i32 0, i32 6
  %2795 = load i32, ptr %45, align 4, !tbaa !9
  %2796 = zext i32 %2795 to i64
  %2797 = add i64 %2796, 304
  %2798 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2794, i64 noundef %2797, i32 noundef %2798)
  %2799 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2799, ptr %45, align 4, !tbaa !9
  %2800 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %2800, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %2801 = load i32, ptr %47, align 4, !tbaa !9
  %2802 = load i32, ptr %46, align 4, !tbaa !9
  %2803 = add i32 %2802, %2801
  store i32 %2803, ptr %46, align 4, !tbaa !9
  %2804 = load ptr, ptr %5, align 8, !tbaa !5
  %2805 = load i32, ptr %45, align 4, !tbaa !9
  %2806 = load i32, ptr %46, align 4, !tbaa !9
  %2807 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %2804, i32 noundef %2805, i32 noundef %2806)
  store i32 %2807, ptr %45, align 4, !tbaa !9
  br label %2849

2808:                                             ; preds = %2701
  %2809 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2809, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %2810 = load i32, ptr %46, align 4, !tbaa !9
  %2811 = load i32, ptr %45, align 4, !tbaa !9
  %2812 = add i32 %2811, %2810
  store i32 %2812, ptr %45, align 4, !tbaa !9
  %2813 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2813, ptr %11, align 4, !tbaa !9
  %2814 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2814, ptr %45, align 4, !tbaa !9
  store i32 29, ptr %46, align 4, !tbaa !9
  %2815 = load i32, ptr %46, align 4, !tbaa !9
  %2816 = load i32, ptr %45, align 4, !tbaa !9
  %2817 = add i32 %2816, %2815
  store i32 %2817, ptr %45, align 4, !tbaa !9
  %2818 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2818, ptr %46, align 4, !tbaa !9
  store i32 15, ptr %47, align 4, !tbaa !9
  %2819 = load i32, ptr %47, align 4, !tbaa !9
  %2820 = load i32, ptr %46, align 4, !tbaa !9
  %2821 = add i32 %2820, %2819
  store i32 %2821, ptr %46, align 4, !tbaa !9
  %2822 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2822, ptr %47, align 4, !tbaa !9
  %2823 = load i32, ptr %47, align 4, !tbaa !9
  %2824 = icmp ne i32 %2823, 0
  br i1 %2824, label %2825, label %2827

2825:                                             ; preds = %2808
  %2826 = load i32, ptr %45, align 4, !tbaa !9
  br label %2829

2827:                                             ; preds = %2808
  %2828 = load i32, ptr %46, align 4, !tbaa !9
  br label %2829

2829:                                             ; preds = %2827, %2825
  %2830 = phi i32 [ %2826, %2825 ], [ %2828, %2827 ]
  store i32 %2830, ptr %45, align 4, !tbaa !9
  %2831 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2831, ptr %34, align 4, !tbaa !9
  %2832 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2832, ptr %45, align 4, !tbaa !9
  %2833 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2833, ptr %21, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  %2834 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2834, ptr %12, align 4, !tbaa !9
  br label %2909

2835:                                             ; preds = %2626
  %2836 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2836, ptr %45, align 4, !tbaa !9
  %2837 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %2837, ptr %46, align 4, !tbaa !9
  %2838 = load ptr, ptr %5, align 8, !tbaa !5
  %2839 = getelementptr inbounds %struct.w2c_hermes, ptr %2838, i32 0, i32 6
  %2840 = load i32, ptr %45, align 4, !tbaa !9
  %2841 = zext i32 %2840 to i64
  %2842 = add i64 %2841, 5808
  %2843 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2839, i64 noundef %2842, i32 noundef %2843)
  %2844 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2844, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %2845 = load ptr, ptr %5, align 8, !tbaa !5
  %2846 = load i32, ptr %45, align 4, !tbaa !9
  %2847 = load i32, ptr %46, align 4, !tbaa !9
  %2848 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseStackOverflow0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AStackOverflowKind0x29(ptr noundef %2845, i32 noundef %2846, i32 noundef %2847)
  store i32 %2848, ptr %45, align 4, !tbaa !9
  br label %2849

2849:                                             ; preds = %2835, %2770, %2732
  %2850 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2850, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %2851 = load i32, ptr %46, align 4, !tbaa !9
  %2852 = load i32, ptr %45, align 4, !tbaa !9
  %2853 = sub i32 %2852, %2851
  store i32 %2853, ptr %45, align 4, !tbaa !9
  %2854 = load ptr, ptr %5, align 8, !tbaa !5
  %2855 = getelementptr inbounds %struct.w2c_hermes, ptr %2854, i32 0, i32 6
  %2856 = load i32, ptr %45, align 4, !tbaa !9
  %2857 = zext i32 %2856 to i64
  %2858 = call i32 @i32_load(ptr noundef %2855, i64 noundef %2857)
  store i32 %2858, ptr %45, align 4, !tbaa !9
  %2859 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2859, ptr %21, align 4, !tbaa !9
  %2860 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %2860, ptr %45, align 4, !tbaa !9
  %2861 = load ptr, ptr %5, align 8, !tbaa !5
  %2862 = getelementptr inbounds %struct.w2c_hermes, ptr %2861, i32 0, i32 6
  %2863 = load i32, ptr %45, align 4, !tbaa !9
  %2864 = zext i32 %2863 to i64
  %2865 = call i32 @i32_load(ptr noundef %2862, i64 noundef %2864)
  store i32 %2865, ptr %45, align 4, !tbaa !9
  %2866 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2866, ptr %6, align 4, !tbaa !9
  %2867 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2867, ptr %45, align 4, !tbaa !9
  %2868 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2868, ptr %46, align 4, !tbaa !9
  %2869 = load ptr, ptr %5, align 8, !tbaa !5
  %2870 = getelementptr inbounds %struct.w2c_hermes, ptr %2869, i32 0, i32 6
  %2871 = load i32, ptr %45, align 4, !tbaa !9
  %2872 = zext i32 %2871 to i64
  %2873 = add i64 %2872, 5588
  %2874 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2870, i64 noundef %2873, i32 noundef %2874)
  %2875 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2875, ptr %45, align 4, !tbaa !9
  %2876 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2876, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %2877 = load i32, ptr %47, align 4, !tbaa !9
  %2878 = load i32, ptr %46, align 4, !tbaa !9
  %2879 = sub i32 %2878, %2877
  store i32 %2879, ptr %46, align 4, !tbaa !9
  %2880 = load ptr, ptr %5, align 8, !tbaa !5
  %2881 = getelementptr inbounds %struct.w2c_hermes, ptr %2880, i32 0, i32 6
  %2882 = load i32, ptr %46, align 4, !tbaa !9
  %2883 = zext i32 %2882 to i64
  %2884 = call i32 @i32_load(ptr noundef %2881, i64 noundef %2883)
  store i32 %2884, ptr %46, align 4, !tbaa !9
  %2885 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %2885, ptr %7, align 4, !tbaa !9
  %2886 = load ptr, ptr %5, align 8, !tbaa !5
  %2887 = getelementptr inbounds %struct.w2c_hermes, ptr %2886, i32 0, i32 6
  %2888 = load i32, ptr %45, align 4, !tbaa !9
  %2889 = zext i32 %2888 to i64
  %2890 = add i64 %2889, 5600
  %2891 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2887, i64 noundef %2890, i32 noundef %2891)
  %2892 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2892, ptr %45, align 4, !tbaa !9
  %2893 = load i32, ptr %45, align 4, !tbaa !9
  %2894 = icmp ne i32 %2893, 0
  br i1 %2894, label %2895, label %2902

2895:                                             ; preds = %2849
  %2896 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %2896, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %2897 = load i32, ptr %46, align 4, !tbaa !9
  %2898 = load i32, ptr %45, align 4, !tbaa !9
  %2899 = add i32 %2898, %2897
  store i32 %2899, ptr %45, align 4, !tbaa !9
  %2900 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2900, ptr %11, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %2901 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2901, ptr %12, align 4, !tbaa !9
  br label %2909

2902:                                             ; preds = %2849
  %2903 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %2903, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %2904 = load ptr, ptr %5, align 8, !tbaa !5
  %2905 = getelementptr inbounds %struct.w2c_hermes, ptr %2904, i32 0, i32 6
  %2906 = load i32, ptr %45, align 4, !tbaa !9
  %2907 = zext i32 %2906 to i64
  %2908 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2905, i64 noundef %2907, i32 noundef %2908)
  br label %43622

2909:                                             ; preds = %2895, %2829
  br label %2910

2910:                                             ; preds = %43607, %43136, %2909
  %2911 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %2911, ptr %45, align 4, !tbaa !9
  %2912 = load i32, ptr %45, align 4, !tbaa !9
  %2913 = icmp ne i32 %2912, 0
  %2914 = xor i1 %2913, true
  %2915 = zext i1 %2914 to i32
  store i32 %2915, ptr %45, align 4, !tbaa !9
  %2916 = load i32, ptr %45, align 4, !tbaa !9
  %2917 = icmp ne i32 %2916, 0
  br i1 %2917, label %2918, label %2935

2918:                                             ; preds = %2910
  %2919 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %2919, ptr %45, align 4, !tbaa !9
  %2920 = load ptr, ptr %5, align 8, !tbaa !5
  %2921 = getelementptr inbounds %struct.w2c_hermes, ptr %2920, i32 0, i32 6
  %2922 = load i32, ptr %45, align 4, !tbaa !9
  %2923 = zext i32 %2922 to i64
  %2924 = call i32 @i32_load8_u(ptr noundef %2921, i64 noundef %2923)
  store i32 %2924, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %2925 = load i32, ptr %46, align 4, !tbaa !9
  %2926 = load i32, ptr %45, align 4, !tbaa !9
  %2927 = and i32 %2926, %2925
  store i32 %2927, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %2928 = load i32, ptr %46, align 4, !tbaa !9
  %2929 = and i32 %2928, 31
  %2930 = load i32, ptr %45, align 4, !tbaa !9
  %2931 = lshr i32 %2930, %2929
  store i32 %2931, ptr %45, align 4, !tbaa !9
  %2932 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2932, ptr %26, align 4, !tbaa !9
  %2933 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %2933, ptr %45, align 4, !tbaa !9
  %2934 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %2934, ptr %6, align 4, !tbaa !9
  br label %2944

2935:                                             ; preds = %2910
  %2936 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2936, ptr %45, align 4, !tbaa !9
  %2937 = load ptr, ptr %5, align 8, !tbaa !5
  %2938 = getelementptr inbounds %struct.w2c_hermes, ptr %2937, i32 0, i32 6
  %2939 = load i32, ptr %45, align 4, !tbaa !9
  %2940 = zext i32 %2939 to i64
  %2941 = add i64 %2940, 704
  %2942 = call i64 @i64_load(ptr noundef %2938, i64 noundef %2941)
  store i64 %2942, ptr %54, align 8, !tbaa !11
  %2943 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %2943, ptr %40, align 8, !tbaa !11
  br label %43138

2944:                                             ; preds = %2918
  br label %2945

2945:                                             ; preds = %43104, %42984, %41382, %41281, %41249, %41117, %41060, %39722, %39257, %38213, %37745, %37565, %37559, %37441, %37435, %37324, %37311, %37200, %37187, %37069, %37063, %37003, %36997, %36944, %36931, %36878, %36865, %36805, %36799, %36681, %36675, %36558, %36552, %36434, %36428, %36318, %36305, %36194, %36181, %36071, %36058, %35947, %35934, %35817, %35811, %35693, %35687, %35570, %35564, %35446, %35440, %35330, %35317, %35206, %35193, %35083, %35070, %34959, %34946, %34829, %34823, %34705, %34699, %34582, %34576, %34458, %34452, %34342, %34329, %34218, %34205, %34095, %34082, %33971, %33958, %33841, %33835, %33717, %33711, %33594, %33588, %33470, %33464, %33354, %33341, %33230, %33217, %33107, %33094, %32983, %32970, %32804, %32688, %32568, %32452, %32332, %32216, %32096, %31980, %31866, %31390, %31117, %30641, %30368, %29892, %29619, %29170, %28897, %28448, %28175, %27726, %27453, %27048, %26935, %26530, %26417, %26012, %25925, %25746, %25720, %25694, %25668, %25642, %25616, %25552, %25488, %25476, %25403, %25368, %25355, %25311, %25009, %24551, %24260, %23756, %23523, %23310, %23179, %22830, %22668, %22612, %21713, %21591, %21511, %21434, %21417, %21241, %21137, %20795, %20667, %20547, %20450, %20329, %20220, %20099, %20044, %20001, %19912, %19791, %19560, %19442, %19353, %18497, %18342, %17091, %16978, %16234, %16150, %15406, %15372, %15359, %15320, %15307, %15268, %15255, %15219, %15206, %15170, %15157, %15125, %15112, %15073, %15060, %15033, %14809, %14727, %14585, %14412, %13793, %13330, %13275, %13022, %12252, %12059, %11906, %11340, %10784, %10625, %10412, %10066, %9788, %9476, %9443, %9377, %9311, %9297, %9179, %9062, %8965, %8821, %8443, %8022, %7832, %7619, %7141, %6685, %6494, %6465, %5697, %5670, %5513, %5445, %5318, %5011, %4859, %4836, %4809, %4780, %4709, %4612, %3591, %3496, %3370, %3324, %3274, %3228, %3158, %2944
  %2946 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2946, ptr %45, align 4, !tbaa !9
  %2947 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %2947, ptr %46, align 4, !tbaa !9
  %2948 = load ptr, ptr %5, align 8, !tbaa !5
  %2949 = getelementptr inbounds %struct.w2c_hermes, ptr %2948, i32 0, i32 6
  %2950 = load i32, ptr %46, align 4, !tbaa !9
  %2951 = zext i32 %2950 to i64
  %2952 = call i32 @i32_load8_u(ptr noundef %2949, i64 noundef %2951)
  store i32 %2952, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %2953 = load i32, ptr %47, align 4, !tbaa !9
  %2954 = and i32 %2953, 31
  %2955 = load i32, ptr %46, align 4, !tbaa !9
  %2956 = shl i32 %2955, %2954
  store i32 %2956, ptr %46, align 4, !tbaa !9
  store i32 116304, ptr %47, align 4, !tbaa !9
  %2957 = load i32, ptr %47, align 4, !tbaa !9
  %2958 = load i32, ptr %46, align 4, !tbaa !9
  %2959 = add i32 %2958, %2957
  store i32 %2959, ptr %46, align 4, !tbaa !9
  %2960 = load ptr, ptr %5, align 8, !tbaa !5
  %2961 = getelementptr inbounds %struct.w2c_hermes, ptr %2960, i32 0, i32 6
  %2962 = load i32, ptr %46, align 4, !tbaa !9
  %2963 = zext i32 %2962 to i64
  %2964 = call i32 @i32_load(ptr noundef %2961, i64 noundef %2963)
  store i32 %2964, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %2965 = load i32, ptr %47, align 4, !tbaa !9
  %2966 = load i32, ptr %46, align 4, !tbaa !9
  %2967 = sub i32 %2966, %2965
  store i32 %2967, ptr %46, align 4, !tbaa !9
  %2968 = load i32, ptr %46, align 4, !tbaa !9
  switch i32 %2968, label %3157 [
    i32 0, label %2969
    i32 1, label %2970
    i32 2, label %2971
    i32 3, label %2972
    i32 4, label %2973
    i32 5, label %2974
    i32 6, label %2975
    i32 7, label %2976
    i32 8, label %2977
    i32 9, label %2978
    i32 10, label %2979
    i32 11, label %2980
    i32 12, label %2981
    i32 13, label %2982
    i32 14, label %2983
    i32 15, label %2984
    i32 16, label %2985
    i32 17, label %2986
    i32 18, label %2987
    i32 19, label %2988
    i32 20, label %2989
    i32 21, label %2990
    i32 22, label %2991
    i32 23, label %2992
    i32 24, label %2993
    i32 25, label %2994
    i32 26, label %2995
    i32 27, label %2996
    i32 28, label %2997
    i32 29, label %2998
    i32 30, label %2999
    i32 31, label %3000
    i32 32, label %3001
    i32 33, label %3002
    i32 34, label %3003
    i32 35, label %3004
    i32 36, label %3005
    i32 37, label %3006
    i32 38, label %3007
    i32 39, label %3008
    i32 40, label %3009
    i32 41, label %3010
    i32 42, label %3011
    i32 43, label %3012
    i32 44, label %3013
    i32 45, label %3014
    i32 46, label %3015
    i32 47, label %3016
    i32 48, label %3017
    i32 49, label %3018
    i32 50, label %3019
    i32 51, label %3020
    i32 52, label %3021
    i32 53, label %3022
    i32 54, label %3023
    i32 55, label %3024
    i32 56, label %3025
    i32 57, label %3026
    i32 58, label %3027
    i32 59, label %3028
    i32 60, label %3029
    i32 61, label %3030
    i32 62, label %3031
    i32 63, label %3032
    i32 64, label %3033
    i32 65, label %3034
    i32 66, label %3035
    i32 67, label %3036
    i32 68, label %3037
    i32 69, label %3038
    i32 70, label %3039
    i32 71, label %3040
    i32 72, label %3041
    i32 73, label %3042
    i32 74, label %3043
    i32 75, label %3044
    i32 76, label %3045
    i32 77, label %3046
    i32 78, label %3047
    i32 79, label %3048
    i32 80, label %3049
    i32 81, label %3050
    i32 82, label %3051
    i32 83, label %3052
    i32 84, label %3053
    i32 85, label %3054
    i32 86, label %3055
    i32 87, label %3056
    i32 88, label %3057
    i32 89, label %3058
    i32 90, label %3059
    i32 91, label %3060
    i32 92, label %3061
    i32 93, label %3062
    i32 94, label %3063
    i32 95, label %3064
    i32 96, label %3065
    i32 97, label %3066
    i32 98, label %3067
    i32 99, label %3068
    i32 100, label %3069
    i32 101, label %3070
    i32 102, label %3071
    i32 103, label %3072
    i32 104, label %3073
    i32 105, label %3074
    i32 106, label %3075
    i32 107, label %3076
    i32 108, label %3077
    i32 109, label %3078
    i32 110, label %3079
    i32 111, label %3080
    i32 112, label %3081
    i32 113, label %3082
    i32 114, label %3083
    i32 115, label %3084
    i32 116, label %3085
    i32 117, label %3086
    i32 118, label %3087
    i32 119, label %3088
    i32 120, label %3089
    i32 121, label %3090
    i32 122, label %3091
    i32 123, label %3092
    i32 124, label %3093
    i32 125, label %3094
    i32 126, label %3095
    i32 127, label %3096
    i32 128, label %3097
    i32 129, label %3098
    i32 130, label %3099
    i32 131, label %3100
    i32 132, label %3101
    i32 133, label %3102
    i32 134, label %3103
    i32 135, label %3104
    i32 136, label %3105
    i32 137, label %3106
    i32 138, label %3107
    i32 139, label %3108
    i32 140, label %3109
    i32 141, label %3110
    i32 142, label %3111
    i32 143, label %3112
    i32 144, label %3113
    i32 145, label %3114
    i32 146, label %3115
    i32 147, label %3116
    i32 148, label %3117
    i32 149, label %3118
    i32 150, label %3119
    i32 151, label %3120
    i32 152, label %3121
    i32 153, label %3122
    i32 154, label %3123
    i32 155, label %3124
    i32 156, label %3125
    i32 157, label %3126
    i32 158, label %3127
    i32 159, label %3128
    i32 160, label %3129
    i32 161, label %3130
    i32 162, label %3131
    i32 163, label %3132
    i32 164, label %3133
    i32 165, label %3134
    i32 166, label %3135
    i32 167, label %3136
    i32 168, label %3137
    i32 169, label %3138
    i32 170, label %3139
    i32 171, label %3140
    i32 172, label %3141
    i32 173, label %3142
    i32 174, label %3143
    i32 175, label %3144
    i32 176, label %3145
    i32 177, label %3146
    i32 178, label %3147
    i32 179, label %3148
    i32 180, label %3149
    i32 181, label %3150
    i32 182, label %3151
    i32 183, label %3152
    i32 184, label %3153
    i32 185, label %3154
    i32 186, label %3155
    i32 187, label %3156
  ]

2969:                                             ; preds = %2945
  br label %3158

2970:                                             ; preds = %2945
  br label %3204

2971:                                             ; preds = %2945
  br label %3300

2972:                                             ; preds = %2945
  br label %3396

2973:                                             ; preds = %2945
  br label %3502

2974:                                             ; preds = %2945
  br label %3611

2975:                                             ; preds = %2945
  br label %3645

2976:                                             ; preds = %2945
  br label %3658

2977:                                             ; preds = %2945
  br label %3699

2978:                                             ; preds = %2945
  br label %3770

2979:                                             ; preds = %2945
  br label %3870

2980:                                             ; preds = %2945
  br label %3999

2981:                                             ; preds = %2945
  br label %4033

2982:                                             ; preds = %2945
  br label %4373

2983:                                             ; preds = %2945
  br label %4612

2984:                                             ; preds = %2945
  br label %4667

2985:                                             ; preds = %2945
  br label %4738

2986:                                             ; preds = %2945
  br label %4809

2987:                                             ; preds = %2945
  br label %4836

2988:                                             ; preds = %2945
  br label %4859

2989:                                             ; preds = %2945
  br label %4882

2990:                                             ; preds = %2945
  br label %5020

2991:                                             ; preds = %2945
  br label %5324

2992:                                             ; preds = %2945
  br label %5513

2993:                                             ; preds = %2945
  br label %5553

2994:                                             ; preds = %2945
  br label %5582

2995:                                             ; preds = %2945
  br label %5697

2996:                                             ; preds = %2945
  br label %5703

2997:                                             ; preds = %2945
  br label %6494

2998:                                             ; preds = %2945
  br label %6500

2999:                                             ; preds = %2945
  br label %6503

3000:                                             ; preds = %2945
  br label %6516

3001:                                             ; preds = %2945
  br label %6745

3002:                                             ; preds = %2945
  br label %6758

3003:                                             ; preds = %2945
  br label %7223

3004:                                             ; preds = %2945
  br label %7236

3005:                                             ; preds = %2945
  br label %7701

3006:                                             ; preds = %2945
  br label %7887

3007:                                             ; preds = %2945
  br label %8077

3008:                                             ; preds = %2945
  br label %8154

3009:                                             ; preds = %2945
  br label %8494

3010:                                             ; preds = %2945
  br label %8881

3011:                                             ; preds = %2945
  br label %8978

3012:                                             ; preds = %2945
  br label %9075

3013:                                             ; preds = %2945
  br label %9193

3014:                                             ; preds = %2945
  br label %9311

3015:                                             ; preds = %2945
  br label %9377

3016:                                             ; preds = %2945
  br label %9443

3017:                                             ; preds = %2945
  br label %9476

3018:                                             ; preds = %2945
  br label %9511

3019:                                             ; preds = %2945
  br label %9794

3020:                                             ; preds = %2945
  br label %10072

3021:                                             ; preds = %2945
  br label %10086

3022:                                             ; preds = %2945
  br label %10099

3023:                                             ; preds = %2945
  br label %10112

3024:                                             ; preds = %2945
  br label %10126

3025:                                             ; preds = %2945
  br label %11393

3026:                                             ; preds = %2945
  br label %11407

3027:                                             ; preds = %2945
  br label %11420

3028:                                             ; preds = %2945
  br label %11434

3029:                                             ; preds = %2945
  br label %12278

3030:                                             ; preds = %2945
  br label %13080

3031:                                             ; preds = %2945
  br label %13304

3032:                                             ; preds = %2945
  br label %13317

3033:                                             ; preds = %2945
  br label %13466

3034:                                             ; preds = %2945
  br label %13822

3035:                                             ; preds = %2945
  br label %14470

3036:                                             ; preds = %2945
  br label %14612

3037:                                             ; preds = %2945
  br label %14754

3038:                                             ; preds = %2945
  br label %14867

3039:                                             ; preds = %2945
  br label %15060

3040:                                             ; preds = %2945
  br label %15073

3041:                                             ; preds = %2945
  br label %15086

3042:                                             ; preds = %2945
  br label %15131

3043:                                             ; preds = %2945
  br label %15176

3044:                                             ; preds = %2945
  br label %15225

3045:                                             ; preds = %2945
  br label %15274

3046:                                             ; preds = %2945
  br label %15326

3047:                                             ; preds = %2945
  br label %15378

3048:                                             ; preds = %2945
  br label %16206

3049:                                             ; preds = %2945
  br label %17034

3050:                                             ; preds = %2945
  br label %17091

3051:                                             ; preds = %2945
  br label %18400

3052:                                             ; preds = %2945
  br label %19409

3053:                                             ; preds = %2945
  br label %19618

3054:                                             ; preds = %2945
  br label %19968

3055:                                             ; preds = %2945
  br label %20099

3056:                                             ; preds = %2945
  br label %20150

3057:                                             ; preds = %2945
  br label %20264

3058:                                             ; preds = %2945
  br label %20385

3059:                                             ; preds = %2945
  br label %20506

3060:                                             ; preds = %2945
  br label %20602

3061:                                             ; preds = %2945
  br label %20730

3062:                                             ; preds = %2945
  br label %20858

3063:                                             ; preds = %2945
  br label %21192

3064:                                             ; preds = %2945
  br label %21273

3065:                                             ; preds = %2945
  br label %21434

3066:                                             ; preds = %2945
  br label %21511

3067:                                             ; preds = %2945
  br label %21591

3068:                                             ; preds = %2945
  br label %21650

3069:                                             ; preds = %2945
  br label %22668

3070:                                             ; preds = %2945
  br label %22730

3071:                                             ; preds = %2945
  br label %23235

3072:                                             ; preds = %2945
  br label %23372

3073:                                             ; preds = %2945
  br label %23585

3074:                                             ; preds = %2945
  br label %23598

3075:                                             ; preds = %2945
  br label %23611

3076:                                             ; preds = %2945
  br label %23782

3077:                                             ; preds = %2945
  br label %23795

3078:                                             ; preds = %2945
  br label %24286

3079:                                             ; preds = %2945
  br label %24620

3080:                                             ; preds = %2945
  br label %25180

3081:                                             ; preds = %2945
  br label %25368

3082:                                             ; preds = %2945
  br label %25403

3083:                                             ; preds = %2945
  br label %25438

3084:                                             ; preds = %2945
  br label %25488

3085:                                             ; preds = %2945
  br label %25552

3086:                                             ; preds = %2945
  br label %25616

3087:                                             ; preds = %2945
  br label %25642

3088:                                             ; preds = %2945
  br label %25668

3089:                                             ; preds = %2945
  br label %25694

3090:                                             ; preds = %2945
  br label %25720

3091:                                             ; preds = %2945
  br label %25746

3092:                                             ; preds = %2945
  br label %25772

3093:                                             ; preds = %2945
  br label %25785

3094:                                             ; preds = %2945
  br label %25955

3095:                                             ; preds = %2945
  br label %26012

3096:                                             ; preds = %2945
  br label %26473

3097:                                             ; preds = %2945
  br label %26530

3098:                                             ; preds = %2945
  br label %26991

3099:                                             ; preds = %2945
  br label %27048

3100:                                             ; preds = %2945
  br label %27509

3101:                                             ; preds = %2945
  br label %28231

3102:                                             ; preds = %2945
  br label %28953

3103:                                             ; preds = %2945
  br label %29675

3104:                                             ; preds = %2945
  br label %30424

3105:                                             ; preds = %2945
  br label %31173

3106:                                             ; preds = %2945
  br label %31922

3107:                                             ; preds = %2945
  br label %32158

3108:                                             ; preds = %2945
  br label %32394

3109:                                             ; preds = %2945
  br label %32630

3110:                                             ; preds = %2945
  br label %32866

3111:                                             ; preds = %2945
  br label %32923

3112:                                             ; preds = %2945
  br label %33113

3113:                                             ; preds = %2945
  br label %33170

3114:                                             ; preds = %2945
  br label %33360

3115:                                             ; preds = %2945
  br label %33417

3116:                                             ; preds = %2945
  br label %33607

3117:                                             ; preds = %2945
  br label %33664

3118:                                             ; preds = %2945
  br label %33854

3119:                                             ; preds = %2945
  br label %33911

3120:                                             ; preds = %2945
  br label %34101

3121:                                             ; preds = %2945
  br label %34158

3122:                                             ; preds = %2945
  br label %34348

3123:                                             ; preds = %2945
  br label %34405

3124:                                             ; preds = %2945
  br label %34595

3125:                                             ; preds = %2945
  br label %34652

3126:                                             ; preds = %2945
  br label %34842

3127:                                             ; preds = %2945
  br label %34899

3128:                                             ; preds = %2945
  br label %35089

3129:                                             ; preds = %2945
  br label %35146

3130:                                             ; preds = %2945
  br label %35336

3131:                                             ; preds = %2945
  br label %35393

3132:                                             ; preds = %2945
  br label %35583

3133:                                             ; preds = %2945
  br label %35640

3134:                                             ; preds = %2945
  br label %35830

3135:                                             ; preds = %2945
  br label %35887

3136:                                             ; preds = %2945
  br label %36077

3137:                                             ; preds = %2945
  br label %36134

3138:                                             ; preds = %2945
  br label %36324

3139:                                             ; preds = %2945
  br label %36381

3140:                                             ; preds = %2945
  br label %36571

3141:                                             ; preds = %2945
  br label %36628

3142:                                             ; preds = %2945
  br label %36818

3143:                                             ; preds = %2945
  br label %36884

3144:                                             ; preds = %2945
  br label %36950

3145:                                             ; preds = %2945
  br label %37016

3146:                                             ; preds = %2945
  br label %37082

3147:                                             ; preds = %2945
  br label %37206

3148:                                             ; preds = %2945
  br label %37330

3149:                                             ; preds = %2945
  br label %37454

3150:                                             ; preds = %2945
  br label %37578

3151:                                             ; preds = %2945
  br label %37774

3152:                                             ; preds = %2945
  br label %38242

3153:                                             ; preds = %2945
  br label %39286

3154:                                             ; preds = %2945
  br label %39751

3155:                                             ; preds = %2945
  br label %41089

3156:                                             ; preds = %2945
  br label %41278

3157:                                             ; preds = %2945
  br label %41281

3158:                                             ; preds = %2969
  %3159 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3159, ptr %46, align 4, !tbaa !9
  %3160 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3160, ptr %47, align 4, !tbaa !9
  %3161 = load ptr, ptr %5, align 8, !tbaa !5
  %3162 = getelementptr inbounds %struct.w2c_hermes, ptr %3161, i32 0, i32 6
  %3163 = load i32, ptr %47, align 4, !tbaa !9
  %3164 = zext i32 %3163 to i64
  %3165 = add i64 %3164, 1
  %3166 = call i32 @i32_load(ptr noundef %3162, i64 noundef %3165)
  store i32 %3166, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3167 = load i32, ptr %48, align 4, !tbaa !9
  %3168 = and i32 %3167, 31
  %3169 = load i32, ptr %47, align 4, !tbaa !9
  %3170 = shl i32 %3169, %3168
  store i32 %3170, ptr %47, align 4, !tbaa !9
  %3171 = load i32, ptr %47, align 4, !tbaa !9
  %3172 = load i32, ptr %46, align 4, !tbaa !9
  %3173 = add i32 %3172, %3171
  store i32 %3173, ptr %46, align 4, !tbaa !9
  %3174 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3174, ptr %47, align 4, !tbaa !9
  %3175 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3175, ptr %48, align 4, !tbaa !9
  %3176 = load ptr, ptr %5, align 8, !tbaa !5
  %3177 = getelementptr inbounds %struct.w2c_hermes, ptr %3176, i32 0, i32 6
  %3178 = load i32, ptr %48, align 4, !tbaa !9
  %3179 = zext i32 %3178 to i64
  %3180 = add i64 %3179, 5
  %3181 = call i32 @i32_load(ptr noundef %3177, i64 noundef %3180)
  store i32 %3181, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3182 = load i32, ptr %49, align 4, !tbaa !9
  %3183 = and i32 %3182, 31
  %3184 = load i32, ptr %48, align 4, !tbaa !9
  %3185 = shl i32 %3184, %3183
  store i32 %3185, ptr %48, align 4, !tbaa !9
  %3186 = load i32, ptr %48, align 4, !tbaa !9
  %3187 = load i32, ptr %47, align 4, !tbaa !9
  %3188 = add i32 %3187, %3186
  store i32 %3188, ptr %47, align 4, !tbaa !9
  %3189 = load ptr, ptr %5, align 8, !tbaa !5
  %3190 = getelementptr inbounds %struct.w2c_hermes, ptr %3189, i32 0, i32 6
  %3191 = load i32, ptr %47, align 4, !tbaa !9
  %3192 = zext i32 %3191 to i64
  %3193 = call i64 @i64_load(ptr noundef %3190, i64 noundef %3192)
  store i64 %3193, ptr %56, align 8, !tbaa !11
  %3194 = load ptr, ptr %5, align 8, !tbaa !5
  %3195 = getelementptr inbounds %struct.w2c_hermes, ptr %3194, i32 0, i32 6
  %3196 = load i32, ptr %46, align 4, !tbaa !9
  %3197 = zext i32 %3196 to i64
  %3198 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3195, i64 noundef %3197, i64 noundef %3198)
  %3199 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3199, ptr %46, align 4, !tbaa !9
  store i32 9, ptr %47, align 4, !tbaa !9
  %3200 = load i32, ptr %47, align 4, !tbaa !9
  %3201 = load i32, ptr %46, align 4, !tbaa !9
  %3202 = add i32 %3201, %3200
  store i32 %3202, ptr %46, align 4, !tbaa !9
  %3203 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3203, ptr %6, align 4, !tbaa !9
  br label %2945

3204:                                             ; preds = %2970
  %3205 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3205, ptr %46, align 4, !tbaa !9
  %3206 = load ptr, ptr %5, align 8, !tbaa !5
  %3207 = getelementptr inbounds %struct.w2c_hermes, ptr %3206, i32 0, i32 6
  %3208 = load i32, ptr %46, align 4, !tbaa !9
  %3209 = zext i32 %3208 to i64
  %3210 = add i64 %3209, 2
  %3211 = call i32 @i32_load8_u(ptr noundef %3207, i64 noundef %3210)
  store i32 %3211, ptr %46, align 4, !tbaa !9
  %3212 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3212, ptr %7, align 4, !tbaa !9
  %3213 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3213, ptr %47, align 4, !tbaa !9
  store i32 40, ptr %48, align 4, !tbaa !9
  %3214 = load i32, ptr %48, align 4, !tbaa !9
  %3215 = load i32, ptr %47, align 4, !tbaa !9
  %3216 = sub i32 %3215, %3214
  store i32 %3216, ptr %47, align 4, !tbaa !9
  %3217 = load ptr, ptr %5, align 8, !tbaa !5
  %3218 = getelementptr inbounds %struct.w2c_hermes, ptr %3217, i32 0, i32 6
  %3219 = load i32, ptr %47, align 4, !tbaa !9
  %3220 = zext i32 %3219 to i64
  %3221 = call i32 @i32_load(ptr noundef %3218, i64 noundef %3220)
  store i32 %3221, ptr %47, align 4, !tbaa !9
  %3222 = load i32, ptr %46, align 4, !tbaa !9
  %3223 = load i32, ptr %47, align 4, !tbaa !9
  %3224 = icmp ule i32 %3222, %3223
  %3225 = zext i1 %3224 to i32
  store i32 %3225, ptr %46, align 4, !tbaa !9
  %3226 = load i32, ptr %46, align 4, !tbaa !9
  %3227 = icmp ne i32 %3226, 0
  br i1 %3227, label %3228, label %3274

3228:                                             ; preds = %3204
  %3229 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3229, ptr %46, align 4, !tbaa !9
  %3230 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3230, ptr %47, align 4, !tbaa !9
  %3231 = load ptr, ptr %5, align 8, !tbaa !5
  %3232 = getelementptr inbounds %struct.w2c_hermes, ptr %3231, i32 0, i32 6
  %3233 = load i32, ptr %47, align 4, !tbaa !9
  %3234 = zext i32 %3233 to i64
  %3235 = add i64 %3234, 1
  %3236 = call i32 @i32_load8_u(ptr noundef %3232, i64 noundef %3235)
  store i32 %3236, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3237 = load i32, ptr %48, align 4, !tbaa !9
  %3238 = and i32 %3237, 31
  %3239 = load i32, ptr %47, align 4, !tbaa !9
  %3240 = shl i32 %3239, %3238
  store i32 %3240, ptr %47, align 4, !tbaa !9
  %3241 = load i32, ptr %47, align 4, !tbaa !9
  %3242 = load i32, ptr %46, align 4, !tbaa !9
  %3243 = add i32 %3242, %3241
  store i32 %3243, ptr %46, align 4, !tbaa !9
  %3244 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3244, ptr %47, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %3245 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3245, ptr %49, align 4, !tbaa !9
  %3246 = load i32, ptr %49, align 4, !tbaa !9
  %3247 = load i32, ptr %48, align 4, !tbaa !9
  %3248 = sub i32 %3247, %3246
  store i32 %3248, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3249 = load i32, ptr %49, align 4, !tbaa !9
  %3250 = and i32 %3249, 31
  %3251 = load i32, ptr %48, align 4, !tbaa !9
  %3252 = shl i32 %3251, %3250
  store i32 %3252, ptr %48, align 4, !tbaa !9
  %3253 = load i32, ptr %48, align 4, !tbaa !9
  %3254 = load i32, ptr %47, align 4, !tbaa !9
  %3255 = add i32 %3254, %3253
  store i32 %3255, ptr %47, align 4, !tbaa !9
  store i32 -64, ptr %48, align 4, !tbaa !9
  %3256 = load i32, ptr %48, align 4, !tbaa !9
  %3257 = load i32, ptr %47, align 4, !tbaa !9
  %3258 = add i32 %3257, %3256
  store i32 %3258, ptr %47, align 4, !tbaa !9
  %3259 = load ptr, ptr %5, align 8, !tbaa !5
  %3260 = getelementptr inbounds %struct.w2c_hermes, ptr %3259, i32 0, i32 6
  %3261 = load i32, ptr %47, align 4, !tbaa !9
  %3262 = zext i32 %3261 to i64
  %3263 = call i64 @i64_load(ptr noundef %3260, i64 noundef %3262)
  store i64 %3263, ptr %56, align 8, !tbaa !11
  %3264 = load ptr, ptr %5, align 8, !tbaa !5
  %3265 = getelementptr inbounds %struct.w2c_hermes, ptr %3264, i32 0, i32 6
  %3266 = load i32, ptr %46, align 4, !tbaa !9
  %3267 = zext i32 %3266 to i64
  %3268 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3265, i64 noundef %3267, i64 noundef %3268)
  %3269 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3269, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %3270 = load i32, ptr %47, align 4, !tbaa !9
  %3271 = load i32, ptr %46, align 4, !tbaa !9
  %3272 = add i32 %3271, %3270
  store i32 %3272, ptr %46, align 4, !tbaa !9
  %3273 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3273, ptr %6, align 4, !tbaa !9
  br label %2945

3274:                                             ; preds = %3204
  %3275 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3275, ptr %46, align 4, !tbaa !9
  %3276 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3276, ptr %47, align 4, !tbaa !9
  %3277 = load ptr, ptr %5, align 8, !tbaa !5
  %3278 = getelementptr inbounds %struct.w2c_hermes, ptr %3277, i32 0, i32 6
  %3279 = load i32, ptr %47, align 4, !tbaa !9
  %3280 = zext i32 %3279 to i64
  %3281 = add i64 %3280, 1
  %3282 = call i32 @i32_load8_u(ptr noundef %3278, i64 noundef %3281)
  store i32 %3282, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3283 = load i32, ptr %48, align 4, !tbaa !9
  %3284 = and i32 %3283, 31
  %3285 = load i32, ptr %47, align 4, !tbaa !9
  %3286 = shl i32 %3285, %3284
  store i32 %3286, ptr %47, align 4, !tbaa !9
  %3287 = load i32, ptr %47, align 4, !tbaa !9
  %3288 = load i32, ptr %46, align 4, !tbaa !9
  %3289 = add i32 %3288, %3287
  store i32 %3289, ptr %46, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %56, align 8, !tbaa !11
  %3290 = load ptr, ptr %5, align 8, !tbaa !5
  %3291 = getelementptr inbounds %struct.w2c_hermes, ptr %3290, i32 0, i32 6
  %3292 = load i32, ptr %46, align 4, !tbaa !9
  %3293 = zext i32 %3292 to i64
  %3294 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3291, i64 noundef %3293, i64 noundef %3294)
  %3295 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3295, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %3296 = load i32, ptr %47, align 4, !tbaa !9
  %3297 = load i32, ptr %46, align 4, !tbaa !9
  %3298 = add i32 %3297, %3296
  store i32 %3298, ptr %46, align 4, !tbaa !9
  %3299 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3299, ptr %6, align 4, !tbaa !9
  br label %2945

3300:                                             ; preds = %2971
  %3301 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3301, ptr %46, align 4, !tbaa !9
  %3302 = load ptr, ptr %5, align 8, !tbaa !5
  %3303 = getelementptr inbounds %struct.w2c_hermes, ptr %3302, i32 0, i32 6
  %3304 = load i32, ptr %46, align 4, !tbaa !9
  %3305 = zext i32 %3304 to i64
  %3306 = add i64 %3305, 2
  %3307 = call i32 @i32_load(ptr noundef %3303, i64 noundef %3306)
  store i32 %3307, ptr %46, align 4, !tbaa !9
  %3308 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3308, ptr %7, align 4, !tbaa !9
  %3309 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3309, ptr %47, align 4, !tbaa !9
  store i32 40, ptr %48, align 4, !tbaa !9
  %3310 = load i32, ptr %48, align 4, !tbaa !9
  %3311 = load i32, ptr %47, align 4, !tbaa !9
  %3312 = sub i32 %3311, %3310
  store i32 %3312, ptr %47, 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 %47, 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 %47, align 4, !tbaa !9
  %3318 = load i32, ptr %46, align 4, !tbaa !9
  %3319 = load i32, ptr %47, align 4, !tbaa !9
  %3320 = icmp ule i32 %3318, %3319
  %3321 = zext i1 %3320 to i32
  store i32 %3321, ptr %46, align 4, !tbaa !9
  %3322 = load i32, ptr %46, align 4, !tbaa !9
  %3323 = icmp ne i32 %3322, 0
  br i1 %3323, label %3324, label %3370

3324:                                             ; preds = %3300
  %3325 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3325, ptr %46, align 4, !tbaa !9
  %3326 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3326, ptr %47, align 4, !tbaa !9
  %3327 = load ptr, ptr %5, align 8, !tbaa !5
  %3328 = getelementptr inbounds %struct.w2c_hermes, ptr %3327, i32 0, i32 6
  %3329 = load i32, ptr %47, align 4, !tbaa !9
  %3330 = zext i32 %3329 to i64
  %3331 = add i64 %3330, 1
  %3332 = call i32 @i32_load8_u(ptr noundef %3328, i64 noundef %3331)
  store i32 %3332, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3333 = load i32, ptr %48, align 4, !tbaa !9
  %3334 = and i32 %3333, 31
  %3335 = load i32, ptr %47, align 4, !tbaa !9
  %3336 = shl i32 %3335, %3334
  store i32 %3336, ptr %47, align 4, !tbaa !9
  %3337 = load i32, ptr %47, align 4, !tbaa !9
  %3338 = load i32, ptr %46, align 4, !tbaa !9
  %3339 = add i32 %3338, %3337
  store i32 %3339, ptr %46, align 4, !tbaa !9
  %3340 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3340, ptr %47, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %3341 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3341, ptr %49, align 4, !tbaa !9
  %3342 = load i32, ptr %49, align 4, !tbaa !9
  %3343 = load i32, ptr %48, align 4, !tbaa !9
  %3344 = sub i32 %3343, %3342
  store i32 %3344, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3345 = load i32, ptr %49, align 4, !tbaa !9
  %3346 = and i32 %3345, 31
  %3347 = load i32, ptr %48, align 4, !tbaa !9
  %3348 = shl i32 %3347, %3346
  store i32 %3348, ptr %48, align 4, !tbaa !9
  %3349 = load i32, ptr %48, align 4, !tbaa !9
  %3350 = load i32, ptr %47, align 4, !tbaa !9
  %3351 = add i32 %3350, %3349
  store i32 %3351, ptr %47, align 4, !tbaa !9
  store i32 -64, ptr %48, align 4, !tbaa !9
  %3352 = load i32, ptr %48, align 4, !tbaa !9
  %3353 = load i32, ptr %47, align 4, !tbaa !9
  %3354 = add i32 %3353, %3352
  store i32 %3354, ptr %47, align 4, !tbaa !9
  %3355 = load ptr, ptr %5, align 8, !tbaa !5
  %3356 = getelementptr inbounds %struct.w2c_hermes, ptr %3355, i32 0, i32 6
  %3357 = load i32, ptr %47, align 4, !tbaa !9
  %3358 = zext i32 %3357 to i64
  %3359 = call i64 @i64_load(ptr noundef %3356, i64 noundef %3358)
  store i64 %3359, ptr %56, align 8, !tbaa !11
  %3360 = load ptr, ptr %5, align 8, !tbaa !5
  %3361 = getelementptr inbounds %struct.w2c_hermes, ptr %3360, i32 0, i32 6
  %3362 = load i32, ptr %46, align 4, !tbaa !9
  %3363 = zext i32 %3362 to i64
  %3364 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3361, i64 noundef %3363, i64 noundef %3364)
  %3365 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3365, ptr %46, align 4, !tbaa !9
  store i32 6, ptr %47, align 4, !tbaa !9
  %3366 = load i32, ptr %47, align 4, !tbaa !9
  %3367 = load i32, ptr %46, align 4, !tbaa !9
  %3368 = add i32 %3367, %3366
  store i32 %3368, ptr %46, align 4, !tbaa !9
  %3369 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3369, ptr %6, align 4, !tbaa !9
  br label %2945

3370:                                             ; preds = %3300
  %3371 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3371, ptr %46, align 4, !tbaa !9
  %3372 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3372, ptr %47, align 4, !tbaa !9
  %3373 = load ptr, ptr %5, align 8, !tbaa !5
  %3374 = getelementptr inbounds %struct.w2c_hermes, ptr %3373, i32 0, i32 6
  %3375 = load i32, ptr %47, align 4, !tbaa !9
  %3376 = zext i32 %3375 to i64
  %3377 = add i64 %3376, 1
  %3378 = call i32 @i32_load8_u(ptr noundef %3374, i64 noundef %3377)
  store i32 %3378, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3379 = load i32, ptr %48, align 4, !tbaa !9
  %3380 = and i32 %3379, 31
  %3381 = load i32, ptr %47, align 4, !tbaa !9
  %3382 = shl i32 %3381, %3380
  store i32 %3382, ptr %47, align 4, !tbaa !9
  %3383 = load i32, ptr %47, align 4, !tbaa !9
  %3384 = load i32, ptr %46, align 4, !tbaa !9
  %3385 = add i32 %3384, %3383
  store i32 %3385, ptr %46, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %56, align 8, !tbaa !11
  %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 %46, align 4, !tbaa !9
  %3389 = zext i32 %3388 to i64
  %3390 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3387, i64 noundef %3389, i64 noundef %3390)
  %3391 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3391, ptr %46, align 4, !tbaa !9
  store i32 6, ptr %47, align 4, !tbaa !9
  %3392 = load i32, ptr %47, align 4, !tbaa !9
  %3393 = load i32, ptr %46, align 4, !tbaa !9
  %3394 = add i32 %3393, %3392
  store i32 %3394, ptr %46, align 4, !tbaa !9
  %3395 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3395, ptr %6, align 4, !tbaa !9
  br label %2945

3396:                                             ; preds = %2972
  %3397 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3397, ptr %46, align 4, !tbaa !9
  %3398 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3398, ptr %47, 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 %47, align 4, !tbaa !9
  %3402 = zext i32 %3401 to i64
  %3403 = add i64 %3402, 2
  %3404 = call i32 @i32_load8_u(ptr noundef %3400, i64 noundef %3403)
  store i32 %3404, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3405 = load i32, ptr %48, align 4, !tbaa !9
  %3406 = and i32 %3405, 31
  %3407 = load i32, ptr %47, align 4, !tbaa !9
  %3408 = shl i32 %3407, %3406
  store i32 %3408, ptr %47, align 4, !tbaa !9
  %3409 = load i32, ptr %47, align 4, !tbaa !9
  %3410 = load i32, ptr %46, align 4, !tbaa !9
  %3411 = add i32 %3410, %3409
  store i32 %3411, ptr %46, align 4, !tbaa !9
  %3412 = load ptr, ptr %5, align 8, !tbaa !5
  %3413 = getelementptr inbounds %struct.w2c_hermes, ptr %3412, i32 0, i32 6
  %3414 = load i32, ptr %46, align 4, !tbaa !9
  %3415 = zext i32 %3414 to i64
  %3416 = call i64 @i64_load(ptr noundef %3413, i64 noundef %3415)
  store i64 %3416, ptr %55, align 8, !tbaa !11
  %3417 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %3417, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %56, align 8, !tbaa !11
  %3418 = load i64, ptr %55, align 8, !tbaa !11
  %3419 = load i64, ptr %56, align 8, !tbaa !11
  %3420 = and i64 %3419, 63
  %3421 = ashr i64 %3418, %3420
  store i64 %3421, ptr %55, align 8, !tbaa !11
  %3422 = load i64, ptr %55, align 8, !tbaa !11
  %3423 = trunc i64 %3422 to i32
  store i32 %3423, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %3424 = load i32, ptr %46, align 4, !tbaa !9
  %3425 = load i32, ptr %47, align 4, !tbaa !9
  %3426 = icmp eq i32 %3424, %3425
  %3427 = zext i1 %3426 to i32
  store i32 %3427, ptr %46, align 4, !tbaa !9
  %3428 = load i32, ptr %46, align 4, !tbaa !9
  %3429 = icmp ne i32 %3428, 0
  br i1 %3429, label %3430, label %3452

3430:                                             ; preds = %3396
  %3431 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3431, ptr %46, align 4, !tbaa !9
  %3432 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3432, ptr %47, align 4, !tbaa !9
  %3433 = load ptr, ptr %5, align 8, !tbaa !5
  %3434 = getelementptr inbounds %struct.w2c_hermes, ptr %3433, i32 0, i32 6
  %3435 = load i32, ptr %47, align 4, !tbaa !9
  %3436 = zext i32 %3435 to i64
  %3437 = add i64 %3436, 1
  %3438 = call i32 @i32_load8_u(ptr noundef %3434, i64 noundef %3437)
  store i32 %3438, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3439 = load i32, ptr %48, align 4, !tbaa !9
  %3440 = and i32 %3439, 31
  %3441 = load i32, ptr %47, align 4, !tbaa !9
  %3442 = shl i32 %3441, %3440
  store i32 %3442, ptr %47, align 4, !tbaa !9
  %3443 = load i32, ptr %47, align 4, !tbaa !9
  %3444 = load i32, ptr %46, align 4, !tbaa !9
  %3445 = add i32 %3444, %3443
  store i32 %3445, ptr %46, align 4, !tbaa !9
  %3446 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3446, ptr %56, align 8, !tbaa !11
  %3447 = load ptr, ptr %5, align 8, !tbaa !5
  %3448 = getelementptr inbounds %struct.w2c_hermes, ptr %3447, i32 0, i32 6
  %3449 = load i32, ptr %46, align 4, !tbaa !9
  %3450 = zext i32 %3449 to i64
  %3451 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3448, i64 noundef %3450, i64 noundef %3451)
  br label %3496

3452:                                             ; preds = %3396
  %3453 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3453, ptr %55, align 8, !tbaa !11
  store i64 47, ptr %56, align 8, !tbaa !11
  %3454 = load i64, ptr %55, align 8, !tbaa !11
  %3455 = load i64, ptr %56, align 8, !tbaa !11
  %3456 = and i64 %3455, 63
  %3457 = ashr i64 %3454, %3456
  store i64 %3457, ptr %55, align 8, !tbaa !11
  store i64 4294967294, ptr %56, align 8, !tbaa !11
  %3458 = load i64, ptr %56, align 8, !tbaa !11
  %3459 = load i64, ptr %55, align 8, !tbaa !11
  %3460 = and i64 %3459, %3458
  store i64 %3460, ptr %55, align 8, !tbaa !11
  store i64 4294967284, ptr %56, align 8, !tbaa !11
  %3461 = load i64, ptr %55, align 8, !tbaa !11
  %3462 = load i64, ptr %56, align 8, !tbaa !11
  %3463 = icmp ne i64 %3461, %3462
  %3464 = zext i1 %3463 to i32
  store i32 %3464, ptr %46, align 4, !tbaa !9
  %3465 = load i32, ptr %46, align 4, !tbaa !9
  %3466 = icmp ne i32 %3465, 0
  br i1 %3466, label %3467, label %3468

3467:                                             ; preds = %3452
  br label %3597

3468:                                             ; preds = %3452
  %3469 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3469, ptr %46, align 4, !tbaa !9
  %3470 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3470, ptr %47, align 4, !tbaa !9
  %3471 = load ptr, ptr %5, align 8, !tbaa !5
  %3472 = getelementptr inbounds %struct.w2c_hermes, ptr %3471, i32 0, i32 6
  %3473 = load i32, ptr %47, align 4, !tbaa !9
  %3474 = zext i32 %3473 to i64
  %3475 = add i64 %3474, 1
  %3476 = call i32 @i32_load8_u(ptr noundef %3472, i64 noundef %3475)
  store i32 %3476, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3477 = load i32, ptr %48, align 4, !tbaa !9
  %3478 = and i32 %3477, 31
  %3479 = load i32, ptr %47, align 4, !tbaa !9
  %3480 = shl i32 %3479, %3478
  store i32 %3480, ptr %47, align 4, !tbaa !9
  %3481 = load i32, ptr %47, align 4, !tbaa !9
  %3482 = load i32, ptr %46, align 4, !tbaa !9
  %3483 = add i32 %3482, %3481
  store i32 %3483, ptr %46, align 4, !tbaa !9
  %3484 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3484, ptr %47, align 4, !tbaa !9
  %3485 = load ptr, ptr %5, align 8, !tbaa !5
  %3486 = getelementptr inbounds %struct.w2c_hermes, ptr %3485, i32 0, i32 6
  %3487 = load i32, ptr %47, align 4, !tbaa !9
  %3488 = zext i32 %3487 to i64
  %3489 = add i64 %3488, 696
  %3490 = call i64 @i64_load(ptr noundef %3486, i64 noundef %3489)
  store i64 %3490, ptr %56, align 8, !tbaa !11
  %3491 = load ptr, ptr %5, align 8, !tbaa !5
  %3492 = getelementptr inbounds %struct.w2c_hermes, ptr %3491, i32 0, i32 6
  %3493 = load i32, ptr %46, align 4, !tbaa !9
  %3494 = zext i32 %3493 to i64
  %3495 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3492, i64 noundef %3494, i64 noundef %3495)
  br label %3496

3496:                                             ; preds = %3468, %3430
  %3497 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3497, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %3498 = load i32, ptr %47, align 4, !tbaa !9
  %3499 = load i32, ptr %46, align 4, !tbaa !9
  %3500 = add i32 %3499, %3498
  store i32 %3500, ptr %46, align 4, !tbaa !9
  %3501 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3501, ptr %6, align 4, !tbaa !9
  br label %2945

3502:                                             ; preds = %2973
  %3503 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3503, ptr %46, align 4, !tbaa !9
  store i32 -64, ptr %47, align 4, !tbaa !9
  %3504 = load i32, ptr %47, align 4, !tbaa !9
  %3505 = load i32, ptr %46, align 4, !tbaa !9
  %3506 = add i32 %3505, %3504
  store i32 %3506, ptr %46, align 4, !tbaa !9
  %3507 = load ptr, ptr %5, align 8, !tbaa !5
  %3508 = getelementptr inbounds %struct.w2c_hermes, ptr %3507, i32 0, i32 6
  %3509 = load i32, ptr %46, align 4, !tbaa !9
  %3510 = zext i32 %3509 to i64
  %3511 = call i64 @i64_load(ptr noundef %3508, i64 noundef %3510)
  store i64 %3511, ptr %55, align 8, !tbaa !11
  %3512 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %3512, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %56, align 8, !tbaa !11
  %3513 = load i64, ptr %55, align 8, !tbaa !11
  %3514 = load i64, ptr %56, align 8, !tbaa !11
  %3515 = and i64 %3514, 63
  %3516 = ashr i64 %3513, %3515
  store i64 %3516, ptr %55, align 8, !tbaa !11
  %3517 = load i64, ptr %55, align 8, !tbaa !11
  %3518 = trunc i64 %3517 to i32
  store i32 %3518, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %3519 = load i32, ptr %46, align 4, !tbaa !9
  %3520 = load i32, ptr %47, align 4, !tbaa !9
  %3521 = icmp eq i32 %3519, %3520
  %3522 = zext i1 %3521 to i32
  store i32 %3522, ptr %46, align 4, !tbaa !9
  %3523 = load i32, ptr %46, align 4, !tbaa !9
  %3524 = icmp ne i32 %3523, 0
  br i1 %3524, label %3525, label %3547

3525:                                             ; preds = %3502
  %3526 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3526, ptr %46, align 4, !tbaa !9
  %3527 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3527, ptr %47, align 4, !tbaa !9
  %3528 = load ptr, ptr %5, align 8, !tbaa !5
  %3529 = getelementptr inbounds %struct.w2c_hermes, ptr %3528, i32 0, i32 6
  %3530 = load i32, ptr %47, align 4, !tbaa !9
  %3531 = zext i32 %3530 to i64
  %3532 = add i64 %3531, 1
  %3533 = call i32 @i32_load8_u(ptr noundef %3529, i64 noundef %3532)
  store i32 %3533, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3534 = load i32, ptr %48, align 4, !tbaa !9
  %3535 = and i32 %3534, 31
  %3536 = load i32, ptr %47, align 4, !tbaa !9
  %3537 = shl i32 %3536, %3535
  store i32 %3537, ptr %47, align 4, !tbaa !9
  %3538 = load i32, ptr %47, align 4, !tbaa !9
  %3539 = load i32, ptr %46, align 4, !tbaa !9
  %3540 = add i32 %3539, %3538
  store i32 %3540, ptr %46, align 4, !tbaa !9
  %3541 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3541, ptr %56, align 8, !tbaa !11
  %3542 = load ptr, ptr %5, align 8, !tbaa !5
  %3543 = getelementptr inbounds %struct.w2c_hermes, ptr %3542, i32 0, i32 6
  %3544 = load i32, ptr %46, align 4, !tbaa !9
  %3545 = zext i32 %3544 to i64
  %3546 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3543, i64 noundef %3545, i64 noundef %3546)
  br label %3591

3547:                                             ; preds = %3502
  %3548 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3548, ptr %55, align 8, !tbaa !11
  store i64 47, ptr %56, align 8, !tbaa !11
  %3549 = load i64, ptr %55, align 8, !tbaa !11
  %3550 = load i64, ptr %56, align 8, !tbaa !11
  %3551 = and i64 %3550, 63
  %3552 = ashr i64 %3549, %3551
  store i64 %3552, ptr %55, align 8, !tbaa !11
  store i64 4294967294, ptr %56, align 8, !tbaa !11
  %3553 = load i64, ptr %56, align 8, !tbaa !11
  %3554 = load i64, ptr %55, align 8, !tbaa !11
  %3555 = and i64 %3554, %3553
  store i64 %3555, ptr %55, align 8, !tbaa !11
  store i64 4294967284, ptr %56, align 8, !tbaa !11
  %3556 = load i64, ptr %55, align 8, !tbaa !11
  %3557 = load i64, ptr %56, align 8, !tbaa !11
  %3558 = icmp ne i64 %3556, %3557
  %3559 = zext i1 %3558 to i32
  store i32 %3559, ptr %46, align 4, !tbaa !9
  %3560 = load i32, ptr %46, align 4, !tbaa !9
  %3561 = icmp ne i32 %3560, 0
  br i1 %3561, label %3562, label %3563

3562:                                             ; preds = %3547
  br label %41327

3563:                                             ; preds = %3547
  %3564 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3564, ptr %46, align 4, !tbaa !9
  %3565 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3565, ptr %47, align 4, !tbaa !9
  %3566 = load ptr, ptr %5, align 8, !tbaa !5
  %3567 = getelementptr inbounds %struct.w2c_hermes, ptr %3566, i32 0, i32 6
  %3568 = load i32, ptr %47, align 4, !tbaa !9
  %3569 = zext i32 %3568 to i64
  %3570 = add i64 %3569, 1
  %3571 = call i32 @i32_load8_u(ptr noundef %3567, i64 noundef %3570)
  store i32 %3571, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3572 = load i32, ptr %48, align 4, !tbaa !9
  %3573 = and i32 %3572, 31
  %3574 = load i32, ptr %47, align 4, !tbaa !9
  %3575 = shl i32 %3574, %3573
  store i32 %3575, ptr %47, align 4, !tbaa !9
  %3576 = load i32, ptr %47, align 4, !tbaa !9
  %3577 = load i32, ptr %46, align 4, !tbaa !9
  %3578 = add i32 %3577, %3576
  store i32 %3578, ptr %46, align 4, !tbaa !9
  %3579 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3579, ptr %47, align 4, !tbaa !9
  %3580 = load ptr, ptr %5, align 8, !tbaa !5
  %3581 = getelementptr inbounds %struct.w2c_hermes, ptr %3580, i32 0, i32 6
  %3582 = load i32, ptr %47, align 4, !tbaa !9
  %3583 = zext i32 %3582 to i64
  %3584 = add i64 %3583, 696
  %3585 = call i64 @i64_load(ptr noundef %3581, i64 noundef %3584)
  store i64 %3585, ptr %56, align 8, !tbaa !11
  %3586 = load ptr, ptr %5, align 8, !tbaa !5
  %3587 = getelementptr inbounds %struct.w2c_hermes, ptr %3586, i32 0, i32 6
  %3588 = load i32, ptr %46, align 4, !tbaa !9
  %3589 = zext i32 %3588 to i64
  %3590 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3587, i64 noundef %3589, i64 noundef %3590)
  br label %3591

3591:                                             ; preds = %3563, %3525
  %3592 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3592, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %3593 = load i32, ptr %47, align 4, !tbaa !9
  %3594 = load i32, ptr %46, align 4, !tbaa !9
  %3595 = add i32 %3594, %3593
  store i32 %3595, ptr %46, align 4, !tbaa !9
  %3596 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3596, ptr %6, align 4, !tbaa !9
  br label %2945

3597:                                             ; preds = %3467
  %3598 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %3598, ptr %46, align 4, !tbaa !9
  %3599 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %3599, ptr %56, align 8, !tbaa !11
  %3600 = load ptr, ptr %5, align 8, !tbaa !5
  %3601 = getelementptr inbounds %struct.w2c_hermes, ptr %3600, i32 0, i32 6
  %3602 = load i32, ptr %46, align 4, !tbaa !9
  %3603 = zext i32 %3602 to i64
  %3604 = add i64 %3603, 352
  %3605 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3601, i64 noundef %3604, i64 noundef %3605)
  %3606 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3606, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %3607 = load i32, ptr %47, align 4, !tbaa !9
  %3608 = load i32, ptr %46, align 4, !tbaa !9
  %3609 = add i32 %3608, %3607
  store i32 %3609, ptr %46, align 4, !tbaa !9
  %3610 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3610, ptr %45, align 4, !tbaa !9
  br label %41340

3611:                                             ; preds = %2974
  %3612 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3612, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %3613 = load i32, ptr %47, align 4, !tbaa !9
  %3614 = load i32, ptr %46, align 4, !tbaa !9
  %3615 = add i32 %3614, %3613
  store i32 %3615, ptr %46, align 4, !tbaa !9
  %3616 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3616, ptr %8, align 4, !tbaa !9
  %3617 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3617, ptr %46, align 4, !tbaa !9
  %3618 = load ptr, ptr %5, align 8, !tbaa !5
  %3619 = getelementptr inbounds %struct.w2c_hermes, ptr %3618, i32 0, i32 6
  %3620 = load i32, ptr %46, align 4, !tbaa !9
  %3621 = zext i32 %3620 to i64
  %3622 = add i64 %3621, 3
  %3623 = call i32 @i32_load(ptr noundef %3619, i64 noundef %3622)
  store i32 %3623, ptr %46, align 4, !tbaa !9
  %3624 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3624, ptr %7, align 4, !tbaa !9
  %3625 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3625, ptr %46, align 4, !tbaa !9
  %3626 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3626, ptr %47, align 4, !tbaa !9
  %3627 = load ptr, ptr %5, align 8, !tbaa !5
  %3628 = getelementptr inbounds %struct.w2c_hermes, ptr %3627, i32 0, i32 6
  %3629 = load i32, ptr %47, align 4, !tbaa !9
  %3630 = zext i32 %3629 to i64
  %3631 = add i64 %3630, 2
  %3632 = call i32 @i32_load8_u(ptr noundef %3628, i64 noundef %3631)
  store i32 %3632, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %3633 = load i32, ptr %48, align 4, !tbaa !9
  %3634 = and i32 %3633, 31
  %3635 = load i32, ptr %47, align 4, !tbaa !9
  %3636 = shl i32 %3635, %3634
  store i32 %3636, ptr %47, align 4, !tbaa !9
  %3637 = load i32, ptr %47, align 4, !tbaa !9
  %3638 = load i32, ptr %46, align 4, !tbaa !9
  %3639 = add i32 %3638, %3637
  store i32 %3639, ptr %46, align 4, !tbaa !9
  %3640 = load ptr, ptr %5, align 8, !tbaa !5
  %3641 = getelementptr inbounds %struct.w2c_hermes, ptr %3640, i32 0, i32 6
  %3642 = load i32, ptr %46, align 4, !tbaa !9
  %3643 = zext i32 %3642 to i64
  %3644 = call i64 @i64_load(ptr noundef %3641, i64 noundef %3643)
  store i64 %3644, ptr %55, align 8, !tbaa !11
  br label %4048

3645:                                             ; preds = %2975
  %3646 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3646, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %3647 = load i32, ptr %47, align 4, !tbaa !9
  %3648 = load i32, ptr %46, align 4, !tbaa !9
  %3649 = add i32 %3648, %3647
  store i32 %3649, ptr %46, align 4, !tbaa !9
  %3650 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3650, ptr %8, align 4, !tbaa !9
  %3651 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3651, ptr %46, align 4, !tbaa !9
  %3652 = load ptr, ptr %5, align 8, !tbaa !5
  %3653 = getelementptr inbounds %struct.w2c_hermes, ptr %3652, i32 0, i32 6
  %3654 = load i32, ptr %46, align 4, !tbaa !9
  %3655 = zext i32 %3654 to i64
  %3656 = add i64 %3655, 3
  %3657 = call i32 @i32_load(ptr noundef %3653, i64 noundef %3656)
  store i32 %3657, ptr %46, align 4, !tbaa !9
  br label %4046

3658:                                             ; preds = %2976
  %3659 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3659, ptr %46, align 4, !tbaa !9
  %3660 = load ptr, ptr %5, align 8, !tbaa !5
  %3661 = getelementptr inbounds %struct.w2c_hermes, ptr %3660, i32 0, i32 6
  %3662 = load i32, ptr %46, align 4, !tbaa !9
  %3663 = zext i32 %3662 to i64
  %3664 = add i64 %3663, 5588
  %3665 = call i32 @i32_load(ptr noundef %3661, i64 noundef %3664)
  store i32 %3665, ptr %46, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %3666 = load i32, ptr %47, align 4, !tbaa !9
  %3667 = load i32, ptr %46, align 4, !tbaa !9
  %3668 = sub i32 %3667, %3666
  store i32 %3668, ptr %46, align 4, !tbaa !9
  %3669 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3669, ptr %47, align 4, !tbaa !9
  %3670 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3670, ptr %48, align 4, !tbaa !9
  %3671 = load ptr, ptr %5, align 8, !tbaa !5
  %3672 = getelementptr inbounds %struct.w2c_hermes, ptr %3671, i32 0, i32 6
  %3673 = load i32, ptr %48, align 4, !tbaa !9
  %3674 = zext i32 %3673 to i64
  %3675 = add i64 %3674, 3
  %3676 = call i32 @i32_load8_u(ptr noundef %3672, i64 noundef %3675)
  store i32 %3676, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3677 = load i32, ptr %49, align 4, !tbaa !9
  %3678 = and i32 %3677, 31
  %3679 = load i32, ptr %48, align 4, !tbaa !9
  %3680 = shl i32 %3679, %3678
  store i32 %3680, ptr %48, align 4, !tbaa !9
  %3681 = load i32, ptr %48, align 4, !tbaa !9
  %3682 = load i32, ptr %47, align 4, !tbaa !9
  %3683 = add i32 %3682, %3681
  store i32 %3683, ptr %47, align 4, !tbaa !9
  %3684 = load ptr, ptr %5, align 8, !tbaa !5
  %3685 = getelementptr inbounds %struct.w2c_hermes, ptr %3684, i32 0, i32 6
  %3686 = load i32, ptr %47, align 4, !tbaa !9
  %3687 = zext i32 %3686 to i64
  %3688 = call i64 @i64_load(ptr noundef %3685, i64 noundef %3687)
  store i64 %3688, ptr %56, align 8, !tbaa !11
  %3689 = load ptr, ptr %5, align 8, !tbaa !5
  %3690 = getelementptr inbounds %struct.w2c_hermes, ptr %3689, i32 0, i32 6
  %3691 = load i32, ptr %46, align 4, !tbaa !9
  %3692 = zext i32 %3691 to i64
  %3693 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3690, i64 noundef %3692, i64 noundef %3693)
  %3694 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3694, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %3695 = load i32, ptr %47, align 4, !tbaa !9
  %3696 = load i32, ptr %46, align 4, !tbaa !9
  %3697 = add i32 %3696, %3695
  store i32 %3697, ptr %46, align 4, !tbaa !9
  %3698 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3698, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  br label %4046

3699:                                             ; preds = %2977
  %3700 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3700, ptr %46, align 4, !tbaa !9
  %3701 = load ptr, ptr %5, align 8, !tbaa !5
  %3702 = getelementptr inbounds %struct.w2c_hermes, ptr %3701, i32 0, i32 6
  %3703 = load i32, ptr %46, align 4, !tbaa !9
  %3704 = zext i32 %3703 to i64
  %3705 = add i64 %3704, 5588
  %3706 = call i32 @i32_load(ptr noundef %3702, i64 noundef %3705)
  store i32 %3706, ptr %46, align 4, !tbaa !9
  %3707 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3707, ptr %7, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %3708 = load i32, ptr %47, align 4, !tbaa !9
  %3709 = load i32, ptr %46, align 4, !tbaa !9
  %3710 = sub i32 %3709, %3708
  store i32 %3710, ptr %46, align 4, !tbaa !9
  %3711 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3711, ptr %47, align 4, !tbaa !9
  %3712 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3712, ptr %48, align 4, !tbaa !9
  %3713 = load ptr, ptr %5, align 8, !tbaa !5
  %3714 = getelementptr inbounds %struct.w2c_hermes, ptr %3713, i32 0, i32 6
  %3715 = load i32, ptr %48, align 4, !tbaa !9
  %3716 = zext i32 %3715 to i64
  %3717 = add i64 %3716, 3
  %3718 = call i32 @i32_load8_u(ptr noundef %3714, i64 noundef %3717)
  store i32 %3718, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3719 = load i32, ptr %49, align 4, !tbaa !9
  %3720 = and i32 %3719, 31
  %3721 = load i32, ptr %48, align 4, !tbaa !9
  %3722 = shl i32 %3721, %3720
  store i32 %3722, ptr %48, align 4, !tbaa !9
  %3723 = load i32, ptr %48, align 4, !tbaa !9
  %3724 = load i32, ptr %47, align 4, !tbaa !9
  %3725 = add i32 %3724, %3723
  store i32 %3725, ptr %47, align 4, !tbaa !9
  %3726 = load ptr, ptr %5, align 8, !tbaa !5
  %3727 = getelementptr inbounds %struct.w2c_hermes, ptr %3726, i32 0, i32 6
  %3728 = load i32, ptr %47, align 4, !tbaa !9
  %3729 = zext i32 %3728 to i64
  %3730 = call i64 @i64_load(ptr noundef %3727, i64 noundef %3729)
  store i64 %3730, ptr %56, align 8, !tbaa !11
  %3731 = load ptr, ptr %5, align 8, !tbaa !5
  %3732 = getelementptr inbounds %struct.w2c_hermes, ptr %3731, i32 0, i32 6
  %3733 = load i32, ptr %46, align 4, !tbaa !9
  %3734 = zext i32 %3733 to i64
  %3735 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3732, i64 noundef %3734, i64 noundef %3735)
  %3736 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3736, ptr %46, align 4, !tbaa !9
  store i32 -64, ptr %47, align 4, !tbaa !9
  %3737 = load i32, ptr %47, align 4, !tbaa !9
  %3738 = load i32, ptr %46, align 4, !tbaa !9
  %3739 = add i32 %3738, %3737
  store i32 %3739, ptr %46, align 4, !tbaa !9
  %3740 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3740, ptr %47, align 4, !tbaa !9
  %3741 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3741, ptr %48, align 4, !tbaa !9
  %3742 = load ptr, ptr %5, align 8, !tbaa !5
  %3743 = getelementptr inbounds %struct.w2c_hermes, ptr %3742, i32 0, i32 6
  %3744 = load i32, ptr %48, align 4, !tbaa !9
  %3745 = zext i32 %3744 to i64
  %3746 = add i64 %3745, 4
  %3747 = call i32 @i32_load8_u(ptr noundef %3743, i64 noundef %3746)
  store i32 %3747, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3748 = load i32, ptr %49, align 4, !tbaa !9
  %3749 = and i32 %3748, 31
  %3750 = load i32, ptr %48, align 4, !tbaa !9
  %3751 = shl i32 %3750, %3749
  store i32 %3751, ptr %48, align 4, !tbaa !9
  %3752 = load i32, ptr %48, align 4, !tbaa !9
  %3753 = load i32, ptr %47, align 4, !tbaa !9
  %3754 = add i32 %3753, %3752
  store i32 %3754, ptr %47, align 4, !tbaa !9
  %3755 = load ptr, ptr %5, align 8, !tbaa !5
  %3756 = getelementptr inbounds %struct.w2c_hermes, ptr %3755, i32 0, i32 6
  %3757 = load i32, ptr %47, align 4, !tbaa !9
  %3758 = zext i32 %3757 to i64
  %3759 = call i64 @i64_load(ptr noundef %3756, i64 noundef %3758)
  store i64 %3759, ptr %56, align 8, !tbaa !11
  %3760 = load ptr, ptr %5, align 8, !tbaa !5
  %3761 = getelementptr inbounds %struct.w2c_hermes, ptr %3760, i32 0, i32 6
  %3762 = load i32, ptr %46, align 4, !tbaa !9
  %3763 = zext i32 %3762 to i64
  %3764 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3761, i64 noundef %3763, i64 noundef %3764)
  %3765 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3765, ptr %46, align 4, !tbaa !9
  store i32 5, ptr %47, align 4, !tbaa !9
  %3766 = load i32, ptr %47, align 4, !tbaa !9
  %3767 = load i32, ptr %46, align 4, !tbaa !9
  %3768 = add i32 %3767, %3766
  store i32 %3768, ptr %46, align 4, !tbaa !9
  %3769 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3769, ptr %8, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  br label %4046

3770:                                             ; preds = %2978
  %3771 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3771, ptr %46, align 4, !tbaa !9
  %3772 = load ptr, ptr %5, align 8, !tbaa !5
  %3773 = getelementptr inbounds %struct.w2c_hermes, ptr %3772, i32 0, i32 6
  %3774 = load i32, ptr %46, align 4, !tbaa !9
  %3775 = zext i32 %3774 to i64
  %3776 = add i64 %3775, 5588
  %3777 = call i32 @i32_load(ptr noundef %3773, i64 noundef %3776)
  store i32 %3777, ptr %46, align 4, !tbaa !9
  %3778 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3778, ptr %7, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %3779 = load i32, ptr %47, align 4, !tbaa !9
  %3780 = load i32, ptr %46, align 4, !tbaa !9
  %3781 = sub i32 %3780, %3779
  store i32 %3781, ptr %46, align 4, !tbaa !9
  %3782 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3782, ptr %47, align 4, !tbaa !9
  %3783 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3783, ptr %48, align 4, !tbaa !9
  %3784 = load ptr, ptr %5, align 8, !tbaa !5
  %3785 = getelementptr inbounds %struct.w2c_hermes, ptr %3784, i32 0, i32 6
  %3786 = load i32, ptr %48, align 4, !tbaa !9
  %3787 = zext i32 %3786 to i64
  %3788 = add i64 %3787, 3
  %3789 = call i32 @i32_load8_u(ptr noundef %3785, i64 noundef %3788)
  store i32 %3789, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3790 = load i32, ptr %49, align 4, !tbaa !9
  %3791 = and i32 %3790, 31
  %3792 = load i32, ptr %48, align 4, !tbaa !9
  %3793 = shl i32 %3792, %3791
  store i32 %3793, ptr %48, align 4, !tbaa !9
  %3794 = load i32, ptr %48, align 4, !tbaa !9
  %3795 = load i32, ptr %47, align 4, !tbaa !9
  %3796 = add i32 %3795, %3794
  store i32 %3796, ptr %47, align 4, !tbaa !9
  %3797 = load ptr, ptr %5, align 8, !tbaa !5
  %3798 = getelementptr inbounds %struct.w2c_hermes, ptr %3797, i32 0, i32 6
  %3799 = load i32, ptr %47, align 4, !tbaa !9
  %3800 = zext i32 %3799 to i64
  %3801 = call i64 @i64_load(ptr noundef %3798, i64 noundef %3800)
  store i64 %3801, ptr %56, align 8, !tbaa !11
  %3802 = load ptr, ptr %5, align 8, !tbaa !5
  %3803 = getelementptr inbounds %struct.w2c_hermes, ptr %3802, i32 0, i32 6
  %3804 = load i32, ptr %46, align 4, !tbaa !9
  %3805 = zext i32 %3804 to i64
  %3806 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3803, i64 noundef %3805, i64 noundef %3806)
  %3807 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3807, ptr %46, align 4, !tbaa !9
  store i32 -64, ptr %47, align 4, !tbaa !9
  %3808 = load i32, ptr %47, align 4, !tbaa !9
  %3809 = load i32, ptr %46, align 4, !tbaa !9
  %3810 = add i32 %3809, %3808
  store i32 %3810, ptr %46, align 4, !tbaa !9
  %3811 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3811, ptr %47, align 4, !tbaa !9
  %3812 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3812, ptr %48, 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, 4
  %3818 = call i32 @i32_load8_u(ptr noundef %3814, i64 noundef %3817)
  store i32 %3818, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3819 = load i32, ptr %49, align 4, !tbaa !9
  %3820 = and i32 %3819, 31
  %3821 = load i32, ptr %48, align 4, !tbaa !9
  %3822 = shl i32 %3821, %3820
  store i32 %3822, ptr %48, align 4, !tbaa !9
  %3823 = load i32, ptr %48, align 4, !tbaa !9
  %3824 = load i32, ptr %47, align 4, !tbaa !9
  %3825 = add i32 %3824, %3823
  store i32 %3825, ptr %47, align 4, !tbaa !9
  %3826 = load ptr, ptr %5, align 8, !tbaa !5
  %3827 = getelementptr inbounds %struct.w2c_hermes, ptr %3826, i32 0, i32 6
  %3828 = load i32, ptr %47, align 4, !tbaa !9
  %3829 = zext i32 %3828 to i64
  %3830 = call i64 @i64_load(ptr noundef %3827, i64 noundef %3829)
  store i64 %3830, ptr %56, align 8, !tbaa !11
  %3831 = load ptr, ptr %5, align 8, !tbaa !5
  %3832 = getelementptr inbounds %struct.w2c_hermes, ptr %3831, i32 0, i32 6
  %3833 = load i32, ptr %46, align 4, !tbaa !9
  %3834 = zext i32 %3833 to i64
  %3835 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3832, i64 noundef %3834, i64 noundef %3835)
  %3836 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3836, ptr %46, align 4, !tbaa !9
  store i32 72, ptr %47, align 4, !tbaa !9
  %3837 = load i32, ptr %47, align 4, !tbaa !9
  %3838 = load i32, ptr %46, align 4, !tbaa !9
  %3839 = sub i32 %3838, %3837
  store i32 %3839, ptr %46, align 4, !tbaa !9
  %3840 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3840, ptr %47, align 4, !tbaa !9
  %3841 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3841, ptr %48, 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 %48, align 4, !tbaa !9
  %3845 = zext i32 %3844 to i64
  %3846 = add i64 %3845, 5
  %3847 = call i32 @i32_load8_u(ptr noundef %3843, i64 noundef %3846)
  store i32 %3847, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3848 = load i32, ptr %49, align 4, !tbaa !9
  %3849 = and i32 %3848, 31
  %3850 = load i32, ptr %48, align 4, !tbaa !9
  %3851 = shl i32 %3850, %3849
  store i32 %3851, ptr %48, align 4, !tbaa !9
  %3852 = load i32, ptr %48, align 4, !tbaa !9
  %3853 = load i32, ptr %47, align 4, !tbaa !9
  %3854 = add i32 %3853, %3852
  store i32 %3854, ptr %47, align 4, !tbaa !9
  %3855 = load ptr, ptr %5, align 8, !tbaa !5
  %3856 = getelementptr inbounds %struct.w2c_hermes, ptr %3855, i32 0, i32 6
  %3857 = load i32, ptr %47, align 4, !tbaa !9
  %3858 = zext i32 %3857 to i64
  %3859 = call i64 @i64_load(ptr noundef %3856, i64 noundef %3858)
  store i64 %3859, ptr %56, align 8, !tbaa !11
  %3860 = load ptr, ptr %5, align 8, !tbaa !5
  %3861 = getelementptr inbounds %struct.w2c_hermes, ptr %3860, i32 0, i32 6
  %3862 = load i32, ptr %46, align 4, !tbaa !9
  %3863 = zext i32 %3862 to i64
  %3864 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3861, i64 noundef %3863, i64 noundef %3864)
  %3865 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3865, ptr %46, align 4, !tbaa !9
  store i32 6, ptr %47, align 4, !tbaa !9
  %3866 = load i32, ptr %47, align 4, !tbaa !9
  %3867 = load i32, ptr %46, align 4, !tbaa !9
  %3868 = add i32 %3867, %3866
  store i32 %3868, ptr %46, align 4, !tbaa !9
  %3869 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3869, ptr %8, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  br label %4046

3870:                                             ; preds = %2979
  %3871 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3871, ptr %46, align 4, !tbaa !9
  %3872 = load ptr, ptr %5, align 8, !tbaa !5
  %3873 = getelementptr inbounds %struct.w2c_hermes, ptr %3872, i32 0, i32 6
  %3874 = load i32, ptr %46, align 4, !tbaa !9
  %3875 = zext i32 %3874 to i64
  %3876 = add i64 %3875, 5588
  %3877 = call i32 @i32_load(ptr noundef %3873, i64 noundef %3876)
  store i32 %3877, ptr %46, align 4, !tbaa !9
  %3878 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3878, ptr %7, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %3879 = load i32, ptr %47, align 4, !tbaa !9
  %3880 = load i32, ptr %46, align 4, !tbaa !9
  %3881 = sub i32 %3880, %3879
  store i32 %3881, ptr %46, align 4, !tbaa !9
  %3882 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3882, ptr %47, align 4, !tbaa !9
  %3883 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3883, ptr %48, align 4, !tbaa !9
  %3884 = load ptr, ptr %5, align 8, !tbaa !5
  %3885 = getelementptr inbounds %struct.w2c_hermes, ptr %3884, i32 0, i32 6
  %3886 = load i32, ptr %48, align 4, !tbaa !9
  %3887 = zext i32 %3886 to i64
  %3888 = add i64 %3887, 3
  %3889 = call i32 @i32_load8_u(ptr noundef %3885, i64 noundef %3888)
  store i32 %3889, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3890 = load i32, ptr %49, align 4, !tbaa !9
  %3891 = and i32 %3890, 31
  %3892 = load i32, ptr %48, align 4, !tbaa !9
  %3893 = shl i32 %3892, %3891
  store i32 %3893, ptr %48, align 4, !tbaa !9
  %3894 = load i32, ptr %48, align 4, !tbaa !9
  %3895 = load i32, ptr %47, align 4, !tbaa !9
  %3896 = add i32 %3895, %3894
  store i32 %3896, ptr %47, align 4, !tbaa !9
  %3897 = load ptr, ptr %5, align 8, !tbaa !5
  %3898 = getelementptr inbounds %struct.w2c_hermes, ptr %3897, i32 0, i32 6
  %3899 = load i32, ptr %47, align 4, !tbaa !9
  %3900 = zext i32 %3899 to i64
  %3901 = call i64 @i64_load(ptr noundef %3898, i64 noundef %3900)
  store i64 %3901, ptr %56, align 8, !tbaa !11
  %3902 = load ptr, ptr %5, align 8, !tbaa !5
  %3903 = getelementptr inbounds %struct.w2c_hermes, ptr %3902, i32 0, i32 6
  %3904 = load i32, ptr %46, align 4, !tbaa !9
  %3905 = zext i32 %3904 to i64
  %3906 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3903, i64 noundef %3905, i64 noundef %3906)
  %3907 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3907, ptr %46, align 4, !tbaa !9
  store i32 -64, ptr %47, align 4, !tbaa !9
  %3908 = load i32, ptr %47, align 4, !tbaa !9
  %3909 = load i32, ptr %46, align 4, !tbaa !9
  %3910 = add i32 %3909, %3908
  store i32 %3910, ptr %46, align 4, !tbaa !9
  %3911 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3911, ptr %47, align 4, !tbaa !9
  %3912 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3912, ptr %48, align 4, !tbaa !9
  %3913 = load ptr, ptr %5, align 8, !tbaa !5
  %3914 = getelementptr inbounds %struct.w2c_hermes, ptr %3913, i32 0, i32 6
  %3915 = load i32, ptr %48, align 4, !tbaa !9
  %3916 = zext i32 %3915 to i64
  %3917 = add i64 %3916, 4
  %3918 = call i32 @i32_load8_u(ptr noundef %3914, i64 noundef %3917)
  store i32 %3918, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3919 = load i32, ptr %49, align 4, !tbaa !9
  %3920 = and i32 %3919, 31
  %3921 = load i32, ptr %48, align 4, !tbaa !9
  %3922 = shl i32 %3921, %3920
  store i32 %3922, ptr %48, align 4, !tbaa !9
  %3923 = load i32, ptr %48, align 4, !tbaa !9
  %3924 = load i32, ptr %47, align 4, !tbaa !9
  %3925 = add i32 %3924, %3923
  store i32 %3925, ptr %47, align 4, !tbaa !9
  %3926 = load ptr, ptr %5, align 8, !tbaa !5
  %3927 = getelementptr inbounds %struct.w2c_hermes, ptr %3926, i32 0, i32 6
  %3928 = load i32, ptr %47, align 4, !tbaa !9
  %3929 = zext i32 %3928 to i64
  %3930 = call i64 @i64_load(ptr noundef %3927, i64 noundef %3929)
  store i64 %3930, ptr %56, align 8, !tbaa !11
  %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 %46, align 4, !tbaa !9
  %3934 = zext i32 %3933 to i64
  %3935 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3932, i64 noundef %3934, i64 noundef %3935)
  %3936 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3936, ptr %46, align 4, !tbaa !9
  store i32 72, ptr %47, align 4, !tbaa !9
  %3937 = load i32, ptr %47, align 4, !tbaa !9
  %3938 = load i32, ptr %46, align 4, !tbaa !9
  %3939 = sub i32 %3938, %3937
  store i32 %3939, ptr %46, align 4, !tbaa !9
  %3940 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3940, ptr %47, align 4, !tbaa !9
  %3941 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3941, ptr %48, align 4, !tbaa !9
  %3942 = load ptr, ptr %5, align 8, !tbaa !5
  %3943 = getelementptr inbounds %struct.w2c_hermes, ptr %3942, i32 0, i32 6
  %3944 = load i32, ptr %48, align 4, !tbaa !9
  %3945 = zext i32 %3944 to i64
  %3946 = add i64 %3945, 5
  %3947 = call i32 @i32_load8_u(ptr noundef %3943, i64 noundef %3946)
  store i32 %3947, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3948 = load i32, ptr %49, align 4, !tbaa !9
  %3949 = and i32 %3948, 31
  %3950 = load i32, ptr %48, align 4, !tbaa !9
  %3951 = shl i32 %3950, %3949
  store i32 %3951, ptr %48, align 4, !tbaa !9
  %3952 = load i32, ptr %48, align 4, !tbaa !9
  %3953 = load i32, ptr %47, align 4, !tbaa !9
  %3954 = add i32 %3953, %3952
  store i32 %3954, ptr %47, align 4, !tbaa !9
  %3955 = load ptr, ptr %5, align 8, !tbaa !5
  %3956 = getelementptr inbounds %struct.w2c_hermes, ptr %3955, i32 0, i32 6
  %3957 = load i32, ptr %47, align 4, !tbaa !9
  %3958 = zext i32 %3957 to i64
  %3959 = call i64 @i64_load(ptr noundef %3956, i64 noundef %3958)
  store i64 %3959, ptr %56, align 8, !tbaa !11
  %3960 = load ptr, ptr %5, align 8, !tbaa !5
  %3961 = getelementptr inbounds %struct.w2c_hermes, ptr %3960, i32 0, i32 6
  %3962 = load i32, ptr %46, align 4, !tbaa !9
  %3963 = zext i32 %3962 to i64
  %3964 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3961, i64 noundef %3963, i64 noundef %3964)
  %3965 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %3965, ptr %46, align 4, !tbaa !9
  store i32 80, ptr %47, align 4, !tbaa !9
  %3966 = load i32, ptr %47, align 4, !tbaa !9
  %3967 = load i32, ptr %46, align 4, !tbaa !9
  %3968 = sub i32 %3967, %3966
  store i32 %3968, ptr %46, align 4, !tbaa !9
  %3969 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %3969, ptr %47, align 4, !tbaa !9
  %3970 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3970, ptr %48, align 4, !tbaa !9
  %3971 = load ptr, ptr %5, align 8, !tbaa !5
  %3972 = getelementptr inbounds %struct.w2c_hermes, ptr %3971, i32 0, i32 6
  %3973 = load i32, ptr %48, align 4, !tbaa !9
  %3974 = zext i32 %3973 to i64
  %3975 = add i64 %3974, 6
  %3976 = call i32 @i32_load8_u(ptr noundef %3972, i64 noundef %3975)
  store i32 %3976, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %3977 = load i32, ptr %49, align 4, !tbaa !9
  %3978 = and i32 %3977, 31
  %3979 = load i32, ptr %48, align 4, !tbaa !9
  %3980 = shl i32 %3979, %3978
  store i32 %3980, ptr %48, align 4, !tbaa !9
  %3981 = load i32, ptr %48, align 4, !tbaa !9
  %3982 = load i32, ptr %47, align 4, !tbaa !9
  %3983 = add i32 %3982, %3981
  store i32 %3983, ptr %47, align 4, !tbaa !9
  %3984 = load ptr, ptr %5, align 8, !tbaa !5
  %3985 = getelementptr inbounds %struct.w2c_hermes, ptr %3984, i32 0, i32 6
  %3986 = load i32, ptr %47, align 4, !tbaa !9
  %3987 = zext i32 %3986 to i64
  %3988 = call i64 @i64_load(ptr noundef %3985, i64 noundef %3987)
  store i64 %3988, ptr %56, align 8, !tbaa !11
  %3989 = load ptr, ptr %5, align 8, !tbaa !5
  %3990 = getelementptr inbounds %struct.w2c_hermes, ptr %3989, i32 0, i32 6
  %3991 = load i32, ptr %46, align 4, !tbaa !9
  %3992 = zext i32 %3991 to i64
  %3993 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3990, i64 noundef %3992, i64 noundef %3993)
  %3994 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %3994, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %3995 = load i32, ptr %47, align 4, !tbaa !9
  %3996 = load i32, ptr %46, align 4, !tbaa !9
  %3997 = add i32 %3996, %3995
  store i32 %3997, ptr %46, align 4, !tbaa !9
  %3998 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %3998, ptr %8, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  br label %4046

3999:                                             ; preds = %2980
  %4000 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4000, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %4001 = load i32, ptr %47, align 4, !tbaa !9
  %4002 = load i32, ptr %46, align 4, !tbaa !9
  %4003 = add i32 %4002, %4001
  store i32 %4003, ptr %46, align 4, !tbaa !9
  %4004 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4004, ptr %8, align 4, !tbaa !9
  %4005 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4005, ptr %46, align 4, !tbaa !9
  %4006 = load ptr, ptr %5, align 8, !tbaa !5
  %4007 = getelementptr inbounds %struct.w2c_hermes, ptr %4006, i32 0, i32 6
  %4008 = load i32, ptr %46, align 4, !tbaa !9
  %4009 = zext i32 %4008 to i64
  %4010 = add i64 %4009, 3
  %4011 = call i32 @i32_load8_u(ptr noundef %4007, i64 noundef %4010)
  store i32 %4011, ptr %46, align 4, !tbaa !9
  %4012 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4012, ptr %7, align 4, !tbaa !9
  %4013 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4013, ptr %46, align 4, !tbaa !9
  %4014 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4014, ptr %47, align 4, !tbaa !9
  %4015 = load ptr, ptr %5, align 8, !tbaa !5
  %4016 = getelementptr inbounds %struct.w2c_hermes, ptr %4015, i32 0, i32 6
  %4017 = load i32, ptr %47, align 4, !tbaa !9
  %4018 = zext i32 %4017 to i64
  %4019 = add i64 %4018, 2
  %4020 = call i32 @i32_load8_u(ptr noundef %4016, i64 noundef %4019)
  store i32 %4020, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %4021 = load i32, ptr %48, align 4, !tbaa !9
  %4022 = and i32 %4021, 31
  %4023 = load i32, ptr %47, align 4, !tbaa !9
  %4024 = shl i32 %4023, %4022
  store i32 %4024, ptr %47, align 4, !tbaa !9
  %4025 = load i32, ptr %47, align 4, !tbaa !9
  %4026 = load i32, ptr %46, align 4, !tbaa !9
  %4027 = add i32 %4026, %4025
  store i32 %4027, ptr %46, align 4, !tbaa !9
  %4028 = load ptr, ptr %5, align 8, !tbaa !5
  %4029 = getelementptr inbounds %struct.w2c_hermes, ptr %4028, i32 0, i32 6
  %4030 = load i32, ptr %46, align 4, !tbaa !9
  %4031 = zext i32 %4030 to i64
  %4032 = call i64 @i64_load(ptr noundef %4029, i64 noundef %4031)
  store i64 %4032, ptr %55, align 8, !tbaa !11
  br label %4048

4033:                                             ; preds = %2981
  %4034 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4034, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %4035 = load i32, ptr %47, align 4, !tbaa !9
  %4036 = load i32, ptr %46, align 4, !tbaa !9
  %4037 = add i32 %4036, %4035
  store i32 %4037, ptr %46, align 4, !tbaa !9
  %4038 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4038, ptr %8, align 4, !tbaa !9
  %4039 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4039, ptr %46, align 4, !tbaa !9
  %4040 = load ptr, ptr %5, align 8, !tbaa !5
  %4041 = getelementptr inbounds %struct.w2c_hermes, ptr %4040, i32 0, i32 6
  %4042 = load i32, ptr %46, align 4, !tbaa !9
  %4043 = zext i32 %4042 to i64
  %4044 = add i64 %4043, 3
  %4045 = call i32 @i32_load8_u(ptr noundef %4041, i64 noundef %4044)
  store i32 %4045, ptr %46, align 4, !tbaa !9
  br label %4046

4046:                                             ; preds = %4033, %3870, %3770, %3699, %3658, %3645
  %4047 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4047, ptr %7, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  br label %4048

4048:                                             ; preds = %4046, %3999, %3611
  %4049 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %4049, ptr %41, align 8, !tbaa !11
  %4050 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4050, ptr %46, align 4, !tbaa !9
  %4051 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4051, ptr %47, 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 %47, align 4, !tbaa !9
  %4055 = zext i32 %4054 to i64
  %4056 = add i64 %4055, 2
  %4057 = call i32 @i32_load8_u(ptr noundef %4053, i64 noundef %4056)
  store i32 %4057, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %4058 = load i32, ptr %48, align 4, !tbaa !9
  %4059 = and i32 %4058, 31
  %4060 = load i32, ptr %47, align 4, !tbaa !9
  %4061 = shl i32 %4060, %4059
  store i32 %4061, ptr %47, align 4, !tbaa !9
  %4062 = load i32, ptr %47, align 4, !tbaa !9
  %4063 = load i32, ptr %46, align 4, !tbaa !9
  %4064 = add i32 %4063, %4062
  store i32 %4064, ptr %46, align 4, !tbaa !9
  %4065 = load ptr, ptr %5, align 8, !tbaa !5
  %4066 = getelementptr inbounds %struct.w2c_hermes, ptr %4065, i32 0, i32 6
  %4067 = load i32, ptr %46, align 4, !tbaa !9
  %4068 = zext i32 %4067 to i64
  %4069 = call i64 @i64_load(ptr noundef %4066, i64 noundef %4068)
  store i64 %4069, ptr %55, align 8, !tbaa !11
  %4070 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %4070, ptr %39, align 8, !tbaa !11
  %4071 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4071, ptr %46, align 4, !tbaa !9
  %4072 = load ptr, ptr %5, align 8, !tbaa !5
  %4073 = getelementptr inbounds %struct.w2c_hermes, ptr %4072, i32 0, i32 6
  %4074 = load i32, ptr %46, align 4, !tbaa !9
  %4075 = zext i32 %4074 to i64
  %4076 = add i64 %4075, 5588
  %4077 = call i32 @i32_load(ptr noundef %4073, i64 noundef %4076)
  store i32 %4077, ptr %46, align 4, !tbaa !9
  %4078 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4078, ptr %12, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %4079 = load i32, ptr %47, align 4, !tbaa !9
  %4080 = load i32, ptr %46, align 4, !tbaa !9
  %4081 = sub i32 %4080, %4079
  store i32 %4081, ptr %46, align 4, !tbaa !9
  %4082 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4082, ptr %47, align 4, !tbaa !9
  %4083 = load i32, ptr %47, align 4, !tbaa !9
  %4084 = zext i32 %4083 to i64
  store i64 %4084, ptr %56, align 8, !tbaa !11
  %4085 = load ptr, ptr %5, align 8, !tbaa !5
  %4086 = getelementptr inbounds %struct.w2c_hermes, ptr %4085, i32 0, i32 6
  %4087 = load i32, ptr %46, align 4, !tbaa !9
  %4088 = zext i32 %4087 to i64
  %4089 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4086, i64 noundef %4088, i64 noundef %4089)
  %4090 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4090, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %4091 = load i32, ptr %47, align 4, !tbaa !9
  %4092 = load i32, ptr %46, align 4, !tbaa !9
  %4093 = sub i32 %4092, %4091
  store i32 %4093, ptr %46, align 4, !tbaa !9
  %4094 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4094, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %4095 = load i32, ptr %48, align 4, !tbaa !9
  %4096 = load i32, ptr %47, align 4, !tbaa !9
  %4097 = sub i32 %4096, %4095
  store i32 %4097, ptr %47, align 4, !tbaa !9
  %4098 = load i32, ptr %47, align 4, !tbaa !9
  %4099 = zext i32 %4098 to i64
  store i64 %4099, ptr %56, align 8, !tbaa !11
  %4100 = load ptr, ptr %5, align 8, !tbaa !5
  %4101 = getelementptr inbounds %struct.w2c_hermes, ptr %4100, i32 0, i32 6
  %4102 = load i32, ptr %46, align 4, !tbaa !9
  %4103 = zext i32 %4102 to i64
  %4104 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4101, i64 noundef %4103, i64 noundef %4104)
  %4105 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4105, ptr %46, align 4, !tbaa !9
  store i32 24, ptr %47, align 4, !tbaa !9
  %4106 = load i32, ptr %47, align 4, !tbaa !9
  %4107 = load i32, ptr %46, align 4, !tbaa !9
  %4108 = sub i32 %4107, %4106
  store i32 %4108, ptr %46, align 4, !tbaa !9
  %4109 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4109, ptr %47, align 4, !tbaa !9
  %4110 = load i32, ptr %47, align 4, !tbaa !9
  %4111 = zext i32 %4110 to i64
  store i64 %4111, ptr %56, align 8, !tbaa !11
  %4112 = load ptr, ptr %5, align 8, !tbaa !5
  %4113 = getelementptr inbounds %struct.w2c_hermes, ptr %4112, i32 0, i32 6
  %4114 = load i32, ptr %46, align 4, !tbaa !9
  %4115 = zext i32 %4114 to i64
  %4116 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4113, i64 noundef %4115, i64 noundef %4116)
  %4117 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4117, ptr %46, align 4, !tbaa !9
  store i32 32, ptr %47, align 4, !tbaa !9
  %4118 = load i32, ptr %47, align 4, !tbaa !9
  %4119 = load i32, ptr %46, align 4, !tbaa !9
  %4120 = sub i32 %4119, %4118
  store i32 %4120, ptr %46, align 4, !tbaa !9
  %4121 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4121, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %4122 = load i32, ptr %48, align 4, !tbaa !9
  %4123 = load i32, ptr %47, align 4, !tbaa !9
  %4124 = sub i32 %4123, %4122
  store i32 %4124, ptr %47, align 4, !tbaa !9
  %4125 = load i32, ptr %47, align 4, !tbaa !9
  %4126 = zext i32 %4125 to i64
  store i64 %4126, ptr %56, align 8, !tbaa !11
  store i64 -1125899906842624, ptr %57, align 8, !tbaa !11
  %4127 = load i64, ptr %57, align 8, !tbaa !11
  %4128 = load i64, ptr %56, align 8, !tbaa !11
  %4129 = or i64 %4128, %4127
  store i64 %4129, ptr %56, align 8, !tbaa !11
  %4130 = load ptr, ptr %5, align 8, !tbaa !5
  %4131 = getelementptr inbounds %struct.w2c_hermes, ptr %4130, i32 0, i32 6
  %4132 = load i32, ptr %46, align 4, !tbaa !9
  %4133 = zext i32 %4132 to i64
  %4134 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4131, i64 noundef %4133, i64 noundef %4134)
  %4135 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4135, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %4136 = load i32, ptr %47, align 4, !tbaa !9
  %4137 = load i32, ptr %46, align 4, !tbaa !9
  %4138 = sub i32 %4137, %4136
  store i32 %4138, ptr %46, align 4, !tbaa !9
  %4139 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %4139, ptr %56, align 8, !tbaa !11
  %4140 = load ptr, ptr %5, align 8, !tbaa !5
  %4141 = getelementptr inbounds %struct.w2c_hermes, ptr %4140, i32 0, i32 6
  %4142 = load i32, ptr %46, align 4, !tbaa !9
  %4143 = zext i32 %4142 to i64
  %4144 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4141, i64 noundef %4143, i64 noundef %4144)
  %4145 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4145, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %4146 = load i32, ptr %47, align 4, !tbaa !9
  %4147 = load i32, ptr %46, align 4, !tbaa !9
  %4148 = sub i32 %4147, %4146
  store i32 %4148, ptr %46, align 4, !tbaa !9
  %4149 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %4149, ptr %56, align 8, !tbaa !11
  %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 %46, align 4, !tbaa !9
  %4153 = zext i32 %4152 to i64
  %4154 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4151, i64 noundef %4153, i64 noundef %4154)
  %4155 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4155, ptr %46, align 4, !tbaa !9
  %4156 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4156, ptr %47, align 4, !tbaa !9
  %4157 = load ptr, ptr %5, align 8, !tbaa !5
  %4158 = getelementptr inbounds %struct.w2c_hermes, ptr %4157, i32 0, i32 6
  %4159 = load i32, ptr %47, align 4, !tbaa !9
  %4160 = zext i32 %4159 to i64
  %4161 = add i64 %4160, 2
  %4162 = call i32 @i32_load8_u(ptr noundef %4158, i64 noundef %4161)
  store i32 %4162, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %4163 = load i32, ptr %48, align 4, !tbaa !9
  %4164 = and i32 %4163, 31
  %4165 = load i32, ptr %47, align 4, !tbaa !9
  %4166 = shl i32 %4165, %4164
  store i32 %4166, ptr %47, align 4, !tbaa !9
  %4167 = load i32, ptr %47, align 4, !tbaa !9
  %4168 = load i32, ptr %46, align 4, !tbaa !9
  %4169 = add i32 %4168, %4167
  store i32 %4169, ptr %46, align 4, !tbaa !9
  %4170 = load ptr, ptr %5, align 8, !tbaa !5
  %4171 = getelementptr inbounds %struct.w2c_hermes, ptr %4170, i32 0, i32 6
  %4172 = load i32, ptr %46, align 4, !tbaa !9
  %4173 = zext i32 %4172 to i64
  %4174 = call i64 @i64_load(ptr noundef %4171, i64 noundef %4173)
  store i64 %4174, ptr %55, align 8, !tbaa !11
  %4175 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %4175, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %56, align 8, !tbaa !11
  %4176 = load i64, ptr %55, align 8, !tbaa !11
  %4177 = load i64, ptr %56, align 8, !tbaa !11
  %4178 = icmp ult i64 %4176, %4177
  %4179 = zext i1 %4178 to i32
  store i32 %4179, ptr %46, align 4, !tbaa !9
  %4180 = load i32, ptr %46, align 4, !tbaa !9
  %4181 = icmp ne i32 %4180, 0
  br i1 %4181, label %4182, label %4183

4182:                                             ; preds = %4048
  br label %4262

4183:                                             ; preds = %4048
  %4184 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %4184, ptr %55, align 8, !tbaa !11
  %4185 = load i64, ptr %55, align 8, !tbaa !11
  %4186 = trunc i64 %4185 to i32
  store i32 %4186, ptr %46, align 4, !tbaa !9
  %4187 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4187, ptr %7, align 4, !tbaa !9
  %4188 = load ptr, ptr %5, align 8, !tbaa !5
  %4189 = getelementptr inbounds %struct.w2c_hermes, ptr %4188, i32 0, i32 6
  %4190 = load i32, ptr %46, align 4, !tbaa !9
  %4191 = zext i32 %4190 to i64
  %4192 = call i32 @i32_load(ptr noundef %4189, i64 noundef %4191)
  store i32 %4192, ptr %46, align 4, !tbaa !9
  store i32 1224736768, ptr %47, align 4, !tbaa !9
  %4193 = load i32, ptr %47, align 4, !tbaa !9
  %4194 = load i32, ptr %46, align 4, !tbaa !9
  %4195 = sub i32 %4194, %4193
  store i32 %4195, ptr %46, align 4, !tbaa !9
  store i32 67108863, ptr %47, align 4, !tbaa !9
  %4196 = load i32, ptr %46, align 4, !tbaa !9
  %4197 = load i32, ptr %47, align 4, !tbaa !9
  %4198 = icmp ugt i32 %4196, %4197
  %4199 = zext i1 %4198 to i32
  store i32 %4199, ptr %46, align 4, !tbaa !9
  %4200 = load i32, ptr %46, align 4, !tbaa !9
  %4201 = icmp ne i32 %4200, 0
  br i1 %4201, label %4202, label %4203

4202:                                             ; preds = %4183
  br label %4262

4203:                                             ; preds = %4183
  %4204 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4204, ptr %46, align 4, !tbaa !9
  %4205 = load ptr, ptr %5, align 8, !tbaa !5
  %4206 = getelementptr inbounds %struct.w2c_hermes, ptr %4205, i32 0, i32 6
  %4207 = load i32, ptr %46, align 4, !tbaa !9
  %4208 = zext i32 %4207 to i64
  %4209 = add i64 %4208, 24
  %4210 = call i32 @i32_load(ptr noundef %4206, i64 noundef %4209)
  store i32 %4210, ptr %46, align 4, !tbaa !9
  %4211 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4211, ptr %7, align 4, !tbaa !9
  %4212 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4212, ptr %46, align 4, !tbaa !9
  %4213 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4213, ptr %47, align 4, !tbaa !9
  %4214 = load ptr, ptr %5, align 8, !tbaa !5
  %4215 = getelementptr inbounds %struct.w2c_hermes, ptr %4214, i32 0, i32 6
  %4216 = load i32, ptr %46, align 4, !tbaa !9
  %4217 = zext i32 %4216 to i64
  %4218 = add i64 %4217, 5808
  %4219 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4215, i64 noundef %4218, i32 noundef %4219)
  %4220 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4220, ptr %46, align 4, !tbaa !9
  %4221 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4221, ptr %47, align 4, !tbaa !9
  %4222 = load ptr, ptr %5, align 8, !tbaa !5
  %4223 = getelementptr inbounds %struct.w2c_hermes, ptr %4222, i32 0, i32 6
  %4224 = load i32, ptr %47, align 4, !tbaa !9
  %4225 = zext i32 %4224 to i64
  %4226 = add i64 %4225, 1276
  %4227 = call i32 @i32_load(ptr noundef %4223, i64 noundef %4226)
  store i32 %4227, ptr %47, align 4, !tbaa !9
  %4228 = load i32, ptr %47, align 4, !tbaa !9
  %4229 = load i32, ptr %46, align 4, !tbaa !9
  %4230 = xor i32 %4229, %4228
  store i32 %4230, ptr %46, align 4, !tbaa !9
  %4231 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4231, ptr %12, align 4, !tbaa !9
  %4232 = load ptr, ptr %5, align 8, !tbaa !5
  %4233 = getelementptr inbounds %struct.w2c_hermes, ptr %4232, i32 0, i32 6
  %4234 = load i32, ptr %46, align 4, !tbaa !9
  %4235 = zext i32 %4234 to i64
  %4236 = add i64 %4235, 8
  %4237 = call i32 @i32_load(ptr noundef %4233, i64 noundef %4236)
  store i32 %4237, ptr %46, align 4, !tbaa !9
  %4238 = load i32, ptr %46, align 4, !tbaa !9
  %4239 = icmp ne i32 %4238, 0
  br i1 %4239, label %4240, label %4241

4240:                                             ; preds = %4203
  br label %394

4241:                                             ; preds = %4203
  %4242 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4242, ptr %46, align 4, !tbaa !9
  %4243 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4243, ptr %47, align 4, !tbaa !9
  %4244 = load ptr, ptr %5, align 8, !tbaa !5
  %4245 = load i32, ptr %46, align 4, !tbaa !9
  %4246 = load i32, ptr %47, align 4, !tbaa !9
  %4247 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %4244, i32 noundef %4245, i32 noundef %4246)
  store i32 %4247, ptr %46, align 4, !tbaa !9
  %4248 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4248, ptr %7, align 4, !tbaa !9
  %4249 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4249, ptr %46, align 4, !tbaa !9
  %4250 = load ptr, ptr %5, align 8, !tbaa !5
  %4251 = getelementptr inbounds %struct.w2c_hermes, ptr %4250, i32 0, i32 6
  %4252 = load i32, ptr %46, align 4, !tbaa !9
  %4253 = zext i32 %4252 to i64
  %4254 = add i64 %4253, 5808
  %4255 = call i32 @i32_load(ptr noundef %4251, i64 noundef %4254)
  store i32 %4255, ptr %46, align 4, !tbaa !9
  %4256 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4256, ptr %6, align 4, !tbaa !9
  %4257 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4257, ptr %46, align 4, !tbaa !9
  %4258 = load i32, ptr %46, align 4, !tbaa !9
  %4259 = icmp ne i32 %4258, 0
  br i1 %4259, label %4260, label %4261

4260:                                             ; preds = %4241
  br label %394

4261:                                             ; preds = %4241
  br label %43136

4262:                                             ; preds = %4202, %4182
  %4263 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4263, ptr %46, align 4, !tbaa !9
  %4264 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4264, ptr %47, align 4, !tbaa !9
  %4265 = load ptr, ptr %5, align 8, !tbaa !5
  %4266 = getelementptr inbounds %struct.w2c_hermes, ptr %4265, i32 0, i32 6
  %4267 = load i32, ptr %46, align 4, !tbaa !9
  %4268 = zext i32 %4267 to i64
  %4269 = add i64 %4268, 5808
  %4270 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4266, i64 noundef %4269, i32 noundef %4270)
  %4271 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4271, ptr %46, align 4, !tbaa !9
  %4272 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4272, ptr %47, 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 %47, align 4, !tbaa !9
  %4276 = zext i32 %4275 to i64
  %4277 = add i64 %4276, 2
  %4278 = call i32 @i32_load8_u(ptr noundef %4274, i64 noundef %4277)
  store i32 %4278, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %4279 = load i32, ptr %48, align 4, !tbaa !9
  %4280 = and i32 %4279, 31
  %4281 = load i32, ptr %47, align 4, !tbaa !9
  %4282 = shl i32 %4281, %4280
  store i32 %4282, ptr %47, align 4, !tbaa !9
  %4283 = load i32, ptr %47, align 4, !tbaa !9
  %4284 = load i32, ptr %46, align 4, !tbaa !9
  %4285 = add i32 %4284, %4283
  store i32 %4285, ptr %46, align 4, !tbaa !9
  %4286 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4286, ptr %25, align 4, !tbaa !9
  %4287 = load ptr, ptr %5, align 8, !tbaa !5
  %4288 = getelementptr inbounds %struct.w2c_hermes, ptr %4287, i32 0, i32 6
  %4289 = load i32, ptr %46, align 4, !tbaa !9
  %4290 = zext i32 %4289 to i64
  %4291 = call i64 @i64_load(ptr noundef %4288, i64 noundef %4290)
  store i64 %4291, ptr %55, align 8, !tbaa !11
  %4292 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %4292, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %56, align 8, !tbaa !11
  %4293 = load i64, ptr %55, align 8, !tbaa !11
  %4294 = load i64, ptr %56, align 8, !tbaa !11
  %4295 = icmp ult i64 %4293, %4294
  %4296 = zext i1 %4295 to i32
  store i32 %4296, ptr %46, align 4, !tbaa !9
  %4297 = load i32, ptr %46, align 4, !tbaa !9
  %4298 = icmp ne i32 %4297, 0
  br i1 %4298, label %4299, label %4300

4299:                                             ; preds = %4262
  br label %41442

4300:                                             ; preds = %4262
  %4301 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %4301, ptr %55, align 8, !tbaa !11
  %4302 = load i64, ptr %55, align 8, !tbaa !11
  %4303 = trunc i64 %4302 to i32
  store i32 %4303, ptr %46, align 4, !tbaa !9
  %4304 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4304, ptr %12, align 4, !tbaa !9
  %4305 = load ptr, ptr %5, align 8, !tbaa !5
  %4306 = getelementptr inbounds %struct.w2c_hermes, ptr %4305, i32 0, i32 6
  %4307 = load i32, ptr %46, align 4, !tbaa !9
  %4308 = zext i32 %4307 to i64
  %4309 = call i32 @i32_load(ptr noundef %4306, i64 noundef %4308)
  store i32 %4309, ptr %46, align 4, !tbaa !9
  %4310 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4310, ptr %7, align 4, !tbaa !9
  store i32 1157627904, ptr %47, align 4, !tbaa !9
  %4311 = load i32, ptr %47, align 4, !tbaa !9
  %4312 = load i32, ptr %46, align 4, !tbaa !9
  %4313 = sub i32 %4312, %4311
  store i32 %4313, ptr %46, align 4, !tbaa !9
  store i32 67108863, ptr %47, align 4, !tbaa !9
  %4314 = load i32, ptr %46, align 4, !tbaa !9
  %4315 = load i32, ptr %47, align 4, !tbaa !9
  %4316 = icmp ule i32 %4314, %4315
  %4317 = zext i1 %4316 to i32
  store i32 %4317, ptr %46, align 4, !tbaa !9
  %4318 = load i32, ptr %46, align 4, !tbaa !9
  %4319 = icmp ne i32 %4318, 0
  br i1 %4319, label %4320, label %4331

4320:                                             ; preds = %4300
  %4321 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4321, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %4322 = load i32, ptr %47, align 4, !tbaa !9
  %4323 = load i32, ptr %46, align 4, !tbaa !9
  %4324 = add i32 %4323, %4322
  store i32 %4324, ptr %46, align 4, !tbaa !9
  %4325 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4325, ptr %47, align 4, !tbaa !9
  %4326 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4326, ptr %48, align 4, !tbaa !9
  %4327 = load ptr, ptr %5, align 8, !tbaa !5
  %4328 = load i32, ptr %46, align 4, !tbaa !9
  %4329 = load i32, ptr %47, align 4, !tbaa !9
  %4330 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ANativeFunction0x3A0x3A_nativeCall0x28hermes0x3A0x3Avm0x3A0x3ANativeFunction0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %4327, i32 noundef %4328, i32 noundef %4329, i32 noundef %4330)
  br label %4356

4331:                                             ; preds = %4300
  %4332 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4332, ptr %46, align 4, !tbaa !9
  store i32 -16777216, ptr %47, align 4, !tbaa !9
  %4333 = load i32, ptr %47, align 4, !tbaa !9
  %4334 = load i32, ptr %46, align 4, !tbaa !9
  %4335 = and i32 %4334, %4333
  store i32 %4335, ptr %46, align 4, !tbaa !9
  store i32 1140850688, ptr %47, align 4, !tbaa !9
  %4336 = load i32, ptr %46, align 4, !tbaa !9
  %4337 = load i32, ptr %47, align 4, !tbaa !9
  %4338 = icmp ne i32 %4336, %4337
  %4339 = zext i1 %4338 to i32
  store i32 %4339, ptr %46, align 4, !tbaa !9
  %4340 = load i32, ptr %46, align 4, !tbaa !9
  %4341 = icmp ne i32 %4340, 0
  br i1 %4341, label %4342, label %4343

4342:                                             ; preds = %4331
  br label %41442

4343:                                             ; preds = %4331
  %4344 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4344, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %4345 = load i32, ptr %47, align 4, !tbaa !9
  %4346 = load i32, ptr %46, align 4, !tbaa !9
  %4347 = add i32 %4346, %4345
  store i32 %4347, ptr %46, align 4, !tbaa !9
  %4348 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4348, ptr %47, align 4, !tbaa !9
  %4349 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4349, ptr %48, align 4, !tbaa !9
  %4350 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4350, ptr %49, align 4, !tbaa !9
  %4351 = load ptr, ptr %5, align 8, !tbaa !5
  %4352 = load i32, ptr %46, align 4, !tbaa !9
  %4353 = load i32, ptr %47, align 4, !tbaa !9
  %4354 = load i32, ptr %48, align 4, !tbaa !9
  %4355 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABoundFunction0x3A0x3A_boundCall0x28hermes0x3A0x3Avm0x3A0x3ABoundFunction0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %4351, i32 noundef %4352, i32 noundef %4353, i32 noundef %4354, i32 noundef %4355)
  br label %4356

4356:                                             ; preds = %4343, %4320
  %4357 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4357, ptr %46, align 4, !tbaa !9
  %4358 = load ptr, ptr %5, align 8, !tbaa !5
  %4359 = getelementptr inbounds %struct.w2c_hermes, ptr %4358, i32 0, i32 6
  %4360 = load i32, ptr %46, align 4, !tbaa !9
  %4361 = zext i32 %4360 to i64
  %4362 = add i64 %4361, 312
  %4363 = call i64 @i64_load(ptr noundef %4359, i64 noundef %4362)
  store i64 %4363, ptr %55, align 8, !tbaa !11
  %4364 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %4364, ptr %40, align 8, !tbaa !11
  %4365 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4365, ptr %46, align 4, !tbaa !9
  %4366 = load ptr, ptr %5, align 8, !tbaa !5
  %4367 = getelementptr inbounds %struct.w2c_hermes, ptr %4366, i32 0, i32 6
  %4368 = load i32, ptr %46, align 4, !tbaa !9
  %4369 = zext i32 %4368 to i64
  %4370 = add i64 %4369, 304
  %4371 = call i32 @i32_load(ptr noundef %4367, i64 noundef %4370)
  store i32 %4371, ptr %46, align 4, !tbaa !9
  %4372 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4372, ptr %45, align 4, !tbaa !9
  br label %42966

4373:                                             ; preds = %2982
  %4374 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4374, ptr %46, align 4, !tbaa !9
  %4375 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4375, ptr %47, align 4, !tbaa !9
  %4376 = load ptr, ptr %5, align 8, !tbaa !5
  %4377 = getelementptr inbounds %struct.w2c_hermes, ptr %4376, i32 0, i32 6
  %4378 = load i32, ptr %46, align 4, !tbaa !9
  %4379 = zext i32 %4378 to i64
  %4380 = add i64 %4379, 5808
  %4381 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4377, i64 noundef %4380, i32 noundef %4381)
  %4382 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4382, ptr %46, align 4, !tbaa !9
  %4383 = load ptr, ptr %5, align 8, !tbaa !5
  %4384 = getelementptr inbounds %struct.w2c_hermes, ptr %4383, i32 0, i32 6
  %4385 = load i32, ptr %46, align 4, !tbaa !9
  %4386 = zext i32 %4385 to i64
  %4387 = call i32 @i32_load(ptr noundef %4384, i64 noundef %4386)
  store i32 %4387, ptr %46, align 4, !tbaa !9
  %4388 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4388, ptr %7, align 4, !tbaa !9
  %4389 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4389, ptr %46, align 4, !tbaa !9
  %4390 = load ptr, ptr %5, align 8, !tbaa !5
  %4391 = getelementptr inbounds %struct.w2c_hermes, ptr %4390, i32 0, i32 6
  %4392 = load i32, ptr %46, align 4, !tbaa !9
  %4393 = zext i32 %4392 to i64
  %4394 = call i32 @i32_load8_u(ptr noundef %4391, i64 noundef %4393)
  store i32 %4394, ptr %46, align 4, !tbaa !9
  store i32 82, ptr %47, align 4, !tbaa !9
  %4395 = load i32, ptr %46, align 4, !tbaa !9
  %4396 = load i32, ptr %47, align 4, !tbaa !9
  %4397 = icmp eq i32 %4395, %4396
  %4398 = zext i1 %4397 to i32
  store i32 %4398, ptr %46, align 4, !tbaa !9
  %4399 = load i32, ptr %46, align 4, !tbaa !9
  %4400 = icmp ne i32 %4399, 0
  br i1 %4400, label %4401, label %4438

4401:                                             ; preds = %4373
  %4402 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4402, ptr %46, align 4, !tbaa !9
  %4403 = load ptr, ptr %5, align 8, !tbaa !5
  %4404 = getelementptr inbounds %struct.w2c_hermes, ptr %4403, i32 0, i32 6
  %4405 = load i32, ptr %46, align 4, !tbaa !9
  %4406 = zext i32 %4405 to i64
  %4407 = add i64 %4406, 28
  %4408 = call i32 @i32_load(ptr noundef %4404, i64 noundef %4407)
  store i32 %4408, ptr %46, align 4, !tbaa !9
  %4409 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4409, ptr %47, align 4, !tbaa !9
  %4410 = load ptr, ptr %5, align 8, !tbaa !5
  %4411 = getelementptr inbounds %struct.w2c_hermes, ptr %4410, i32 0, i32 6
  %4412 = load i32, ptr %47, align 4, !tbaa !9
  %4413 = zext i32 %4412 to i64
  %4414 = add i64 %4413, 3
  %4415 = call i32 @i32_load16_u(ptr noundef %4411, i64 noundef %4414)
  store i32 %4415, ptr %47, align 4, !tbaa !9
  %4416 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %4416, ptr %6, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %4417 = load i32, ptr %48, align 4, !tbaa !9
  %4418 = and i32 %4417, 31
  %4419 = load i32, ptr %47, align 4, !tbaa !9
  %4420 = shl i32 %4419, %4418
  store i32 %4420, ptr %47, align 4, !tbaa !9
  %4421 = load i32, ptr %47, align 4, !tbaa !9
  %4422 = load i32, ptr %46, align 4, !tbaa !9
  %4423 = add i32 %4422, %4421
  store i32 %4423, ptr %46, align 4, !tbaa !9
  %4424 = load ptr, ptr %5, align 8, !tbaa !5
  %4425 = getelementptr inbounds %struct.w2c_hermes, ptr %4424, i32 0, i32 6
  %4426 = load i32, ptr %46, align 4, !tbaa !9
  %4427 = zext i32 %4426 to i64
  %4428 = call i32 @i32_load(ptr noundef %4425, i64 noundef %4427)
  store i32 %4428, ptr %46, align 4, !tbaa !9
  %4429 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4429, ptr %12, align 4, !tbaa !9
  %4430 = load i32, ptr %46, align 4, !tbaa !9
  %4431 = icmp ne i32 %4430, 0
  %4432 = xor i1 %4431, true
  %4433 = zext i1 %4432 to i32
  store i32 %4433, ptr %46, align 4, !tbaa !9
  %4434 = load i32, ptr %46, align 4, !tbaa !9
  %4435 = icmp ne i32 %4434, 0
  br i1 %4435, label %4436, label %4437

4436:                                             ; preds = %4401
  br label %4471

4437:                                             ; preds = %4401
  br label %4479

4438:                                             ; preds = %4373
  %4439 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4439, ptr %46, align 4, !tbaa !9
  %4440 = load ptr, ptr %5, align 8, !tbaa !5
  %4441 = getelementptr inbounds %struct.w2c_hermes, ptr %4440, i32 0, i32 6
  %4442 = load i32, ptr %46, align 4, !tbaa !9
  %4443 = zext i32 %4442 to i64
  %4444 = add i64 %4443, 28
  %4445 = call i32 @i32_load(ptr noundef %4441, i64 noundef %4444)
  store i32 %4445, ptr %46, align 4, !tbaa !9
  %4446 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4446, ptr %47, align 4, !tbaa !9
  %4447 = load ptr, ptr %5, align 8, !tbaa !5
  %4448 = getelementptr inbounds %struct.w2c_hermes, ptr %4447, i32 0, i32 6
  %4449 = load i32, ptr %47, align 4, !tbaa !9
  %4450 = zext i32 %4449 to i64
  %4451 = add i64 %4450, 3
  %4452 = call i32 @i32_load(ptr noundef %4448, i64 noundef %4451)
  store i32 %4452, ptr %47, align 4, !tbaa !9
  %4453 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %4453, ptr %6, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %4454 = load i32, ptr %48, align 4, !tbaa !9
  %4455 = and i32 %4454, 31
  %4456 = load i32, ptr %47, align 4, !tbaa !9
  %4457 = shl i32 %4456, %4455
  store i32 %4457, ptr %47, align 4, !tbaa !9
  %4458 = load i32, ptr %47, align 4, !tbaa !9
  %4459 = load i32, ptr %46, align 4, !tbaa !9
  %4460 = add i32 %4459, %4458
  store i32 %4460, ptr %46, align 4, !tbaa !9
  %4461 = load ptr, ptr %5, align 8, !tbaa !5
  %4462 = getelementptr inbounds %struct.w2c_hermes, ptr %4461, i32 0, i32 6
  %4463 = load i32, ptr %46, align 4, !tbaa !9
  %4464 = zext i32 %4463 to i64
  %4465 = call i32 @i32_load(ptr noundef %4462, i64 noundef %4464)
  store i32 %4465, ptr %46, align 4, !tbaa !9
  %4466 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4466, ptr %12, align 4, !tbaa !9
  %4467 = load i32, ptr %46, align 4, !tbaa !9
  %4468 = icmp ne i32 %4467, 0
  br i1 %4468, label %4469, label %4470

4469:                                             ; preds = %4438
  br label %4479

4470:                                             ; preds = %4438
  br label %4471

4471:                                             ; preds = %4470, %4436
  %4472 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4472, ptr %46, align 4, !tbaa !9
  %4473 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4473, ptr %47, align 4, !tbaa !9
  %4474 = load ptr, ptr %5, align 8, !tbaa !5
  %4475 = load i32, ptr %46, align 4, !tbaa !9
  %4476 = load i32, ptr %47, align 4, !tbaa !9
  %4477 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %4474, i32 noundef %4475, i32 noundef %4476)
  store i32 %4477, ptr %46, align 4, !tbaa !9
  %4478 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4478, ptr %12, align 4, !tbaa !9
  br label %4479

4479:                                             ; preds = %4471, %4469, %4437
  %4480 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4480, ptr %46, align 4, !tbaa !9
  %4481 = load ptr, ptr %5, align 8, !tbaa !5
  %4482 = getelementptr inbounds %struct.w2c_hermes, ptr %4481, i32 0, i32 6
  %4483 = load i32, ptr %46, align 4, !tbaa !9
  %4484 = zext i32 %4483 to i64
  %4485 = add i64 %4484, 5808
  %4486 = call i32 @i32_load(ptr noundef %4482, i64 noundef %4485)
  store i32 %4486, ptr %46, align 4, !tbaa !9
  %4487 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4487, ptr %6, align 4, !tbaa !9
  %4488 = load ptr, ptr %5, align 8, !tbaa !5
  %4489 = getelementptr inbounds %struct.w2c_hermes, ptr %4488, i32 0, i32 6
  %4490 = load i32, ptr %46, align 4, !tbaa !9
  %4491 = zext i32 %4490 to i64
  %4492 = add i64 %4491, 2
  %4493 = call i64 @i64_load8_u(ptr noundef %4489, i64 noundef %4492)
  store i64 %4493, ptr %55, align 8, !tbaa !11
  %4494 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %4494, ptr %39, align 8, !tbaa !11
  %4495 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4495, ptr %46, align 4, !tbaa !9
  %4496 = load ptr, ptr %5, align 8, !tbaa !5
  %4497 = getelementptr inbounds %struct.w2c_hermes, ptr %4496, i32 0, i32 6
  %4498 = load i32, ptr %46, align 4, !tbaa !9
  %4499 = zext i32 %4498 to i64
  %4500 = add i64 %4499, 5588
  %4501 = call i32 @i32_load(ptr noundef %4497, i64 noundef %4500)
  store i32 %4501, ptr %46, align 4, !tbaa !9
  %4502 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4502, ptr %7, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %4503 = load i32, ptr %47, align 4, !tbaa !9
  %4504 = load i32, ptr %46, align 4, !tbaa !9
  %4505 = sub i32 %4504, %4503
  store i32 %4505, ptr %46, align 4, !tbaa !9
  %4506 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4506, ptr %47, align 4, !tbaa !9
  %4507 = load i32, ptr %47, align 4, !tbaa !9
  %4508 = zext i32 %4507 to i64
  store i64 %4508, ptr %56, align 8, !tbaa !11
  %4509 = load ptr, ptr %5, align 8, !tbaa !5
  %4510 = getelementptr inbounds %struct.w2c_hermes, ptr %4509, i32 0, i32 6
  %4511 = load i32, ptr %46, align 4, !tbaa !9
  %4512 = zext i32 %4511 to i64
  %4513 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4510, i64 noundef %4512, i64 noundef %4513)
  %4514 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4514, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %4515 = load i32, ptr %47, align 4, !tbaa !9
  %4516 = load i32, ptr %46, align 4, !tbaa !9
  %4517 = sub i32 %4516, %4515
  store i32 %4517, ptr %46, align 4, !tbaa !9
  %4518 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4518, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %4519 = load i32, ptr %48, align 4, !tbaa !9
  %4520 = load i32, ptr %47, align 4, !tbaa !9
  %4521 = sub i32 %4520, %4519
  store i32 %4521, ptr %47, align 4, !tbaa !9
  %4522 = load i32, ptr %47, align 4, !tbaa !9
  %4523 = zext i32 %4522 to i64
  store i64 %4523, ptr %56, align 8, !tbaa !11
  %4524 = load ptr, ptr %5, align 8, !tbaa !5
  %4525 = getelementptr inbounds %struct.w2c_hermes, ptr %4524, i32 0, i32 6
  %4526 = load i32, ptr %46, align 4, !tbaa !9
  %4527 = zext i32 %4526 to i64
  %4528 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4525, i64 noundef %4527, i64 noundef %4528)
  %4529 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4529, ptr %46, align 4, !tbaa !9
  store i32 24, ptr %47, align 4, !tbaa !9
  %4530 = load i32, ptr %47, align 4, !tbaa !9
  %4531 = load i32, ptr %46, align 4, !tbaa !9
  %4532 = sub i32 %4531, %4530
  store i32 %4532, ptr %46, align 4, !tbaa !9
  %4533 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4533, ptr %47, align 4, !tbaa !9
  %4534 = load i32, ptr %47, align 4, !tbaa !9
  %4535 = zext i32 %4534 to i64
  store i64 %4535, ptr %56, align 8, !tbaa !11
  %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 %46, align 4, !tbaa !9
  %4539 = zext i32 %4538 to i64
  %4540 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4537, i64 noundef %4539, i64 noundef %4540)
  %4541 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4541, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %4542 = load i32, ptr %47, align 4, !tbaa !9
  %4543 = load i32, ptr %46, align 4, !tbaa !9
  %4544 = sub i32 %4543, %4542
  store i32 %4544, ptr %46, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %56, align 8, !tbaa !11
  %4545 = load ptr, ptr %5, align 8, !tbaa !5
  %4546 = getelementptr inbounds %struct.w2c_hermes, ptr %4545, i32 0, i32 6
  %4547 = load i32, ptr %46, align 4, !tbaa !9
  %4548 = zext i32 %4547 to i64
  %4549 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4546, i64 noundef %4548, i64 noundef %4549)
  %4550 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4550, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %4551 = load i32, ptr %47, align 4, !tbaa !9
  %4552 = load i32, ptr %46, align 4, !tbaa !9
  %4553 = sub i32 %4552, %4551
  store i32 %4553, ptr %46, align 4, !tbaa !9
  %4554 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4554, ptr %47, align 4, !tbaa !9
  %4555 = load i32, ptr %47, align 4, !tbaa !9
  %4556 = zext i32 %4555 to i64
  store i64 %4556, ptr %56, align 8, !tbaa !11
  %4557 = load ptr, ptr %5, align 8, !tbaa !5
  %4558 = getelementptr inbounds %struct.w2c_hermes, ptr %4557, i32 0, i32 6
  %4559 = load i32, ptr %46, align 4, !tbaa !9
  %4560 = zext i32 %4559 to i64
  %4561 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4558, i64 noundef %4560, i64 noundef %4561)
  %4562 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4562, ptr %46, align 4, !tbaa !9
  store i32 32, ptr %47, align 4, !tbaa !9
  %4563 = load i32, ptr %47, align 4, !tbaa !9
  %4564 = load i32, ptr %46, align 4, !tbaa !9
  %4565 = sub i32 %4564, %4563
  store i32 %4565, ptr %46, align 4, !tbaa !9
  %4566 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %4566, ptr %56, align 8, !tbaa !11
  store i64 1, ptr %57, align 8, !tbaa !11
  %4567 = load i64, ptr %57, align 8, !tbaa !11
  %4568 = load i64, ptr %56, align 8, !tbaa !11
  %4569 = sub i64 %4568, %4567
  store i64 %4569, ptr %56, align 8, !tbaa !11
  store i64 4294967295, ptr %57, align 8, !tbaa !11
  %4570 = load i64, ptr %57, align 8, !tbaa !11
  %4571 = load i64, ptr %56, align 8, !tbaa !11
  %4572 = and i64 %4571, %4570
  store i64 %4572, ptr %56, align 8, !tbaa !11
  store i64 -1125899906842624, ptr %57, align 8, !tbaa !11
  %4573 = load i64, ptr %57, align 8, !tbaa !11
  %4574 = load i64, ptr %56, align 8, !tbaa !11
  %4575 = or i64 %4574, %4573
  store i64 %4575, ptr %56, align 8, !tbaa !11
  %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 %46, align 4, !tbaa !9
  %4579 = zext i32 %4578 to i64
  %4580 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4577, i64 noundef %4579, i64 noundef %4580)
  %4581 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4581, ptr %46, align 4, !tbaa !9
  %4582 = load ptr, ptr %5, align 8, !tbaa !5
  %4583 = getelementptr inbounds %struct.w2c_hermes, ptr %4582, i32 0, i32 6
  %4584 = load i32, ptr %46, align 4, !tbaa !9
  %4585 = zext i32 %4584 to i64
  %4586 = add i64 %4585, 8
  %4587 = call i32 @i32_load(ptr noundef %4583, i64 noundef %4586)
  store i32 %4587, ptr %46, align 4, !tbaa !9
  %4588 = load i32, ptr %46, align 4, !tbaa !9
  %4589 = icmp ne i32 %4588, 0
  br i1 %4589, label %4590, label %4591

4590:                                             ; preds = %4479
  br label %394

4591:                                             ; preds = %4479
  %4592 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %4592, ptr %46, align 4, !tbaa !9
  %4593 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4593, ptr %47, align 4, !tbaa !9
  %4594 = load ptr, ptr %5, align 8, !tbaa !5
  %4595 = load i32, ptr %46, align 4, !tbaa !9
  %4596 = load i32, ptr %47, align 4, !tbaa !9
  %4597 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %4594, i32 noundef %4595, i32 noundef %4596)
  store i32 %4597, ptr %46, align 4, !tbaa !9
  %4598 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4598, ptr %7, align 4, !tbaa !9
  %4599 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4599, ptr %46, align 4, !tbaa !9
  %4600 = load ptr, ptr %5, align 8, !tbaa !5
  %4601 = getelementptr inbounds %struct.w2c_hermes, ptr %4600, i32 0, i32 6
  %4602 = load i32, ptr %46, align 4, !tbaa !9
  %4603 = zext i32 %4602 to i64
  %4604 = add i64 %4603, 5808
  %4605 = call i32 @i32_load(ptr noundef %4601, i64 noundef %4604)
  store i32 %4605, ptr %46, align 4, !tbaa !9
  %4606 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4606, ptr %6, align 4, !tbaa !9
  %4607 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4607, ptr %46, align 4, !tbaa !9
  %4608 = load i32, ptr %46, align 4, !tbaa !9
  %4609 = icmp ne i32 %4608, 0
  br i1 %4609, label %4610, label %4611

4610:                                             ; preds = %4591
  br label %394

4611:                                             ; preds = %4591
  br label %43136

4612:                                             ; preds = %2983
  %4613 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4613, ptr %46, align 4, !tbaa !9
  %4614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4614, ptr %47, 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 %47, align 4, !tbaa !9
  %4618 = zext i32 %4617 to i64
  %4619 = add i64 %4618, 1
  %4620 = call i32 @i32_load8_u(ptr noundef %4616, i64 noundef %4619)
  store i32 %4620, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %4621 = load i32, ptr %48, align 4, !tbaa !9
  %4622 = and i32 %4621, 31
  %4623 = load i32, ptr %47, align 4, !tbaa !9
  %4624 = shl i32 %4623, %4622
  store i32 %4624, ptr %47, align 4, !tbaa !9
  %4625 = load i32, ptr %47, align 4, !tbaa !9
  %4626 = load i32, ptr %46, align 4, !tbaa !9
  %4627 = add i32 %4626, %4625
  store i32 %4627, ptr %46, align 4, !tbaa !9
  %4628 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4628, ptr %47, align 4, !tbaa !9
  %4629 = load ptr, ptr %5, align 8, !tbaa !5
  %4630 = getelementptr inbounds %struct.w2c_hermes, ptr %4629, i32 0, i32 6
  %4631 = load i32, ptr %47, align 4, !tbaa !9
  %4632 = zext i32 %4631 to i64
  %4633 = add i64 %4632, 5712
  %4634 = call i32 @i32_load(ptr noundef %4630, i64 noundef %4633)
  store i32 %4634, ptr %47, align 4, !tbaa !9
  %4635 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4635, ptr %48, align 4, !tbaa !9
  %4636 = load ptr, ptr %5, align 8, !tbaa !5
  %4637 = getelementptr inbounds %struct.w2c_hermes, ptr %4636, i32 0, i32 6
  %4638 = load i32, ptr %48, align 4, !tbaa !9
  %4639 = zext i32 %4638 to i64
  %4640 = add i64 %4639, 2
  %4641 = call i32 @i32_load8_u(ptr noundef %4637, i64 noundef %4640)
  store i32 %4641, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %4642 = load i32, ptr %49, align 4, !tbaa !9
  %4643 = and i32 %4642, 31
  %4644 = load i32, ptr %48, align 4, !tbaa !9
  %4645 = shl i32 %4644, %4643
  store i32 %4645, ptr %48, align 4, !tbaa !9
  %4646 = load i32, ptr %48, align 4, !tbaa !9
  %4647 = load i32, ptr %47, align 4, !tbaa !9
  %4648 = add i32 %4647, %4646
  store i32 %4648, ptr %47, align 4, !tbaa !9
  %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 %47, align 4, !tbaa !9
  %4652 = zext i32 %4651 to i64
  %4653 = call i64 @i64_load32_u(ptr noundef %4650, i64 noundef %4652)
  store i64 %4653, ptr %56, align 8, !tbaa !11
  store i64 -281474976710656, ptr %57, align 8, !tbaa !11
  %4654 = load i64, ptr %57, align 8, !tbaa !11
  %4655 = load i64, ptr %56, align 8, !tbaa !11
  %4656 = or i64 %4655, %4654
  store i64 %4656, ptr %56, align 8, !tbaa !11
  %4657 = load ptr, ptr %5, align 8, !tbaa !5
  %4658 = getelementptr inbounds %struct.w2c_hermes, ptr %4657, i32 0, i32 6
  %4659 = load i32, ptr %46, align 4, !tbaa !9
  %4660 = zext i32 %4659 to i64
  %4661 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %4658, i64 noundef %4660, i64 noundef %4661)
  %4662 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4662, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %4663 = load i32, ptr %47, align 4, !tbaa !9
  %4664 = load i32, ptr %46, align 4, !tbaa !9
  %4665 = add i32 %4664, %4663
  store i32 %4665, ptr %46, align 4, !tbaa !9
  %4666 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4666, ptr %6, align 4, !tbaa !9
  br label %2945

4667:                                             ; preds = %2984
  %4668 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4668, ptr %46, align 4, !tbaa !9
  %4669 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4669, ptr %47, align 4, !tbaa !9
  %4670 = load ptr, ptr %5, align 8, !tbaa !5
  %4671 = getelementptr inbounds %struct.w2c_hermes, ptr %4670, i32 0, i32 6
  %4672 = load i32, ptr %46, align 4, !tbaa !9
  %4673 = zext i32 %4672 to i64
  %4674 = add i64 %4673, 5808
  %4675 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4671, i64 noundef %4674, i32 noundef %4675)
  %4676 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4676, ptr %46, align 4, !tbaa !9
  %4677 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4677, ptr %47, align 4, !tbaa !9
  %4678 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4678, ptr %48, align 4, !tbaa !9
  %4679 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4679, ptr %49, align 4, !tbaa !9
  %4680 = load ptr, ptr %5, align 8, !tbaa !5
  %4681 = getelementptr inbounds %struct.w2c_hermes, ptr %4680, i32 0, i32 6
  %4682 = load i32, ptr %49, align 4, !tbaa !9
  %4683 = zext i32 %4682 to i64
  %4684 = add i64 %4683, 3
  %4685 = call i32 @i32_load8_u(ptr noundef %4681, i64 noundef %4684)
  store i32 %4685, ptr %49, align 4, !tbaa !9
  %4686 = load ptr, ptr %5, align 8, !tbaa !5
  %4687 = load i32, ptr %46, align 4, !tbaa !9
  %4688 = load i32, ptr %47, align 4, !tbaa !9
  %4689 = load i32, ptr %48, align 4, !tbaa !9
  %4690 = load i32, ptr %49, align 4, !tbaa !9
  %4691 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AimplCallBuiltin0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x29(ptr noundef %4686, i32 noundef %4687, i32 noundef %4688, i32 noundef %4689, i32 noundef %4690)
  store i32 %4691, ptr %46, align 4, !tbaa !9
  %4692 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4692, ptr %7, align 4, !tbaa !9
  %4693 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4693, ptr %46, align 4, !tbaa !9
  %4694 = load ptr, ptr %5, align 8, !tbaa !5
  %4695 = getelementptr inbounds %struct.w2c_hermes, ptr %4694, i32 0, i32 6
  %4696 = load i32, ptr %46, align 4, !tbaa !9
  %4697 = zext i32 %4696 to i64
  %4698 = add i64 %4697, 5808
  %4699 = call i32 @i32_load(ptr noundef %4695, i64 noundef %4698)
  store i32 %4699, ptr %46, align 4, !tbaa !9
  %4700 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4700, ptr %6, align 4, !tbaa !9
  %4701 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4701, ptr %46, align 4, !tbaa !9
  %4702 = load i32, ptr %46, align 4, !tbaa !9
  %4703 = icmp ne i32 %4702, 0
  %4704 = xor i1 %4703, true
  %4705 = zext i1 %4704 to i32
  store i32 %4705, ptr %46, align 4, !tbaa !9
  %4706 = load i32, ptr %46, align 4, !tbaa !9
  %4707 = icmp ne i32 %4706, 0
  br i1 %4707, label %4708, label %4709

4708:                                             ; preds = %4667
  br label %43136

4709:                                             ; preds = %4667
  %4710 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4710, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  %4711 = load ptr, ptr %5, align 8, !tbaa !5
  %4712 = getelementptr inbounds %struct.w2c_hermes, ptr %4711, i32 0, i32 6
  %4713 = load i32, ptr %46, align 4, !tbaa !9
  %4714 = zext i32 %4713 to i64
  %4715 = add i64 %4714, 516
  %4716 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4712, i64 noundef %4715, i32 noundef %4716)
  %4717 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4717, ptr %46, align 4, !tbaa !9
  %4718 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4718, ptr %47, align 4, !tbaa !9
  %4719 = load ptr, ptr %5, align 8, !tbaa !5
  %4720 = getelementptr inbounds %struct.w2c_hermes, ptr %4719, i32 0, i32 6
  %4721 = load i32, ptr %46, align 4, !tbaa !9
  %4722 = zext i32 %4721 to i64
  %4723 = add i64 %4722, 512
  %4724 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4720, i64 noundef %4723, i32 noundef %4724)
  %4725 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4725, ptr %46, align 4, !tbaa !9
  %4726 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %4726, ptr %47, align 4, !tbaa !9
  %4727 = load ptr, ptr %5, align 8, !tbaa !5
  %4728 = getelementptr inbounds %struct.w2c_hermes, ptr %4727, i32 0, i32 6
  %4729 = load i32, ptr %46, align 4, !tbaa !9
  %4730 = zext i32 %4729 to i64
  %4731 = add i64 %4730, 508
  %4732 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4728, i64 noundef %4731, i32 noundef %4732)
  %4733 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4733, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %4734 = load i32, ptr %47, align 4, !tbaa !9
  %4735 = load i32, ptr %46, align 4, !tbaa !9
  %4736 = add i32 %4735, %4734
  store i32 %4736, ptr %46, align 4, !tbaa !9
  %4737 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4737, ptr %6, align 4, !tbaa !9
  br label %2945

4738:                                             ; preds = %2985
  %4739 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4739, ptr %46, align 4, !tbaa !9
  %4740 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4740, ptr %47, align 4, !tbaa !9
  %4741 = load ptr, ptr %5, align 8, !tbaa !5
  %4742 = getelementptr inbounds %struct.w2c_hermes, ptr %4741, i32 0, i32 6
  %4743 = load i32, ptr %46, align 4, !tbaa !9
  %4744 = zext i32 %4743 to i64
  %4745 = add i64 %4744, 5808
  %4746 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4742, i64 noundef %4745, i32 noundef %4746)
  %4747 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4747, ptr %46, align 4, !tbaa !9
  %4748 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4748, ptr %47, align 4, !tbaa !9
  %4749 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %4749, ptr %48, align 4, !tbaa !9
  %4750 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4750, ptr %49, align 4, !tbaa !9
  %4751 = load ptr, ptr %5, align 8, !tbaa !5
  %4752 = getelementptr inbounds %struct.w2c_hermes, ptr %4751, i32 0, i32 6
  %4753 = load i32, ptr %49, align 4, !tbaa !9
  %4754 = zext i32 %4753 to i64
  %4755 = add i64 %4754, 3
  %4756 = call i32 @i32_load(ptr noundef %4752, i64 noundef %4755)
  store i32 %4756, ptr %49, align 4, !tbaa !9
  %4757 = load ptr, ptr %5, align 8, !tbaa !5
  %4758 = load i32, ptr %46, align 4, !tbaa !9
  %4759 = load i32, ptr %47, align 4, !tbaa !9
  %4760 = load i32, ptr %48, align 4, !tbaa !9
  %4761 = load i32, ptr %49, align 4, !tbaa !9
  %4762 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AimplCallBuiltin0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x29(ptr noundef %4757, i32 noundef %4758, i32 noundef %4759, i32 noundef %4760, i32 noundef %4761)
  store i32 %4762, ptr %46, align 4, !tbaa !9
  %4763 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4763, ptr %7, align 4, !tbaa !9
  %4764 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4764, ptr %46, align 4, !tbaa !9
  %4765 = load ptr, ptr %5, align 8, !tbaa !5
  %4766 = getelementptr inbounds %struct.w2c_hermes, ptr %4765, i32 0, i32 6
  %4767 = load i32, ptr %46, align 4, !tbaa !9
  %4768 = zext i32 %4767 to i64
  %4769 = add i64 %4768, 5808
  %4770 = call i32 @i32_load(ptr noundef %4766, i64 noundef %4769)
  store i32 %4770, ptr %46, align 4, !tbaa !9
  %4771 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4771, ptr %6, align 4, !tbaa !9
  %4772 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4772, ptr %46, align 4, !tbaa !9
  %4773 = load i32, ptr %46, align 4, !tbaa !9
  %4774 = icmp ne i32 %4773, 0
  %4775 = xor i1 %4774, true
  %4776 = zext i1 %4775 to i32
  store i32 %4776, ptr %46, align 4, !tbaa !9
  %4777 = load i32, ptr %46, align 4, !tbaa !9
  %4778 = icmp ne i32 %4777, 0
  br i1 %4778, label %4779, label %4780

4779:                                             ; preds = %4738
  br label %43136

4780:                                             ; preds = %4738
  %4781 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4781, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  %4782 = load ptr, ptr %5, align 8, !tbaa !5
  %4783 = getelementptr inbounds %struct.w2c_hermes, ptr %4782, i32 0, i32 6
  %4784 = load i32, ptr %46, align 4, !tbaa !9
  %4785 = zext i32 %4784 to i64
  %4786 = add i64 %4785, 516
  %4787 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4783, i64 noundef %4786, i32 noundef %4787)
  %4788 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4788, ptr %46, align 4, !tbaa !9
  %4789 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4789, ptr %47, align 4, !tbaa !9
  %4790 = load ptr, ptr %5, align 8, !tbaa !5
  %4791 = getelementptr inbounds %struct.w2c_hermes, ptr %4790, i32 0, i32 6
  %4792 = load i32, ptr %46, align 4, !tbaa !9
  %4793 = zext i32 %4792 to i64
  %4794 = add i64 %4793, 512
  %4795 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4791, i64 noundef %4794, i32 noundef %4795)
  %4796 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %4796, ptr %46, align 4, !tbaa !9
  %4797 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %4797, ptr %47, align 4, !tbaa !9
  %4798 = load ptr, ptr %5, align 8, !tbaa !5
  %4799 = getelementptr inbounds %struct.w2c_hermes, ptr %4798, i32 0, i32 6
  %4800 = load i32, ptr %46, align 4, !tbaa !9
  %4801 = zext i32 %4800 to i64
  %4802 = add i64 %4801, 508
  %4803 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4799, i64 noundef %4802, i32 noundef %4803)
  %4804 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4804, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %4805 = load i32, ptr %47, align 4, !tbaa !9
  %4806 = load i32, ptr %46, align 4, !tbaa !9
  %4807 = add i32 %4806, %4805
  store i32 %4807, ptr %46, align 4, !tbaa !9
  %4808 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4808, ptr %6, align 4, !tbaa !9
  br label %2945

4809:                                             ; preds = %2986
  %4810 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4810, ptr %46, align 4, !tbaa !9
  %4811 = load ptr, ptr %5, align 8, !tbaa !5
  %4812 = getelementptr inbounds %struct.w2c_hermes, ptr %4811, i32 0, i32 6
  %4813 = load i32, ptr %46, align 4, !tbaa !9
  %4814 = zext i32 %4813 to i64
  %4815 = add i64 %4814, 5600
  %4816 = call i32 @i32_load(ptr noundef %4812, i64 noundef %4815)
  store i32 %4816, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %4817 = load i32, ptr %47, align 4, !tbaa !9
  %4818 = load i32, ptr %46, align 4, !tbaa !9
  %4819 = sub i32 %4818, %4817
  store i32 %4819, ptr %46, align 4, !tbaa !9
  %4820 = load ptr, ptr %5, align 8, !tbaa !5
  %4821 = getelementptr inbounds %struct.w2c_hermes, ptr %4820, i32 0, i32 6
  %4822 = load i32, ptr %46, align 4, !tbaa !9
  %4823 = zext i32 %4822 to i64
  %4824 = call i32 @i32_load(ptr noundef %4821, i64 noundef %4823)
  store i32 %4824, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %4825 = load ptr, ptr %5, align 8, !tbaa !5
  %4826 = getelementptr inbounds %struct.w2c_hermes, ptr %4825, i32 0, i32 6
  %4827 = load i32, ptr %46, align 4, !tbaa !9
  %4828 = zext i32 %4827 to i64
  %4829 = add i64 %4828, 32
  %4830 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4826, i64 noundef %4829, i32 noundef %4830)
  %4831 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4831, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %4832 = load i32, ptr %47, align 4, !tbaa !9
  %4833 = load i32, ptr %46, align 4, !tbaa !9
  %4834 = add i32 %4833, %4832
  store i32 %4834, ptr %46, align 4, !tbaa !9
  %4835 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4835, ptr %6, align 4, !tbaa !9
  br label %2945

4836:                                             ; preds = %2987
  %4837 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4837, ptr %46, align 4, !tbaa !9
  %4838 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4838, ptr %47, align 4, !tbaa !9
  %4839 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4839, ptr %48, align 4, !tbaa !9
  %4840 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4840, ptr %49, align 4, !tbaa !9
  %4841 = load ptr, ptr %5, align 8, !tbaa !5
  %4842 = getelementptr inbounds %struct.w2c_hermes, ptr %4841, i32 0, i32 6
  %4843 = load i32, ptr %49, align 4, !tbaa !9
  %4844 = zext i32 %4843 to i64
  %4845 = add i64 %4844, 1
  %4846 = call i32 @i32_load8_s(ptr noundef %4842, i64 noundef %4845)
  store i32 %4846, ptr %49, align 4, !tbaa !9
  %4847 = load i32, ptr %49, align 4, !tbaa !9
  %4848 = load i32, ptr %48, align 4, !tbaa !9
  %4849 = add i32 %4848, %4847
  store i32 %4849, ptr %48, align 4, !tbaa !9
  %4850 = load ptr, ptr %5, align 8, !tbaa !5
  %4851 = load i32, ptr %46, align 4, !tbaa !9
  %4852 = load i32, ptr %47, align 4, !tbaa !9
  %4853 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AsaveGenerator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %4850, i32 noundef %4851, i32 noundef %4852, i32 noundef %4853)
  %4854 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4854, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %4855 = load i32, ptr %47, align 4, !tbaa !9
  %4856 = load i32, ptr %46, align 4, !tbaa !9
  %4857 = add i32 %4856, %4855
  store i32 %4857, ptr %46, align 4, !tbaa !9
  %4858 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4858, ptr %6, align 4, !tbaa !9
  br label %2945

4859:                                             ; preds = %2988
  %4860 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4860, ptr %46, align 4, !tbaa !9
  %4861 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %4861, ptr %47, align 4, !tbaa !9
  %4862 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4862, ptr %48, align 4, !tbaa !9
  %4863 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4863, ptr %49, align 4, !tbaa !9
  %4864 = load ptr, ptr %5, align 8, !tbaa !5
  %4865 = getelementptr inbounds %struct.w2c_hermes, ptr %4864, i32 0, i32 6
  %4866 = load i32, ptr %49, align 4, !tbaa !9
  %4867 = zext i32 %4866 to i64
  %4868 = add i64 %4867, 1
  %4869 = call i32 @i32_load(ptr noundef %4865, i64 noundef %4868)
  store i32 %4869, ptr %49, align 4, !tbaa !9
  %4870 = load i32, ptr %49, align 4, !tbaa !9
  %4871 = load i32, ptr %48, align 4, !tbaa !9
  %4872 = add i32 %4871, %4870
  store i32 %4872, ptr %48, align 4, !tbaa !9
  %4873 = load ptr, ptr %5, align 8, !tbaa !5
  %4874 = load i32, ptr %46, align 4, !tbaa !9
  %4875 = load i32, ptr %47, align 4, !tbaa !9
  %4876 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AsaveGenerator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %4873, i32 noundef %4874, i32 noundef %4875, i32 noundef %4876)
  %4877 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4877, ptr %46, align 4, !tbaa !9
  store i32 5, ptr %47, align 4, !tbaa !9
  %4878 = load i32, ptr %47, align 4, !tbaa !9
  %4879 = load i32, ptr %46, align 4, !tbaa !9
  %4880 = add i32 %4879, %4878
  store i32 %4880, ptr %46, align 4, !tbaa !9
  %4881 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4881, ptr %6, align 4, !tbaa !9
  br label %2945

4882:                                             ; preds = %2989
  %4883 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4883, ptr %46, align 4, !tbaa !9
  %4884 = load ptr, ptr %5, align 8, !tbaa !5
  %4885 = getelementptr inbounds %struct.w2c_hermes, ptr %4884, i32 0, i32 6
  %4886 = load i32, ptr %46, align 4, !tbaa !9
  %4887 = zext i32 %4886 to i64
  %4888 = add i64 %4887, 5600
  %4889 = call i32 @i32_load(ptr noundef %4885, i64 noundef %4888)
  store i32 %4889, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %4890 = load i32, ptr %47, align 4, !tbaa !9
  %4891 = load i32, ptr %46, align 4, !tbaa !9
  %4892 = sub i32 %4891, %4890
  store i32 %4892, ptr %46, align 4, !tbaa !9
  %4893 = load ptr, ptr %5, align 8, !tbaa !5
  %4894 = getelementptr inbounds %struct.w2c_hermes, ptr %4893, i32 0, i32 6
  %4895 = load i32, ptr %46, align 4, !tbaa !9
  %4896 = zext i32 %4895 to i64
  %4897 = call i32 @i32_load(ptr noundef %4894, i64 noundef %4896)
  store i32 %4897, ptr %46, align 4, !tbaa !9
  %4898 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4898, ptr %14, align 4, !tbaa !9
  %4899 = load ptr, ptr %5, align 8, !tbaa !5
  %4900 = getelementptr inbounds %struct.w2c_hermes, ptr %4899, i32 0, i32 6
  %4901 = load i32, ptr %46, align 4, !tbaa !9
  %4902 = zext i32 %4901 to i64
  %4903 = add i64 %4902, 32
  %4904 = call i32 @i32_load(ptr noundef %4900, i64 noundef %4903)
  store i32 %4904, ptr %46, align 4, !tbaa !9
  %4905 = load i32, ptr %46, align 4, !tbaa !9
  %4906 = icmp ne i32 %4905, 0
  br i1 %4906, label %4907, label %5006

4907:                                             ; preds = %4882
  %4908 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4908, ptr %46, 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 %46, align 4, !tbaa !9
  %4912 = zext i32 %4911 to i64
  %4913 = add i64 %4912, 1276
  %4914 = call i32 @i32_load(ptr noundef %4910, i64 noundef %4913)
  store i32 %4914, ptr %46, align 4, !tbaa !9
  %4915 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4915, ptr %47, align 4, !tbaa !9
  %4916 = load ptr, ptr %5, align 8, !tbaa !5
  %4917 = getelementptr inbounds %struct.w2c_hermes, ptr %4916, i32 0, i32 6
  %4918 = load i32, ptr %47, align 4, !tbaa !9
  %4919 = zext i32 %4918 to i64
  %4920 = add i64 %4919, 24
  %4921 = call i32 @i32_load(ptr noundef %4917, i64 noundef %4920)
  store i32 %4921, ptr %47, align 4, !tbaa !9
  %4922 = load i32, ptr %47, align 4, !tbaa !9
  %4923 = load i32, ptr %46, align 4, !tbaa !9
  %4924 = xor i32 %4923, %4922
  store i32 %4924, ptr %46, align 4, !tbaa !9
  %4925 = load ptr, ptr %5, align 8, !tbaa !5
  %4926 = getelementptr inbounds %struct.w2c_hermes, ptr %4925, i32 0, i32 6
  %4927 = load i32, ptr %46, align 4, !tbaa !9
  %4928 = zext i32 %4927 to i64
  %4929 = add i64 %4928, 8
  %4930 = call i32 @i32_load(ptr noundef %4926, i64 noundef %4929)
  store i32 %4930, ptr %46, align 4, !tbaa !9
  %4931 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4931, ptr %13, align 4, !tbaa !9
  %4932 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4932, ptr %46, align 4, !tbaa !9
  %4933 = load ptr, ptr %5, align 8, !tbaa !5
  %4934 = getelementptr inbounds %struct.w2c_hermes, ptr %4933, i32 0, i32 6
  %4935 = load i32, ptr %46, align 4, !tbaa !9
  %4936 = zext i32 %4935 to i64
  %4937 = add i64 %4936, 48
  %4938 = call i32 @i32_load(ptr noundef %4934, i64 noundef %4937)
  store i32 %4938, ptr %46, align 4, !tbaa !9
  %4939 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %4939, ptr %12, align 4, !tbaa !9
  %4940 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4940, ptr %46, align 4, !tbaa !9
  %4941 = load ptr, ptr %5, align 8, !tbaa !5
  %4942 = getelementptr inbounds %struct.w2c_hermes, ptr %4941, i32 0, i32 6
  %4943 = load i32, ptr %46, align 4, !tbaa !9
  %4944 = zext i32 %4943 to i64
  %4945 = add i64 %4944, 5600
  %4946 = call i32 @i32_load(ptr noundef %4942, i64 noundef %4945)
  store i32 %4946, ptr %46, align 4, !tbaa !9
  %4947 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4947, ptr %47, align 4, !tbaa !9
  %4948 = load ptr, ptr %5, align 8, !tbaa !5
  %4949 = getelementptr inbounds %struct.w2c_hermes, ptr %4948, i32 0, i32 6
  %4950 = load i32, ptr %47, align 4, !tbaa !9
  %4951 = zext i32 %4950 to i64
  %4952 = add i64 %4951, 40
  %4953 = call i32 @i32_load(ptr noundef %4949, i64 noundef %4952)
  store i32 %4953, ptr %47, align 4, !tbaa !9
  %4954 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %4954, ptr %8, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %4955 = load i32, ptr %48, align 4, !tbaa !9
  %4956 = load i32, ptr %47, align 4, !tbaa !9
  %4957 = add i32 %4956, %4955
  store i32 %4957, ptr %47, align 4, !tbaa !9
  %4958 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %4958, ptr %7, align 4, !tbaa !9
  %4959 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %4959, ptr %48, align 4, !tbaa !9
  %4960 = load ptr, ptr %5, align 8, !tbaa !5
  %4961 = getelementptr inbounds %struct.w2c_hermes, ptr %4960, i32 0, i32 6
  %4962 = load i32, ptr %48, align 4, !tbaa !9
  %4963 = zext i32 %4962 to i64
  %4964 = add i64 %4963, 36
  %4965 = call i32 @i32_load(ptr noundef %4961, i64 noundef %4964)
  store i32 %4965, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %4966 = load i32, ptr %49, align 4, !tbaa !9
  %4967 = and i32 %4966, 31
  %4968 = load i32, ptr %48, align 4, !tbaa !9
  %4969 = shl i32 %4968, %4967
  store i32 %4969, ptr %48, align 4, !tbaa !9
  %4970 = load i32, ptr %48, align 4, !tbaa !9
  %4971 = load i32, ptr %47, align 4, !tbaa !9
  %4972 = add i32 %4971, %4970
  store i32 %4972, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %4973 = load i32, ptr %48, align 4, !tbaa !9
  %4974 = load i32, ptr %47, align 4, !tbaa !9
  %4975 = add i32 %4974, %4973
  store i32 %4975, ptr %47, align 4, !tbaa !9
  %4976 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %4976, ptr %6, align 4, !tbaa !9
  %4977 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %4977, ptr %48, align 4, !tbaa !9
  %4978 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %4978, ptr %49, align 4, !tbaa !9
  %4979 = load ptr, ptr %5, align 8, !tbaa !5
  %4980 = getelementptr inbounds %struct.w2c_hermes, ptr %4979, i32 0, i32 6
  %4981 = load i32, ptr %49, align 4, !tbaa !9
  %4982 = zext i32 %4981 to i64
  %4983 = add i64 %4982, 4
  %4984 = call i32 @i32_load(ptr noundef %4980, i64 noundef %4983)
  store i32 %4984, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %4985 = load i32, ptr %50, align 4, !tbaa !9
  %4986 = and i32 %4985, 31
  %4987 = load i32, ptr %49, align 4, !tbaa !9
  %4988 = shl i32 %4987, %4986
  store i32 %4988, ptr %49, align 4, !tbaa !9
  %4989 = load i32, ptr %49, align 4, !tbaa !9
  %4990 = load i32, ptr %48, align 4, !tbaa !9
  %4991 = add i32 %4990, %4989
  store i32 %4991, ptr %48, align 4, !tbaa !9
  %4992 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %4992, ptr %49, align 4, !tbaa !9
  %4993 = load i32, ptr %49, align 4, !tbaa !9
  %4994 = load i32, ptr %48, align 4, !tbaa !9
  %4995 = sub i32 %4994, %4993
  store i32 %4995, ptr %48, align 4, !tbaa !9
  %4996 = load ptr, ptr %5, align 8, !tbaa !5
  %4997 = load i32, ptr %46, align 4, !tbaa !9
  %4998 = load i32, ptr %47, align 4, !tbaa !9
  %4999 = load i32, ptr %48, align 4, !tbaa !9
  %5000 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %4996, i32 noundef %4997, i32 noundef %4998, i32 noundef %4999)
  store i32 %5000, ptr %46, align 4, !tbaa !9
  %5001 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5001, ptr %46, align 4, !tbaa !9
  %5002 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5002, ptr %47, align 4, !tbaa !9
  %5003 = load i32, ptr %47, align 4, !tbaa !9
  %5004 = load i32, ptr %46, align 4, !tbaa !9
  %5005 = add i32 %5004, %5003
  store i32 %5005, ptr %46, align 4, !tbaa !9
  br label %5011

5006:                                             ; preds = %4882
  %5007 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5007, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %5008 = load i32, ptr %47, align 4, !tbaa !9
  %5009 = load i32, ptr %46, align 4, !tbaa !9
  %5010 = add i32 %5009, %5008
  store i32 %5010, ptr %46, align 4, !tbaa !9
  br label %5011

5011:                                             ; preds = %5006, %4907
  %5012 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5012, ptr %6, align 4, !tbaa !9
  %5013 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5013, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %5014 = load ptr, ptr %5, align 8, !tbaa !5
  %5015 = getelementptr inbounds %struct.w2c_hermes, ptr %5014, i32 0, i32 6
  %5016 = load i32, ptr %46, align 4, !tbaa !9
  %5017 = zext i32 %5016 to i64
  %5018 = add i64 %5017, 32
  %5019 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5015, i64 noundef %5018, i32 noundef %5019)
  br label %2945

5020:                                             ; preds = %2990
  %5021 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5021, ptr %46, align 4, !tbaa !9
  %5022 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5022, ptr %47, align 4, !tbaa !9
  %5023 = load ptr, ptr %5, align 8, !tbaa !5
  %5024 = getelementptr inbounds %struct.w2c_hermes, ptr %5023, i32 0, i32 6
  %5025 = load i32, ptr %47, align 4, !tbaa !9
  %5026 = zext i32 %5025 to i64
  %5027 = add i64 %5026, 2
  %5028 = call i32 @i32_load8_u(ptr noundef %5024, i64 noundef %5027)
  store i32 %5028, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5029 = load i32, ptr %48, align 4, !tbaa !9
  %5030 = and i32 %5029, 31
  %5031 = load i32, ptr %47, align 4, !tbaa !9
  %5032 = shl i32 %5031, %5030
  store i32 %5032, ptr %47, align 4, !tbaa !9
  %5033 = load i32, ptr %47, align 4, !tbaa !9
  %5034 = load i32, ptr %46, align 4, !tbaa !9
  %5035 = add i32 %5034, %5033
  store i32 %5035, ptr %46, align 4, !tbaa !9
  %5036 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5036, ptr %47, align 4, !tbaa !9
  %5037 = load ptr, ptr %5, align 8, !tbaa !5
  %5038 = getelementptr inbounds %struct.w2c_hermes, ptr %5037, i32 0, i32 6
  %5039 = load i32, ptr %47, align 4, !tbaa !9
  %5040 = zext i32 %5039 to i64
  %5041 = add i64 %5040, 5600
  %5042 = call i32 @i32_load(ptr noundef %5038, i64 noundef %5041)
  store i32 %5042, ptr %47, align 4, !tbaa !9
  store i32 48, ptr %48, align 4, !tbaa !9
  %5043 = load i32, ptr %48, align 4, !tbaa !9
  %5044 = load i32, ptr %47, align 4, !tbaa !9
  %5045 = sub i32 %5044, %5043
  store i32 %5045, ptr %47, align 4, !tbaa !9
  %5046 = load ptr, ptr %5, align 8, !tbaa !5
  %5047 = getelementptr inbounds %struct.w2c_hermes, ptr %5046, i32 0, i32 6
  %5048 = load i32, ptr %47, align 4, !tbaa !9
  %5049 = zext i32 %5048 to i64
  %5050 = call i32 @i32_load(ptr noundef %5047, i64 noundef %5049)
  store i32 %5050, ptr %47, align 4, !tbaa !9
  %5051 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %5051, ptr %12, 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 %47, align 4, !tbaa !9
  %5055 = zext i32 %5054 to i64
  %5056 = add i64 %5055, 52
  %5057 = call i32 @i32_load(ptr noundef %5053, i64 noundef %5056)
  store i32 %5057, ptr %47, align 4, !tbaa !9
  %5058 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %5058, ptr %8, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %5059 = load i32, ptr %47, align 4, !tbaa !9
  %5060 = load i32, ptr %48, align 4, !tbaa !9
  %5061 = icmp eq i32 %5059, %5060
  %5062 = zext i1 %5061 to i32
  store i32 %5062, ptr %47, align 4, !tbaa !9
  %5063 = load i32, ptr %47, align 4, !tbaa !9
  %5064 = zext i32 %5063 to i64
  store i64 %5064, ptr %56, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %57, align 8, !tbaa !11
  %5065 = load i64, ptr %57, align 8, !tbaa !11
  %5066 = load i64, ptr %56, align 8, !tbaa !11
  %5067 = or i64 %5066, %5065
  store i64 %5067, ptr %56, align 8, !tbaa !11
  %5068 = load ptr, ptr %5, align 8, !tbaa !5
  %5069 = getelementptr inbounds %struct.w2c_hermes, ptr %5068, i32 0, i32 6
  %5070 = load i32, ptr %46, align 4, !tbaa !9
  %5071 = zext i32 %5070 to i64
  %5072 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5069, i64 noundef %5071, i64 noundef %5072)
  %5073 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5073, ptr %46, align 4, !tbaa !9
  store i32 44, ptr %47, align 4, !tbaa !9
  %5074 = load i32, ptr %47, align 4, !tbaa !9
  %5075 = load i32, ptr %46, align 4, !tbaa !9
  %5076 = add i32 %5075, %5074
  store i32 %5076, ptr %46, align 4, !tbaa !9
  %5077 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5077, ptr %7, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %5078 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5078, ptr %40, align 8, !tbaa !11
  %5079 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5079, ptr %46, align 4, !tbaa !9
  %5080 = load ptr, ptr %5, align 8, !tbaa !5
  %5081 = getelementptr inbounds %struct.w2c_hermes, ptr %5080, i32 0, i32 6
  %5082 = load i32, ptr %46, align 4, !tbaa !9
  %5083 = zext i32 %5082 to i64
  %5084 = add i64 %5083, 44
  %5085 = call i32 @i32_load(ptr noundef %5081, i64 noundef %5084)
  store i32 %5085, ptr %46, align 4, !tbaa !9
  %5086 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5086, ptr %13, align 4, !tbaa !9
  store i32 15, ptr %47, align 4, !tbaa !9
  %5087 = load i32, ptr %47, align 4, !tbaa !9
  %5088 = load i32, ptr %46, align 4, !tbaa !9
  %5089 = and i32 %5088, %5087
  store i32 %5089, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %5090 = load i32, ptr %47, align 4, !tbaa !9
  %5091 = load i32, ptr %46, align 4, !tbaa !9
  %5092 = sub i32 %5091, %5090
  store i32 %5092, ptr %46, align 4, !tbaa !9
  %5093 = load i32, ptr %46, align 4, !tbaa !9
  switch i32 %5093, label %5109 [
    i32 0, label %5094
    i32 1, label %5095
    i32 2, label %5096
    i32 3, label %5097
    i32 4, label %5098
    i32 5, label %5099
    i32 6, label %5100
    i32 7, label %5101
    i32 8, label %5102
    i32 9, label %5103
    i32 10, label %5104
    i32 11, label %5105
    i32 12, label %5106
    i32 13, label %5107
    i32 14, label %5108
  ]

5094:                                             ; preds = %5020
  br label %5118

5095:                                             ; preds = %5020
  br label %5129

5096:                                             ; preds = %5020
  br label %5140

5097:                                             ; preds = %5020
  br label %5169

5098:                                             ; preds = %5020
  br label %5180

5099:                                             ; preds = %5020
  br label %5192

5100:                                             ; preds = %5020
  br label %5204

5101:                                             ; preds = %5020
  br label %5110

5102:                                             ; preds = %5020
  br label %5118

5103:                                             ; preds = %5020
  br label %5129

5104:                                             ; preds = %5020
  br label %5140

5105:                                             ; preds = %5020
  br label %5169

5106:                                             ; preds = %5020
  br label %5180

5107:                                             ; preds = %5020
  br label %5208

5108:                                             ; preds = %5020
  br label %5206

5109:                                             ; preds = %5020
  br label %5110

5110:                                             ; preds = %5109, %5101
  %5111 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5111, ptr %46, align 4, !tbaa !9
  %5112 = load i32, ptr %46, align 4, !tbaa !9
  %5113 = zext i32 %5112 to i64
  store i64 %5113, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %5114 = load i64, ptr %56, align 8, !tbaa !11
  %5115 = load i64, ptr %55, align 8, !tbaa !11
  %5116 = or i64 %5115, %5114
  store i64 %5116, ptr %55, align 8, !tbaa !11
  %5117 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5117, ptr %40, align 8, !tbaa !11
  br label %5208

5118:                                             ; preds = %5102, %5094
  %5119 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5119, ptr %46, align 4, !tbaa !9
  store i32 -8, ptr %47, align 4, !tbaa !9
  %5120 = load i32, ptr %47, align 4, !tbaa !9
  %5121 = load i32, ptr %46, align 4, !tbaa !9
  %5122 = and i32 %5121, %5120
  store i32 %5122, ptr %46, align 4, !tbaa !9
  %5123 = load i32, ptr %46, align 4, !tbaa !9
  %5124 = zext i32 %5123 to i64
  store i64 %5124, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %5125 = load i64, ptr %56, align 8, !tbaa !11
  %5126 = load i64, ptr %55, align 8, !tbaa !11
  %5127 = or i64 %5126, %5125
  store i64 %5127, ptr %55, align 8, !tbaa !11
  %5128 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5128, ptr %40, align 8, !tbaa !11
  br label %5208

5129:                                             ; preds = %5103, %5095
  %5130 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5130, ptr %46, align 4, !tbaa !9
  store i32 -8, ptr %47, align 4, !tbaa !9
  %5131 = load i32, ptr %47, align 4, !tbaa !9
  %5132 = load i32, ptr %46, align 4, !tbaa !9
  %5133 = and i32 %5132, %5131
  store i32 %5133, ptr %46, align 4, !tbaa !9
  %5134 = load i32, ptr %46, align 4, !tbaa !9
  %5135 = zext i32 %5134 to i64
  store i64 %5135, ptr %55, align 8, !tbaa !11
  store i64 -844424930131968, ptr %56, align 8, !tbaa !11
  %5136 = load i64, ptr %56, align 8, !tbaa !11
  %5137 = load i64, ptr %55, align 8, !tbaa !11
  %5138 = or i64 %5137, %5136
  store i64 %5138, ptr %55, align 8, !tbaa !11
  %5139 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5139, ptr %40, align 8, !tbaa !11
  br label %5208

5140:                                             ; preds = %5104, %5096
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %5141 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5141, ptr %47, align 4, !tbaa !9
  store i32 -8, ptr %48, align 4, !tbaa !9
  %5142 = load i32, ptr %48, align 4, !tbaa !9
  %5143 = load i32, ptr %47, align 4, !tbaa !9
  %5144 = and i32 %5143, %5142
  store i32 %5144, ptr %47, align 4, !tbaa !9
  %5145 = load ptr, ptr %5, align 8, !tbaa !5
  %5146 = getelementptr inbounds %struct.w2c_hermes, ptr %5145, i32 0, i32 6
  %5147 = load i32, ptr %47, align 4, !tbaa !9
  %5148 = zext i32 %5147 to i64
  %5149 = add i64 %5148, 8
  %5150 = call double @f64_load(ptr noundef %5146, i64 noundef %5149)
  store double %5150, ptr %62, align 8, !tbaa !13
  %5151 = load double, ptr %62, align 8, !tbaa !13
  store double %5151, ptr %43, align 8, !tbaa !13
  %5152 = load double, ptr %62, align 8, !tbaa !13
  %5153 = call i64 @i64_reinterpret_f64(double noundef %5152)
  store i64 %5153, ptr %56, align 8, !tbaa !11
  %5154 = load double, ptr %43, align 8, !tbaa !13
  store double %5154, ptr %63, align 8, !tbaa !13
  %5155 = load double, ptr %43, align 8, !tbaa !13
  store double %5155, ptr %64, align 8, !tbaa !13
  %5156 = load double, ptr %63, align 8, !tbaa !13
  %5157 = load double, ptr %64, align 8, !tbaa !13
  %5158 = fcmp une double %5156, %5157
  %5159 = zext i1 %5158 to i32
  store i32 %5159, ptr %48, align 4, !tbaa !9
  %5160 = load i32, ptr %48, align 4, !tbaa !9
  %5161 = icmp ne i32 %5160, 0
  br i1 %5161, label %5162, label %5164

5162:                                             ; preds = %5140
  %5163 = load i64, ptr %55, align 8, !tbaa !11
  br label %5166

5164:                                             ; preds = %5140
  %5165 = load i64, ptr %56, align 8, !tbaa !11
  br label %5166

5166:                                             ; preds = %5164, %5162
  %5167 = phi i64 [ %5163, %5162 ], [ %5165, %5164 ]
  store i64 %5167, ptr %55, align 8, !tbaa !11
  %5168 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5168, ptr %40, align 8, !tbaa !11
  br label %5208

5169:                                             ; preds = %5105, %5097
  %5170 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5170, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %5171 = load i32, ptr %46, align 4, !tbaa !9
  %5172 = load i32, ptr %47, align 4, !tbaa !9
  %5173 = and i32 %5172, 31
  %5174 = ashr i32 %5171, %5173
  store i32 %5174, ptr %46, align 4, !tbaa !9
  %5175 = load i32, ptr %46, align 4, !tbaa !9
  %5176 = sitofp i32 %5175 to double
  store double %5176, ptr %61, align 8, !tbaa !13
  %5177 = load double, ptr %61, align 8, !tbaa !13
  %5178 = call i64 @i64_reinterpret_f64(double noundef %5177)
  store i64 %5178, ptr %55, align 8, !tbaa !11
  %5179 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5179, ptr %40, align 8, !tbaa !11
  br label %5208

5180:                                             ; preds = %5106, %5098
  %5181 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5181, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %5182 = load i32, ptr %47, align 4, !tbaa !9
  %5183 = and i32 %5182, 31
  %5184 = load i32, ptr %46, align 4, !tbaa !9
  %5185 = lshr i32 %5184, %5183
  store i32 %5185, ptr %46, align 4, !tbaa !9
  %5186 = load i32, ptr %46, align 4, !tbaa !9
  %5187 = zext i32 %5186 to i64
  store i64 %5187, ptr %55, align 8, !tbaa !11
  store i64 -1266637395197952, ptr %56, align 8, !tbaa !11
  %5188 = load i64, ptr %56, align 8, !tbaa !11
  %5189 = load i64, ptr %55, align 8, !tbaa !11
  %5190 = or i64 %5189, %5188
  store i64 %5190, ptr %55, align 8, !tbaa !11
  %5191 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5191, ptr %40, align 8, !tbaa !11
  br label %5208

5192:                                             ; preds = %5099
  %5193 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5193, ptr %46, align 4, !tbaa !9
  store i32 15, ptr %47, align 4, !tbaa !9
  %5194 = load i32, ptr %46, align 4, !tbaa !9
  %5195 = load i32, ptr %47, align 4, !tbaa !9
  %5196 = icmp ugt i32 %5194, %5195
  %5197 = zext i1 %5196 to i32
  store i32 %5197, ptr %46, align 4, !tbaa !9
  %5198 = load i32, ptr %46, align 4, !tbaa !9
  %5199 = zext i32 %5198 to i64
  store i64 %5199, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %5200 = load i64, ptr %56, align 8, !tbaa !11
  %5201 = load i64, ptr %55, align 8, !tbaa !11
  %5202 = or i64 %5201, %5200
  store i64 %5202, ptr %55, align 8, !tbaa !11
  %5203 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5203, ptr %40, align 8, !tbaa !11
  br label %5208

5204:                                             ; preds = %5100
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %5205 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5205, ptr %40, align 8, !tbaa !11
  br label %5208

5206:                                             ; preds = %5108
  store i64 -1548112371908608, ptr %55, align 8, !tbaa !11
  %5207 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5207, ptr %40, align 8, !tbaa !11
  br label %5208

5208:                                             ; preds = %5206, %5204, %5192, %5180, %5169, %5166, %5129, %5118, %5110, %5107
  %5209 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5209, ptr %46, align 4, !tbaa !9
  %5210 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5210, ptr %47, 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 %47, align 4, !tbaa !9
  %5214 = zext i32 %5213 to i64
  %5215 = add i64 %5214, 1
  %5216 = call i32 @i32_load8_u(ptr noundef %5212, i64 noundef %5215)
  store i32 %5216, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5217 = load i32, ptr %48, align 4, !tbaa !9
  %5218 = and i32 %5217, 31
  %5219 = load i32, ptr %47, align 4, !tbaa !9
  %5220 = shl i32 %5219, %5218
  store i32 %5220, ptr %47, align 4, !tbaa !9
  %5221 = load i32, ptr %47, align 4, !tbaa !9
  %5222 = load i32, ptr %46, align 4, !tbaa !9
  %5223 = add i32 %5222, %5221
  store i32 %5223, ptr %46, align 4, !tbaa !9
  %5224 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %5224, ptr %56, align 8, !tbaa !11
  %5225 = load ptr, ptr %5, align 8, !tbaa !5
  %5226 = getelementptr inbounds %struct.w2c_hermes, ptr %5225, i32 0, i32 6
  %5227 = load i32, ptr %46, align 4, !tbaa !9
  %5228 = zext i32 %5227 to i64
  %5229 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5226, i64 noundef %5228, i64 noundef %5229)
  %5230 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5230, ptr %46, align 4, !tbaa !9
  %5231 = load ptr, ptr %5, align 8, !tbaa !5
  %5232 = getelementptr inbounds %struct.w2c_hermes, ptr %5231, i32 0, i32 6
  %5233 = load i32, ptr %46, align 4, !tbaa !9
  %5234 = zext i32 %5233 to i64
  %5235 = add i64 %5234, 1356
  %5236 = call i32 @i32_load(ptr noundef %5232, i64 noundef %5235)
  store i32 %5236, ptr %46, align 4, !tbaa !9
  %5237 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5237, ptr %47, align 4, !tbaa !9
  store i32 -4194304, ptr %48, align 4, !tbaa !9
  %5238 = load i32, ptr %48, align 4, !tbaa !9
  %5239 = load i32, ptr %47, align 4, !tbaa !9
  %5240 = and i32 %5239, %5238
  store i32 %5240, ptr %47, align 4, !tbaa !9
  %5241 = load i32, ptr %46, align 4, !tbaa !9
  %5242 = load i32, ptr %47, align 4, !tbaa !9
  %5243 = icmp eq i32 %5241, %5242
  %5244 = zext i1 %5243 to i32
  store i32 %5244, ptr %46, align 4, !tbaa !9
  %5245 = load i32, ptr %46, align 4, !tbaa !9
  %5246 = icmp ne i32 %5245, 0
  br i1 %5246, label %5247, label %5248

5247:                                             ; preds = %5208
  br label %5283

5248:                                             ; preds = %5208
  %5249 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5249, ptr %46, align 4, !tbaa !9
  %5250 = load ptr, ptr %5, align 8, !tbaa !5
  %5251 = getelementptr inbounds %struct.w2c_hermes, ptr %5250, i32 0, i32 6
  %5252 = load i32, ptr %46, align 4, !tbaa !9
  %5253 = zext i32 %5252 to i64
  %5254 = add i64 %5253, 4813
  %5255 = call i32 @i32_load8_u(ptr noundef %5251, i64 noundef %5254)
  store i32 %5255, ptr %46, align 4, !tbaa !9
  %5256 = load i32, ptr %46, align 4, !tbaa !9
  %5257 = icmp ne i32 %5256, 0
  %5258 = xor i1 %5257, true
  %5259 = zext i1 %5258 to i32
  store i32 %5259, ptr %46, align 4, !tbaa !9
  %5260 = load i32, ptr %46, align 4, !tbaa !9
  %5261 = icmp ne i32 %5260, 0
  br i1 %5261, label %5262, label %5263

5262:                                             ; preds = %5248
  br label %5283

5263:                                             ; preds = %5248
  %5264 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %5264, ptr %46, align 4, !tbaa !9
  %5265 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5265, ptr %47, align 4, !tbaa !9
  %5266 = load ptr, ptr %5, align 8, !tbaa !5
  %5267 = getelementptr inbounds %struct.w2c_hermes, ptr %5266, i32 0, i32 6
  %5268 = load i32, ptr %47, align 4, !tbaa !9
  %5269 = zext i32 %5268 to i64
  %5270 = add i64 %5269, 44
  %5271 = call i32 @i32_load(ptr noundef %5267, i64 noundef %5270)
  store i32 %5271, ptr %47, align 4, !tbaa !9
  %5272 = load ptr, ptr %5, align 8, !tbaa !5
  %5273 = load i32, ptr %46, align 4, !tbaa !9
  %5274 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef %5272, i32 noundef %5273, i32 noundef %5274)
  %5275 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5275, ptr %46, align 4, !tbaa !9
  %5276 = load ptr, ptr %5, align 8, !tbaa !5
  %5277 = getelementptr inbounds %struct.w2c_hermes, ptr %5276, i32 0, i32 6
  %5278 = load i32, ptr %46, align 4, !tbaa !9
  %5279 = zext i32 %5278 to i64
  %5280 = add i64 %5279, 52
  %5281 = call i32 @i32_load(ptr noundef %5277, i64 noundef %5280)
  store i32 %5281, ptr %46, align 4, !tbaa !9
  %5282 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5282, ptr %8, align 4, !tbaa !9
  br label %5283

5283:                                             ; preds = %5263, %5262, %5247
  %5284 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5284, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %5285 = load ptr, ptr %5, align 8, !tbaa !5
  %5286 = getelementptr inbounds %struct.w2c_hermes, ptr %5285, i32 0, i32 6
  %5287 = load i32, ptr %46, align 4, !tbaa !9
  %5288 = zext i32 %5287 to i64
  %5289 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5286, i64 noundef %5288, i32 noundef %5289)
  %5290 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %5290, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %5291 = load i32, ptr %46, align 4, !tbaa !9
  %5292 = load i32, ptr %47, align 4, !tbaa !9
  %5293 = icmp eq i32 %5291, %5292
  %5294 = zext i1 %5293 to i32
  store i32 %5294, ptr %46, align 4, !tbaa !9
  %5295 = load i32, ptr %46, align 4, !tbaa !9
  %5296 = icmp ne i32 %5295, 0
  br i1 %5296, label %5297, label %5318

5297:                                             ; preds = %5283
  %5298 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5298, ptr %46, align 4, !tbaa !9
  %5299 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5299, ptr %47, align 4, !tbaa !9
  %5300 = load ptr, ptr %5, align 8, !tbaa !5
  %5301 = getelementptr inbounds %struct.w2c_hermes, ptr %5300, i32 0, i32 6
  %5302 = load i32, ptr %47, align 4, !tbaa !9
  %5303 = zext i32 %5302 to i64
  %5304 = add i64 %5303, 1
  %5305 = call i32 @i32_load8_u(ptr noundef %5301, i64 noundef %5304)
  store i32 %5305, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5306 = load i32, ptr %48, align 4, !tbaa !9
  %5307 = and i32 %5306, 31
  %5308 = load i32, ptr %47, align 4, !tbaa !9
  %5309 = shl i32 %5308, %5307
  store i32 %5309, ptr %47, align 4, !tbaa !9
  %5310 = load i32, ptr %47, align 4, !tbaa !9
  %5311 = load i32, ptr %46, align 4, !tbaa !9
  %5312 = add i32 %5311, %5310
  store i32 %5312, ptr %46, align 4, !tbaa !9
  %5313 = load ptr, ptr %5, align 8, !tbaa !5
  %5314 = getelementptr inbounds %struct.w2c_hermes, ptr %5313, i32 0, i32 6
  %5315 = load i32, ptr %46, align 4, !tbaa !9
  %5316 = zext i32 %5315 to i64
  %5317 = call i64 @i64_load(ptr noundef %5314, i64 noundef %5316)
  store i64 %5317, ptr %55, align 8, !tbaa !11
  br label %5574

5318:                                             ; preds = %5283
  %5319 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5319, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %5320 = load i32, ptr %47, align 4, !tbaa !9
  %5321 = load i32, ptr %46, align 4, !tbaa !9
  %5322 = add i32 %5321, %5320
  store i32 %5322, ptr %46, align 4, !tbaa !9
  %5323 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5323, ptr %6, align 4, !tbaa !9
  br label %2945

5324:                                             ; preds = %2991
  %5325 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5325, ptr %46, align 4, !tbaa !9
  store i32 32, ptr %47, align 4, !tbaa !9
  %5326 = load i32, ptr %47, align 4, !tbaa !9
  %5327 = load i32, ptr %46, align 4, !tbaa !9
  %5328 = sub i32 %5327, %5326
  store i32 %5328, ptr %46, align 4, !tbaa !9
  %5329 = load ptr, ptr %5, align 8, !tbaa !5
  %5330 = getelementptr inbounds %struct.w2c_hermes, ptr %5329, i32 0, i32 6
  %5331 = load i32, ptr %46, align 4, !tbaa !9
  %5332 = zext i32 %5331 to i64
  %5333 = call i32 @i32_load(ptr noundef %5330, i64 noundef %5332)
  store i32 %5333, ptr %46, align 4, !tbaa !9
  %5334 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5334, ptr %21, align 4, !tbaa !9
  %5335 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5335, ptr %46, align 4, !tbaa !9
  store i32 24, ptr %47, align 4, !tbaa !9
  %5336 = load i32, ptr %47, align 4, !tbaa !9
  %5337 = load i32, ptr %46, align 4, !tbaa !9
  %5338 = sub i32 %5337, %5336
  store i32 %5338, ptr %46, align 4, !tbaa !9
  %5339 = load ptr, ptr %5, align 8, !tbaa !5
  %5340 = getelementptr inbounds %struct.w2c_hermes, ptr %5339, i32 0, i32 6
  %5341 = load i32, ptr %46, align 4, !tbaa !9
  %5342 = zext i32 %5341 to i64
  %5343 = call i32 @i32_load(ptr noundef %5340, i64 noundef %5342)
  store i32 %5343, ptr %46, align 4, !tbaa !9
  %5344 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5344, ptr %7, align 4, !tbaa !9
  %5345 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5345, ptr %46, align 4, !tbaa !9
  %5346 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5346, ptr %47, align 4, !tbaa !9
  %5347 = load ptr, ptr %5, align 8, !tbaa !5
  %5348 = getelementptr inbounds %struct.w2c_hermes, ptr %5347, i32 0, i32 6
  %5349 = load i32, ptr %47, align 4, !tbaa !9
  %5350 = zext i32 %5349 to i64
  %5351 = add i64 %5350, 1
  %5352 = call i32 @i32_load8_u(ptr noundef %5348, i64 noundef %5351)
  store i32 %5352, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5353 = load i32, ptr %48, align 4, !tbaa !9
  %5354 = and i32 %5353, 31
  %5355 = load i32, ptr %47, align 4, !tbaa !9
  %5356 = shl i32 %5355, %5354
  store i32 %5356, ptr %47, align 4, !tbaa !9
  %5357 = load i32, ptr %47, align 4, !tbaa !9
  %5358 = load i32, ptr %46, align 4, !tbaa !9
  %5359 = add i32 %5358, %5357
  store i32 %5359, ptr %46, align 4, !tbaa !9
  %5360 = load ptr, ptr %5, align 8, !tbaa !5
  %5361 = getelementptr inbounds %struct.w2c_hermes, ptr %5360, i32 0, i32 6
  %5362 = load i32, ptr %46, align 4, !tbaa !9
  %5363 = zext i32 %5362 to i64
  %5364 = call i64 @i64_load(ptr noundef %5361, i64 noundef %5363)
  store i64 %5364, ptr %55, align 8, !tbaa !11
  %5365 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5365, ptr %39, align 8, !tbaa !11
  %5366 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5366, ptr %46, align 4, !tbaa !9
  %5367 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5367, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %5368 = load i32, ptr %48, align 4, !tbaa !9
  %5369 = load i32, ptr %47, align 4, !tbaa !9
  %5370 = sub i32 %5369, %5368
  store i32 %5370, ptr %47, align 4, !tbaa !9
  %5371 = load ptr, ptr %5, align 8, !tbaa !5
  %5372 = getelementptr inbounds %struct.w2c_hermes, ptr %5371, i32 0, i32 6
  %5373 = load i32, ptr %46, align 4, !tbaa !9
  %5374 = zext i32 %5373 to i64
  %5375 = add i64 %5374, 5588
  %5376 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5372, i64 noundef %5375, i32 noundef %5376)
  %5377 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5377, ptr %46, align 4, !tbaa !9
  %5378 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5378, ptr %47, align 4, !tbaa !9
  store i32 16, ptr %48, align 4, !tbaa !9
  %5379 = load i32, ptr %48, align 4, !tbaa !9
  %5380 = load i32, ptr %47, align 4, !tbaa !9
  %5381 = sub i32 %5380, %5379
  store i32 %5381, ptr %47, align 4, !tbaa !9
  %5382 = load ptr, ptr %5, align 8, !tbaa !5
  %5383 = getelementptr inbounds %struct.w2c_hermes, ptr %5382, i32 0, i32 6
  %5384 = load i32, ptr %47, align 4, !tbaa !9
  %5385 = zext i32 %5384 to i64
  %5386 = call i32 @i32_load(ptr noundef %5383, i64 noundef %5385)
  store i32 %5386, ptr %47, align 4, !tbaa !9
  %5387 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %5387, ptr %6, align 4, !tbaa !9
  %5388 = load ptr, ptr %5, align 8, !tbaa !5
  %5389 = getelementptr inbounds %struct.w2c_hermes, ptr %5388, i32 0, i32 6
  %5390 = load i32, ptr %46, align 4, !tbaa !9
  %5391 = zext i32 %5390 to i64
  %5392 = add i64 %5391, 5600
  %5393 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5389, i64 noundef %5392, i32 noundef %5393)
  %5394 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5394, ptr %46, align 4, !tbaa !9
  %5395 = load i32, ptr %46, align 4, !tbaa !9
  %5396 = icmp ne i32 %5395, 0
  %5397 = xor i1 %5396, true
  %5398 = zext i1 %5397 to i32
  store i32 %5398, ptr %46, align 4, !tbaa !9
  %5399 = load i32, ptr %46, align 4, !tbaa !9
  %5400 = icmp ne i32 %5399, 0
  br i1 %5400, label %5401, label %5416

5401:                                             ; preds = %5324
  %5402 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %5402, ptr %46, align 4, !tbaa !9
  %5403 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %5403, ptr %56, align 8, !tbaa !11
  %5404 = load ptr, ptr %5, align 8, !tbaa !5
  %5405 = getelementptr inbounds %struct.w2c_hermes, ptr %5404, i32 0, i32 6
  %5406 = load i32, ptr %46, align 4, !tbaa !9
  %5407 = zext i32 %5406 to i64
  %5408 = add i64 %5407, 8
  %5409 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5405, i64 noundef %5408, i64 noundef %5409)
  %5410 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %5410, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %5411 = load ptr, ptr %5, align 8, !tbaa !5
  %5412 = getelementptr inbounds %struct.w2c_hermes, ptr %5411, i32 0, i32 6
  %5413 = load i32, ptr %46, align 4, !tbaa !9
  %5414 = zext i32 %5413 to i64
  %5415 = load i32, ptr %47, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5412, i64 noundef %5414, i32 noundef %5415)
  br label %43622

5416:                                             ; preds = %5324
  %5417 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5417, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %5418 = load i32, ptr %47, align 4, !tbaa !9
  %5419 = load i32, ptr %46, align 4, !tbaa !9
  %5420 = add i32 %5419, %5418
  store i32 %5420, ptr %46, align 4, !tbaa !9
  %5421 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5421, ptr %11, align 4, !tbaa !9
  %5422 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %5422, ptr %46, align 4, !tbaa !9
  %5423 = load ptr, ptr %5, align 8, !tbaa !5
  %5424 = getelementptr inbounds %struct.w2c_hermes, ptr %5423, i32 0, i32 6
  %5425 = load i32, ptr %46, align 4, !tbaa !9
  %5426 = zext i32 %5425 to i64
  %5427 = add i64 %5426, 4
  %5428 = call i32 @i32_load(ptr noundef %5424, i64 noundef %5427)
  store i32 %5428, ptr %46, align 4, !tbaa !9
  %5429 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5429, ptr %6, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %5430 = load i32, ptr %47, align 4, !tbaa !9
  %5431 = load i32, ptr %46, align 4, !tbaa !9
  %5432 = and i32 %5431, %5430
  store i32 %5432, ptr %46, align 4, !tbaa !9
  %5433 = load i32, ptr %46, align 4, !tbaa !9
  %5434 = icmp ne i32 %5433, 0
  br i1 %5434, label %5435, label %5440

5435:                                             ; preds = %5416
  %5436 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5436, ptr %46, align 4, !tbaa !9
  store i32 29, ptr %47, align 4, !tbaa !9
  %5437 = load i32, ptr %47, align 4, !tbaa !9
  %5438 = load i32, ptr %46, align 4, !tbaa !9
  %5439 = add i32 %5438, %5437
  store i32 %5439, ptr %46, align 4, !tbaa !9
  br label %5445

5440:                                             ; preds = %5416
  %5441 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5441, ptr %46, align 4, !tbaa !9
  store i32 15, ptr %47, align 4, !tbaa !9
  %5442 = load i32, ptr %47, align 4, !tbaa !9
  %5443 = load i32, ptr %46, align 4, !tbaa !9
  %5444 = add i32 %5443, %5442
  store i32 %5444, ptr %46, align 4, !tbaa !9
  br label %5445

5445:                                             ; preds = %5440, %5435
  %5446 = load ptr, ptr %5, align 8, !tbaa !5
  %5447 = getelementptr inbounds %struct.w2c_hermes, ptr %5446, i32 0, i32 6
  %5448 = load i32, ptr %46, align 4, !tbaa !9
  %5449 = zext i32 %5448 to i64
  %5450 = call i32 @i32_load8_u(ptr noundef %5447, i64 noundef %5449)
  store i32 %5450, ptr %46, align 4, !tbaa !9
  %5451 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5451, ptr %6, align 4, !tbaa !9
  %5452 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5452, ptr %46, align 4, !tbaa !9
  %5453 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5453, ptr %47, align 4, !tbaa !9
  %5454 = load ptr, ptr %5, align 8, !tbaa !5
  %5455 = getelementptr inbounds %struct.w2c_hermes, ptr %5454, i32 0, i32 6
  %5456 = load i32, ptr %47, align 4, !tbaa !9
  %5457 = zext i32 %5456 to i64
  %5458 = add i64 %5457, 1
  %5459 = call i32 @i32_load8_u(ptr noundef %5455, i64 noundef %5458)
  store i32 %5459, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5460 = load i32, ptr %48, align 4, !tbaa !9
  %5461 = and i32 %5460, 31
  %5462 = load i32, ptr %47, align 4, !tbaa !9
  %5463 = shl i32 %5462, %5461
  store i32 %5463, ptr %47, align 4, !tbaa !9
  %5464 = load i32, ptr %47, align 4, !tbaa !9
  %5465 = load i32, ptr %46, align 4, !tbaa !9
  %5466 = add i32 %5465, %5464
  store i32 %5466, ptr %46, align 4, !tbaa !9
  %5467 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %5467, ptr %56, align 8, !tbaa !11
  %5468 = load ptr, ptr %5, align 8, !tbaa !5
  %5469 = getelementptr inbounds %struct.w2c_hermes, ptr %5468, i32 0, i32 6
  %5470 = load i32, ptr %46, align 4, !tbaa !9
  %5471 = zext i32 %5470 to i64
  %5472 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5469, i64 noundef %5471, i64 noundef %5472)
  %5473 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5473, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %5474 = load i32, ptr %47, align 4, !tbaa !9
  %5475 = load i32, ptr %46, align 4, !tbaa !9
  %5476 = and i32 %5475, %5474
  store i32 %5476, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %5477 = load i32, ptr %47, align 4, !tbaa !9
  %5478 = and i32 %5477, 31
  %5479 = load i32, ptr %46, align 4, !tbaa !9
  %5480 = lshr i32 %5479, %5478
  store i32 %5480, ptr %46, align 4, !tbaa !9
  %5481 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5481, ptr %26, align 4, !tbaa !9
  %5482 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5482, ptr %46, align 4, !tbaa !9
  store i32 1046848, ptr %47, align 4, !tbaa !9
  %5483 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5483, ptr %48, align 4, !tbaa !9
  %5484 = load ptr, ptr %5, align 8, !tbaa !5
  %5485 = getelementptr inbounds %struct.w2c_hermes, ptr %5484, i32 0, i32 6
  %5486 = load i32, ptr %48, align 4, !tbaa !9
  %5487 = zext i32 %5486 to i64
  %5488 = call i32 @i32_load8_u(ptr noundef %5485, i64 noundef %5487)
  store i32 %5488, ptr %48, align 4, !tbaa !9
  store i32 79, ptr %49, align 4, !tbaa !9
  %5489 = load i32, ptr %49, align 4, !tbaa !9
  %5490 = load i32, ptr %48, align 4, !tbaa !9
  %5491 = sub i32 %5490, %5489
  store i32 %5491, ptr %48, align 4, !tbaa !9
  store i32 255, ptr %49, align 4, !tbaa !9
  %5492 = load i32, ptr %49, align 4, !tbaa !9
  %5493 = load i32, ptr %48, align 4, !tbaa !9
  %5494 = and i32 %5493, %5492
  store i32 %5494, ptr %48, align 4, !tbaa !9
  store i32 1, ptr %49, align 4, !tbaa !9
  %5495 = load i32, ptr %49, align 4, !tbaa !9
  %5496 = and i32 %5495, 31
  %5497 = load i32, ptr %48, align 4, !tbaa !9
  %5498 = shl i32 %5497, %5496
  store i32 %5498, ptr %48, align 4, !tbaa !9
  %5499 = load i32, ptr %48, align 4, !tbaa !9
  %5500 = and i32 %5499, 31
  %5501 = load i32, ptr %47, align 4, !tbaa !9
  %5502 = lshr i32 %5501, %5500
  store i32 %5502, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5503 = load i32, ptr %48, align 4, !tbaa !9
  %5504 = load i32, ptr %47, align 4, !tbaa !9
  %5505 = and i32 %5504, %5503
  store i32 %5505, ptr %47, align 4, !tbaa !9
  %5506 = load i32, ptr %47, align 4, !tbaa !9
  %5507 = load i32, ptr %46, align 4, !tbaa !9
  %5508 = add i32 %5507, %5506
  store i32 %5508, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %5509 = load i32, ptr %47, align 4, !tbaa !9
  %5510 = load i32, ptr %46, align 4, !tbaa !9
  %5511 = add i32 %5510, %5509
  store i32 %5511, ptr %46, align 4, !tbaa !9
  %5512 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5512, ptr %6, align 4, !tbaa !9
  br label %2945

5513:                                             ; preds = %2992
  %5514 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5514, ptr %46, align 4, !tbaa !9
  %5515 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5515, ptr %47, align 4, !tbaa !9
  %5516 = load ptr, ptr %5, align 8, !tbaa !5
  %5517 = getelementptr inbounds %struct.w2c_hermes, ptr %5516, i32 0, i32 6
  %5518 = load i32, ptr %47, align 4, !tbaa !9
  %5519 = zext i32 %5518 to i64
  %5520 = add i64 %5519, 1
  %5521 = call i32 @i32_load8_u(ptr noundef %5517, i64 noundef %5520)
  store i32 %5521, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5522 = load i32, ptr %48, align 4, !tbaa !9
  %5523 = and i32 %5522, 31
  %5524 = load i32, ptr %47, align 4, !tbaa !9
  %5525 = shl i32 %5524, %5523
  store i32 %5525, ptr %47, align 4, !tbaa !9
  %5526 = load i32, ptr %47, align 4, !tbaa !9
  %5527 = load i32, ptr %46, align 4, !tbaa !9
  %5528 = add i32 %5527, %5526
  store i32 %5528, ptr %46, align 4, !tbaa !9
  %5529 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5529, ptr %47, align 4, !tbaa !9
  %5530 = load ptr, ptr %5, align 8, !tbaa !5
  %5531 = getelementptr inbounds %struct.w2c_hermes, ptr %5530, i32 0, i32 6
  %5532 = load i32, ptr %47, align 4, !tbaa !9
  %5533 = zext i32 %5532 to i64
  %5534 = add i64 %5533, 704
  %5535 = call i64 @i64_load(ptr noundef %5531, i64 noundef %5534)
  store i64 %5535, ptr %56, align 8, !tbaa !11
  %5536 = load ptr, ptr %5, align 8, !tbaa !5
  %5537 = getelementptr inbounds %struct.w2c_hermes, ptr %5536, i32 0, i32 6
  %5538 = load i32, ptr %46, align 4, !tbaa !9
  %5539 = zext i32 %5538 to i64
  %5540 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5537, i64 noundef %5539, i64 noundef %5540)
  %5541 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5541, ptr %46, align 4, !tbaa !9
  store i64 -1970324836974592, ptr %56, align 8, !tbaa !11
  %5542 = load ptr, ptr %5, align 8, !tbaa !5
  %5543 = getelementptr inbounds %struct.w2c_hermes, ptr %5542, i32 0, i32 6
  %5544 = load i32, ptr %46, align 4, !tbaa !9
  %5545 = zext i32 %5544 to i64
  %5546 = add i64 %5545, 704
  %5547 = load i64, ptr %56, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5543, i64 noundef %5546, i64 noundef %5547)
  %5548 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5548, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %5549 = load i32, ptr %47, align 4, !tbaa !9
  %5550 = load i32, ptr %46, align 4, !tbaa !9
  %5551 = add i32 %5550, %5549
  store i32 %5551, ptr %46, align 4, !tbaa !9
  %5552 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5552, ptr %6, align 4, !tbaa !9
  br label %2945

5553:                                             ; preds = %2993
  %5554 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5554, ptr %46, align 4, !tbaa !9
  %5555 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5555, ptr %47, align 4, !tbaa !9
  %5556 = load ptr, ptr %5, align 8, !tbaa !5
  %5557 = getelementptr inbounds %struct.w2c_hermes, ptr %5556, i32 0, i32 6
  %5558 = load i32, ptr %47, align 4, !tbaa !9
  %5559 = zext i32 %5558 to i64
  %5560 = add i64 %5559, 1
  %5561 = call i32 @i32_load8_u(ptr noundef %5557, i64 noundef %5560)
  store i32 %5561, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %5562 = load i32, ptr %48, align 4, !tbaa !9
  %5563 = and i32 %5562, 31
  %5564 = load i32, ptr %47, align 4, !tbaa !9
  %5565 = shl i32 %5564, %5563
  store i32 %5565, ptr %47, align 4, !tbaa !9
  %5566 = load i32, ptr %47, align 4, !tbaa !9
  %5567 = load i32, ptr %46, align 4, !tbaa !9
  %5568 = add i32 %5567, %5566
  store i32 %5568, ptr %46, align 4, !tbaa !9
  %5569 = load ptr, ptr %5, align 8, !tbaa !5
  %5570 = getelementptr inbounds %struct.w2c_hermes, ptr %5569, i32 0, i32 6
  %5571 = load i32, ptr %46, align 4, !tbaa !9
  %5572 = zext i32 %5571 to i64
  %5573 = call i64 @i64_load(ptr noundef %5570, i64 noundef %5572)
  store i64 %5573, ptr %55, align 8, !tbaa !11
  br label %5574

5574:                                             ; preds = %5553, %5297
  %5575 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %5575, ptr %40, align 8, !tbaa !11
  %5576 = load ptr, ptr %5, align 8, !tbaa !5
  %5577 = getelementptr inbounds %struct.w2c_hermes, ptr %5576, i32 0, i32 6
  %5578 = load i32, ptr %45, align 4, !tbaa !9
  %5579 = zext i32 %5578 to i64
  %5580 = add i64 %5579, 704
  %5581 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5577, i64 noundef %5580, i64 noundef %5581)
  br label %43138

5582:                                             ; preds = %2994
  %5583 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5583, ptr %45, align 4, !tbaa !9
  %5584 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5584, ptr %46, align 4, !tbaa !9
  %5585 = load ptr, ptr %5, align 8, !tbaa !5
  %5586 = getelementptr inbounds %struct.w2c_hermes, ptr %5585, i32 0, i32 6
  %5587 = load i32, ptr %46, align 4, !tbaa !9
  %5588 = zext i32 %5587 to i64
  %5589 = add i64 %5588, 2
  %5590 = call i32 @i32_load8_u(ptr noundef %5586, i64 noundef %5589)
  store i32 %5590, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %5591 = load i32, ptr %47, align 4, !tbaa !9
  %5592 = and i32 %5591, 31
  %5593 = load i32, ptr %46, align 4, !tbaa !9
  %5594 = shl i32 %5593, %5592
  store i32 %5594, ptr %46, align 4, !tbaa !9
  %5595 = load i32, ptr %46, align 4, !tbaa !9
  %5596 = load i32, ptr %45, align 4, !tbaa !9
  %5597 = add i32 %5596, %5595
  store i32 %5597, ptr %45, align 4, !tbaa !9
  %5598 = load ptr, ptr %5, align 8, !tbaa !5
  %5599 = getelementptr inbounds %struct.w2c_hermes, ptr %5598, i32 0, i32 6
  %5600 = load i32, ptr %45, align 4, !tbaa !9
  %5601 = zext i32 %5600 to i64
  %5602 = call i64 @i64_load(ptr noundef %5599, i64 noundef %5601)
  store i64 %5602, ptr %54, align 8, !tbaa !11
  %5603 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %5603, ptr %39, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %5604 = load i64, ptr %54, align 8, !tbaa !11
  %5605 = load i64, ptr %55, align 8, !tbaa !11
  %5606 = and i64 %5605, 63
  %5607 = ashr i64 %5604, %5606
  store i64 %5607, ptr %54, align 8, !tbaa !11
  %5608 = load i64, ptr %54, align 8, !tbaa !11
  %5609 = trunc i64 %5608 to i32
  store i32 %5609, ptr %45, align 4, !tbaa !9
  store i32 -14, ptr %46, align 4, !tbaa !9
  %5610 = load i32, ptr %45, align 4, !tbaa !9
  %5611 = load i32, ptr %46, align 4, !tbaa !9
  %5612 = icmp eq i32 %5610, %5611
  %5613 = zext i1 %5612 to i32
  store i32 %5613, ptr %45, align 4, !tbaa !9
  %5614 = load i32, ptr %45, align 4, !tbaa !9
  %5615 = icmp ne i32 %5614, 0
  br i1 %5615, label %5616, label %5670

5616:                                             ; preds = %5582
  %5617 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5617, ptr %45, align 4, !tbaa !9
  %5618 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5618, ptr %46, 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 %45, align 4, !tbaa !9
  %5622 = zext i32 %5621 to i64
  %5623 = add i64 %5622, 5808
  %5624 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5620, i64 noundef %5623, i32 noundef %5624)
  %5625 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5625, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %5626 = load ptr, ptr %5, align 8, !tbaa !5
  %5627 = getelementptr inbounds %struct.w2c_hermes, ptr %5626, i32 0, i32 6
  %5628 = load i32, ptr %45, align 4, !tbaa !9
  %5629 = zext i32 %5628 to i64
  %5630 = add i64 %5629, 336
  %5631 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5627, i64 noundef %5630, i32 noundef %5631)
  %5632 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5632, ptr %45, align 4, !tbaa !9
  store i64 150323855361, ptr %55, align 8, !tbaa !11
  %5633 = load ptr, ptr %5, align 8, !tbaa !5
  %5634 = getelementptr inbounds %struct.w2c_hermes, ptr %5633, i32 0, i32 6
  %5635 = load i32, ptr %45, align 4, !tbaa !9
  %5636 = zext i32 %5635 to i64
  %5637 = add i64 %5636, 328
  %5638 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5634, i64 noundef %5637, i64 noundef %5638)
  %5639 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5639, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %5640 = load ptr, ptr %5, align 8, !tbaa !5
  %5641 = getelementptr inbounds %struct.w2c_hermes, ptr %5640, i32 0, i32 6
  %5642 = load i32, ptr %45, align 4, !tbaa !9
  %5643 = zext i32 %5642 to i64
  %5644 = add i64 %5643, 312
  %5645 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5641, i64 noundef %5644, i32 noundef %5645)
  %5646 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5646, ptr %45, align 4, !tbaa !9
  store i32 51503, ptr %46, align 4, !tbaa !9
  %5647 = load ptr, ptr %5, align 8, !tbaa !5
  %5648 = getelementptr inbounds %struct.w2c_hermes, ptr %5647, i32 0, i32 6
  %5649 = load i32, ptr %45, align 4, !tbaa !9
  %5650 = zext i32 %5649 to i64
  %5651 = add i64 %5650, 304
  %5652 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5648, i64 noundef %5651, i32 noundef %5652)
  %5653 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5653, ptr %45, align 4, !tbaa !9
  %5654 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %5654, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %5655 = load i32, ptr %47, align 4, !tbaa !9
  %5656 = load i32, ptr %46, align 4, !tbaa !9
  %5657 = add i32 %5656, %5655
  store i32 %5657, ptr %46, align 4, !tbaa !9
  %5658 = load ptr, ptr %5, align 8, !tbaa !5
  %5659 = load i32, ptr %45, align 4, !tbaa !9
  %5660 = load i32, ptr %46, align 4, !tbaa !9
  %5661 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseReferenceError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %5658, i32 noundef %5659, i32 noundef %5660)
  store i32 %5661, ptr %45, align 4, !tbaa !9
  %5662 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5662, ptr %45, align 4, !tbaa !9
  %5663 = load ptr, ptr %5, align 8, !tbaa !5
  %5664 = getelementptr inbounds %struct.w2c_hermes, ptr %5663, i32 0, i32 6
  %5665 = load i32, ptr %45, align 4, !tbaa !9
  %5666 = zext i32 %5665 to i64
  %5667 = add i64 %5666, 5808
  %5668 = call i32 @i32_load(ptr noundef %5664, i64 noundef %5667)
  store i32 %5668, ptr %45, align 4, !tbaa !9
  %5669 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5669, ptr %6, align 4, !tbaa !9
  br label %43136

5670:                                             ; preds = %5582
  %5671 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %5671, ptr %45, align 4, !tbaa !9
  %5672 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5672, ptr %46, align 4, !tbaa !9
  %5673 = load ptr, ptr %5, align 8, !tbaa !5
  %5674 = getelementptr inbounds %struct.w2c_hermes, ptr %5673, i32 0, i32 6
  %5675 = load i32, ptr %46, align 4, !tbaa !9
  %5676 = zext i32 %5675 to i64
  %5677 = add i64 %5676, 1
  %5678 = call i32 @i32_load8_u(ptr noundef %5674, i64 noundef %5677)
  store i32 %5678, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %5679 = load i32, ptr %47, align 4, !tbaa !9
  %5680 = and i32 %5679, 31
  %5681 = load i32, ptr %46, align 4, !tbaa !9
  %5682 = shl i32 %5681, %5680
  store i32 %5682, ptr %46, align 4, !tbaa !9
  %5683 = load i32, ptr %46, align 4, !tbaa !9
  %5684 = load i32, ptr %45, align 4, !tbaa !9
  %5685 = add i32 %5684, %5683
  store i32 %5685, ptr %45, align 4, !tbaa !9
  %5686 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %5686, ptr %55, align 8, !tbaa !11
  %5687 = load ptr, ptr %5, align 8, !tbaa !5
  %5688 = getelementptr inbounds %struct.w2c_hermes, ptr %5687, i32 0, i32 6
  %5689 = load i32, ptr %45, align 4, !tbaa !9
  %5690 = zext i32 %5689 to i64
  %5691 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5688, i64 noundef %5690, i64 noundef %5691)
  %5692 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5692, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %5693 = load i32, ptr %46, align 4, !tbaa !9
  %5694 = load i32, ptr %45, align 4, !tbaa !9
  %5695 = add i32 %5694, %5693
  store i32 %5695, ptr %45, align 4, !tbaa !9
  %5696 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5696, ptr %6, align 4, !tbaa !9
  br label %2945

5697:                                             ; preds = %2995
  %5698 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5698, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %5699 = load i32, ptr %46, align 4, !tbaa !9
  %5700 = load i32, ptr %45, align 4, !tbaa !9
  %5701 = add i32 %5700, %5699
  store i32 %5701, ptr %45, align 4, !tbaa !9
  %5702 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5702, ptr %6, align 4, !tbaa !9
  br label %2945

5703:                                             ; preds = %2996
  %5704 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5704, ptr %45, align 4, !tbaa !9
  %5705 = load ptr, ptr %5, align 8, !tbaa !5
  %5706 = getelementptr inbounds %struct.w2c_hermes, ptr %5705, i32 0, i32 6
  %5707 = load i32, ptr %45, align 4, !tbaa !9
  %5708 = zext i32 %5707 to i64
  %5709 = add i64 %5708, 5764
  %5710 = call i32 @i32_load8_u(ptr noundef %5706, i64 noundef %5709)
  store i32 %5710, ptr %45, align 4, !tbaa !9
  %5711 = load i32, ptr %45, align 4, !tbaa !9
  %5712 = icmp ne i32 %5711, 0
  br i1 %5712, label %5713, label %5714

5713:                                             ; preds = %5703
  br label %5723

5714:                                             ; preds = %5703
  %5715 = load ptr, ptr %5, align 8, !tbaa !5
  %5716 = getelementptr inbounds %struct.w2c_hermes, ptr %5715, i32 0, i32 1
  %5717 = load ptr, ptr %5716, align 8, !tbaa !22
  %5718 = call i32 @w2c_hermes__import_test_timeout(ptr noundef %5717)
  store i32 %5718, ptr %45, align 4, !tbaa !9
  %5719 = load i32, ptr %45, align 4, !tbaa !9
  %5720 = icmp ne i32 %5719, 0
  br i1 %5720, label %5721, label %5722

5721:                                             ; preds = %5714
  br label %5723

5722:                                             ; preds = %5714
  br label %6465

5723:                                             ; preds = %5721, %5713
  store i32 0, ptr %45, align 4, !tbaa !9
  %5724 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5724, ptr %12, align 4, !tbaa !9
  %5725 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5725, ptr %45, align 4, !tbaa !9
  %5726 = load ptr, ptr %5, align 8, !tbaa !5
  %5727 = getelementptr inbounds %struct.w2c_hermes, ptr %5726, i32 0, i32 6
  %5728 = load i32, ptr %45, align 4, !tbaa !9
  %5729 = zext i32 %5728 to i64
  %5730 = add i64 %5729, 5764
  %5731 = call i32 @i32_load8_u(ptr noundef %5727, i64 noundef %5730)
  store i32 %5731, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %5732 = load i32, ptr %46, align 4, !tbaa !9
  %5733 = load i32, ptr %45, align 4, !tbaa !9
  %5734 = and i32 %5733, %5732
  store i32 %5734, ptr %45, align 4, !tbaa !9
  %5735 = load i32, ptr %45, align 4, !tbaa !9
  %5736 = icmp ne i32 %5735, 0
  br i1 %5736, label %5737, label %5756

5737:                                             ; preds = %5723
  %5738 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5738, ptr %45, align 4, !tbaa !9
  %5739 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5739, ptr %46, align 4, !tbaa !9
  %5740 = load ptr, ptr %5, align 8, !tbaa !5
  %5741 = getelementptr inbounds %struct.w2c_hermes, ptr %5740, i32 0, i32 6
  %5742 = load i32, ptr %46, align 4, !tbaa !9
  %5743 = zext i32 %5742 to i64
  %5744 = add i64 %5743, 5764
  %5745 = call i32 @i32_load8_u(ptr noundef %5741, i64 noundef %5744)
  store i32 %5745, ptr %46, align 4, !tbaa !9
  %5746 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %5746, ptr %12, align 4, !tbaa !9
  store i32 251, ptr %47, align 4, !tbaa !9
  %5747 = load i32, ptr %47, align 4, !tbaa !9
  %5748 = load i32, ptr %46, align 4, !tbaa !9
  %5749 = and i32 %5748, %5747
  store i32 %5749, ptr %46, align 4, !tbaa !9
  %5750 = load ptr, ptr %5, align 8, !tbaa !5
  %5751 = getelementptr inbounds %struct.w2c_hermes, ptr %5750, i32 0, i32 6
  %5752 = load i32, ptr %45, align 4, !tbaa !9
  %5753 = zext i32 %5752 to i64
  %5754 = add i64 %5753, 5764
  %5755 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %5751, i64 noundef %5754, i32 noundef %5755)
  br label %5756

5756:                                             ; preds = %5737, %5723
  %5757 = load ptr, ptr %5, align 8, !tbaa !5
  %5758 = getelementptr inbounds %struct.w2c_hermes, ptr %5757, i32 0, i32 1
  %5759 = load ptr, ptr %5758, align 8, !tbaa !22
  %5760 = call i32 @w2c_hermes__import_test_and_clear_timeout(ptr noundef %5759)
  store i32 %5760, ptr %45, align 4, !tbaa !9
  %5761 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5761, ptr %46, align 4, !tbaa !9
  %5762 = load i32, ptr %46, align 4, !tbaa !9
  %5763 = load i32, ptr %45, align 4, !tbaa !9
  %5764 = or i32 %5763, %5762
  store i32 %5764, ptr %45, align 4, !tbaa !9
  %5765 = load i32, ptr %45, align 4, !tbaa !9
  %5766 = icmp ne i32 %5765, 0
  %5767 = xor i1 %5766, true
  %5768 = zext i1 %5767 to i32
  store i32 %5768, ptr %45, align 4, !tbaa !9
  %5769 = load i32, ptr %45, align 4, !tbaa !9
  %5770 = icmp ne i32 %5769, 0
  br i1 %5770, label %5771, label %5772

5771:                                             ; preds = %5756
  br label %6465

5772:                                             ; preds = %5756
  %5773 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5773, ptr %45, align 4, !tbaa !9
  %5774 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5774, ptr %46, 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 %45, align 4, !tbaa !9
  %5778 = zext i32 %5777 to i64
  %5779 = add i64 %5778, 5808
  %5780 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5776, i64 noundef %5779, i32 noundef %5780)
  %5781 = load ptr, ptr %5, align 8, !tbaa !5
  %5782 = getelementptr inbounds %struct.w2c_hermes, ptr %5781, i32 0, i32 3
  %5783 = load i32, ptr %5782, align 8, !tbaa !15
  store i32 %5783, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %5784 = load i32, ptr %46, align 4, !tbaa !9
  %5785 = load i32, ptr %45, align 4, !tbaa !9
  %5786 = sub i32 %5785, %5784
  store i32 %5786, ptr %45, align 4, !tbaa !9
  %5787 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5787, ptr %14, align 4, !tbaa !9
  %5788 = load i32, ptr %45, align 4, !tbaa !9
  %5789 = load ptr, ptr %5, align 8, !tbaa !5
  %5790 = getelementptr inbounds %struct.w2c_hermes, ptr %5789, i32 0, i32 3
  store i32 %5788, ptr %5790, align 8, !tbaa !15
  %5791 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5791, ptr %45, align 4, !tbaa !9
  store i32 35, ptr %46, align 4, !tbaa !9
  %5792 = load ptr, ptr %5, align 8, !tbaa !5
  %5793 = getelementptr inbounds %struct.w2c_hermes, ptr %5792, i32 0, i32 6
  %5794 = load i32, ptr %45, align 4, !tbaa !9
  %5795 = zext i32 %5794 to i64
  %5796 = add i64 %5795, 12
  %5797 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5793, i64 noundef %5796, i32 noundef %5797)
  %5798 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5798, ptr %45, align 4, !tbaa !9
  store i32 57134, ptr %46, align 4, !tbaa !9
  %5799 = load ptr, ptr %5, align 8, !tbaa !5
  %5800 = getelementptr inbounds %struct.w2c_hermes, ptr %5799, i32 0, i32 6
  %5801 = load i32, ptr %45, align 4, !tbaa !9
  %5802 = zext i32 %5801 to i64
  %5803 = add i64 %5802, 8
  %5804 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5800, i64 noundef %5803, i32 noundef %5804)
  %5805 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5805, ptr %45, align 4, !tbaa !9
  %5806 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5806, ptr %46, align 4, !tbaa !9
  %5807 = load ptr, ptr %5, align 8, !tbaa !5
  %5808 = getelementptr inbounds %struct.w2c_hermes, ptr %5807, i32 0, i32 6
  %5809 = load i32, ptr %46, align 4, !tbaa !9
  %5810 = zext i32 %5809 to i64
  %5811 = add i64 %5810, 8
  %5812 = call i64 @i64_load(ptr noundef %5808, i64 noundef %5811)
  store i64 %5812, ptr %55, align 8, !tbaa !11
  %5813 = load ptr, ptr %5, align 8, !tbaa !5
  %5814 = getelementptr inbounds %struct.w2c_hermes, ptr %5813, i32 0, i32 6
  %5815 = load i32, ptr %45, align 4, !tbaa !9
  %5816 = zext i32 %5815 to i64
  %5817 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5814, i64 noundef %5816, i64 noundef %5817)
  store i32 0, ptr %45, align 4, !tbaa !9
  %5818 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5818, ptr %17, align 4, !tbaa !9
  %5819 = load ptr, ptr %5, align 8, !tbaa !5
  %5820 = getelementptr inbounds %struct.w2c_hermes, ptr %5819, i32 0, i32 3
  %5821 = load i32, ptr %5820, align 8, !tbaa !15
  store i32 %5821, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %5822 = load i32, ptr %46, align 4, !tbaa !9
  %5823 = load i32, ptr %45, align 4, !tbaa !9
  %5824 = sub i32 %5823, %5822
  store i32 %5824, ptr %45, align 4, !tbaa !9
  %5825 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5825, ptr %15, align 4, !tbaa !9
  %5826 = load i32, ptr %45, align 4, !tbaa !9
  %5827 = load ptr, ptr %5, align 8, !tbaa !5
  %5828 = getelementptr inbounds %struct.w2c_hermes, ptr %5827, i32 0, i32 3
  store i32 %5826, ptr %5828, align 8, !tbaa !15
  %5829 = load ptr, ptr %5, align 8, !tbaa !5
  %5830 = getelementptr inbounds %struct.w2c_hermes, ptr %5829, i32 0, i32 3
  %5831 = load i32, ptr %5830, align 8, !tbaa !15
  store i32 %5831, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %5832 = load i32, ptr %46, align 4, !tbaa !9
  %5833 = load i32, ptr %45, align 4, !tbaa !9
  %5834 = sub i32 %5833, %5832
  store i32 %5834, ptr %45, align 4, !tbaa !9
  %5835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5835, ptr %7, align 4, !tbaa !9
  %5836 = load i32, ptr %45, align 4, !tbaa !9
  %5837 = load ptr, ptr %5, align 8, !tbaa !5
  %5838 = getelementptr inbounds %struct.w2c_hermes, ptr %5837, i32 0, i32 3
  store i32 %5836, ptr %5838, align 8, !tbaa !15
  %5839 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5839, ptr %45, align 4, !tbaa !9
  %5840 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5840, ptr %46, align 4, !tbaa !9
  store i32 160, ptr %47, align 4, !tbaa !9
  %5841 = load i32, ptr %47, align 4, !tbaa !9
  %5842 = load i32, ptr %46, align 4, !tbaa !9
  %5843 = add i32 %5842, %5841
  store i32 %5843, ptr %46, align 4, !tbaa !9
  %5844 = load ptr, ptr %5, align 8, !tbaa !5
  %5845 = getelementptr inbounds %struct.w2c_hermes, ptr %5844, i32 0, i32 6
  %5846 = load i32, ptr %45, align 4, !tbaa !9
  %5847 = zext i32 %5846 to i64
  %5848 = add i64 %5847, 12
  %5849 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5845, i64 noundef %5848, i32 noundef %5849)
  %5850 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5850, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %5851 = load ptr, ptr %5, align 8, !tbaa !5
  %5852 = getelementptr inbounds %struct.w2c_hermes, ptr %5851, i32 0, i32 6
  %5853 = load i32, ptr %45, align 4, !tbaa !9
  %5854 = zext i32 %5853 to i64
  %5855 = add i64 %5854, 11
  %5856 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %5852, i64 noundef %5855, i32 noundef %5856)
  %5857 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5857, ptr %45, align 4, !tbaa !9
  %5858 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5858, ptr %46, align 4, !tbaa !9
  store i32 5656, ptr %47, align 4, !tbaa !9
  %5859 = load i32, ptr %47, align 4, !tbaa !9
  %5860 = load i32, ptr %46, align 4, !tbaa !9
  %5861 = add i32 %5860, %5859
  store i32 %5861, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %5865 = zext i32 %5864 to i64
  %5866 = add i64 %5865, 4
  %5867 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5863, i64 noundef %5866, i32 noundef %5867)
  %5868 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5868, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %5869 = load i32, ptr %46, align 4, !tbaa !9
  %5870 = load i32, ptr %45, align 4, !tbaa !9
  %5871 = add i32 %5870, %5869
  store i32 %5871, ptr %45, align 4, !tbaa !9
  %5872 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5872, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %5873 = load i32, ptr %47, align 4, !tbaa !9
  %5874 = load i32, ptr %46, align 4, !tbaa !9
  %5875 = add i32 %5874, %5873
  store i32 %5875, ptr %46, align 4, !tbaa !9
  %5876 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5876, ptr %47, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %5877 = load i32, ptr %48, align 4, !tbaa !9
  %5878 = load i32, ptr %47, align 4, !tbaa !9
  %5879 = add i32 %5878, %5877
  store i32 %5879, ptr %47, align 4, !tbaa !9
  %5880 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5880, ptr %48, align 4, !tbaa !9
  store i32 11, ptr %49, align 4, !tbaa !9
  %5881 = load i32, ptr %49, align 4, !tbaa !9
  %5882 = load i32, ptr %48, align 4, !tbaa !9
  %5883 = add i32 %5882, %5881
  store i32 %5883, ptr %48, align 4, !tbaa !9
  %5884 = load ptr, ptr %5, align 8, !tbaa !5
  %5885 = load i32, ptr %45, align 4, !tbaa !9
  %5886 = load i32, ptr %46, align 4, !tbaa !9
  %5887 = load i32, ptr %47, align 4, !tbaa !9
  %5888 = load i32, ptr %48, align 4, !tbaa !9
  %5889 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x2A0x20hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AmakeA0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x2C0x20true0x2C0x200x28hermes0x3A0x3Avm0x3A0x3AHasFinalizer0x2910x2C0x200x28hermes0x3A0x3Avm0x3A0x3ALongLived0x2900x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x2C0x20bool0x260x3E0x28unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x260x260x2C0x20bool0x260x29(ptr noundef %5884, i32 noundef %5885, i32 noundef %5886, i32 noundef %5887, i32 noundef %5888)
  store i32 %5889, ptr %45, align 4, !tbaa !9
  %5890 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5890, ptr %6, align 4, !tbaa !9
  %5891 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5891, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %5892 = load i32, ptr %46, align 4, !tbaa !9
  %5893 = load i32, ptr %45, align 4, !tbaa !9
  %5894 = add i32 %5893, %5892
  store i32 %5894, ptr %45, align 4, !tbaa !9
  %5895 = load i32, ptr %45, align 4, !tbaa !9
  %5896 = load ptr, ptr %5, align 8, !tbaa !5
  %5897 = getelementptr inbounds %struct.w2c_hermes, ptr %5896, i32 0, i32 3
  store i32 %5895, ptr %5897, align 8, !tbaa !15
  %5898 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5898, ptr %45, align 4, !tbaa !9
  %5899 = load i32, ptr %45, align 4, !tbaa !9
  %5900 = zext i32 %5899 to i64
  store i64 %5900, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %5901 = load i64, ptr %55, align 8, !tbaa !11
  %5902 = load i64, ptr %54, align 8, !tbaa !11
  %5903 = or i64 %5902, %5901
  store i64 %5903, ptr %54, align 8, !tbaa !11
  %5904 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %5904, ptr %39, align 8, !tbaa !11
  %5905 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5905, ptr %45, align 4, !tbaa !9
  %5906 = load ptr, ptr %5, align 8, !tbaa !5
  %5907 = getelementptr inbounds %struct.w2c_hermes, ptr %5906, i32 0, i32 6
  %5908 = load i32, ptr %45, align 4, !tbaa !9
  %5909 = zext i32 %5908 to i64
  %5910 = add i64 %5909, 4
  %5911 = call i32 @i32_load(ptr noundef %5907, i64 noundef %5910)
  store i32 %5911, ptr %45, align 4, !tbaa !9
  %5912 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5912, ptr %6, align 4, !tbaa !9
  %5913 = load ptr, ptr %5, align 8, !tbaa !5
  %5914 = getelementptr inbounds %struct.w2c_hermes, ptr %5913, i32 0, i32 6
  %5915 = load i32, ptr %45, align 4, !tbaa !9
  %5916 = zext i32 %5915 to i64
  %5917 = add i64 %5916, 164
  %5918 = call i32 @i32_load(ptr noundef %5914, i64 noundef %5917)
  store i32 %5918, ptr %45, align 4, !tbaa !9
  %5919 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5919, ptr %22, align 4, !tbaa !9
  %5920 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5920, ptr %46, align 4, !tbaa !9
  %5921 = load ptr, ptr %5, align 8, !tbaa !5
  %5922 = getelementptr inbounds %struct.w2c_hermes, ptr %5921, i32 0, i32 6
  %5923 = load i32, ptr %46, align 4, !tbaa !9
  %5924 = zext i32 %5923 to i64
  %5925 = add i64 %5924, 168
  %5926 = call i32 @i32_load(ptr noundef %5922, i64 noundef %5925)
  store i32 %5926, ptr %46, align 4, !tbaa !9
  %5927 = load i32, ptr %45, align 4, !tbaa !9
  %5928 = load i32, ptr %46, align 4, !tbaa !9
  %5929 = icmp ult i32 %5927, %5928
  %5930 = zext i1 %5929 to i32
  store i32 %5930, ptr %45, align 4, !tbaa !9
  %5931 = load i32, ptr %45, align 4, !tbaa !9
  %5932 = icmp ne i32 %5931, 0
  br i1 %5932, label %5933, label %5952

5933:                                             ; preds = %5772
  %5934 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5934, ptr %45, align 4, !tbaa !9
  %5935 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %5935, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %5936 = load i32, ptr %47, align 4, !tbaa !9
  %5937 = load i32, ptr %46, align 4, !tbaa !9
  %5938 = add i32 %5937, %5936
  store i32 %5938, ptr %46, align 4, !tbaa !9
  %5939 = load ptr, ptr %5, align 8, !tbaa !5
  %5940 = getelementptr inbounds %struct.w2c_hermes, ptr %5939, i32 0, i32 6
  %5941 = load i32, ptr %45, align 4, !tbaa !9
  %5942 = zext i32 %5941 to i64
  %5943 = add i64 %5942, 164
  %5944 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5940, i64 noundef %5943, i32 noundef %5944)
  %5945 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %5945, ptr %45, align 4, !tbaa !9
  %5946 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %5946, ptr %55, align 8, !tbaa !11
  %5947 = load ptr, ptr %5, align 8, !tbaa !5
  %5948 = getelementptr inbounds %struct.w2c_hermes, ptr %5947, i32 0, i32 6
  %5949 = load i32, ptr %45, align 4, !tbaa !9
  %5950 = zext i32 %5949 to i64
  %5951 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5948, i64 noundef %5950, i64 noundef %5951)
  br label %5960

5952:                                             ; preds = %5772
  %5953 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %5953, ptr %45, align 4, !tbaa !9
  %5954 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %5954, ptr %55, align 8, !tbaa !11
  %5955 = load ptr, ptr %5, align 8, !tbaa !5
  %5956 = load i32, ptr %45, align 4, !tbaa !9
  %5957 = load i64, ptr %55, align 8, !tbaa !11
  %5958 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %5955, i32 noundef %5956, i64 noundef %5957)
  store i32 %5958, ptr %45, align 4, !tbaa !9
  %5959 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5959, ptr %22, align 4, !tbaa !9
  br label %5960

5960:                                             ; preds = %5952, %5933
  %5961 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5961, ptr %45, align 4, !tbaa !9
  %5962 = load ptr, ptr %5, align 8, !tbaa !5
  %5963 = getelementptr inbounds %struct.w2c_hermes, ptr %5962, i32 0, i32 6
  %5964 = load i32, ptr %45, align 4, !tbaa !9
  %5965 = zext i32 %5964 to i64
  %5966 = call i32 @i32_load(ptr noundef %5963, i64 noundef %5965)
  store i32 %5966, ptr %45, align 4, !tbaa !9
  %5967 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5967, ptr %7, align 4, !tbaa !9
  %5968 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5968, ptr %45, 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 %45, align 4, !tbaa !9
  %5972 = zext i32 %5971 to i64
  %5973 = add i64 %5972, 4
  %5974 = call i32 @i32_load(ptr noundef %5970, i64 noundef %5973)
  store i32 %5974, ptr %45, align 4, !tbaa !9
  %5975 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %5975, ptr %12, align 4, !tbaa !9
  store i32 65535, ptr %46, align 4, !tbaa !9
  %5976 = load i32, ptr %45, align 4, !tbaa !9
  %5977 = load i32, ptr %46, align 4, !tbaa !9
  %5978 = icmp ule i32 %5976, %5977
  %5979 = zext i1 %5978 to i32
  store i32 %5979, ptr %45, align 4, !tbaa !9
  %5980 = load i32, ptr %45, align 4, !tbaa !9
  %5981 = icmp ne i32 %5980, 0
  br i1 %5981, label %5982, label %6026

5982:                                             ; preds = %5960
  %5983 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5983, ptr %45, align 4, !tbaa !9
  %5984 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %5984, ptr %46, align 4, !tbaa !9
  %5985 = load ptr, ptr %5, align 8, !tbaa !5
  %5986 = getelementptr inbounds %struct.w2c_hermes, ptr %5985, i32 0, i32 6
  %5987 = load i32, ptr %45, align 4, !tbaa !9
  %5988 = zext i32 %5987 to i64
  %5989 = add i64 %5988, 36
  %5990 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5986, i64 noundef %5989, i32 noundef %5990)
  %5991 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5991, ptr %45, align 4, !tbaa !9
  %5992 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %5992, ptr %46, align 4, !tbaa !9
  %5993 = load ptr, ptr %5, align 8, !tbaa !5
  %5994 = getelementptr inbounds %struct.w2c_hermes, ptr %5993, i32 0, i32 6
  %5995 = load i32, ptr %45, align 4, !tbaa !9
  %5996 = zext i32 %5995 to i64
  %5997 = add i64 %5996, 32
  %5998 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5994, i64 noundef %5997, i32 noundef %5998)
  %5999 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %5999, ptr %45, align 4, !tbaa !9
  %6000 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6000, ptr %46, align 4, !tbaa !9
  %6001 = load ptr, ptr %5, align 8, !tbaa !5
  %6002 = getelementptr inbounds %struct.w2c_hermes, ptr %6001, i32 0, i32 6
  %6003 = load i32, ptr %46, align 4, !tbaa !9
  %6004 = zext i32 %6003 to i64
  %6005 = add i64 %6004, 32
  %6006 = call i64 @i64_load(ptr noundef %6002, i64 noundef %6005)
  store i64 %6006, ptr %55, align 8, !tbaa !11
  %6007 = load ptr, ptr %5, align 8, !tbaa !5
  %6008 = getelementptr inbounds %struct.w2c_hermes, ptr %6007, i32 0, i32 6
  %6009 = load i32, ptr %45, align 4, !tbaa !9
  %6010 = zext i32 %6009 to i64
  %6011 = add i64 %6010, 8
  %6012 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6008, i64 noundef %6011, i64 noundef %6012)
  %6013 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6013, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %6014 = load i32, ptr %46, align 4, !tbaa !9
  %6015 = load i32, ptr %45, align 4, !tbaa !9
  %6016 = add i32 %6015, %6014
  store i32 %6016, ptr %45, align 4, !tbaa !9
  %6017 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6017, ptr %46, align 4, !tbaa !9
  %6018 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6018, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %6019 = load i32, ptr %48, align 4, !tbaa !9
  %6020 = load i32, ptr %47, align 4, !tbaa !9
  %6021 = add i32 %6020, %6019
  store i32 %6021, ptr %47, align 4, !tbaa !9
  %6022 = load ptr, ptr %5, align 8, !tbaa !5
  %6023 = load i32, ptr %45, align 4, !tbaa !9
  %6024 = load i32, ptr %46, align 4, !tbaa !9
  %6025 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ADynamicStringPrimitive0x3Cchar0x2C0x20false0x3E0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar0x3E0x29(ptr noundef %6022, i32 noundef %6023, i32 noundef %6024, i32 noundef %6025)
  br label %6318

6026:                                             ; preds = %5960
  %6027 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6027, ptr %45, align 4, !tbaa !9
  store i32 2147483632, ptr %46, align 4, !tbaa !9
  %6028 = load i32, ptr %45, align 4, !tbaa !9
  %6029 = load i32, ptr %46, align 4, !tbaa !9
  %6030 = icmp uge i32 %6028, %6029
  %6031 = zext i1 %6030 to i32
  store i32 %6031, ptr %45, align 4, !tbaa !9
  %6032 = load i32, ptr %45, align 4, !tbaa !9
  %6033 = icmp ne i32 %6032, 0
  br i1 %6033, label %6034, label %6035

6034:                                             ; preds = %6026
  br label %6437

6035:                                             ; preds = %6026
  %6036 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6036, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %6037 = load i32, ptr %46, align 4, !tbaa !9
  %6038 = load i32, ptr %45, align 4, !tbaa !9
  %6039 = or i32 %6038, %6037
  store i32 %6039, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %6040 = load i32, ptr %46, align 4, !tbaa !9
  %6041 = load i32, ptr %45, align 4, !tbaa !9
  %6042 = add i32 %6041, %6040
  store i32 %6042, ptr %45, align 4, !tbaa !9
  %6043 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6043, ptr %6, align 4, !tbaa !9
  %6044 = load ptr, ptr %5, align 8, !tbaa !5
  %6045 = load i32, ptr %45, align 4, !tbaa !9
  %6046 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %6044, i32 noundef %6045)
  store i32 %6046, ptr %45, align 4, !tbaa !9
  %6047 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6047, ptr %13, align 4, !tbaa !9
  %6048 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6048, ptr %45, align 4, !tbaa !9
  %6049 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6049, ptr %46, align 4, !tbaa !9
  store i32 -2147483648, ptr %47, align 4, !tbaa !9
  %6050 = load i32, ptr %47, align 4, !tbaa !9
  %6051 = load i32, ptr %46, align 4, !tbaa !9
  %6052 = or i32 %6051, %6050
  store i32 %6052, ptr %46, align 4, !tbaa !9
  %6053 = load ptr, ptr %5, align 8, !tbaa !5
  %6054 = getelementptr inbounds %struct.w2c_hermes, ptr %6053, i32 0, i32 6
  %6055 = load i32, ptr %45, align 4, !tbaa !9
  %6056 = zext i32 %6055 to i64
  %6057 = add i64 %6056, 40
  %6058 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6054, i64 noundef %6057, i32 noundef %6058)
  %6059 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6059, ptr %45, align 4, !tbaa !9
  %6060 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6060, ptr %46, align 4, !tbaa !9
  %6061 = load ptr, ptr %5, align 8, !tbaa !5
  %6062 = getelementptr inbounds %struct.w2c_hermes, ptr %6061, i32 0, i32 6
  %6063 = load i32, ptr %45, align 4, !tbaa !9
  %6064 = zext i32 %6063 to i64
  %6065 = add i64 %6064, 32
  %6066 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6062, i64 noundef %6065, i32 noundef %6066)
  %6067 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6067, ptr %45, align 4, !tbaa !9
  %6068 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6068, ptr %46, align 4, !tbaa !9
  %6069 = load ptr, ptr %5, align 8, !tbaa !5
  %6070 = getelementptr inbounds %struct.w2c_hermes, ptr %6069, i32 0, i32 6
  %6071 = load i32, ptr %45, align 4, !tbaa !9
  %6072 = zext i32 %6071 to i64
  %6073 = add i64 %6072, 36
  %6074 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6070, i64 noundef %6073, i32 noundef %6074)
  %6075 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6075, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %6076 = load i32, ptr %46, align 4, !tbaa !9
  %6077 = load i32, ptr %45, align 4, !tbaa !9
  %6078 = and i32 %6077, %6076
  store i32 %6078, ptr %45, align 4, !tbaa !9
  %6079 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6079, ptr %8, align 4, !tbaa !9
  %6080 = load i32, ptr %45, align 4, !tbaa !9
  %6081 = icmp ne i32 %6080, 0
  %6082 = xor i1 %6081, true
  %6083 = zext i1 %6082 to i32
  store i32 %6083, ptr %45, align 4, !tbaa !9
  %6084 = load i32, ptr %45, align 4, !tbaa !9
  %6085 = icmp ne i32 %6084, 0
  br i1 %6085, label %6086, label %6089

6086:                                             ; preds = %6035
  %6087 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6087, ptr %45, align 4, !tbaa !9
  %6088 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6088, ptr %6, align 4, !tbaa !9
  br label %6129

6089:                                             ; preds = %6035
  %6090 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6090, ptr %45, align 4, !tbaa !9
  %6091 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6091, ptr %6, align 4, !tbaa !9
  br label %6092

6092:                                             ; preds = %6127, %6089
  %6093 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6093, ptr %45, align 4, !tbaa !9
  %6094 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6094, ptr %46, 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 %46, align 4, !tbaa !9
  %6098 = zext i32 %6097 to i64
  %6099 = call i32 @i32_load8_u(ptr noundef %6096, i64 noundef %6098)
  store i32 %6099, ptr %46, align 4, !tbaa !9
  %6100 = load ptr, ptr %5, align 8, !tbaa !5
  %6101 = getelementptr inbounds %struct.w2c_hermes, ptr %6100, i32 0, i32 6
  %6102 = load i32, ptr %45, align 4, !tbaa !9
  %6103 = zext i32 %6102 to i64
  %6104 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6101, i64 noundef %6103, i32 noundef %6104)
  %6105 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6105, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %6106 = load i32, ptr %46, align 4, !tbaa !9
  %6107 = load i32, ptr %45, align 4, !tbaa !9
  %6108 = add i32 %6107, %6106
  store i32 %6108, ptr %45, align 4, !tbaa !9
  %6109 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6109, ptr %13, align 4, !tbaa !9
  %6110 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6110, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %6111 = load i32, ptr %46, align 4, !tbaa !9
  %6112 = load i32, ptr %45, align 4, !tbaa !9
  %6113 = add i32 %6112, %6111
  store i32 %6113, ptr %45, align 4, !tbaa !9
  %6114 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6114, ptr %6, align 4, !tbaa !9
  %6115 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6115, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %6116 = load i32, ptr %46, align 4, !tbaa !9
  %6117 = load i32, ptr %45, align 4, !tbaa !9
  %6118 = add i32 %6117, %6116
  store i32 %6118, ptr %45, align 4, !tbaa !9
  %6119 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6119, ptr %17, align 4, !tbaa !9
  %6120 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6120, ptr %46, align 4, !tbaa !9
  %6121 = load i32, ptr %45, align 4, !tbaa !9
  %6122 = load i32, ptr %46, align 4, !tbaa !9
  %6123 = icmp ne i32 %6121, %6122
  %6124 = zext i1 %6123 to i32
  store i32 %6124, ptr %45, align 4, !tbaa !9
  %6125 = load i32, ptr %45, align 4, !tbaa !9
  %6126 = icmp ne i32 %6125, 0
  br i1 %6126, label %6127, label %6128

6127:                                             ; preds = %6092
  br label %6092

6128:                                             ; preds = %6092
  br label %6129

6129:                                             ; preds = %6128, %6086
  %6130 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6130, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %6131 = load i32, ptr %45, align 4, !tbaa !9
  %6132 = load i32, ptr %46, align 4, !tbaa !9
  %6133 = icmp uge i32 %6131, %6132
  %6134 = zext i1 %6133 to i32
  store i32 %6134, ptr %45, align 4, !tbaa !9
  %6135 = load i32, ptr %45, align 4, !tbaa !9
  %6136 = icmp ne i32 %6135, 0
  br i1 %6136, label %6137, label %6274

6137:                                             ; preds = %6129
  %6138 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6138, ptr %45, align 4, !tbaa !9
  %6139 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6139, ptr %46, align 4, !tbaa !9
  %6140 = load i32, ptr %46, align 4, !tbaa !9
  %6141 = load i32, ptr %45, align 4, !tbaa !9
  %6142 = add i32 %6141, %6140
  store i32 %6142, ptr %45, align 4, !tbaa !9
  %6143 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6143, ptr %7, align 4, !tbaa !9
  br label %6144

6144:                                             ; preds = %6272, %6137
  %6145 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6145, ptr %45, align 4, !tbaa !9
  %6146 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6146, ptr %46, align 4, !tbaa !9
  %6147 = load ptr, ptr %5, align 8, !tbaa !5
  %6148 = getelementptr inbounds %struct.w2c_hermes, ptr %6147, i32 0, i32 6
  %6149 = load i32, ptr %46, align 4, !tbaa !9
  %6150 = zext i32 %6149 to i64
  %6151 = call i32 @i32_load8_u(ptr noundef %6148, i64 noundef %6150)
  store i32 %6151, ptr %46, align 4, !tbaa !9
  %6152 = load ptr, ptr %5, align 8, !tbaa !5
  %6153 = getelementptr inbounds %struct.w2c_hermes, ptr %6152, i32 0, i32 6
  %6154 = load i32, ptr %45, align 4, !tbaa !9
  %6155 = zext i32 %6154 to i64
  %6156 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6153, i64 noundef %6155, i32 noundef %6156)
  %6157 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6157, ptr %45, align 4, !tbaa !9
  %6158 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6158, ptr %46, align 4, !tbaa !9
  %6159 = load ptr, ptr %5, align 8, !tbaa !5
  %6160 = getelementptr inbounds %struct.w2c_hermes, ptr %6159, i32 0, i32 6
  %6161 = load i32, ptr %46, align 4, !tbaa !9
  %6162 = zext i32 %6161 to i64
  %6163 = add i64 %6162, 1
  %6164 = call i32 @i32_load8_u(ptr noundef %6160, i64 noundef %6163)
  store i32 %6164, ptr %46, align 4, !tbaa !9
  %6165 = load ptr, ptr %5, align 8, !tbaa !5
  %6166 = getelementptr inbounds %struct.w2c_hermes, ptr %6165, i32 0, i32 6
  %6167 = load i32, ptr %45, align 4, !tbaa !9
  %6168 = zext i32 %6167 to i64
  %6169 = add i64 %6168, 1
  %6170 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6166, i64 noundef %6169, i32 noundef %6170)
  %6171 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6171, ptr %45, align 4, !tbaa !9
  %6172 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6172, ptr %46, align 4, !tbaa !9
  %6173 = load ptr, ptr %5, align 8, !tbaa !5
  %6174 = getelementptr inbounds %struct.w2c_hermes, ptr %6173, i32 0, i32 6
  %6175 = load i32, ptr %46, align 4, !tbaa !9
  %6176 = zext i32 %6175 to i64
  %6177 = add i64 %6176, 2
  %6178 = call i32 @i32_load8_u(ptr noundef %6174, i64 noundef %6177)
  store i32 %6178, ptr %46, align 4, !tbaa !9
  %6179 = load ptr, ptr %5, align 8, !tbaa !5
  %6180 = getelementptr inbounds %struct.w2c_hermes, ptr %6179, i32 0, i32 6
  %6181 = load i32, ptr %45, align 4, !tbaa !9
  %6182 = zext i32 %6181 to i64
  %6183 = add i64 %6182, 2
  %6184 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6180, i64 noundef %6183, i32 noundef %6184)
  %6185 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6185, ptr %45, align 4, !tbaa !9
  %6186 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6186, ptr %46, align 4, !tbaa !9
  %6187 = load ptr, ptr %5, align 8, !tbaa !5
  %6188 = getelementptr inbounds %struct.w2c_hermes, ptr %6187, i32 0, i32 6
  %6189 = load i32, ptr %46, align 4, !tbaa !9
  %6190 = zext i32 %6189 to i64
  %6191 = add i64 %6190, 3
  %6192 = call i32 @i32_load8_u(ptr noundef %6188, i64 noundef %6191)
  store i32 %6192, ptr %46, align 4, !tbaa !9
  %6193 = load ptr, ptr %5, align 8, !tbaa !5
  %6194 = getelementptr inbounds %struct.w2c_hermes, ptr %6193, i32 0, i32 6
  %6195 = load i32, ptr %45, align 4, !tbaa !9
  %6196 = zext i32 %6195 to i64
  %6197 = add i64 %6196, 3
  %6198 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6194, i64 noundef %6197, i32 noundef %6198)
  %6199 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6199, ptr %45, align 4, !tbaa !9
  %6200 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6200, ptr %46, align 4, !tbaa !9
  %6201 = load ptr, ptr %5, align 8, !tbaa !5
  %6202 = getelementptr inbounds %struct.w2c_hermes, ptr %6201, i32 0, i32 6
  %6203 = load i32, ptr %46, align 4, !tbaa !9
  %6204 = zext i32 %6203 to i64
  %6205 = add i64 %6204, 4
  %6206 = call i32 @i32_load8_u(ptr noundef %6202, i64 noundef %6205)
  store i32 %6206, ptr %46, align 4, !tbaa !9
  %6207 = load ptr, ptr %5, align 8, !tbaa !5
  %6208 = getelementptr inbounds %struct.w2c_hermes, ptr %6207, i32 0, i32 6
  %6209 = load i32, ptr %45, align 4, !tbaa !9
  %6210 = zext i32 %6209 to i64
  %6211 = add i64 %6210, 4
  %6212 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6208, i64 noundef %6211, i32 noundef %6212)
  %6213 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6213, ptr %45, align 4, !tbaa !9
  %6214 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6214, ptr %46, align 4, !tbaa !9
  %6215 = load ptr, ptr %5, align 8, !tbaa !5
  %6216 = getelementptr inbounds %struct.w2c_hermes, ptr %6215, i32 0, i32 6
  %6217 = load i32, ptr %46, align 4, !tbaa !9
  %6218 = zext i32 %6217 to i64
  %6219 = add i64 %6218, 5
  %6220 = call i32 @i32_load8_u(ptr noundef %6216, i64 noundef %6219)
  store i32 %6220, ptr %46, align 4, !tbaa !9
  %6221 = load ptr, ptr %5, align 8, !tbaa !5
  %6222 = getelementptr inbounds %struct.w2c_hermes, ptr %6221, i32 0, i32 6
  %6223 = load i32, ptr %45, align 4, !tbaa !9
  %6224 = zext i32 %6223 to i64
  %6225 = add i64 %6224, 5
  %6226 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6222, i64 noundef %6225, i32 noundef %6226)
  %6227 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6227, ptr %45, align 4, !tbaa !9
  %6228 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6228, ptr %46, align 4, !tbaa !9
  %6229 = load ptr, ptr %5, align 8, !tbaa !5
  %6230 = getelementptr inbounds %struct.w2c_hermes, ptr %6229, i32 0, i32 6
  %6231 = load i32, ptr %46, align 4, !tbaa !9
  %6232 = zext i32 %6231 to i64
  %6233 = add i64 %6232, 6
  %6234 = call i32 @i32_load8_u(ptr noundef %6230, i64 noundef %6233)
  store i32 %6234, ptr %46, align 4, !tbaa !9
  %6235 = load ptr, ptr %5, align 8, !tbaa !5
  %6236 = getelementptr inbounds %struct.w2c_hermes, ptr %6235, i32 0, i32 6
  %6237 = load i32, ptr %45, align 4, !tbaa !9
  %6238 = zext i32 %6237 to i64
  %6239 = add i64 %6238, 6
  %6240 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6236, i64 noundef %6239, i32 noundef %6240)
  %6241 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6241, ptr %45, align 4, !tbaa !9
  %6242 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6242, ptr %46, align 4, !tbaa !9
  %6243 = load ptr, ptr %5, align 8, !tbaa !5
  %6244 = getelementptr inbounds %struct.w2c_hermes, ptr %6243, i32 0, i32 6
  %6245 = load i32, ptr %46, align 4, !tbaa !9
  %6246 = zext i32 %6245 to i64
  %6247 = add i64 %6246, 7
  %6248 = call i32 @i32_load8_u(ptr noundef %6244, i64 noundef %6247)
  store i32 %6248, ptr %46, align 4, !tbaa !9
  %6249 = load ptr, ptr %5, align 8, !tbaa !5
  %6250 = getelementptr inbounds %struct.w2c_hermes, ptr %6249, i32 0, i32 6
  %6251 = load i32, ptr %45, align 4, !tbaa !9
  %6252 = zext i32 %6251 to i64
  %6253 = add i64 %6252, 7
  %6254 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6250, i64 noundef %6253, i32 noundef %6254)
  %6255 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6255, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %6256 = load i32, ptr %46, align 4, !tbaa !9
  %6257 = load i32, ptr %45, align 4, !tbaa !9
  %6258 = add i32 %6257, %6256
  store i32 %6258, ptr %45, align 4, !tbaa !9
  %6259 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6259, ptr %13, align 4, !tbaa !9
  %6260 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6260, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %6261 = load i32, ptr %46, align 4, !tbaa !9
  %6262 = load i32, ptr %45, align 4, !tbaa !9
  %6263 = add i32 %6262, %6261
  store i32 %6263, ptr %45, align 4, !tbaa !9
  %6264 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6264, ptr %6, align 4, !tbaa !9
  %6265 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6265, ptr %46, align 4, !tbaa !9
  %6266 = load i32, ptr %45, align 4, !tbaa !9
  %6267 = load i32, ptr %46, align 4, !tbaa !9
  %6268 = icmp ne i32 %6266, %6267
  %6269 = zext i1 %6268 to i32
  store i32 %6269, ptr %45, align 4, !tbaa !9
  %6270 = load i32, ptr %45, align 4, !tbaa !9
  %6271 = icmp ne i32 %6270, 0
  br i1 %6271, label %6272, label %6273

6272:                                             ; preds = %6144
  br label %6144

6273:                                             ; preds = %6144
  br label %6274

6274:                                             ; preds = %6273, %6129
  %6275 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6275, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %6276 = load ptr, ptr %5, align 8, !tbaa !5
  %6277 = getelementptr inbounds %struct.w2c_hermes, ptr %6276, i32 0, i32 6
  %6278 = load i32, ptr %45, align 4, !tbaa !9
  %6279 = zext i32 %6278 to i64
  %6280 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %6277, i64 noundef %6279, i32 noundef %6280)
  %6281 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6281, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %6282 = load i32, ptr %46, align 4, !tbaa !9
  %6283 = load i32, ptr %45, align 4, !tbaa !9
  %6284 = add i32 %6283, %6282
  store i32 %6284, ptr %45, align 4, !tbaa !9
  %6285 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6285, ptr %46, align 4, !tbaa !9
  %6286 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6286, ptr %47, align 4, !tbaa !9
  store i32 32, ptr %48, align 4, !tbaa !9
  %6287 = load i32, ptr %48, align 4, !tbaa !9
  %6288 = load i32, ptr %47, align 4, !tbaa !9
  %6289 = add i32 %6288, %6287
  store i32 %6289, ptr %47, align 4, !tbaa !9
  %6290 = load ptr, ptr %5, align 8, !tbaa !5
  %6291 = load i32, ptr %45, align 4, !tbaa !9
  %6292 = load i32, ptr %46, align 4, !tbaa !9
  %6293 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x20hermes0x3A0x3Avm0x3A0x3AExternalStringPrimitive0x3Cchar0x3E0x3A0x3Acreate0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x260x29(ptr noundef %6290, i32 noundef %6291, i32 noundef %6292, i32 noundef %6293)
  %6294 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6294, ptr %45, align 4, !tbaa !9
  %6295 = load ptr, ptr %5, align 8, !tbaa !5
  %6296 = getelementptr inbounds %struct.w2c_hermes, ptr %6295, i32 0, i32 6
  %6297 = load i32, ptr %45, align 4, !tbaa !9
  %6298 = zext i32 %6297 to i64
  %6299 = add i64 %6298, 43
  %6300 = call i32 @i32_load8_s(ptr noundef %6296, i64 noundef %6299)
  store i32 %6300, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %6301 = load i32, ptr %45, align 4, !tbaa !9
  %6302 = load i32, ptr %46, align 4, !tbaa !9
  %6303 = icmp sge i32 %6301, %6302
  %6304 = zext i1 %6303 to i32
  store i32 %6304, ptr %45, align 4, !tbaa !9
  %6305 = load i32, ptr %45, align 4, !tbaa !9
  %6306 = icmp ne i32 %6305, 0
  br i1 %6306, label %6307, label %6308

6307:                                             ; preds = %6274
  br label %6318

6308:                                             ; preds = %6274
  %6309 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6309, ptr %45, align 4, !tbaa !9
  %6310 = load ptr, ptr %5, align 8, !tbaa !5
  %6311 = getelementptr inbounds %struct.w2c_hermes, ptr %6310, i32 0, i32 6
  %6312 = load i32, ptr %45, align 4, !tbaa !9
  %6313 = zext i32 %6312 to i64
  %6314 = add i64 %6313, 32
  %6315 = call i32 @i32_load(ptr noundef %6311, i64 noundef %6314)
  store i32 %6315, ptr %45, align 4, !tbaa !9
  %6316 = load ptr, ptr %5, align 8, !tbaa !5
  %6317 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %6316, i32 noundef %6317)
  br label %6318

6318:                                             ; preds = %6308, %6307, %5982
  %6319 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6319, ptr %45, align 4, !tbaa !9
  %6320 = load ptr, ptr %5, align 8, !tbaa !5
  %6321 = getelementptr inbounds %struct.w2c_hermes, ptr %6320, i32 0, i32 6
  %6322 = load i32, ptr %45, align 4, !tbaa !9
  %6323 = zext i32 %6322 to i64
  %6324 = add i64 %6323, 16
  %6325 = call i32 @i32_load(ptr noundef %6321, i64 noundef %6324)
  store i32 %6325, ptr %45, align 4, !tbaa !9
  %6326 = load i32, ptr %45, align 4, !tbaa !9
  %6327 = icmp ne i32 %6326, 0
  br i1 %6327, label %6328, label %6429

6328:                                             ; preds = %6318
  %6329 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6329, ptr %45, align 4, !tbaa !9
  %6330 = load ptr, ptr %5, align 8, !tbaa !5
  %6331 = getelementptr inbounds %struct.w2c_hermes, ptr %6330, i32 0, i32 6
  %6332 = load i32, ptr %45, align 4, !tbaa !9
  %6333 = zext i32 %6332 to i64
  %6334 = add i64 %6333, 24
  %6335 = call i64 @i64_load(ptr noundef %6331, i64 noundef %6334)
  store i64 %6335, ptr %54, align 8, !tbaa !11
  %6336 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %6336, ptr %39, align 8, !tbaa !11
  %6337 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6337, ptr %45, align 4, !tbaa !9
  %6338 = load ptr, ptr %5, align 8, !tbaa !5
  %6339 = getelementptr inbounds %struct.w2c_hermes, ptr %6338, i32 0, i32 6
  %6340 = load i32, ptr %45, align 4, !tbaa !9
  %6341 = zext i32 %6340 to i64
  %6342 = add i64 %6341, 4
  %6343 = call i32 @i32_load(ptr noundef %6339, i64 noundef %6342)
  store i32 %6343, ptr %45, align 4, !tbaa !9
  %6344 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6344, ptr %7, align 4, !tbaa !9
  %6345 = load ptr, ptr %5, align 8, !tbaa !5
  %6346 = getelementptr inbounds %struct.w2c_hermes, ptr %6345, i32 0, i32 6
  %6347 = load i32, ptr %45, align 4, !tbaa !9
  %6348 = zext i32 %6347 to i64
  %6349 = add i64 %6348, 164
  %6350 = call i32 @i32_load(ptr noundef %6346, i64 noundef %6349)
  store i32 %6350, ptr %45, align 4, !tbaa !9
  %6351 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6351, ptr %6, align 4, !tbaa !9
  %6352 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6352, ptr %46, align 4, !tbaa !9
  %6353 = load ptr, ptr %5, align 8, !tbaa !5
  %6354 = getelementptr inbounds %struct.w2c_hermes, ptr %6353, i32 0, i32 6
  %6355 = load i32, ptr %46, align 4, !tbaa !9
  %6356 = zext i32 %6355 to i64
  %6357 = add i64 %6356, 168
  %6358 = call i32 @i32_load(ptr noundef %6354, i64 noundef %6357)
  store i32 %6358, ptr %46, align 4, !tbaa !9
  %6359 = load i32, ptr %45, align 4, !tbaa !9
  %6360 = load i32, ptr %46, align 4, !tbaa !9
  %6361 = icmp ult i32 %6359, %6360
  %6362 = zext i1 %6361 to i32
  store i32 %6362, ptr %45, align 4, !tbaa !9
  %6363 = load i32, ptr %45, align 4, !tbaa !9
  %6364 = icmp ne i32 %6363, 0
  br i1 %6364, label %6365, label %6384

6365:                                             ; preds = %6328
  %6366 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6366, ptr %45, align 4, !tbaa !9
  %6367 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6367, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %6368 = load i32, ptr %47, align 4, !tbaa !9
  %6369 = load i32, ptr %46, align 4, !tbaa !9
  %6370 = add i32 %6369, %6368
  store i32 %6370, ptr %46, align 4, !tbaa !9
  %6371 = load ptr, ptr %5, align 8, !tbaa !5
  %6372 = getelementptr inbounds %struct.w2c_hermes, ptr %6371, i32 0, i32 6
  %6373 = load i32, ptr %45, align 4, !tbaa !9
  %6374 = zext i32 %6373 to i64
  %6375 = add i64 %6374, 164
  %6376 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6372, i64 noundef %6375, i32 noundef %6376)
  %6377 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6377, ptr %45, align 4, !tbaa !9
  %6378 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6378, ptr %55, align 8, !tbaa !11
  %6379 = load ptr, ptr %5, align 8, !tbaa !5
  %6380 = getelementptr inbounds %struct.w2c_hermes, ptr %6379, i32 0, i32 6
  %6381 = load i32, ptr %45, align 4, !tbaa !9
  %6382 = zext i32 %6381 to i64
  %6383 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6380, i64 noundef %6382, i64 noundef %6383)
  br label %6392

6384:                                             ; preds = %6328
  %6385 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6385, ptr %45, align 4, !tbaa !9
  %6386 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6386, ptr %55, align 8, !tbaa !11
  %6387 = load ptr, ptr %5, align 8, !tbaa !5
  %6388 = load i32, ptr %45, align 4, !tbaa !9
  %6389 = load i64, ptr %55, align 8, !tbaa !11
  %6390 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %6387, i32 noundef %6388, i64 noundef %6389)
  store i32 %6390, ptr %45, align 4, !tbaa !9
  %6391 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6391, ptr %6, align 4, !tbaa !9
  br label %6392

6392:                                             ; preds = %6384, %6365
  %6393 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6393, ptr %45, align 4, !tbaa !9
  %6394 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6394, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %6395 = load ptr, ptr %5, align 8, !tbaa !5
  %6396 = load i32, ptr %45, align 4, !tbaa !9
  %6397 = load i32, ptr %46, align 4, !tbaa !9
  %6398 = load i32, ptr %47, align 4, !tbaa !9
  %6399 = load i32, ptr %48, align 4, !tbaa !9
  %6400 = load i32, ptr %49, align 4, !tbaa !9
  %6401 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3ArecordStackTrace0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20bool0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %6395, i32 noundef %6396, i32 noundef %6397, i32 noundef %6398, i32 noundef %6399, i32 noundef %6400)
  store i32 %6401, ptr %45, align 4, !tbaa !9
  %6402 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6402, ptr %45, align 4, !tbaa !9
  %6403 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6403, ptr %46, align 4, !tbaa !9
  %6404 = load ptr, ptr %5, align 8, !tbaa !5
  %6405 = load i32, ptr %45, align 4, !tbaa !9
  %6406 = load i32, ptr %46, align 4, !tbaa !9
  %6407 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3AsetupStack0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %6404, i32 noundef %6405, i32 noundef %6406)
  store i32 %6407, ptr %45, align 4, !tbaa !9
  %6408 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6408, ptr %45, align 4, !tbaa !9
  %6409 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6409, ptr %46, align 4, !tbaa !9
  %6410 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6410, ptr %47, align 4, !tbaa !9
  %6411 = load ptr, ptr %5, align 8, !tbaa !5
  %6412 = load i32, ptr %45, align 4, !tbaa !9
  %6413 = load i32, ptr %46, align 4, !tbaa !9
  %6414 = load i32, ptr %47, align 4, !tbaa !9
  %6415 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3AsetMessage0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %6411, i32 noundef %6412, i32 noundef %6413, i32 noundef %6414)
  store i32 %6415, ptr %45, align 4, !tbaa !9
  %6416 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6416, ptr %45, align 4, !tbaa !9
  %6417 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %6417, ptr %46, align 4, !tbaa !9
  %6418 = load ptr, ptr %5, align 8, !tbaa !5
  %6419 = getelementptr inbounds %struct.w2c_hermes, ptr %6418, i32 0, i32 6
  %6420 = load i32, ptr %46, align 4, !tbaa !9
  %6421 = zext i32 %6420 to i64
  %6422 = call i64 @i64_load(ptr noundef %6419, i64 noundef %6421)
  store i64 %6422, ptr %55, align 8, !tbaa !11
  %6423 = load ptr, ptr %5, align 8, !tbaa !5
  %6424 = getelementptr inbounds %struct.w2c_hermes, ptr %6423, i32 0, i32 6
  %6425 = load i32, ptr %45, align 4, !tbaa !9
  %6426 = zext i32 %6425 to i64
  %6427 = add i64 %6426, 704
  %6428 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6424, i64 noundef %6427, i64 noundef %6428)
  br label %6429

6429:                                             ; preds = %6392, %6318
  %6430 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6430, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %6431 = load i32, ptr %46, align 4, !tbaa !9
  %6432 = load i32, ptr %45, align 4, !tbaa !9
  %6433 = add i32 %6432, %6431
  store i32 %6433, ptr %45, align 4, !tbaa !9
  %6434 = load i32, ptr %45, align 4, !tbaa !9
  %6435 = load ptr, ptr %5, align 8, !tbaa !5
  %6436 = getelementptr inbounds %struct.w2c_hermes, ptr %6435, i32 0, i32 3
  store i32 %6434, ptr %6436, align 8, !tbaa !15
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %6439

6437:                                             ; preds = %6034
  %6438 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_abort(ptr noundef %6438)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6439:                                             ; preds = %6429
  %6440 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6440, ptr %7, align 4, !tbaa !9
  %6441 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6441, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %6442 = load i32, ptr %46, align 4, !tbaa !9
  %6443 = load i32, ptr %45, align 4, !tbaa !9
  %6444 = add i32 %6443, %6442
  store i32 %6444, ptr %45, align 4, !tbaa !9
  %6445 = load i32, ptr %45, align 4, !tbaa !9
  %6446 = load ptr, ptr %5, align 8, !tbaa !5
  %6447 = getelementptr inbounds %struct.w2c_hermes, ptr %6446, i32 0, i32 3
  store i32 %6445, ptr %6447, align 8, !tbaa !15
  %6448 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6448, ptr %45, align 4, !tbaa !9
  %6449 = load ptr, ptr %5, align 8, !tbaa !5
  %6450 = getelementptr inbounds %struct.w2c_hermes, ptr %6449, i32 0, i32 6
  %6451 = load i32, ptr %45, align 4, !tbaa !9
  %6452 = zext i32 %6451 to i64
  %6453 = add i64 %6452, 5808
  %6454 = call i32 @i32_load(ptr noundef %6450, i64 noundef %6453)
  store i32 %6454, ptr %45, align 4, !tbaa !9
  %6455 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6455, ptr %6, align 4, !tbaa !9
  %6456 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6456, ptr %45, align 4, !tbaa !9
  %6457 = load i32, ptr %45, align 4, !tbaa !9
  %6458 = icmp ne i32 %6457, 0
  %6459 = xor i1 %6458, true
  %6460 = zext i1 %6459 to i32
  store i32 %6460, ptr %45, align 4, !tbaa !9
  %6461 = load i32, ptr %45, align 4, !tbaa !9
  %6462 = icmp ne i32 %6461, 0
  br i1 %6462, label %6463, label %6464

6463:                                             ; preds = %6439
  br label %43136

6464:                                             ; preds = %6439
  br label %6465

6465:                                             ; preds = %6464, %5771, %5722
  %6466 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6466, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %6467 = load ptr, ptr %5, align 8, !tbaa !5
  %6468 = getelementptr inbounds %struct.w2c_hermes, ptr %6467, i32 0, i32 6
  %6469 = load i32, ptr %45, align 4, !tbaa !9
  %6470 = zext i32 %6469 to i64
  %6471 = add i64 %6470, 516
  %6472 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6468, i64 noundef %6471, i32 noundef %6472)
  %6473 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6473, ptr %45, align 4, !tbaa !9
  %6474 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6474, ptr %46, align 4, !tbaa !9
  %6475 = load ptr, ptr %5, align 8, !tbaa !5
  %6476 = getelementptr inbounds %struct.w2c_hermes, ptr %6475, i32 0, i32 6
  %6477 = load i32, ptr %45, align 4, !tbaa !9
  %6478 = zext i32 %6477 to i64
  %6479 = add i64 %6478, 512
  %6480 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6476, i64 noundef %6479, i32 noundef %6480)
  %6481 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6481, ptr %45, align 4, !tbaa !9
  %6482 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6482, ptr %46, 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 %45, align 4, !tbaa !9
  %6486 = zext i32 %6485 to i64
  %6487 = add i64 %6486, 508
  %6488 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6484, i64 noundef %6487, i32 noundef %6488)
  %6489 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6489, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %6490 = load i32, ptr %46, align 4, !tbaa !9
  %6491 = load i32, ptr %45, align 4, !tbaa !9
  %6492 = add i32 %6491, %6490
  store i32 %6492, ptr %45, align 4, !tbaa !9
  %6493 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6493, ptr %6, align 4, !tbaa !9
  br label %2945

6494:                                             ; preds = %2997
  %6495 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6495, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %6496 = load i32, ptr %46, align 4, !tbaa !9
  %6497 = load i32, ptr %45, align 4, !tbaa !9
  %6498 = add i32 %6497, %6496
  store i32 %6498, ptr %45, align 4, !tbaa !9
  %6499 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6499, ptr %6, align 4, !tbaa !9
  br label %2945

6500:                                             ; preds = %2998
  store i32 54133, ptr %45, align 4, !tbaa !9
  %6501 = load ptr, ptr %5, align 8, !tbaa !5
  %6502 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef %6501, i32 noundef %6502)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6503:                                             ; preds = %2999
  %6504 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6504, ptr %45, align 4, !tbaa !9
  %6505 = load ptr, ptr %5, align 8, !tbaa !5
  %6506 = getelementptr inbounds %struct.w2c_hermes, ptr %6505, i32 0, i32 6
  %6507 = load i32, ptr %45, align 4, !tbaa !9
  %6508 = zext i32 %6507 to i64
  %6509 = add i64 %6508, 3
  %6510 = call i32 @i32_load16_u(ptr noundef %6506, i64 noundef %6509)
  store i32 %6510, ptr %45, align 4, !tbaa !9
  %6511 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6511, ptr %8, align 4, !tbaa !9
  %6512 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6512, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %6513 = load i32, ptr %46, align 4, !tbaa !9
  %6514 = load i32, ptr %45, align 4, !tbaa !9
  %6515 = add i32 %6514, %6513
  store i32 %6515, ptr %45, align 4, !tbaa !9
  br label %6529

6516:                                             ; preds = %3000
  %6517 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6517, ptr %45, align 4, !tbaa !9
  %6518 = load ptr, ptr %5, align 8, !tbaa !5
  %6519 = getelementptr inbounds %struct.w2c_hermes, ptr %6518, i32 0, i32 6
  %6520 = load i32, ptr %45, align 4, !tbaa !9
  %6521 = zext i32 %6520 to i64
  %6522 = add i64 %6521, 3
  %6523 = call i32 @i32_load(ptr noundef %6519, i64 noundef %6522)
  store i32 %6523, ptr %45, align 4, !tbaa !9
  %6524 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6524, ptr %8, align 4, !tbaa !9
  %6525 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6525, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %6526 = load i32, ptr %46, align 4, !tbaa !9
  %6527 = load i32, ptr %45, align 4, !tbaa !9
  %6528 = add i32 %6527, %6526
  store i32 %6528, ptr %45, align 4, !tbaa !9
  br label %6529

6529:                                             ; preds = %6516, %6503
  %6530 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6530, ptr %7, align 4, !tbaa !9
  %6531 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6531, ptr %45, align 4, !tbaa !9
  %6532 = load ptr, ptr %5, align 8, !tbaa !5
  %6533 = getelementptr inbounds %struct.w2c_hermes, ptr %6532, i32 0, i32 6
  %6534 = load i32, ptr %45, align 4, !tbaa !9
  %6535 = zext i32 %6534 to i64
  %6536 = call i32 @i32_load(ptr noundef %6533, i64 noundef %6535)
  store i32 %6536, ptr %45, align 4, !tbaa !9
  %6537 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6537, ptr %14, align 4, !tbaa !9
  %6538 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6538, ptr %45, align 4, !tbaa !9
  %6539 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6539, ptr %46, align 4, !tbaa !9
  %6540 = load ptr, ptr %5, align 8, !tbaa !5
  %6541 = getelementptr inbounds %struct.w2c_hermes, ptr %6540, i32 0, i32 6
  %6542 = load i32, ptr %45, align 4, !tbaa !9
  %6543 = zext i32 %6542 to i64
  %6544 = add i64 %6543, 5808
  %6545 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6541, i64 noundef %6544, i32 noundef %6545)
  %6546 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6546, ptr %45, align 4, !tbaa !9
  %6547 = load ptr, ptr %5, align 8, !tbaa !5
  %6548 = getelementptr inbounds %struct.w2c_hermes, ptr %6547, i32 0, i32 6
  %6549 = load i32, ptr %45, align 4, !tbaa !9
  %6550 = zext i32 %6549 to i64
  %6551 = add i64 %6550, 24
  %6552 = call i32 @i32_load(ptr noundef %6548, i64 noundef %6551)
  store i32 %6552, ptr %45, align 4, !tbaa !9
  %6553 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6553, ptr %12, align 4, !tbaa !9
  %6554 = load i32, ptr %45, align 4, !tbaa !9
  %6555 = icmp ne i32 %6554, 0
  br i1 %6555, label %6556, label %6571

6556:                                             ; preds = %6529
  %6557 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6557, ptr %45, align 4, !tbaa !9
  %6558 = load ptr, ptr %5, align 8, !tbaa !5
  %6559 = getelementptr inbounds %struct.w2c_hermes, ptr %6558, i32 0, i32 6
  %6560 = load i32, ptr %45, align 4, !tbaa !9
  %6561 = zext i32 %6560 to i64
  %6562 = add i64 %6561, 8
  %6563 = call i32 @i32_load(ptr noundef %6559, i64 noundef %6562)
  store i32 %6563, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %6564 = load i32, ptr %46, align 4, !tbaa !9
  %6565 = load i32, ptr %45, align 4, !tbaa !9
  %6566 = add i32 %6565, %6564
  store i32 %6566, ptr %45, align 4, !tbaa !9
  %6567 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6567, ptr %46, align 4, !tbaa !9
  %6568 = load ptr, ptr %5, align 8, !tbaa !5
  %6569 = load i32, ptr %45, align 4, !tbaa !9
  %6570 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %6568, i32 noundef %6569, i32 noundef %6570)
  br label %6571

6571:                                             ; preds = %6556, %6529
  %6572 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6572, ptr %45, align 4, !tbaa !9
  %6573 = load i32, ptr %45, align 4, !tbaa !9
  %6574 = zext i32 %6573 to i64
  store i64 %6574, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %6575 = load i64, ptr %55, align 8, !tbaa !11
  %6576 = load i64, ptr %54, align 8, !tbaa !11
  %6577 = or i64 %6576, %6575
  store i64 %6577, ptr %54, align 8, !tbaa !11
  %6578 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %6578, ptr %39, align 8, !tbaa !11
  %6579 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6579, ptr %45, align 4, !tbaa !9
  %6580 = load ptr, ptr %5, align 8, !tbaa !5
  %6581 = getelementptr inbounds %struct.w2c_hermes, ptr %6580, i32 0, i32 6
  %6582 = load i32, ptr %45, align 4, !tbaa !9
  %6583 = zext i32 %6582 to i64
  %6584 = add i64 %6583, 4
  %6585 = call i32 @i32_load(ptr noundef %6581, i64 noundef %6584)
  store i32 %6585, ptr %45, align 4, !tbaa !9
  %6586 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6586, ptr %13, align 4, !tbaa !9
  %6587 = load ptr, ptr %5, align 8, !tbaa !5
  %6588 = getelementptr inbounds %struct.w2c_hermes, ptr %6587, i32 0, i32 6
  %6589 = load i32, ptr %45, align 4, !tbaa !9
  %6590 = zext i32 %6589 to i64
  %6591 = add i64 %6590, 164
  %6592 = call i32 @i32_load(ptr noundef %6588, i64 noundef %6591)
  store i32 %6592, ptr %45, align 4, !tbaa !9
  %6593 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6593, ptr %12, align 4, !tbaa !9
  %6594 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6594, ptr %46, align 4, !tbaa !9
  %6595 = load ptr, ptr %5, align 8, !tbaa !5
  %6596 = getelementptr inbounds %struct.w2c_hermes, ptr %6595, i32 0, i32 6
  %6597 = load i32, ptr %46, align 4, !tbaa !9
  %6598 = zext i32 %6597 to i64
  %6599 = add i64 %6598, 168
  %6600 = call i32 @i32_load(ptr noundef %6596, i64 noundef %6599)
  store i32 %6600, ptr %46, align 4, !tbaa !9
  %6601 = load i32, ptr %45, align 4, !tbaa !9
  %6602 = load i32, ptr %46, align 4, !tbaa !9
  %6603 = icmp ult i32 %6601, %6602
  %6604 = zext i1 %6603 to i32
  store i32 %6604, ptr %45, align 4, !tbaa !9
  %6605 = load i32, ptr %45, align 4, !tbaa !9
  %6606 = icmp ne i32 %6605, 0
  br i1 %6606, label %6607, label %6626

6607:                                             ; preds = %6571
  %6608 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6608, ptr %45, align 4, !tbaa !9
  %6609 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6609, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %6610 = load i32, ptr %47, align 4, !tbaa !9
  %6611 = load i32, ptr %46, align 4, !tbaa !9
  %6612 = add i32 %6611, %6610
  store i32 %6612, ptr %46, align 4, !tbaa !9
  %6613 = load ptr, ptr %5, align 8, !tbaa !5
  %6614 = getelementptr inbounds %struct.w2c_hermes, ptr %6613, i32 0, i32 6
  %6615 = load i32, ptr %45, align 4, !tbaa !9
  %6616 = zext i32 %6615 to i64
  %6617 = add i64 %6616, 164
  %6618 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6614, i64 noundef %6617, i32 noundef %6618)
  %6619 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6619, ptr %45, align 4, !tbaa !9
  %6620 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6620, ptr %55, align 8, !tbaa !11
  %6621 = load ptr, ptr %5, align 8, !tbaa !5
  %6622 = getelementptr inbounds %struct.w2c_hermes, ptr %6621, i32 0, i32 6
  %6623 = load i32, ptr %45, align 4, !tbaa !9
  %6624 = zext i32 %6623 to i64
  %6625 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6622, i64 noundef %6624, i64 noundef %6625)
  br label %6634

6626:                                             ; preds = %6571
  %6627 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6627, ptr %45, align 4, !tbaa !9
  %6628 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6628, ptr %55, align 8, !tbaa !11
  %6629 = load ptr, ptr %5, align 8, !tbaa !5
  %6630 = load i32, ptr %45, align 4, !tbaa !9
  %6631 = load i64, ptr %55, align 8, !tbaa !11
  %6632 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %6629, i32 noundef %6630, i64 noundef %6631)
  store i32 %6632, ptr %45, align 4, !tbaa !9
  %6633 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6633, ptr %12, align 4, !tbaa !9
  br label %6634

6634:                                             ; preds = %6626, %6607
  %6635 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6635, ptr %45, align 4, !tbaa !9
  %6636 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6636, ptr %46, align 4, !tbaa !9
  %6637 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6637, ptr %47, align 4, !tbaa !9
  %6638 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6638, ptr %48, align 4, !tbaa !9
  %6639 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6639, ptr %49, align 4, !tbaa !9
  %6640 = load ptr, ptr %5, align 8, !tbaa !5
  %6641 = getelementptr inbounds %struct.w2c_hermes, ptr %6640, i32 0, i32 6
  %6642 = load i32, ptr %49, align 4, !tbaa !9
  %6643 = zext i32 %6642 to i64
  %6644 = add i64 %6643, 2
  %6645 = call i32 @i32_load8_u(ptr noundef %6641, i64 noundef %6644)
  store i32 %6645, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %6646 = load i32, ptr %50, align 4, !tbaa !9
  %6647 = and i32 %6646, 31
  %6648 = load i32, ptr %49, align 4, !tbaa !9
  %6649 = shl i32 %6648, %6647
  store i32 %6649, ptr %49, align 4, !tbaa !9
  %6650 = load i32, ptr %49, align 4, !tbaa !9
  %6651 = load i32, ptr %48, align 4, !tbaa !9
  %6652 = add i32 %6651, %6650
  store i32 %6652, ptr %48, align 4, !tbaa !9
  %6653 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6653, ptr %49, align 4, !tbaa !9
  %6654 = load ptr, ptr %5, align 8, !tbaa !5
  %6655 = getelementptr inbounds %struct.w2c_hermes, ptr %6654, i32 0, i32 6
  %6656 = load i32, ptr %49, align 4, !tbaa !9
  %6657 = zext i32 %6656 to i64
  %6658 = add i64 %6657, 28
  %6659 = call i32 @i32_load(ptr noundef %6655, i64 noundef %6658)
  store i32 %6659, ptr %49, align 4, !tbaa !9
  %6660 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6660, ptr %50, align 4, !tbaa !9
  store i32 2, ptr %51, align 4, !tbaa !9
  %6661 = load i32, ptr %51, align 4, !tbaa !9
  %6662 = and i32 %6661, 31
  %6663 = load i32, ptr %50, align 4, !tbaa !9
  %6664 = shl i32 %6663, %6662
  store i32 %6664, ptr %50, align 4, !tbaa !9
  %6665 = load i32, ptr %50, align 4, !tbaa !9
  %6666 = load i32, ptr %49, align 4, !tbaa !9
  %6667 = add i32 %6666, %6665
  store i32 %6667, ptr %49, align 4, !tbaa !9
  %6668 = load ptr, ptr %5, align 8, !tbaa !5
  %6669 = getelementptr inbounds %struct.w2c_hermes, ptr %6668, i32 0, i32 6
  %6670 = load i32, ptr %49, align 4, !tbaa !9
  %6671 = zext i32 %6670 to i64
  %6672 = call i32 @i32_load(ptr noundef %6669, i64 noundef %6671)
  store i32 %6672, ptr %49, align 4, !tbaa !9
  %6673 = load i32, ptr %49, align 4, !tbaa !9
  store i32 %6673, ptr %12, align 4, !tbaa !9
  %6674 = load i32, ptr %49, align 4, !tbaa !9
  %6675 = icmp ne i32 %6674, 0
  br i1 %6675, label %6676, label %6678

6676:                                             ; preds = %6634
  %6677 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6677, ptr %49, align 4, !tbaa !9
  br label %6685

6678:                                             ; preds = %6634
  %6679 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6679, ptr %49, align 4, !tbaa !9
  %6680 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6680, ptr %50, align 4, !tbaa !9
  %6681 = load ptr, ptr %5, align 8, !tbaa !5
  %6682 = load i32, ptr %49, align 4, !tbaa !9
  %6683 = load i32, ptr %50, align 4, !tbaa !9
  %6684 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %6681, i32 noundef %6682, i32 noundef %6683)
  store i32 %6684, ptr %49, align 4, !tbaa !9
  br label %6685

6685:                                             ; preds = %6678, %6676
  %6686 = load ptr, ptr %5, align 8, !tbaa !5
  %6687 = load i32, ptr %45, align 4, !tbaa !9
  %6688 = load i32, ptr %46, align 4, !tbaa !9
  %6689 = load i32, ptr %47, align 4, !tbaa !9
  %6690 = load i32, ptr %48, align 4, !tbaa !9
  %6691 = load i32, ptr %49, align 4, !tbaa !9
  %6692 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSFunction0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ADomain0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x29(ptr noundef %6686, i32 noundef %6687, i32 noundef %6688, i32 noundef %6689, i32 noundef %6690, i32 noundef %6691)
  store i32 %6692, ptr %45, align 4, !tbaa !9
  %6693 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6693, ptr %8, align 4, !tbaa !9
  %6694 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6694, ptr %45, align 4, !tbaa !9
  %6695 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6695, ptr %46, align 4, !tbaa !9
  %6696 = load ptr, ptr %5, align 8, !tbaa !5
  %6697 = getelementptr inbounds %struct.w2c_hermes, ptr %6696, i32 0, i32 6
  %6698 = load i32, ptr %46, align 4, !tbaa !9
  %6699 = zext i32 %6698 to i64
  %6700 = add i64 %6699, 1
  %6701 = call i32 @i32_load8_u(ptr noundef %6697, i64 noundef %6700)
  store i32 %6701, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %6702 = load i32, ptr %47, align 4, !tbaa !9
  %6703 = and i32 %6702, 31
  %6704 = load i32, ptr %46, align 4, !tbaa !9
  %6705 = shl i32 %6704, %6703
  store i32 %6705, ptr %46, align 4, !tbaa !9
  %6706 = load i32, ptr %46, align 4, !tbaa !9
  %6707 = load i32, ptr %45, align 4, !tbaa !9
  %6708 = add i32 %6707, %6706
  store i32 %6708, ptr %45, align 4, !tbaa !9
  %6709 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6709, ptr %46, align 4, !tbaa !9
  %6710 = load i32, ptr %46, align 4, !tbaa !9
  %6711 = zext i32 %6710 to i64
  store i64 %6711, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %6712 = load i64, ptr %56, align 8, !tbaa !11
  %6713 = load i64, ptr %55, align 8, !tbaa !11
  %6714 = or i64 %6713, %6712
  store i64 %6714, ptr %55, align 8, !tbaa !11
  %6715 = load ptr, ptr %5, align 8, !tbaa !5
  %6716 = getelementptr inbounds %struct.w2c_hermes, ptr %6715, i32 0, i32 6
  %6717 = load i32, ptr %45, align 4, !tbaa !9
  %6718 = zext i32 %6717 to i64
  %6719 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6716, i64 noundef %6718, i64 noundef %6719)
  %6720 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6720, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, 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 %45, align 4, !tbaa !9
  %6724 = zext i32 %6723 to i64
  %6725 = add i64 %6724, 516
  %6726 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6722, i64 noundef %6725, i32 noundef %6726)
  %6727 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6727, ptr %45, align 4, !tbaa !9
  %6728 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6728, ptr %46, align 4, !tbaa !9
  %6729 = load ptr, ptr %5, align 8, !tbaa !5
  %6730 = getelementptr inbounds %struct.w2c_hermes, ptr %6729, i32 0, i32 6
  %6731 = load i32, ptr %45, align 4, !tbaa !9
  %6732 = zext i32 %6731 to i64
  %6733 = add i64 %6732, 512
  %6734 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6730, i64 noundef %6733, i32 noundef %6734)
  %6735 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %6735, ptr %45, align 4, !tbaa !9
  %6736 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6736, ptr %46, align 4, !tbaa !9
  %6737 = load ptr, ptr %5, align 8, !tbaa !5
  %6738 = getelementptr inbounds %struct.w2c_hermes, ptr %6737, i32 0, i32 6
  %6739 = load i32, ptr %45, align 4, !tbaa !9
  %6740 = zext i32 %6739 to i64
  %6741 = add i64 %6740, 508
  %6742 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6738, i64 noundef %6741, i32 noundef %6742)
  %6743 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %6743, ptr %45, align 4, !tbaa !9
  %6744 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6744, ptr %6, align 4, !tbaa !9
  br label %2945

6745:                                             ; preds = %3001
  %6746 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6746, ptr %45, align 4, !tbaa !9
  %6747 = load ptr, ptr %5, align 8, !tbaa !5
  %6748 = getelementptr inbounds %struct.w2c_hermes, ptr %6747, i32 0, i32 6
  %6749 = load i32, ptr %45, align 4, !tbaa !9
  %6750 = zext i32 %6749 to i64
  %6751 = add i64 %6750, 3
  %6752 = call i32 @i32_load16_u(ptr noundef %6748, i64 noundef %6751)
  store i32 %6752, ptr %45, align 4, !tbaa !9
  %6753 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6753, ptr %8, align 4, !tbaa !9
  %6754 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6754, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %6755 = load i32, ptr %46, align 4, !tbaa !9
  %6756 = load i32, ptr %45, align 4, !tbaa !9
  %6757 = add i32 %6756, %6755
  store i32 %6757, ptr %45, align 4, !tbaa !9
  br label %6771

6758:                                             ; preds = %3002
  %6759 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6759, ptr %45, align 4, !tbaa !9
  %6760 = load ptr, ptr %5, align 8, !tbaa !5
  %6761 = getelementptr inbounds %struct.w2c_hermes, ptr %6760, i32 0, i32 6
  %6762 = load i32, ptr %45, align 4, !tbaa !9
  %6763 = zext i32 %6762 to i64
  %6764 = add i64 %6763, 3
  %6765 = call i32 @i32_load(ptr noundef %6761, i64 noundef %6764)
  store i32 %6765, ptr %45, align 4, !tbaa !9
  %6766 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6766, ptr %8, align 4, !tbaa !9
  %6767 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6767, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %6768 = load i32, ptr %46, align 4, !tbaa !9
  %6769 = load i32, ptr %45, align 4, !tbaa !9
  %6770 = add i32 %6769, %6768
  store i32 %6770, ptr %45, align 4, !tbaa !9
  br label %6771

6771:                                             ; preds = %6758, %6745
  %6772 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6772, ptr %7, align 4, !tbaa !9
  %6773 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6773, ptr %45, align 4, !tbaa !9
  %6774 = load ptr, ptr %5, align 8, !tbaa !5
  %6775 = getelementptr inbounds %struct.w2c_hermes, ptr %6774, i32 0, i32 6
  %6776 = load i32, ptr %45, align 4, !tbaa !9
  %6777 = zext i32 %6776 to i64
  %6778 = call i32 @i32_load(ptr noundef %6775, i64 noundef %6777)
  store i32 %6778, ptr %45, align 4, !tbaa !9
  %6779 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6779, ptr %15, align 4, !tbaa !9
  %6780 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6780, ptr %45, align 4, !tbaa !9
  %6781 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6781, ptr %46, align 4, !tbaa !9
  %6782 = load ptr, ptr %5, align 8, !tbaa !5
  %6783 = getelementptr inbounds %struct.w2c_hermes, ptr %6782, i32 0, i32 6
  %6784 = load i32, ptr %45, align 4, !tbaa !9
  %6785 = zext i32 %6784 to i64
  %6786 = add i64 %6785, 5808
  %6787 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6783, i64 noundef %6786, i32 noundef %6787)
  %6788 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6788, ptr %45, align 4, !tbaa !9
  %6789 = load ptr, ptr %5, align 8, !tbaa !5
  %6790 = getelementptr inbounds %struct.w2c_hermes, ptr %6789, i32 0, i32 6
  %6791 = load i32, ptr %45, align 4, !tbaa !9
  %6792 = zext i32 %6791 to i64
  %6793 = add i64 %6792, 24
  %6794 = call i32 @i32_load(ptr noundef %6790, i64 noundef %6793)
  store i32 %6794, ptr %45, align 4, !tbaa !9
  %6795 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6795, ptr %12, align 4, !tbaa !9
  %6796 = load i32, ptr %45, align 4, !tbaa !9
  %6797 = icmp ne i32 %6796, 0
  br i1 %6797, label %6798, label %6813

6798:                                             ; preds = %6771
  %6799 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6799, ptr %45, align 4, !tbaa !9
  %6800 = load ptr, ptr %5, align 8, !tbaa !5
  %6801 = getelementptr inbounds %struct.w2c_hermes, ptr %6800, i32 0, i32 6
  %6802 = load i32, ptr %45, align 4, !tbaa !9
  %6803 = zext i32 %6802 to i64
  %6804 = add i64 %6803, 8
  %6805 = call i32 @i32_load(ptr noundef %6801, i64 noundef %6804)
  store i32 %6805, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %6806 = load i32, ptr %46, align 4, !tbaa !9
  %6807 = load i32, ptr %45, align 4, !tbaa !9
  %6808 = add i32 %6807, %6806
  store i32 %6808, ptr %45, align 4, !tbaa !9
  %6809 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6809, ptr %46, align 4, !tbaa !9
  %6810 = load ptr, ptr %5, align 8, !tbaa !5
  %6811 = load i32, ptr %45, align 4, !tbaa !9
  %6812 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %6810, i32 noundef %6811, i32 noundef %6812)
  br label %6813

6813:                                             ; preds = %6798, %6771
  %6814 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6814, ptr %45, align 4, !tbaa !9
  %6815 = load i32, ptr %45, align 4, !tbaa !9
  %6816 = zext i32 %6815 to i64
  store i64 %6816, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %6817 = load i64, ptr %55, align 8, !tbaa !11
  %6818 = load i64, ptr %54, align 8, !tbaa !11
  %6819 = or i64 %6818, %6817
  store i64 %6819, ptr %54, align 8, !tbaa !11
  %6820 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %6820, ptr %39, align 8, !tbaa !11
  %6821 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6821, ptr %45, align 4, !tbaa !9
  %6822 = load ptr, ptr %5, align 8, !tbaa !5
  %6823 = getelementptr inbounds %struct.w2c_hermes, ptr %6822, i32 0, i32 6
  %6824 = load i32, ptr %45, align 4, !tbaa !9
  %6825 = zext i32 %6824 to i64
  %6826 = add i64 %6825, 4
  %6827 = call i32 @i32_load(ptr noundef %6823, i64 noundef %6826)
  store i32 %6827, ptr %45, align 4, !tbaa !9
  %6828 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6828, ptr %13, align 4, !tbaa !9
  %6829 = load ptr, ptr %5, align 8, !tbaa !5
  %6830 = getelementptr inbounds %struct.w2c_hermes, ptr %6829, i32 0, i32 6
  %6831 = load i32, ptr %45, align 4, !tbaa !9
  %6832 = zext i32 %6831 to i64
  %6833 = add i64 %6832, 164
  %6834 = call i32 @i32_load(ptr noundef %6830, i64 noundef %6833)
  store i32 %6834, ptr %45, align 4, !tbaa !9
  %6835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6835, ptr %12, align 4, !tbaa !9
  %6836 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6836, ptr %46, align 4, !tbaa !9
  %6837 = load ptr, ptr %5, align 8, !tbaa !5
  %6838 = getelementptr inbounds %struct.w2c_hermes, ptr %6837, i32 0, i32 6
  %6839 = load i32, ptr %46, align 4, !tbaa !9
  %6840 = zext i32 %6839 to i64
  %6841 = add i64 %6840, 168
  %6842 = call i32 @i32_load(ptr noundef %6838, i64 noundef %6841)
  store i32 %6842, ptr %46, align 4, !tbaa !9
  %6843 = load i32, ptr %45, align 4, !tbaa !9
  %6844 = load i32, ptr %46, align 4, !tbaa !9
  %6845 = icmp ult i32 %6843, %6844
  %6846 = zext i1 %6845 to i32
  store i32 %6846, ptr %45, align 4, !tbaa !9
  %6847 = load i32, ptr %45, align 4, !tbaa !9
  %6848 = icmp ne i32 %6847, 0
  br i1 %6848, label %6849, label %6868

6849:                                             ; preds = %6813
  %6850 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6850, ptr %45, align 4, !tbaa !9
  %6851 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6851, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %6852 = load i32, ptr %47, align 4, !tbaa !9
  %6853 = load i32, ptr %46, align 4, !tbaa !9
  %6854 = add i32 %6853, %6852
  store i32 %6854, ptr %46, align 4, !tbaa !9
  %6855 = load ptr, ptr %5, align 8, !tbaa !5
  %6856 = getelementptr inbounds %struct.w2c_hermes, ptr %6855, i32 0, i32 6
  %6857 = load i32, ptr %45, align 4, !tbaa !9
  %6858 = zext i32 %6857 to i64
  %6859 = add i64 %6858, 164
  %6860 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6856, i64 noundef %6859, i32 noundef %6860)
  %6861 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %6861, ptr %45, align 4, !tbaa !9
  %6862 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6862, ptr %55, align 8, !tbaa !11
  %6863 = load ptr, ptr %5, align 8, !tbaa !5
  %6864 = getelementptr inbounds %struct.w2c_hermes, ptr %6863, i32 0, i32 6
  %6865 = load i32, ptr %45, align 4, !tbaa !9
  %6866 = zext i32 %6865 to i64
  %6867 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6864, i64 noundef %6866, i64 noundef %6867)
  br label %6876

6868:                                             ; preds = %6813
  %6869 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %6869, ptr %45, align 4, !tbaa !9
  %6870 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %6870, ptr %55, align 8, !tbaa !11
  %6871 = load ptr, ptr %5, align 8, !tbaa !5
  %6872 = load i32, ptr %45, align 4, !tbaa !9
  %6873 = load i64, ptr %55, align 8, !tbaa !11
  %6874 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %6871, i32 noundef %6872, i64 noundef %6873)
  store i32 %6874, ptr %45, align 4, !tbaa !9
  %6875 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6875, ptr %12, align 4, !tbaa !9
  br label %6876

6876:                                             ; preds = %6868, %6849
  %6877 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %6877, ptr %45, align 4, !tbaa !9
  %6878 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %6878, ptr %46, align 4, !tbaa !9
  %6879 = load ptr, ptr %5, align 8, !tbaa !5
  %6880 = getelementptr inbounds %struct.w2c_hermes, ptr %6879, i32 0, i32 6
  %6881 = load i32, ptr %46, align 4, !tbaa !9
  %6882 = zext i32 %6881 to i64
  %6883 = add i64 %6882, 2
  %6884 = call i32 @i32_load8_u(ptr noundef %6880, i64 noundef %6883)
  store i32 %6884, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %6885 = load i32, ptr %47, align 4, !tbaa !9
  %6886 = and i32 %6885, 31
  %6887 = load i32, ptr %46, align 4, !tbaa !9
  %6888 = shl i32 %6887, %6886
  store i32 %6888, ptr %46, align 4, !tbaa !9
  %6889 = load i32, ptr %46, align 4, !tbaa !9
  %6890 = load i32, ptr %45, align 4, !tbaa !9
  %6891 = add i32 %6890, %6889
  store i32 %6891, ptr %45, align 4, !tbaa !9
  %6892 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6892, ptr %14, align 4, !tbaa !9
  %6893 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6893, ptr %45, align 4, !tbaa !9
  %6894 = load ptr, ptr %5, align 8, !tbaa !5
  %6895 = getelementptr inbounds %struct.w2c_hermes, ptr %6894, i32 0, i32 6
  %6896 = load i32, ptr %45, align 4, !tbaa !9
  %6897 = zext i32 %6896 to i64
  %6898 = add i64 %6897, 28
  %6899 = call i32 @i32_load(ptr noundef %6895, i64 noundef %6898)
  store i32 %6899, ptr %45, align 4, !tbaa !9
  %6900 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6900, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %6901 = load i32, ptr %47, align 4, !tbaa !9
  %6902 = and i32 %6901, 31
  %6903 = load i32, ptr %46, align 4, !tbaa !9
  %6904 = shl i32 %6903, %6902
  store i32 %6904, ptr %46, align 4, !tbaa !9
  %6905 = load i32, ptr %46, align 4, !tbaa !9
  %6906 = load i32, ptr %45, align 4, !tbaa !9
  %6907 = add i32 %6906, %6905
  store i32 %6907, ptr %45, align 4, !tbaa !9
  %6908 = load ptr, ptr %5, align 8, !tbaa !5
  %6909 = getelementptr inbounds %struct.w2c_hermes, ptr %6908, i32 0, i32 6
  %6910 = load i32, ptr %45, align 4, !tbaa !9
  %6911 = zext i32 %6910 to i64
  %6912 = call i32 @i32_load(ptr noundef %6909, i64 noundef %6911)
  store i32 %6912, ptr %45, align 4, !tbaa !9
  %6913 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6913, ptr %13, align 4, !tbaa !9
  %6914 = load i32, ptr %45, align 4, !tbaa !9
  %6915 = icmp ne i32 %6914, 0
  %6916 = xor i1 %6915, true
  %6917 = zext i1 %6916 to i32
  store i32 %6917, ptr %45, align 4, !tbaa !9
  %6918 = load i32, ptr %45, align 4, !tbaa !9
  %6919 = icmp ne i32 %6918, 0
  br i1 %6919, label %6920, label %6928

6920:                                             ; preds = %6876
  %6921 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %6921, ptr %45, align 4, !tbaa !9
  %6922 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6922, ptr %46, align 4, !tbaa !9
  %6923 = load ptr, ptr %5, align 8, !tbaa !5
  %6924 = load i32, ptr %45, align 4, !tbaa !9
  %6925 = load i32, ptr %46, align 4, !tbaa !9
  %6926 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %6923, i32 noundef %6924, i32 noundef %6925)
  store i32 %6926, ptr %45, align 4, !tbaa !9
  %6927 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6927, ptr %13, align 4, !tbaa !9
  br label %6928

6928:                                             ; preds = %6920, %6876
  %6929 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6929, ptr %45, align 4, !tbaa !9
  store i32 1368, ptr %46, align 4, !tbaa !9
  %6930 = load i32, ptr %46, align 4, !tbaa !9
  %6931 = load i32, ptr %45, align 4, !tbaa !9
  %6932 = add i32 %6931, %6930
  store i32 %6932, ptr %45, align 4, !tbaa !9
  %6933 = load ptr, ptr %5, align 8, !tbaa !5
  %6934 = getelementptr inbounds %struct.w2c_hermes, ptr %6933, i32 0, i32 6
  %6935 = load i32, ptr %45, align 4, !tbaa !9
  %6936 = zext i32 %6935 to i64
  %6937 = call i32 @i32_load(ptr noundef %6934, i64 noundef %6936)
  store i32 %6937, ptr %45, align 4, !tbaa !9
  %6938 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6938, ptr %46, align 4, !tbaa !9
  store i32 1364, ptr %47, align 4, !tbaa !9
  %6939 = load i32, ptr %47, align 4, !tbaa !9
  %6940 = load i32, ptr %46, align 4, !tbaa !9
  %6941 = add i32 %6940, %6939
  store i32 %6941, ptr %46, align 4, !tbaa !9
  %6942 = load ptr, ptr %5, align 8, !tbaa !5
  %6943 = getelementptr inbounds %struct.w2c_hermes, ptr %6942, i32 0, i32 6
  %6944 = load i32, ptr %46, align 4, !tbaa !9
  %6945 = zext i32 %6944 to i64
  %6946 = call i32 @i32_load(ptr noundef %6943, i64 noundef %6945)
  store i32 %6946, ptr %46, align 4, !tbaa !9
  %6947 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %6947, ptr %8, align 4, !tbaa !9
  %6948 = load i32, ptr %46, align 4, !tbaa !9
  %6949 = load i32, ptr %45, align 4, !tbaa !9
  %6950 = sub i32 %6949, %6948
  store i32 %6950, ptr %45, align 4, !tbaa !9
  store i32 39, ptr %46, align 4, !tbaa !9
  %6951 = load i32, ptr %45, align 4, !tbaa !9
  %6952 = load i32, ptr %46, align 4, !tbaa !9
  %6953 = icmp ule i32 %6951, %6952
  %6954 = zext i1 %6953 to i32
  store i32 %6954, ptr %45, align 4, !tbaa !9
  %6955 = load i32, ptr %45, align 4, !tbaa !9
  %6956 = icmp ne i32 %6955, 0
  br i1 %6956, label %6957, label %6967

6957:                                             ; preds = %6928
  %6958 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6958, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %6959 = load i32, ptr %46, align 4, !tbaa !9
  %6960 = load i32, ptr %45, align 4, !tbaa !9
  %6961 = add i32 %6960, %6959
  store i32 %6961, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %6962 = load ptr, ptr %5, align 8, !tbaa !5
  %6963 = load i32, ptr %45, align 4, !tbaa !9
  %6964 = load i32, ptr %46, align 4, !tbaa !9
  %6965 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %6962, i32 noundef %6963, i32 noundef %6964)
  store i32 %6965, ptr %45, align 4, !tbaa !9
  %6966 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %6966, ptr %8, align 4, !tbaa !9
  br label %6979

6967:                                             ; preds = %6928
  %6968 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6968, ptr %45, align 4, !tbaa !9
  %6969 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6969, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %6970 = load i32, ptr %47, align 4, !tbaa !9
  %6971 = load i32, ptr %46, align 4, !tbaa !9
  %6972 = add i32 %6971, %6970
  store i32 %6972, ptr %46, align 4, !tbaa !9
  %6973 = load ptr, ptr %5, align 8, !tbaa !5
  %6974 = getelementptr inbounds %struct.w2c_hermes, ptr %6973, i32 0, i32 6
  %6975 = load i32, ptr %45, align 4, !tbaa !9
  %6976 = zext i32 %6975 to i64
  %6977 = add i64 %6976, 1364
  %6978 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6974, i64 noundef %6977, i32 noundef %6978)
  br label %6979

6979:                                             ; preds = %6967, %6957
  %6980 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6980, ptr %45, align 4, !tbaa !9
  %6981 = load ptr, ptr %5, align 8, !tbaa !5
  %6982 = getelementptr inbounds %struct.w2c_hermes, ptr %6981, i32 0, i32 6
  %6983 = load i32, ptr %45, align 4, !tbaa !9
  %6984 = zext i32 %6983 to i64
  %6985 = add i64 %6984, 600
  %6986 = call i64 @i64_load(ptr noundef %6982, i64 noundef %6985)
  store i64 %6986, ptr %54, align 8, !tbaa !11
  %6987 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %6987, ptr %41, align 8, !tbaa !11
  %6988 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %6988, ptr %45, align 4, !tbaa !9
  %6989 = load ptr, ptr %5, align 8, !tbaa !5
  %6990 = getelementptr inbounds %struct.w2c_hermes, ptr %6989, i32 0, i32 6
  %6991 = load i32, ptr %45, align 4, !tbaa !9
  %6992 = zext i32 %6991 to i64
  %6993 = add i64 %6992, 5640
  %6994 = call i64 @i64_load(ptr noundef %6990, i64 noundef %6993)
  store i64 %6994, ptr %54, align 8, !tbaa !11
  %6995 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %6995, ptr %39, align 8, !tbaa !11
  %6996 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %6996, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %6997 = load ptr, ptr %5, align 8, !tbaa !5
  %6998 = getelementptr inbounds %struct.w2c_hermes, ptr %6997, i32 0, i32 6
  %6999 = load i32, ptr %45, align 4, !tbaa !9
  %7000 = zext i32 %6999 to i64
  %7001 = add i64 %7000, 16
  %7002 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6998, i64 noundef %7001, i32 noundef %7002)
  %7003 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7003, ptr %45, align 4, !tbaa !9
  %7004 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %7004, ptr %55, align 8, !tbaa !11
  %7005 = load ptr, ptr %5, align 8, !tbaa !5
  %7006 = getelementptr inbounds %struct.w2c_hermes, ptr %7005, i32 0, i32 6
  %7007 = load i32, ptr %45, align 4, !tbaa !9
  %7008 = zext i32 %7007 to i64
  %7009 = add i64 %7008, 12
  %7010 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %7006, i64 noundef %7009, i64 noundef %7010)
  %7011 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7011, ptr %45, align 4, !tbaa !9
  %7012 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %7012, ptr %55, align 8, !tbaa !11
  %7013 = load ptr, ptr %5, align 8, !tbaa !5
  %7014 = getelementptr inbounds %struct.w2c_hermes, ptr %7013, i32 0, i32 6
  %7015 = load i32, ptr %45, align 4, !tbaa !9
  %7016 = zext i32 %7015 to i64
  %7017 = add i64 %7016, 8
  %7018 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %7014, i64 noundef %7017, i64 noundef %7018)
  %7019 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7019, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %7020 = load ptr, ptr %5, align 8, !tbaa !5
  %7021 = getelementptr inbounds %struct.w2c_hermes, ptr %7020, i32 0, i32 6
  %7022 = load i32, ptr %45, align 4, !tbaa !9
  %7023 = zext i32 %7022 to i64
  %7024 = add i64 %7023, 4
  %7025 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7021, i64 noundef %7024, i32 noundef %7025)
  %7026 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7026, ptr %45, align 4, !tbaa !9
  %7027 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7027, ptr %46, 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 %46, align 4, !tbaa !9
  %7031 = zext i32 %7030 to i64
  %7032 = call i32 @i32_load(ptr noundef %7029, i64 noundef %7031)
  store i32 %7032, ptr %46, align 4, !tbaa !9
  %7033 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7033, ptr %15, align 4, !tbaa !9
  %7034 = load ptr, ptr %5, align 8, !tbaa !5
  %7035 = getelementptr inbounds %struct.w2c_hermes, ptr %7034, i32 0, i32 6
  %7036 = load i32, ptr %45, align 4, !tbaa !9
  %7037 = zext i32 %7036 to i64
  %7038 = add i64 %7037, 20
  %7039 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7035, i64 noundef %7038, i32 noundef %7039)
  %7040 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7040, ptr %45, align 4, !tbaa !9
  store i32 1356, ptr %46, align 4, !tbaa !9
  %7041 = load i32, ptr %46, align 4, !tbaa !9
  %7042 = load i32, ptr %45, align 4, !tbaa !9
  %7043 = add i32 %7042, %7041
  store i32 %7043, ptr %45, align 4, !tbaa !9
  %7044 = load ptr, ptr %5, align 8, !tbaa !5
  %7045 = getelementptr inbounds %struct.w2c_hermes, ptr %7044, i32 0, i32 6
  %7046 = load i32, ptr %45, align 4, !tbaa !9
  %7047 = zext i32 %7046 to i64
  %7048 = call i32 @i32_load(ptr noundef %7045, i64 noundef %7047)
  store i32 %7048, ptr %45, align 4, !tbaa !9
  %7049 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7049, ptr %46, align 4, !tbaa !9
  store i32 20, ptr %47, align 4, !tbaa !9
  %7050 = load i32, ptr %47, align 4, !tbaa !9
  %7051 = load i32, ptr %46, align 4, !tbaa !9
  %7052 = add i32 %7051, %7050
  store i32 %7052, ptr %46, align 4, !tbaa !9
  %7053 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7053, ptr %14, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %7054 = load i32, ptr %47, align 4, !tbaa !9
  %7055 = load i32, ptr %46, align 4, !tbaa !9
  %7056 = and i32 %7055, %7054
  store i32 %7056, ptr %46, align 4, !tbaa !9
  %7057 = load i32, ptr %45, align 4, !tbaa !9
  %7058 = load i32, ptr %46, align 4, !tbaa !9
  %7059 = icmp ne i32 %7057, %7058
  %7060 = zext i1 %7059 to i32
  store i32 %7060, ptr %45, align 4, !tbaa !9
  %7061 = load i32, ptr %45, align 4, !tbaa !9
  %7062 = icmp ne i32 %7061, 0
  br i1 %7062, label %7063, label %7074

7063:                                             ; preds = %6979
  %7064 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7064, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %7065 = load i32, ptr %46, align 4, !tbaa !9
  %7066 = load i32, ptr %45, align 4, !tbaa !9
  %7067 = add i32 %7066, %7065
  store i32 %7067, ptr %45, align 4, !tbaa !9
  %7068 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7068, ptr %46, align 4, !tbaa !9
  %7069 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7069, ptr %47, align 4, !tbaa !9
  %7070 = load ptr, ptr %5, align 8, !tbaa !5
  %7071 = load i32, ptr %45, align 4, !tbaa !9
  %7072 = load i32, ptr %46, align 4, !tbaa !9
  %7073 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %7070, i32 noundef %7071, i32 noundef %7072, i32 noundef %7073)
  br label %7074

7074:                                             ; preds = %7063, %6979
  %7075 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7075, ptr %45, align 4, !tbaa !9
  %7076 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7076, ptr %46, align 4, !tbaa !9
  store i32 1276, ptr %47, align 4, !tbaa !9
  %7077 = load i32, ptr %47, align 4, !tbaa !9
  %7078 = load i32, ptr %46, align 4, !tbaa !9
  %7079 = add i32 %7078, %7077
  store i32 %7079, ptr %46, align 4, !tbaa !9
  %7080 = load ptr, ptr %5, align 8, !tbaa !5
  %7081 = getelementptr inbounds %struct.w2c_hermes, ptr %7080, i32 0, i32 6
  %7082 = load i32, ptr %46, align 4, !tbaa !9
  %7083 = zext i32 %7082 to i64
  %7084 = call i32 @i32_load(ptr noundef %7081, i64 noundef %7083)
  store i32 %7084, ptr %46, align 4, !tbaa !9
  %7085 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7085, ptr %47, align 4, !tbaa !9
  %7086 = load i32, ptr %47, align 4, !tbaa !9
  %7087 = load i32, ptr %46, align 4, !tbaa !9
  %7088 = xor i32 %7087, %7086
  store i32 %7088, ptr %46, align 4, !tbaa !9
  %7089 = load ptr, ptr %5, align 8, !tbaa !5
  %7090 = getelementptr inbounds %struct.w2c_hermes, ptr %7089, i32 0, i32 6
  %7091 = load i32, ptr %45, align 4, !tbaa !9
  %7092 = zext i32 %7091 to i64
  %7093 = add i64 %7092, 24
  %7094 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7090, i64 noundef %7093, i32 noundef %7094)
  %7095 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7095, ptr %45, align 4, !tbaa !9
  %7096 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7096, ptr %46, 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 %46, align 4, !tbaa !9
  %7100 = zext i32 %7099 to i64
  %7101 = call i32 @i32_load(ptr noundef %7098, i64 noundef %7100)
  store i32 %7101, ptr %46, align 4, !tbaa !9
  %7102 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7102, ptr %13, align 4, !tbaa !9
  %7103 = load ptr, ptr %5, align 8, !tbaa !5
  %7104 = getelementptr inbounds %struct.w2c_hermes, ptr %7103, i32 0, i32 6
  %7105 = load i32, ptr %45, align 4, !tbaa !9
  %7106 = zext i32 %7105 to i64
  %7107 = add i64 %7106, 28
  %7108 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7104, i64 noundef %7107, i32 noundef %7108)
  %7109 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7109, ptr %45, align 4, !tbaa !9
  %7110 = load ptr, ptr %5, align 8, !tbaa !5
  %7111 = getelementptr inbounds %struct.w2c_hermes, ptr %7110, i32 0, i32 6
  %7112 = load i32, ptr %45, align 4, !tbaa !9
  %7113 = zext i32 %7112 to i64
  %7114 = add i64 %7113, 1356
  %7115 = call i32 @i32_load(ptr noundef %7111, i64 noundef %7114)
  store i32 %7115, ptr %45, align 4, !tbaa !9
  %7116 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7116, ptr %46, align 4, !tbaa !9
  store i32 28, ptr %47, align 4, !tbaa !9
  %7117 = load i32, ptr %47, align 4, !tbaa !9
  %7118 = load i32, ptr %46, align 4, !tbaa !9
  %7119 = add i32 %7118, %7117
  store i32 %7119, ptr %46, align 4, !tbaa !9
  %7120 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7120, ptr %12, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %7121 = load i32, ptr %47, align 4, !tbaa !9
  %7122 = load i32, ptr %46, align 4, !tbaa !9
  %7123 = and i32 %7122, %7121
  store i32 %7123, ptr %46, align 4, !tbaa !9
  %7124 = load i32, ptr %45, align 4, !tbaa !9
  %7125 = load i32, ptr %46, align 4, !tbaa !9
  %7126 = icmp ne i32 %7124, %7125
  %7127 = zext i1 %7126 to i32
  store i32 %7127, ptr %45, align 4, !tbaa !9
  %7128 = load i32, ptr %45, align 4, !tbaa !9
  %7129 = icmp ne i32 %7128, 0
  br i1 %7129, label %7130, label %7141

7130:                                             ; preds = %7074
  %7131 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7131, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %7132 = load i32, ptr %46, align 4, !tbaa !9
  %7133 = load i32, ptr %45, align 4, !tbaa !9
  %7134 = add i32 %7133, %7132
  store i32 %7134, ptr %45, align 4, !tbaa !9
  %7135 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7135, ptr %46, align 4, !tbaa !9
  %7136 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7136, ptr %47, align 4, !tbaa !9
  %7137 = load ptr, ptr %5, align 8, !tbaa !5
  %7138 = load i32, ptr %45, align 4, !tbaa !9
  %7139 = load i32, ptr %46, align 4, !tbaa !9
  %7140 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %7137, i32 noundef %7138, i32 noundef %7139, i32 noundef %7140)
  br label %7141

7141:                                             ; preds = %7130, %7074
  %7142 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7142, ptr %45, align 4, !tbaa !9
  store i32 1258291240, ptr %46, align 4, !tbaa !9
  %7143 = load ptr, ptr %5, align 8, !tbaa !5
  %7144 = getelementptr inbounds %struct.w2c_hermes, ptr %7143, i32 0, i32 6
  %7145 = load i32, ptr %45, align 4, !tbaa !9
  %7146 = zext i32 %7145 to i64
  %7147 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7144, i64 noundef %7146, i32 noundef %7147)
  %7148 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7148, ptr %45, align 4, !tbaa !9
  store i64 60129542158, ptr %55, align 8, !tbaa !11
  %7149 = load ptr, ptr %5, align 8, !tbaa !5
  %7150 = getelementptr inbounds %struct.w2c_hermes, ptr %7149, i32 0, i32 6
  %7151 = load i32, ptr %45, align 4, !tbaa !9
  %7152 = zext i32 %7151 to i64
  %7153 = add i64 %7152, 32
  %7154 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7150, i64 noundef %7153, i64 noundef %7154)
  %7155 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7155, ptr %45, align 4, !tbaa !9
  %7156 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7156, ptr %46, align 4, !tbaa !9
  %7157 = load ptr, ptr %5, align 8, !tbaa !5
  %7158 = getelementptr inbounds %struct.w2c_hermes, ptr %7157, i32 0, i32 6
  %7159 = load i32, ptr %46, align 4, !tbaa !9
  %7160 = zext i32 %7159 to i64
  %7161 = add i64 %7160, 4
  %7162 = call i32 @i32_load(ptr noundef %7158, i64 noundef %7161)
  store i32 %7162, ptr %46, align 4, !tbaa !9
  store i32 64, ptr %47, align 4, !tbaa !9
  %7163 = load i32, ptr %47, align 4, !tbaa !9
  %7164 = load i32, ptr %46, align 4, !tbaa !9
  %7165 = or i32 %7164, %7163
  store i32 %7165, ptr %46, align 4, !tbaa !9
  %7166 = load ptr, ptr %5, align 8, !tbaa !5
  %7167 = getelementptr inbounds %struct.w2c_hermes, ptr %7166, i32 0, i32 6
  %7168 = load i32, ptr %45, align 4, !tbaa !9
  %7169 = zext i32 %7168 to i64
  %7170 = add i64 %7169, 4
  %7171 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7167, i64 noundef %7170, i32 noundef %7171)
  %7172 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7172, ptr %45, align 4, !tbaa !9
  %7173 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7173, ptr %46, align 4, !tbaa !9
  %7174 = load ptr, ptr %5, align 8, !tbaa !5
  %7175 = getelementptr inbounds %struct.w2c_hermes, ptr %7174, i32 0, i32 6
  %7176 = load i32, ptr %46, align 4, !tbaa !9
  %7177 = zext i32 %7176 to i64
  %7178 = add i64 %7177, 1
  %7179 = call i32 @i32_load8_u(ptr noundef %7175, i64 noundef %7178)
  store i32 %7179, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %7180 = load i32, ptr %47, align 4, !tbaa !9
  %7181 = and i32 %7180, 31
  %7182 = load i32, ptr %46, align 4, !tbaa !9
  %7183 = shl i32 %7182, %7181
  store i32 %7183, ptr %46, align 4, !tbaa !9
  %7184 = load i32, ptr %46, align 4, !tbaa !9
  %7185 = load i32, ptr %45, align 4, !tbaa !9
  %7186 = add i32 %7185, %7184
  store i32 %7186, ptr %45, align 4, !tbaa !9
  %7187 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7187, ptr %46, align 4, !tbaa !9
  %7188 = load i32, ptr %46, align 4, !tbaa !9
  %7189 = zext i32 %7188 to i64
  store i64 %7189, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %7190 = load i64, ptr %56, align 8, !tbaa !11
  %7191 = load i64, ptr %55, align 8, !tbaa !11
  %7192 = or i64 %7191, %7190
  store i64 %7192, ptr %55, align 8, !tbaa !11
  %7193 = load ptr, ptr %5, align 8, !tbaa !5
  %7194 = getelementptr inbounds %struct.w2c_hermes, ptr %7193, i32 0, i32 6
  %7195 = load i32, ptr %45, align 4, !tbaa !9
  %7196 = zext i32 %7195 to i64
  %7197 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7194, i64 noundef %7196, i64 noundef %7197)
  %7198 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7198, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %7199 = load ptr, ptr %5, align 8, !tbaa !5
  %7200 = getelementptr inbounds %struct.w2c_hermes, ptr %7199, i32 0, i32 6
  %7201 = load i32, ptr %45, align 4, !tbaa !9
  %7202 = zext i32 %7201 to i64
  %7203 = add i64 %7202, 516
  %7204 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7200, i64 noundef %7203, i32 noundef %7204)
  %7205 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7205, ptr %45, align 4, !tbaa !9
  %7206 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7206, ptr %46, align 4, !tbaa !9
  %7207 = load ptr, ptr %5, align 8, !tbaa !5
  %7208 = getelementptr inbounds %struct.w2c_hermes, ptr %7207, i32 0, i32 6
  %7209 = load i32, ptr %45, align 4, !tbaa !9
  %7210 = zext i32 %7209 to i64
  %7211 = add i64 %7210, 512
  %7212 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7208, i64 noundef %7211, i32 noundef %7212)
  %7213 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7213, ptr %45, align 4, !tbaa !9
  %7214 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7214, ptr %46, align 4, !tbaa !9
  %7215 = load ptr, ptr %5, align 8, !tbaa !5
  %7216 = getelementptr inbounds %struct.w2c_hermes, ptr %7215, i32 0, i32 6
  %7217 = load i32, ptr %45, align 4, !tbaa !9
  %7218 = zext i32 %7217 to i64
  %7219 = add i64 %7218, 508
  %7220 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7216, i64 noundef %7219, i32 noundef %7220)
  %7221 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7221, ptr %45, align 4, !tbaa !9
  %7222 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7222, ptr %6, align 4, !tbaa !9
  br label %2945

7223:                                             ; preds = %3003
  %7224 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7224, ptr %45, align 4, !tbaa !9
  %7225 = load ptr, ptr %5, align 8, !tbaa !5
  %7226 = getelementptr inbounds %struct.w2c_hermes, ptr %7225, i32 0, i32 6
  %7227 = load i32, ptr %45, align 4, !tbaa !9
  %7228 = zext i32 %7227 to i64
  %7229 = add i64 %7228, 3
  %7230 = call i32 @i32_load16_u(ptr noundef %7226, i64 noundef %7229)
  store i32 %7230, ptr %45, align 4, !tbaa !9
  %7231 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7231, ptr %8, align 4, !tbaa !9
  %7232 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7232, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %7233 = load i32, ptr %46, align 4, !tbaa !9
  %7234 = load i32, ptr %45, align 4, !tbaa !9
  %7235 = add i32 %7234, %7233
  store i32 %7235, ptr %45, align 4, !tbaa !9
  br label %7249

7236:                                             ; preds = %3004
  %7237 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7237, ptr %45, align 4, !tbaa !9
  %7238 = load ptr, ptr %5, align 8, !tbaa !5
  %7239 = getelementptr inbounds %struct.w2c_hermes, ptr %7238, i32 0, i32 6
  %7240 = load i32, ptr %45, align 4, !tbaa !9
  %7241 = zext i32 %7240 to i64
  %7242 = add i64 %7241, 3
  %7243 = call i32 @i32_load(ptr noundef %7239, i64 noundef %7242)
  store i32 %7243, ptr %45, align 4, !tbaa !9
  %7244 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7244, ptr %8, align 4, !tbaa !9
  %7245 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7245, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %7246 = load i32, ptr %46, align 4, !tbaa !9
  %7247 = load i32, ptr %45, align 4, !tbaa !9
  %7248 = add i32 %7247, %7246
  store i32 %7248, ptr %45, align 4, !tbaa !9
  br label %7249

7249:                                             ; preds = %7236, %7223
  %7250 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7250, ptr %7, align 4, !tbaa !9
  %7251 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7251, ptr %45, align 4, !tbaa !9
  %7252 = load ptr, ptr %5, align 8, !tbaa !5
  %7253 = getelementptr inbounds %struct.w2c_hermes, ptr %7252, i32 0, i32 6
  %7254 = load i32, ptr %45, align 4, !tbaa !9
  %7255 = zext i32 %7254 to i64
  %7256 = call i32 @i32_load(ptr noundef %7253, i64 noundef %7255)
  store i32 %7256, ptr %45, align 4, !tbaa !9
  %7257 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7257, ptr %15, align 4, !tbaa !9
  %7258 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7258, ptr %45, align 4, !tbaa !9
  %7259 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7259, ptr %46, align 4, !tbaa !9
  %7260 = load ptr, ptr %5, align 8, !tbaa !5
  %7261 = getelementptr inbounds %struct.w2c_hermes, ptr %7260, i32 0, i32 6
  %7262 = load i32, ptr %45, align 4, !tbaa !9
  %7263 = zext i32 %7262 to i64
  %7264 = add i64 %7263, 5808
  %7265 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7261, i64 noundef %7264, i32 noundef %7265)
  %7266 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7266, ptr %45, align 4, !tbaa !9
  %7267 = load ptr, ptr %5, align 8, !tbaa !5
  %7268 = getelementptr inbounds %struct.w2c_hermes, ptr %7267, i32 0, i32 6
  %7269 = load i32, ptr %45, align 4, !tbaa !9
  %7270 = zext i32 %7269 to i64
  %7271 = add i64 %7270, 24
  %7272 = call i32 @i32_load(ptr noundef %7268, i64 noundef %7271)
  store i32 %7272, ptr %45, align 4, !tbaa !9
  %7273 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7273, ptr %12, align 4, !tbaa !9
  %7274 = load i32, ptr %45, align 4, !tbaa !9
  %7275 = icmp ne i32 %7274, 0
  br i1 %7275, label %7276, label %7291

7276:                                             ; preds = %7249
  %7277 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7277, ptr %45, align 4, !tbaa !9
  %7278 = load ptr, ptr %5, align 8, !tbaa !5
  %7279 = getelementptr inbounds %struct.w2c_hermes, ptr %7278, i32 0, i32 6
  %7280 = load i32, ptr %45, align 4, !tbaa !9
  %7281 = zext i32 %7280 to i64
  %7282 = add i64 %7281, 8
  %7283 = call i32 @i32_load(ptr noundef %7279, i64 noundef %7282)
  store i32 %7283, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %7284 = load i32, ptr %46, align 4, !tbaa !9
  %7285 = load i32, ptr %45, align 4, !tbaa !9
  %7286 = add i32 %7285, %7284
  store i32 %7286, ptr %45, align 4, !tbaa !9
  %7287 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7287, ptr %46, align 4, !tbaa !9
  %7288 = load ptr, ptr %5, align 8, !tbaa !5
  %7289 = load i32, ptr %45, align 4, !tbaa !9
  %7290 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %7288, i32 noundef %7289, i32 noundef %7290)
  br label %7291

7291:                                             ; preds = %7276, %7249
  %7292 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7292, ptr %45, align 4, !tbaa !9
  %7293 = load i32, ptr %45, align 4, !tbaa !9
  %7294 = zext i32 %7293 to i64
  store i64 %7294, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %7295 = load i64, ptr %55, align 8, !tbaa !11
  %7296 = load i64, ptr %54, align 8, !tbaa !11
  %7297 = or i64 %7296, %7295
  store i64 %7297, ptr %54, align 8, !tbaa !11
  %7298 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %7298, ptr %39, align 8, !tbaa !11
  %7299 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7299, ptr %45, align 4, !tbaa !9
  %7300 = load ptr, ptr %5, align 8, !tbaa !5
  %7301 = getelementptr inbounds %struct.w2c_hermes, ptr %7300, i32 0, i32 6
  %7302 = load i32, ptr %45, align 4, !tbaa !9
  %7303 = zext i32 %7302 to i64
  %7304 = add i64 %7303, 4
  %7305 = call i32 @i32_load(ptr noundef %7301, i64 noundef %7304)
  store i32 %7305, ptr %45, align 4, !tbaa !9
  %7306 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7306, ptr %13, align 4, !tbaa !9
  %7307 = load ptr, ptr %5, align 8, !tbaa !5
  %7308 = getelementptr inbounds %struct.w2c_hermes, ptr %7307, i32 0, i32 6
  %7309 = load i32, ptr %45, align 4, !tbaa !9
  %7310 = zext i32 %7309 to i64
  %7311 = add i64 %7310, 164
  %7312 = call i32 @i32_load(ptr noundef %7308, i64 noundef %7311)
  store i32 %7312, ptr %45, align 4, !tbaa !9
  %7313 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7313, ptr %12, align 4, !tbaa !9
  %7314 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7314, ptr %46, align 4, !tbaa !9
  %7315 = load ptr, ptr %5, align 8, !tbaa !5
  %7316 = getelementptr inbounds %struct.w2c_hermes, ptr %7315, i32 0, i32 6
  %7317 = load i32, ptr %46, align 4, !tbaa !9
  %7318 = zext i32 %7317 to i64
  %7319 = add i64 %7318, 168
  %7320 = call i32 @i32_load(ptr noundef %7316, i64 noundef %7319)
  store i32 %7320, ptr %46, align 4, !tbaa !9
  %7321 = load i32, ptr %45, align 4, !tbaa !9
  %7322 = load i32, ptr %46, align 4, !tbaa !9
  %7323 = icmp ult i32 %7321, %7322
  %7324 = zext i1 %7323 to i32
  store i32 %7324, ptr %45, align 4, !tbaa !9
  %7325 = load i32, ptr %45, align 4, !tbaa !9
  %7326 = icmp ne i32 %7325, 0
  br i1 %7326, label %7327, label %7346

7327:                                             ; preds = %7291
  %7328 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7328, ptr %45, align 4, !tbaa !9
  %7329 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7329, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %7330 = load i32, ptr %47, align 4, !tbaa !9
  %7331 = load i32, ptr %46, align 4, !tbaa !9
  %7332 = add i32 %7331, %7330
  store i32 %7332, ptr %46, align 4, !tbaa !9
  %7333 = load ptr, ptr %5, align 8, !tbaa !5
  %7334 = getelementptr inbounds %struct.w2c_hermes, ptr %7333, i32 0, i32 6
  %7335 = load i32, ptr %45, align 4, !tbaa !9
  %7336 = zext i32 %7335 to i64
  %7337 = add i64 %7336, 164
  %7338 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7334, i64 noundef %7337, i32 noundef %7338)
  %7339 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7339, ptr %45, align 4, !tbaa !9
  %7340 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %7340, ptr %55, align 8, !tbaa !11
  %7341 = load ptr, ptr %5, align 8, !tbaa !5
  %7342 = getelementptr inbounds %struct.w2c_hermes, ptr %7341, i32 0, i32 6
  %7343 = load i32, ptr %45, align 4, !tbaa !9
  %7344 = zext i32 %7343 to i64
  %7345 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7342, i64 noundef %7344, i64 noundef %7345)
  br label %7354

7346:                                             ; preds = %7291
  %7347 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7347, ptr %45, align 4, !tbaa !9
  %7348 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %7348, ptr %55, align 8, !tbaa !11
  %7349 = load ptr, ptr %5, align 8, !tbaa !5
  %7350 = load i32, ptr %45, align 4, !tbaa !9
  %7351 = load i64, ptr %55, align 8, !tbaa !11
  %7352 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %7349, i32 noundef %7350, i64 noundef %7351)
  store i32 %7352, ptr %45, align 4, !tbaa !9
  %7353 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7353, ptr %12, align 4, !tbaa !9
  br label %7354

7354:                                             ; preds = %7346, %7327
  %7355 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7355, ptr %45, align 4, !tbaa !9
  %7356 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7356, ptr %46, align 4, !tbaa !9
  %7357 = load ptr, ptr %5, align 8, !tbaa !5
  %7358 = getelementptr inbounds %struct.w2c_hermes, ptr %7357, i32 0, i32 6
  %7359 = load i32, ptr %46, align 4, !tbaa !9
  %7360 = zext i32 %7359 to i64
  %7361 = add i64 %7360, 2
  %7362 = call i32 @i32_load8_u(ptr noundef %7358, i64 noundef %7361)
  store i32 %7362, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %7363 = load i32, ptr %47, align 4, !tbaa !9
  %7364 = and i32 %7363, 31
  %7365 = load i32, ptr %46, align 4, !tbaa !9
  %7366 = shl i32 %7365, %7364
  store i32 %7366, ptr %46, align 4, !tbaa !9
  %7367 = load i32, ptr %46, align 4, !tbaa !9
  %7368 = load i32, ptr %45, align 4, !tbaa !9
  %7369 = add i32 %7368, %7367
  store i32 %7369, ptr %45, align 4, !tbaa !9
  %7370 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7370, ptr %14, align 4, !tbaa !9
  %7371 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7371, ptr %45, align 4, !tbaa !9
  %7372 = load ptr, ptr %5, align 8, !tbaa !5
  %7373 = getelementptr inbounds %struct.w2c_hermes, ptr %7372, i32 0, i32 6
  %7374 = load i32, ptr %45, align 4, !tbaa !9
  %7375 = zext i32 %7374 to i64
  %7376 = add i64 %7375, 28
  %7377 = call i32 @i32_load(ptr noundef %7373, i64 noundef %7376)
  store i32 %7377, ptr %45, align 4, !tbaa !9
  %7378 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7378, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %7379 = load i32, ptr %47, align 4, !tbaa !9
  %7380 = and i32 %7379, 31
  %7381 = load i32, ptr %46, align 4, !tbaa !9
  %7382 = shl i32 %7381, %7380
  store i32 %7382, ptr %46, align 4, !tbaa !9
  %7383 = load i32, ptr %46, align 4, !tbaa !9
  %7384 = load i32, ptr %45, align 4, !tbaa !9
  %7385 = add i32 %7384, %7383
  store i32 %7385, ptr %45, align 4, !tbaa !9
  %7386 = load ptr, ptr %5, align 8, !tbaa !5
  %7387 = getelementptr inbounds %struct.w2c_hermes, ptr %7386, i32 0, i32 6
  %7388 = load i32, ptr %45, align 4, !tbaa !9
  %7389 = zext i32 %7388 to i64
  %7390 = call i32 @i32_load(ptr noundef %7387, i64 noundef %7389)
  store i32 %7390, ptr %45, align 4, !tbaa !9
  %7391 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7391, ptr %13, align 4, !tbaa !9
  %7392 = load i32, ptr %45, align 4, !tbaa !9
  %7393 = icmp ne i32 %7392, 0
  %7394 = xor i1 %7393, true
  %7395 = zext i1 %7394 to i32
  store i32 %7395, ptr %45, align 4, !tbaa !9
  %7396 = load i32, ptr %45, align 4, !tbaa !9
  %7397 = icmp ne i32 %7396, 0
  br i1 %7397, label %7398, label %7406

7398:                                             ; preds = %7354
  %7399 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7399, ptr %45, align 4, !tbaa !9
  %7400 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7400, ptr %46, align 4, !tbaa !9
  %7401 = load ptr, ptr %5, align 8, !tbaa !5
  %7402 = load i32, ptr %45, align 4, !tbaa !9
  %7403 = load i32, ptr %46, align 4, !tbaa !9
  %7404 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %7401, i32 noundef %7402, i32 noundef %7403)
  store i32 %7404, ptr %45, align 4, !tbaa !9
  %7405 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7405, ptr %13, align 4, !tbaa !9
  br label %7406

7406:                                             ; preds = %7398, %7354
  %7407 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7407, ptr %45, align 4, !tbaa !9
  store i32 1368, ptr %46, align 4, !tbaa !9
  %7408 = load i32, ptr %46, align 4, !tbaa !9
  %7409 = load i32, ptr %45, align 4, !tbaa !9
  %7410 = add i32 %7409, %7408
  store i32 %7410, ptr %45, align 4, !tbaa !9
  %7411 = load ptr, ptr %5, align 8, !tbaa !5
  %7412 = getelementptr inbounds %struct.w2c_hermes, ptr %7411, i32 0, i32 6
  %7413 = load i32, ptr %45, align 4, !tbaa !9
  %7414 = zext i32 %7413 to i64
  %7415 = call i32 @i32_load(ptr noundef %7412, i64 noundef %7414)
  store i32 %7415, ptr %45, align 4, !tbaa !9
  %7416 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7416, ptr %46, align 4, !tbaa !9
  store i32 1364, ptr %47, align 4, !tbaa !9
  %7417 = load i32, ptr %47, align 4, !tbaa !9
  %7418 = load i32, ptr %46, align 4, !tbaa !9
  %7419 = add i32 %7418, %7417
  store i32 %7419, ptr %46, align 4, !tbaa !9
  %7420 = load ptr, ptr %5, align 8, !tbaa !5
  %7421 = getelementptr inbounds %struct.w2c_hermes, ptr %7420, i32 0, i32 6
  %7422 = load i32, ptr %46, align 4, !tbaa !9
  %7423 = zext i32 %7422 to i64
  %7424 = call i32 @i32_load(ptr noundef %7421, i64 noundef %7423)
  store i32 %7424, ptr %46, align 4, !tbaa !9
  %7425 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7425, ptr %8, align 4, !tbaa !9
  %7426 = load i32, ptr %46, align 4, !tbaa !9
  %7427 = load i32, ptr %45, align 4, !tbaa !9
  %7428 = sub i32 %7427, %7426
  store i32 %7428, ptr %45, align 4, !tbaa !9
  store i32 39, ptr %46, align 4, !tbaa !9
  %7429 = load i32, ptr %45, align 4, !tbaa !9
  %7430 = load i32, ptr %46, align 4, !tbaa !9
  %7431 = icmp ule i32 %7429, %7430
  %7432 = zext i1 %7431 to i32
  store i32 %7432, ptr %45, align 4, !tbaa !9
  %7433 = load i32, ptr %45, align 4, !tbaa !9
  %7434 = icmp ne i32 %7433, 0
  br i1 %7434, label %7435, label %7445

7435:                                             ; preds = %7406
  %7436 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7436, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %7437 = load i32, ptr %46, align 4, !tbaa !9
  %7438 = load i32, ptr %45, align 4, !tbaa !9
  %7439 = add i32 %7438, %7437
  store i32 %7439, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %7440 = load ptr, ptr %5, align 8, !tbaa !5
  %7441 = load i32, ptr %45, align 4, !tbaa !9
  %7442 = load i32, ptr %46, align 4, !tbaa !9
  %7443 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %7440, i32 noundef %7441, i32 noundef %7442)
  store i32 %7443, ptr %45, align 4, !tbaa !9
  %7444 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7444, ptr %8, align 4, !tbaa !9
  br label %7457

7445:                                             ; preds = %7406
  %7446 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7446, ptr %45, align 4, !tbaa !9
  %7447 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7447, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %7448 = load i32, ptr %47, align 4, !tbaa !9
  %7449 = load i32, ptr %46, align 4, !tbaa !9
  %7450 = add i32 %7449, %7448
  store i32 %7450, ptr %46, align 4, !tbaa !9
  %7451 = load ptr, ptr %5, align 8, !tbaa !5
  %7452 = getelementptr inbounds %struct.w2c_hermes, ptr %7451, i32 0, i32 6
  %7453 = load i32, ptr %45, align 4, !tbaa !9
  %7454 = zext i32 %7453 to i64
  %7455 = add i64 %7454, 1364
  %7456 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7452, i64 noundef %7455, i32 noundef %7456)
  br label %7457

7457:                                             ; preds = %7445, %7435
  %7458 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7458, ptr %45, align 4, !tbaa !9
  %7459 = load ptr, ptr %5, align 8, !tbaa !5
  %7460 = getelementptr inbounds %struct.w2c_hermes, ptr %7459, i32 0, i32 6
  %7461 = load i32, ptr %45, align 4, !tbaa !9
  %7462 = zext i32 %7461 to i64
  %7463 = add i64 %7462, 632
  %7464 = call i64 @i64_load(ptr noundef %7460, i64 noundef %7463)
  store i64 %7464, ptr %54, align 8, !tbaa !11
  %7465 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %7465, ptr %41, align 8, !tbaa !11
  %7466 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7466, ptr %45, align 4, !tbaa !9
  %7467 = load ptr, ptr %5, align 8, !tbaa !5
  %7468 = getelementptr inbounds %struct.w2c_hermes, ptr %7467, i32 0, i32 6
  %7469 = load i32, ptr %45, align 4, !tbaa !9
  %7470 = zext i32 %7469 to i64
  %7471 = add i64 %7470, 5640
  %7472 = call i64 @i64_load(ptr noundef %7468, i64 noundef %7471)
  store i64 %7472, ptr %54, align 8, !tbaa !11
  %7473 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %7473, ptr %39, align 8, !tbaa !11
  %7474 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7474, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %7475 = load ptr, ptr %5, align 8, !tbaa !5
  %7476 = getelementptr inbounds %struct.w2c_hermes, ptr %7475, i32 0, i32 6
  %7477 = load i32, ptr %45, align 4, !tbaa !9
  %7478 = zext i32 %7477 to i64
  %7479 = add i64 %7478, 16
  %7480 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7476, i64 noundef %7479, i32 noundef %7480)
  %7481 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7481, ptr %45, align 4, !tbaa !9
  %7482 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %7482, ptr %55, align 8, !tbaa !11
  %7483 = load ptr, ptr %5, align 8, !tbaa !5
  %7484 = getelementptr inbounds %struct.w2c_hermes, ptr %7483, i32 0, i32 6
  %7485 = load i32, ptr %45, align 4, !tbaa !9
  %7486 = zext i32 %7485 to i64
  %7487 = add i64 %7486, 12
  %7488 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %7484, i64 noundef %7487, i64 noundef %7488)
  %7489 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7489, ptr %45, align 4, !tbaa !9
  %7490 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %7490, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %7494 = zext i32 %7493 to i64
  %7495 = add i64 %7494, 8
  %7496 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %7492, i64 noundef %7495, i64 noundef %7496)
  %7497 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7497, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %7498 = load ptr, ptr %5, align 8, !tbaa !5
  %7499 = getelementptr inbounds %struct.w2c_hermes, ptr %7498, i32 0, i32 6
  %7500 = load i32, ptr %45, align 4, !tbaa !9
  %7501 = zext i32 %7500 to i64
  %7502 = add i64 %7501, 4
  %7503 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7499, i64 noundef %7502, i32 noundef %7503)
  %7504 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7504, ptr %45, align 4, !tbaa !9
  %7505 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7505, ptr %46, align 4, !tbaa !9
  %7506 = load ptr, ptr %5, align 8, !tbaa !5
  %7507 = getelementptr inbounds %struct.w2c_hermes, ptr %7506, i32 0, i32 6
  %7508 = load i32, ptr %46, align 4, !tbaa !9
  %7509 = zext i32 %7508 to i64
  %7510 = call i32 @i32_load(ptr noundef %7507, i64 noundef %7509)
  store i32 %7510, ptr %46, align 4, !tbaa !9
  %7511 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7511, ptr %15, align 4, !tbaa !9
  %7512 = load ptr, ptr %5, align 8, !tbaa !5
  %7513 = getelementptr inbounds %struct.w2c_hermes, ptr %7512, i32 0, i32 6
  %7514 = load i32, ptr %45, align 4, !tbaa !9
  %7515 = zext i32 %7514 to i64
  %7516 = add i64 %7515, 20
  %7517 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7513, i64 noundef %7516, i32 noundef %7517)
  %7518 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7518, ptr %45, align 4, !tbaa !9
  store i32 1356, ptr %46, align 4, !tbaa !9
  %7519 = load i32, ptr %46, align 4, !tbaa !9
  %7520 = load i32, ptr %45, align 4, !tbaa !9
  %7521 = add i32 %7520, %7519
  store i32 %7521, ptr %45, align 4, !tbaa !9
  %7522 = load ptr, ptr %5, align 8, !tbaa !5
  %7523 = getelementptr inbounds %struct.w2c_hermes, ptr %7522, i32 0, i32 6
  %7524 = load i32, ptr %45, align 4, !tbaa !9
  %7525 = zext i32 %7524 to i64
  %7526 = call i32 @i32_load(ptr noundef %7523, i64 noundef %7525)
  store i32 %7526, ptr %45, align 4, !tbaa !9
  %7527 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7527, ptr %46, align 4, !tbaa !9
  store i32 20, ptr %47, align 4, !tbaa !9
  %7528 = load i32, ptr %47, align 4, !tbaa !9
  %7529 = load i32, ptr %46, align 4, !tbaa !9
  %7530 = add i32 %7529, %7528
  store i32 %7530, ptr %46, align 4, !tbaa !9
  %7531 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7531, ptr %14, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %7532 = load i32, ptr %47, align 4, !tbaa !9
  %7533 = load i32, ptr %46, align 4, !tbaa !9
  %7534 = and i32 %7533, %7532
  store i32 %7534, ptr %46, align 4, !tbaa !9
  %7535 = load i32, ptr %45, align 4, !tbaa !9
  %7536 = load i32, ptr %46, align 4, !tbaa !9
  %7537 = icmp ne i32 %7535, %7536
  %7538 = zext i1 %7537 to i32
  store i32 %7538, ptr %45, align 4, !tbaa !9
  %7539 = load i32, ptr %45, align 4, !tbaa !9
  %7540 = icmp ne i32 %7539, 0
  br i1 %7540, label %7541, label %7552

7541:                                             ; preds = %7457
  %7542 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7542, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %7543 = load i32, ptr %46, align 4, !tbaa !9
  %7544 = load i32, ptr %45, align 4, !tbaa !9
  %7545 = add i32 %7544, %7543
  store i32 %7545, ptr %45, align 4, !tbaa !9
  %7546 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7546, ptr %46, align 4, !tbaa !9
  %7547 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %7547, ptr %47, align 4, !tbaa !9
  %7548 = load ptr, ptr %5, align 8, !tbaa !5
  %7549 = load i32, ptr %45, align 4, !tbaa !9
  %7550 = load i32, ptr %46, align 4, !tbaa !9
  %7551 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %7548, i32 noundef %7549, i32 noundef %7550, i32 noundef %7551)
  br label %7552

7552:                                             ; preds = %7541, %7457
  %7553 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7553, ptr %45, align 4, !tbaa !9
  %7554 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7554, ptr %46, align 4, !tbaa !9
  store i32 1276, ptr %47, align 4, !tbaa !9
  %7555 = load i32, ptr %47, align 4, !tbaa !9
  %7556 = load i32, ptr %46, align 4, !tbaa !9
  %7557 = add i32 %7556, %7555
  store i32 %7557, ptr %46, align 4, !tbaa !9
  %7558 = load ptr, ptr %5, align 8, !tbaa !5
  %7559 = getelementptr inbounds %struct.w2c_hermes, ptr %7558, i32 0, i32 6
  %7560 = load i32, ptr %46, align 4, !tbaa !9
  %7561 = zext i32 %7560 to i64
  %7562 = call i32 @i32_load(ptr noundef %7559, i64 noundef %7561)
  store i32 %7562, ptr %46, align 4, !tbaa !9
  %7563 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7563, ptr %47, align 4, !tbaa !9
  %7564 = load i32, ptr %47, align 4, !tbaa !9
  %7565 = load i32, ptr %46, align 4, !tbaa !9
  %7566 = xor i32 %7565, %7564
  store i32 %7566, ptr %46, 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 %45, align 4, !tbaa !9
  %7570 = zext i32 %7569 to i64
  %7571 = add i64 %7570, 24
  %7572 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7568, i64 noundef %7571, i32 noundef %7572)
  %7573 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7573, ptr %45, align 4, !tbaa !9
  %7574 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7574, ptr %46, align 4, !tbaa !9
  %7575 = load ptr, ptr %5, align 8, !tbaa !5
  %7576 = getelementptr inbounds %struct.w2c_hermes, ptr %7575, i32 0, i32 6
  %7577 = load i32, ptr %46, align 4, !tbaa !9
  %7578 = zext i32 %7577 to i64
  %7579 = call i32 @i32_load(ptr noundef %7576, i64 noundef %7578)
  store i32 %7579, ptr %46, align 4, !tbaa !9
  %7580 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7580, ptr %13, align 4, !tbaa !9
  %7581 = load ptr, ptr %5, align 8, !tbaa !5
  %7582 = getelementptr inbounds %struct.w2c_hermes, ptr %7581, i32 0, i32 6
  %7583 = load i32, ptr %45, align 4, !tbaa !9
  %7584 = zext i32 %7583 to i64
  %7585 = add i64 %7584, 28
  %7586 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7582, i64 noundef %7585, i32 noundef %7586)
  %7587 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7587, ptr %45, align 4, !tbaa !9
  %7588 = load ptr, ptr %5, align 8, !tbaa !5
  %7589 = getelementptr inbounds %struct.w2c_hermes, ptr %7588, i32 0, i32 6
  %7590 = load i32, ptr %45, align 4, !tbaa !9
  %7591 = zext i32 %7590 to i64
  %7592 = add i64 %7591, 1356
  %7593 = call i32 @i32_load(ptr noundef %7589, i64 noundef %7592)
  store i32 %7593, ptr %45, align 4, !tbaa !9
  %7594 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7594, ptr %46, align 4, !tbaa !9
  store i32 28, ptr %47, align 4, !tbaa !9
  %7595 = load i32, ptr %47, align 4, !tbaa !9
  %7596 = load i32, ptr %46, align 4, !tbaa !9
  %7597 = add i32 %7596, %7595
  store i32 %7597, ptr %46, align 4, !tbaa !9
  %7598 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7598, ptr %12, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %7599 = load i32, ptr %47, align 4, !tbaa !9
  %7600 = load i32, ptr %46, align 4, !tbaa !9
  %7601 = and i32 %7600, %7599
  store i32 %7601, ptr %46, align 4, !tbaa !9
  %7602 = load i32, ptr %45, align 4, !tbaa !9
  %7603 = load i32, ptr %46, align 4, !tbaa !9
  %7604 = icmp ne i32 %7602, %7603
  %7605 = zext i1 %7604 to i32
  store i32 %7605, ptr %45, align 4, !tbaa !9
  %7606 = load i32, ptr %45, align 4, !tbaa !9
  %7607 = icmp ne i32 %7606, 0
  br i1 %7607, label %7608, label %7619

7608:                                             ; preds = %7552
  %7609 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7609, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %7610 = load i32, ptr %46, align 4, !tbaa !9
  %7611 = load i32, ptr %45, align 4, !tbaa !9
  %7612 = add i32 %7611, %7610
  store i32 %7612, ptr %45, align 4, !tbaa !9
  %7613 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7613, ptr %46, align 4, !tbaa !9
  %7614 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %7614, ptr %47, align 4, !tbaa !9
  %7615 = load ptr, ptr %5, align 8, !tbaa !5
  %7616 = load i32, ptr %45, align 4, !tbaa !9
  %7617 = load i32, ptr %46, align 4, !tbaa !9
  %7618 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %7615, i32 noundef %7616, i32 noundef %7617, i32 noundef %7618)
  br label %7619

7619:                                             ; preds = %7608, %7552
  %7620 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7620, ptr %45, align 4, !tbaa !9
  store i32 1224736808, ptr %46, align 4, !tbaa !9
  %7621 = load ptr, ptr %5, align 8, !tbaa !5
  %7622 = getelementptr inbounds %struct.w2c_hermes, ptr %7621, i32 0, i32 6
  %7623 = load i32, ptr %45, align 4, !tbaa !9
  %7624 = zext i32 %7623 to i64
  %7625 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7622, i64 noundef %7624, i32 noundef %7625)
  %7626 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7626, ptr %45, align 4, !tbaa !9
  store i64 60129542158, ptr %55, align 8, !tbaa !11
  %7627 = load ptr, ptr %5, align 8, !tbaa !5
  %7628 = getelementptr inbounds %struct.w2c_hermes, ptr %7627, i32 0, i32 6
  %7629 = load i32, ptr %45, align 4, !tbaa !9
  %7630 = zext i32 %7629 to i64
  %7631 = add i64 %7630, 32
  %7632 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7628, i64 noundef %7631, i64 noundef %7632)
  %7633 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7633, ptr %45, align 4, !tbaa !9
  %7634 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7634, ptr %46, 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 %46, align 4, !tbaa !9
  %7638 = zext i32 %7637 to i64
  %7639 = add i64 %7638, 4
  %7640 = call i32 @i32_load(ptr noundef %7636, i64 noundef %7639)
  store i32 %7640, ptr %46, align 4, !tbaa !9
  store i32 64, ptr %47, align 4, !tbaa !9
  %7641 = load i32, ptr %47, align 4, !tbaa !9
  %7642 = load i32, ptr %46, align 4, !tbaa !9
  %7643 = or i32 %7642, %7641
  store i32 %7643, ptr %46, align 4, !tbaa !9
  %7644 = load ptr, ptr %5, align 8, !tbaa !5
  %7645 = getelementptr inbounds %struct.w2c_hermes, ptr %7644, i32 0, i32 6
  %7646 = load i32, ptr %45, align 4, !tbaa !9
  %7647 = zext i32 %7646 to i64
  %7648 = add i64 %7647, 4
  %7649 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7645, i64 noundef %7648, i32 noundef %7649)
  %7650 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7650, ptr %45, align 4, !tbaa !9
  %7651 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7651, ptr %46, align 4, !tbaa !9
  %7652 = load ptr, ptr %5, align 8, !tbaa !5
  %7653 = getelementptr inbounds %struct.w2c_hermes, ptr %7652, i32 0, i32 6
  %7654 = load i32, ptr %46, align 4, !tbaa !9
  %7655 = zext i32 %7654 to i64
  %7656 = add i64 %7655, 1
  %7657 = call i32 @i32_load8_u(ptr noundef %7653, i64 noundef %7656)
  store i32 %7657, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %7658 = load i32, ptr %47, align 4, !tbaa !9
  %7659 = and i32 %7658, 31
  %7660 = load i32, ptr %46, align 4, !tbaa !9
  %7661 = shl i32 %7660, %7659
  store i32 %7661, ptr %46, align 4, !tbaa !9
  %7662 = load i32, ptr %46, align 4, !tbaa !9
  %7663 = load i32, ptr %45, align 4, !tbaa !9
  %7664 = add i32 %7663, %7662
  store i32 %7664, ptr %45, align 4, !tbaa !9
  %7665 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7665, ptr %46, align 4, !tbaa !9
  %7666 = load i32, ptr %46, align 4, !tbaa !9
  %7667 = zext i32 %7666 to i64
  store i64 %7667, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %7668 = load i64, ptr %56, align 8, !tbaa !11
  %7669 = load i64, ptr %55, align 8, !tbaa !11
  %7670 = or i64 %7669, %7668
  store i64 %7670, ptr %55, align 8, !tbaa !11
  %7671 = load ptr, ptr %5, align 8, !tbaa !5
  %7672 = getelementptr inbounds %struct.w2c_hermes, ptr %7671, i32 0, i32 6
  %7673 = load i32, ptr %45, align 4, !tbaa !9
  %7674 = zext i32 %7673 to i64
  %7675 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7672, i64 noundef %7674, i64 noundef %7675)
  %7676 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7676, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %7677 = load ptr, ptr %5, align 8, !tbaa !5
  %7678 = getelementptr inbounds %struct.w2c_hermes, ptr %7677, i32 0, i32 6
  %7679 = load i32, ptr %45, align 4, !tbaa !9
  %7680 = zext i32 %7679 to i64
  %7681 = add i64 %7680, 516
  %7682 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7678, i64 noundef %7681, i32 noundef %7682)
  %7683 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7683, ptr %45, align 4, !tbaa !9
  %7684 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7684, ptr %46, align 4, !tbaa !9
  %7685 = load ptr, ptr %5, align 8, !tbaa !5
  %7686 = getelementptr inbounds %struct.w2c_hermes, ptr %7685, i32 0, i32 6
  %7687 = load i32, ptr %45, align 4, !tbaa !9
  %7688 = zext i32 %7687 to i64
  %7689 = add i64 %7688, 512
  %7690 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7686, i64 noundef %7689, i32 noundef %7690)
  %7691 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7691, ptr %45, align 4, !tbaa !9
  %7692 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7692, ptr %46, align 4, !tbaa !9
  %7693 = load ptr, ptr %5, align 8, !tbaa !5
  %7694 = getelementptr inbounds %struct.w2c_hermes, ptr %7693, i32 0, i32 6
  %7695 = load i32, ptr %45, align 4, !tbaa !9
  %7696 = zext i32 %7695 to i64
  %7697 = add i64 %7696, 508
  %7698 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7694, i64 noundef %7697, i32 noundef %7698)
  %7699 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7699, ptr %45, align 4, !tbaa !9
  %7700 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7700, ptr %6, align 4, !tbaa !9
  br label %2945

7701:                                             ; preds = %3005
  %7702 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7702, ptr %45, align 4, !tbaa !9
  %7703 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7703, ptr %46, align 4, !tbaa !9
  %7704 = load ptr, ptr %5, align 8, !tbaa !5
  %7705 = getelementptr inbounds %struct.w2c_hermes, ptr %7704, i32 0, i32 6
  %7706 = load i32, ptr %45, align 4, !tbaa !9
  %7707 = zext i32 %7706 to i64
  %7708 = add i64 %7707, 5808
  %7709 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7705, i64 noundef %7708, i32 noundef %7709)
  %7710 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7710, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %7711 = load i32, ptr %46, align 4, !tbaa !9
  %7712 = load i32, ptr %45, align 4, !tbaa !9
  %7713 = sub i32 %7712, %7711
  store i32 %7713, ptr %45, align 4, !tbaa !9
  %7714 = load ptr, ptr %5, align 8, !tbaa !5
  %7715 = getelementptr inbounds %struct.w2c_hermes, ptr %7714, i32 0, i32 6
  %7716 = load i32, ptr %45, align 4, !tbaa !9
  %7717 = zext i32 %7716 to i64
  %7718 = call i64 @i64_load(ptr noundef %7715, i64 noundef %7717)
  store i64 %7718, ptr %54, align 8, !tbaa !11
  %7719 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %7719, ptr %39, align 8, !tbaa !11
  %7720 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7720, ptr %45, 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 %45, align 4, !tbaa !9
  %7724 = zext i32 %7723 to i64
  %7725 = add i64 %7724, 3
  %7726 = call i32 @i32_load16_u(ptr noundef %7722, i64 noundef %7725)
  store i32 %7726, ptr %45, align 4, !tbaa !9
  %7727 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7727, ptr %12, align 4, !tbaa !9
  %7728 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7728, ptr %45, align 4, !tbaa !9
  %7729 = load ptr, ptr %5, align 8, !tbaa !5
  %7730 = getelementptr inbounds %struct.w2c_hermes, ptr %7729, i32 0, i32 6
  %7731 = load i32, ptr %45, align 4, !tbaa !9
  %7732 = zext i32 %7731 to i64
  %7733 = call i32 @i32_load(ptr noundef %7730, i64 noundef %7732)
  store i32 %7733, ptr %45, align 4, !tbaa !9
  %7734 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7734, ptr %8, align 4, !tbaa !9
  %7735 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7735, ptr %45, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %7739 = zext i32 %7738 to i64
  %7740 = add i64 %7739, 2
  %7741 = call i32 @i32_load8_u(ptr noundef %7737, i64 noundef %7740)
  store i32 %7741, ptr %45, align 4, !tbaa !9
  %7742 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7742, ptr %7, align 4, !tbaa !9
  %7743 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7743, ptr %45, align 4, !tbaa !9
  %7744 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7744, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %7745 = load i32, ptr %47, align 4, !tbaa !9
  %7746 = load i32, ptr %46, align 4, !tbaa !9
  %7747 = sub i32 %7746, %7745
  store i32 %7747, ptr %46, align 4, !tbaa !9
  %7748 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7748, ptr %6, align 4, !tbaa !9
  %7749 = load ptr, ptr %5, align 8, !tbaa !5
  %7750 = getelementptr inbounds %struct.w2c_hermes, ptr %7749, i32 0, i32 6
  %7751 = load i32, ptr %45, align 4, !tbaa !9
  %7752 = zext i32 %7751 to i64
  %7753 = add i64 %7752, 300
  %7754 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7750, i64 noundef %7753, i32 noundef %7754)
  %7755 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7755, ptr %45, align 4, !tbaa !9
  %7756 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7756, ptr %46, align 4, !tbaa !9
  %7757 = load ptr, ptr %5, align 8, !tbaa !5
  %7758 = getelementptr inbounds %struct.w2c_hermes, ptr %7757, i32 0, i32 6
  %7759 = load i32, ptr %45, align 4, !tbaa !9
  %7760 = zext i32 %7759 to i64
  %7761 = add i64 %7760, 8
  %7762 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7758, i64 noundef %7761, i32 noundef %7762)
  %7763 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7763, ptr %45, align 4, !tbaa !9
  %7764 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %7764, ptr %55, align 8, !tbaa !11
  %7765 = load ptr, ptr %5, align 8, !tbaa !5
  %7766 = getelementptr inbounds %struct.w2c_hermes, ptr %7765, i32 0, i32 6
  %7767 = load i32, ptr %45, align 4, !tbaa !9
  %7768 = zext i32 %7767 to i64
  %7769 = add i64 %7768, 296
  %7770 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %7766, i64 noundef %7769, i64 noundef %7770)
  %7771 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7771, ptr %45, align 4, !tbaa !9
  %7772 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7772, ptr %46, align 4, !tbaa !9
  store i32 -64, ptr %47, align 4, !tbaa !9
  %7773 = load i32, ptr %47, align 4, !tbaa !9
  %7774 = load i32, ptr %46, align 4, !tbaa !9
  %7775 = add i32 %7774, %7773
  store i32 %7775, ptr %46, align 4, !tbaa !9
  %7776 = load ptr, ptr %5, align 8, !tbaa !5
  %7777 = getelementptr inbounds %struct.w2c_hermes, ptr %7776, i32 0, i32 6
  %7778 = load i32, ptr %45, align 4, !tbaa !9
  %7779 = zext i32 %7778 to i64
  %7780 = add i64 %7779, 292
  %7781 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7777, i64 noundef %7780, i32 noundef %7781)
  %7782 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7782, ptr %45, align 4, !tbaa !9
  %7783 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7783, ptr %46, align 4, !tbaa !9
  %7784 = load ptr, ptr %5, align 8, !tbaa !5
  %7785 = getelementptr inbounds %struct.w2c_hermes, ptr %7784, i32 0, i32 6
  %7786 = load i32, ptr %46, align 4, !tbaa !9
  %7787 = zext i32 %7786 to i64
  %7788 = add i64 %7787, 292
  %7789 = call i64 @i64_load(ptr noundef %7785, i64 noundef %7788)
  store i64 %7789, ptr %55, align 8, !tbaa !11
  %7790 = load ptr, ptr %5, align 8, !tbaa !5
  %7791 = getelementptr inbounds %struct.w2c_hermes, ptr %7790, i32 0, i32 6
  %7792 = load i32, ptr %45, align 4, !tbaa !9
  %7793 = zext i32 %7792 to i64
  %7794 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7791, i64 noundef %7793, i64 noundef %7794)
  %7795 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7795, ptr %45, align 4, !tbaa !9
  %7796 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7796, ptr %46, align 4, !tbaa !9
  %7797 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7797, ptr %47, align 4, !tbaa !9
  %7798 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7798, ptr %48, align 4, !tbaa !9
  %7799 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7799, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %7800 = load i32, ptr %50, align 4, !tbaa !9
  %7801 = and i32 %7800, 31
  %7802 = load i32, ptr %49, align 4, !tbaa !9
  %7803 = shl i32 %7802, %7801
  store i32 %7803, ptr %49, align 4, !tbaa !9
  %7804 = load i32, ptr %49, align 4, !tbaa !9
  %7805 = load i32, ptr %48, align 4, !tbaa !9
  %7806 = add i32 %7805, %7804
  store i32 %7806, ptr %48, align 4, !tbaa !9
  %7807 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7807, ptr %49, align 4, !tbaa !9
  %7808 = load ptr, ptr %5, align 8, !tbaa !5
  %7809 = load i32, ptr %45, align 4, !tbaa !9
  %7810 = load i32, ptr %46, align 4, !tbaa !9
  %7811 = load i32, ptr %47, align 4, !tbaa !9
  %7812 = load i32, ptr %48, align 4, !tbaa !9
  %7813 = load i32, ptr %49, align 4, !tbaa !9
  %7814 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateGenerator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x2A0x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ANativeArgs0x29(ptr noundef %7808, i32 noundef %7809, i32 noundef %7810, i32 noundef %7811, i32 noundef %7812, i32 noundef %7813)
  store i32 %7814, ptr %45, align 4, !tbaa !9
  %7815 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7815, ptr %7, align 4, !tbaa !9
  %7816 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7816, ptr %45, align 4, !tbaa !9
  %7817 = load ptr, ptr %5, align 8, !tbaa !5
  %7818 = getelementptr inbounds %struct.w2c_hermes, ptr %7817, i32 0, i32 6
  %7819 = load i32, ptr %45, align 4, !tbaa !9
  %7820 = zext i32 %7819 to i64
  %7821 = add i64 %7820, 5808
  %7822 = call i32 @i32_load(ptr noundef %7818, i64 noundef %7821)
  store i32 %7822, ptr %45, align 4, !tbaa !9
  %7823 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7823, ptr %6, align 4, !tbaa !9
  %7824 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7824, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %7825 = load i32, ptr %45, align 4, !tbaa !9
  %7826 = load i32, ptr %46, align 4, !tbaa !9
  %7827 = icmp eq i32 %7825, %7826
  %7828 = zext i1 %7827 to i32
  store i32 %7828, ptr %45, align 4, !tbaa !9
  %7829 = load i32, ptr %45, align 4, !tbaa !9
  %7830 = icmp ne i32 %7829, 0
  br i1 %7830, label %7831, label %7832

7831:                                             ; preds = %7701
  br label %43136

7832:                                             ; preds = %7701
  %7833 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7833, ptr %45, align 4, !tbaa !9
  %7834 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7834, ptr %46, 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 %46, align 4, !tbaa !9
  %7838 = zext i32 %7837 to i64
  %7839 = add i64 %7838, 1
  %7840 = call i32 @i32_load8_u(ptr noundef %7836, i64 noundef %7839)
  store i32 %7840, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %7841 = load i32, ptr %47, align 4, !tbaa !9
  %7842 = and i32 %7841, 31
  %7843 = load i32, ptr %46, align 4, !tbaa !9
  %7844 = shl i32 %7843, %7842
  store i32 %7844, ptr %46, align 4, !tbaa !9
  %7845 = load i32, ptr %46, align 4, !tbaa !9
  %7846 = load i32, ptr %45, align 4, !tbaa !9
  %7847 = add i32 %7846, %7845
  store i32 %7847, ptr %45, align 4, !tbaa !9
  %7848 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7848, ptr %46, align 4, !tbaa !9
  %7849 = load i32, ptr %46, align 4, !tbaa !9
  %7850 = zext i32 %7849 to i64
  store i64 %7850, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %7851 = load i64, ptr %56, align 8, !tbaa !11
  %7852 = load i64, ptr %55, align 8, !tbaa !11
  %7853 = or i64 %7852, %7851
  store i64 %7853, ptr %55, align 8, !tbaa !11
  %7854 = load ptr, ptr %5, align 8, !tbaa !5
  %7855 = getelementptr inbounds %struct.w2c_hermes, ptr %7854, i32 0, i32 6
  %7856 = load i32, ptr %45, align 4, !tbaa !9
  %7857 = zext i32 %7856 to i64
  %7858 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7855, i64 noundef %7857, i64 noundef %7858)
  %7859 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7859, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %7860 = load ptr, ptr %5, align 8, !tbaa !5
  %7861 = getelementptr inbounds %struct.w2c_hermes, ptr %7860, i32 0, i32 6
  %7862 = load i32, ptr %45, align 4, !tbaa !9
  %7863 = zext i32 %7862 to i64
  %7864 = add i64 %7863, 516
  %7865 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7861, i64 noundef %7864, i32 noundef %7865)
  %7866 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7866, ptr %45, align 4, !tbaa !9
  %7867 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7867, ptr %46, align 4, !tbaa !9
  %7868 = load ptr, ptr %5, align 8, !tbaa !5
  %7869 = getelementptr inbounds %struct.w2c_hermes, ptr %7868, i32 0, i32 6
  %7870 = load i32, ptr %45, align 4, !tbaa !9
  %7871 = zext i32 %7870 to i64
  %7872 = add i64 %7871, 512
  %7873 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7869, i64 noundef %7872, i32 noundef %7873)
  %7874 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7874, ptr %45, align 4, !tbaa !9
  %7875 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7875, ptr %46, align 4, !tbaa !9
  %7876 = load ptr, ptr %5, align 8, !tbaa !5
  %7877 = getelementptr inbounds %struct.w2c_hermes, ptr %7876, i32 0, i32 6
  %7878 = load i32, ptr %45, align 4, !tbaa !9
  %7879 = zext i32 %7878 to i64
  %7880 = add i64 %7879, 508
  %7881 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7877, i64 noundef %7880, i32 noundef %7881)
  %7882 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7882, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %7883 = load i32, ptr %46, align 4, !tbaa !9
  %7884 = load i32, ptr %45, align 4, !tbaa !9
  %7885 = add i32 %7884, %7883
  store i32 %7885, ptr %45, align 4, !tbaa !9
  %7886 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7886, ptr %6, align 4, !tbaa !9
  br label %2945

7887:                                             ; preds = %3006
  %7888 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7888, ptr %45, align 4, !tbaa !9
  %7889 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7889, ptr %46, align 4, !tbaa !9
  %7890 = load ptr, ptr %5, align 8, !tbaa !5
  %7891 = getelementptr inbounds %struct.w2c_hermes, ptr %7890, i32 0, i32 6
  %7892 = load i32, ptr %45, align 4, !tbaa !9
  %7893 = zext i32 %7892 to i64
  %7894 = add i64 %7893, 5808
  %7895 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7891, i64 noundef %7894, i32 noundef %7895)
  %7896 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7896, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %7897 = load i32, ptr %46, align 4, !tbaa !9
  %7898 = load i32, ptr %45, align 4, !tbaa !9
  %7899 = sub i32 %7898, %7897
  store i32 %7899, ptr %45, align 4, !tbaa !9
  %7900 = load ptr, ptr %5, align 8, !tbaa !5
  %7901 = getelementptr inbounds %struct.w2c_hermes, ptr %7900, i32 0, i32 6
  %7902 = load i32, ptr %45, align 4, !tbaa !9
  %7903 = zext i32 %7902 to i64
  %7904 = call i64 @i64_load(ptr noundef %7901, i64 noundef %7903)
  store i64 %7904, ptr %54, align 8, !tbaa !11
  %7905 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %7905, ptr %39, align 8, !tbaa !11
  %7906 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7906, ptr %45, align 4, !tbaa !9
  %7907 = load ptr, ptr %5, align 8, !tbaa !5
  %7908 = getelementptr inbounds %struct.w2c_hermes, ptr %7907, i32 0, i32 6
  %7909 = load i32, ptr %45, align 4, !tbaa !9
  %7910 = zext i32 %7909 to i64
  %7911 = add i64 %7910, 3
  %7912 = call i32 @i32_load(ptr noundef %7908, i64 noundef %7911)
  store i32 %7912, ptr %45, align 4, !tbaa !9
  %7913 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7913, ptr %12, align 4, !tbaa !9
  %7914 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7914, ptr %45, align 4, !tbaa !9
  %7915 = load ptr, ptr %5, align 8, !tbaa !5
  %7916 = getelementptr inbounds %struct.w2c_hermes, ptr %7915, i32 0, i32 6
  %7917 = load i32, ptr %45, align 4, !tbaa !9
  %7918 = zext i32 %7917 to i64
  %7919 = call i32 @i32_load(ptr noundef %7916, i64 noundef %7918)
  store i32 %7919, ptr %45, align 4, !tbaa !9
  %7920 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7920, ptr %8, align 4, !tbaa !9
  %7921 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7921, ptr %45, align 4, !tbaa !9
  %7922 = load ptr, ptr %5, align 8, !tbaa !5
  %7923 = getelementptr inbounds %struct.w2c_hermes, ptr %7922, i32 0, i32 6
  %7924 = load i32, ptr %45, align 4, !tbaa !9
  %7925 = zext i32 %7924 to i64
  %7926 = add i64 %7925, 2
  %7927 = call i32 @i32_load8_u(ptr noundef %7923, i64 noundef %7926)
  store i32 %7927, ptr %45, align 4, !tbaa !9
  %7928 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %7928, ptr %7, align 4, !tbaa !9
  %7929 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7929, ptr %45, align 4, !tbaa !9
  %7930 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7930, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %7931 = load i32, ptr %47, align 4, !tbaa !9
  %7932 = load i32, ptr %46, align 4, !tbaa !9
  %7933 = sub i32 %7932, %7931
  store i32 %7933, ptr %46, align 4, !tbaa !9
  %7934 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %7934, ptr %6, align 4, !tbaa !9
  %7935 = load ptr, ptr %5, align 8, !tbaa !5
  %7936 = getelementptr inbounds %struct.w2c_hermes, ptr %7935, i32 0, i32 6
  %7937 = load i32, ptr %45, align 4, !tbaa !9
  %7938 = zext i32 %7937 to i64
  %7939 = add i64 %7938, 288
  %7940 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7936, i64 noundef %7939, i32 noundef %7940)
  %7941 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7941, ptr %45, align 4, !tbaa !9
  %7942 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %7942, ptr %46, align 4, !tbaa !9
  %7943 = load ptr, ptr %5, align 8, !tbaa !5
  %7944 = getelementptr inbounds %struct.w2c_hermes, ptr %7943, i32 0, i32 6
  %7945 = load i32, ptr %45, align 4, !tbaa !9
  %7946 = zext i32 %7945 to i64
  %7947 = add i64 %7946, 24
  %7948 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7944, i64 noundef %7947, i32 noundef %7948)
  %7949 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7949, ptr %45, align 4, !tbaa !9
  %7950 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %7950, ptr %55, align 8, !tbaa !11
  %7951 = load ptr, ptr %5, align 8, !tbaa !5
  %7952 = getelementptr inbounds %struct.w2c_hermes, ptr %7951, i32 0, i32 6
  %7953 = load i32, ptr %45, align 4, !tbaa !9
  %7954 = zext i32 %7953 to i64
  %7955 = add i64 %7954, 284
  %7956 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %7952, i64 noundef %7955, i64 noundef %7956)
  %7957 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7957, ptr %45, align 4, !tbaa !9
  %7958 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7958, ptr %46, align 4, !tbaa !9
  store i32 -64, ptr %47, align 4, !tbaa !9
  %7959 = load i32, ptr %47, align 4, !tbaa !9
  %7960 = load i32, ptr %46, align 4, !tbaa !9
  %7961 = add i32 %7960, %7959
  store i32 %7961, ptr %46, align 4, !tbaa !9
  %7962 = load ptr, ptr %5, align 8, !tbaa !5
  %7963 = getelementptr inbounds %struct.w2c_hermes, ptr %7962, i32 0, i32 6
  %7964 = load i32, ptr %45, align 4, !tbaa !9
  %7965 = zext i32 %7964 to i64
  %7966 = add i64 %7965, 280
  %7967 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7963, i64 noundef %7966, i32 noundef %7967)
  %7968 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7968, ptr %45, align 4, !tbaa !9
  %7969 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7969, ptr %46, align 4, !tbaa !9
  %7970 = load ptr, ptr %5, align 8, !tbaa !5
  %7971 = getelementptr inbounds %struct.w2c_hermes, ptr %7970, i32 0, i32 6
  %7972 = load i32, ptr %46, align 4, !tbaa !9
  %7973 = zext i32 %7972 to i64
  %7974 = add i64 %7973, 280
  %7975 = call i64 @i64_load(ptr noundef %7971, i64 noundef %7974)
  store i64 %7975, ptr %55, align 8, !tbaa !11
  %7976 = load ptr, ptr %5, align 8, !tbaa !5
  %7977 = getelementptr inbounds %struct.w2c_hermes, ptr %7976, i32 0, i32 6
  %7978 = load i32, ptr %45, align 4, !tbaa !9
  %7979 = zext i32 %7978 to i64
  %7980 = add i64 %7979, 16
  %7981 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7977, i64 noundef %7980, i64 noundef %7981)
  %7982 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %7982, ptr %45, align 4, !tbaa !9
  %7983 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %7983, ptr %46, align 4, !tbaa !9
  %7984 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %7984, ptr %47, align 4, !tbaa !9
  %7985 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %7985, ptr %48, align 4, !tbaa !9
  %7986 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %7986, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %7987 = load i32, ptr %50, align 4, !tbaa !9
  %7988 = and i32 %7987, 31
  %7989 = load i32, ptr %49, align 4, !tbaa !9
  %7990 = shl i32 %7989, %7988
  store i32 %7990, ptr %49, align 4, !tbaa !9
  %7991 = load i32, ptr %49, align 4, !tbaa !9
  %7992 = load i32, ptr %48, align 4, !tbaa !9
  %7993 = add i32 %7992, %7991
  store i32 %7993, ptr %48, align 4, !tbaa !9
  %7994 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %7994, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %7995 = load i32, ptr %50, align 4, !tbaa !9
  %7996 = load i32, ptr %49, align 4, !tbaa !9
  %7997 = add i32 %7996, %7995
  store i32 %7997, ptr %49, align 4, !tbaa !9
  %7998 = load ptr, ptr %5, align 8, !tbaa !5
  %7999 = load i32, ptr %45, align 4, !tbaa !9
  %8000 = load i32, ptr %46, align 4, !tbaa !9
  %8001 = load i32, ptr %47, align 4, !tbaa !9
  %8002 = load i32, ptr %48, align 4, !tbaa !9
  %8003 = load i32, ptr %49, align 4, !tbaa !9
  %8004 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateGenerator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x2A0x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ANativeArgs0x29(ptr noundef %7998, i32 noundef %7999, i32 noundef %8000, i32 noundef %8001, i32 noundef %8002, i32 noundef %8003)
  store i32 %8004, ptr %45, align 4, !tbaa !9
  %8005 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8005, ptr %7, align 4, !tbaa !9
  %8006 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8006, ptr %45, align 4, !tbaa !9
  %8007 = load ptr, ptr %5, align 8, !tbaa !5
  %8008 = getelementptr inbounds %struct.w2c_hermes, ptr %8007, i32 0, i32 6
  %8009 = load i32, ptr %45, align 4, !tbaa !9
  %8010 = zext i32 %8009 to i64
  %8011 = add i64 %8010, 5808
  %8012 = call i32 @i32_load(ptr noundef %8008, i64 noundef %8011)
  store i32 %8012, ptr %45, align 4, !tbaa !9
  %8013 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8013, ptr %6, align 4, !tbaa !9
  %8014 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8014, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %8015 = load i32, ptr %45, align 4, !tbaa !9
  %8016 = load i32, ptr %46, align 4, !tbaa !9
  %8017 = icmp eq i32 %8015, %8016
  %8018 = zext i1 %8017 to i32
  store i32 %8018, ptr %45, align 4, !tbaa !9
  %8019 = load i32, ptr %45, align 4, !tbaa !9
  %8020 = icmp ne i32 %8019, 0
  br i1 %8020, label %8021, label %8022

8021:                                             ; preds = %7887
  br label %43136

8022:                                             ; preds = %7887
  %8023 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8023, ptr %45, align 4, !tbaa !9
  %8024 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8024, ptr %46, align 4, !tbaa !9
  %8025 = load ptr, ptr %5, align 8, !tbaa !5
  %8026 = getelementptr inbounds %struct.w2c_hermes, ptr %8025, i32 0, i32 6
  %8027 = load i32, ptr %46, align 4, !tbaa !9
  %8028 = zext i32 %8027 to i64
  %8029 = add i64 %8028, 1
  %8030 = call i32 @i32_load8_u(ptr noundef %8026, i64 noundef %8029)
  store i32 %8030, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8031 = load i32, ptr %47, align 4, !tbaa !9
  %8032 = and i32 %8031, 31
  %8033 = load i32, ptr %46, align 4, !tbaa !9
  %8034 = shl i32 %8033, %8032
  store i32 %8034, ptr %46, align 4, !tbaa !9
  %8035 = load i32, ptr %46, align 4, !tbaa !9
  %8036 = load i32, ptr %45, align 4, !tbaa !9
  %8037 = add i32 %8036, %8035
  store i32 %8037, ptr %45, align 4, !tbaa !9
  %8038 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8038, ptr %46, align 4, !tbaa !9
  %8039 = load i32, ptr %46, align 4, !tbaa !9
  %8040 = zext i32 %8039 to i64
  store i64 %8040, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %8041 = load i64, ptr %56, align 8, !tbaa !11
  %8042 = load i64, ptr %55, align 8, !tbaa !11
  %8043 = or i64 %8042, %8041
  store i64 %8043, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %8047 = zext i32 %8046 to i64
  %8048 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8045, i64 noundef %8047, i64 noundef %8048)
  %8049 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8049, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %8050 = load ptr, ptr %5, align 8, !tbaa !5
  %8051 = getelementptr inbounds %struct.w2c_hermes, ptr %8050, i32 0, i32 6
  %8052 = load i32, ptr %45, align 4, !tbaa !9
  %8053 = zext i32 %8052 to i64
  %8054 = add i64 %8053, 516
  %8055 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8051, i64 noundef %8054, i32 noundef %8055)
  %8056 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8056, ptr %45, align 4, !tbaa !9
  %8057 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8057, ptr %46, align 4, !tbaa !9
  %8058 = load ptr, ptr %5, align 8, !tbaa !5
  %8059 = getelementptr inbounds %struct.w2c_hermes, ptr %8058, i32 0, i32 6
  %8060 = load i32, ptr %45, align 4, !tbaa !9
  %8061 = zext i32 %8060 to i64
  %8062 = add i64 %8061, 512
  %8063 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8059, i64 noundef %8062, i32 noundef %8063)
  %8064 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8064, ptr %45, align 4, !tbaa !9
  %8065 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8065, ptr %46, align 4, !tbaa !9
  %8066 = load ptr, ptr %5, align 8, !tbaa !5
  %8067 = getelementptr inbounds %struct.w2c_hermes, ptr %8066, i32 0, i32 6
  %8068 = load i32, ptr %45, align 4, !tbaa !9
  %8069 = zext i32 %8068 to i64
  %8070 = add i64 %8069, 508
  %8071 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8067, i64 noundef %8070, i32 noundef %8071)
  %8072 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8072, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8073 = load i32, ptr %46, align 4, !tbaa !9
  %8074 = load i32, ptr %45, align 4, !tbaa !9
  %8075 = add i32 %8074, %8073
  store i32 %8075, ptr %45, align 4, !tbaa !9
  %8076 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8076, ptr %6, align 4, !tbaa !9
  br label %2945

8077:                                             ; preds = %3007
  %8078 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8078, ptr %45, align 4, !tbaa !9
  store i32 56, ptr %46, align 4, !tbaa !9
  %8079 = load i32, ptr %46, align 4, !tbaa !9
  %8080 = load i32, ptr %45, align 4, !tbaa !9
  %8081 = sub i32 %8080, %8079
  store i32 %8081, ptr %45, 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 %45, align 4, !tbaa !9
  %8085 = zext i32 %8084 to i64
  %8086 = call i32 @i32_load(ptr noundef %8083, i64 noundef %8085)
  store i32 %8086, ptr %45, align 4, !tbaa !9
  %8087 = load ptr, ptr %5, align 8, !tbaa !5
  %8088 = getelementptr inbounds %struct.w2c_hermes, ptr %8087, i32 0, i32 6
  %8089 = load i32, ptr %45, align 4, !tbaa !9
  %8090 = zext i32 %8089 to i64
  %8091 = add i64 %8090, 20
  %8092 = call i32 @i32_load(ptr noundef %8088, i64 noundef %8091)
  store i32 %8092, ptr %45, align 4, !tbaa !9
  %8093 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8093, ptr %12, align 4, !tbaa !9
  %8094 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8094, ptr %45, align 4, !tbaa !9
  %8095 = load ptr, ptr %5, align 8, !tbaa !5
  %8096 = getelementptr inbounds %struct.w2c_hermes, ptr %8095, i32 0, i32 6
  %8097 = load i32, ptr %45, align 4, !tbaa !9
  %8098 = zext i32 %8097 to i64
  %8099 = add i64 %8098, 2
  %8100 = call i32 @i32_load8_u(ptr noundef %8096, i64 noundef %8099)
  store i32 %8100, ptr %45, align 4, !tbaa !9
  %8101 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8101, ptr %13, align 4, !tbaa !9
  %8102 = load i32, ptr %45, align 4, !tbaa !9
  %8103 = icmp ne i32 %8102, 0
  %8104 = xor i1 %8103, true
  %8105 = zext i1 %8104 to i32
  store i32 %8105, ptr %45, align 4, !tbaa !9
  %8106 = load i32, ptr %45, align 4, !tbaa !9
  %8107 = icmp ne i32 %8106, 0
  br i1 %8107, label %8108, label %8109

8108:                                             ; preds = %8077
  br label %43104

8109:                                             ; preds = %8077
  store i32 0, ptr %45, align 4, !tbaa !9
  %8110 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8110, ptr %8, align 4, !tbaa !9
  %8111 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8111, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8112 = load i32, ptr %46, align 4, !tbaa !9
  %8113 = load i32, ptr %45, align 4, !tbaa !9
  %8114 = and i32 %8113, %8112
  store i32 %8114, ptr %45, align 4, !tbaa !9
  %8115 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8115, ptr %14, align 4, !tbaa !9
  %8116 = load i32, ptr %45, align 4, !tbaa !9
  %8117 = icmp ne i32 %8116, 0
  %8118 = xor i1 %8117, true
  %8119 = zext i1 %8118 to i32
  store i32 %8119, ptr %45, align 4, !tbaa !9
  %8120 = load i32, ptr %45, align 4, !tbaa !9
  %8121 = icmp ne i32 %8120, 0
  br i1 %8121, label %8122, label %8123

8122:                                             ; preds = %8109
  br label %43031

8123:                                             ; preds = %8109
  %8124 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8124, ptr %45, align 4, !tbaa !9
  %8125 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8125, ptr %7, align 4, !tbaa !9
  br label %8126

8126:                                             ; preds = %8152, %8123
  %8127 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8127, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8128 = load i32, ptr %46, align 4, !tbaa !9
  %8129 = load i32, ptr %45, align 4, !tbaa !9
  %8130 = sub i32 %8129, %8128
  store i32 %8130, ptr %45, align 4, !tbaa !9
  %8131 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8131, ptr %7, align 4, !tbaa !9
  %8132 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8132, ptr %45, align 4, !tbaa !9
  %8133 = load ptr, ptr %5, align 8, !tbaa !5
  %8134 = getelementptr inbounds %struct.w2c_hermes, ptr %8133, i32 0, i32 6
  %8135 = load i32, ptr %45, align 4, !tbaa !9
  %8136 = zext i32 %8135 to i64
  %8137 = add i64 %8136, 4
  %8138 = call i32 @i32_load(ptr noundef %8134, i64 noundef %8137)
  store i32 %8138, ptr %45, align 4, !tbaa !9
  %8139 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8139, ptr %12, align 4, !tbaa !9
  %8140 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8140, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8141 = load i32, ptr %46, align 4, !tbaa !9
  %8142 = load i32, ptr %45, align 4, !tbaa !9
  %8143 = add i32 %8142, %8141
  store i32 %8143, ptr %45, align 4, !tbaa !9
  %8144 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8144, ptr %8, align 4, !tbaa !9
  %8145 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8145, ptr %46, align 4, !tbaa !9
  %8146 = load i32, ptr %45, align 4, !tbaa !9
  %8147 = load i32, ptr %46, align 4, !tbaa !9
  %8148 = icmp ne i32 %8146, %8147
  %8149 = zext i1 %8148 to i32
  store i32 %8149, ptr %45, align 4, !tbaa !9
  %8150 = load i32, ptr %45, align 4, !tbaa !9
  %8151 = icmp ne i32 %8150, 0
  br i1 %8151, label %8152, label %8153

8152:                                             ; preds = %8126
  br label %8126

8153:                                             ; preds = %8126
  br label %43034

8154:                                             ; preds = %3008
  %8155 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8155, ptr %45, align 4, !tbaa !9
  %8156 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8156, ptr %46, align 4, !tbaa !9
  %8157 = load ptr, ptr %5, align 8, !tbaa !5
  %8158 = getelementptr inbounds %struct.w2c_hermes, ptr %8157, i32 0, i32 6
  %8159 = load i32, ptr %45, align 4, !tbaa !9
  %8160 = zext i32 %8159 to i64
  %8161 = add i64 %8160, 5808
  %8162 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8158, i64 noundef %8161, i32 noundef %8162)
  %8163 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8163, ptr %45, align 4, !tbaa !9
  %8164 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8164, ptr %46, align 4, !tbaa !9
  %8165 = load ptr, ptr %5, align 8, !tbaa !5
  %8166 = getelementptr inbounds %struct.w2c_hermes, ptr %8165, i32 0, i32 6
  %8167 = load i32, ptr %46, align 4, !tbaa !9
  %8168 = zext i32 %8167 to i64
  %8169 = add i64 %8168, 2
  %8170 = call i32 @i32_load8_u(ptr noundef %8166, i64 noundef %8169)
  store i32 %8170, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8171 = load i32, ptr %47, align 4, !tbaa !9
  %8172 = and i32 %8171, 31
  %8173 = load i32, ptr %46, align 4, !tbaa !9
  %8174 = shl i32 %8173, %8172
  store i32 %8174, ptr %46, align 4, !tbaa !9
  %8175 = load i32, ptr %46, align 4, !tbaa !9
  %8176 = load i32, ptr %45, align 4, !tbaa !9
  %8177 = add i32 %8176, %8175
  store i32 %8177, ptr %45, align 4, !tbaa !9
  %8178 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8178, ptr %7, align 4, !tbaa !9
  %8179 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8179, ptr %45, align 4, !tbaa !9
  %8180 = load ptr, ptr %5, align 8, !tbaa !5
  %8181 = getelementptr inbounds %struct.w2c_hermes, ptr %8180, i32 0, i32 6
  %8182 = load i32, ptr %45, align 4, !tbaa !9
  %8183 = zext i32 %8182 to i64
  %8184 = add i64 %8183, 3
  %8185 = call i32 @i32_load(ptr noundef %8181, i64 noundef %8184)
  store i32 %8185, ptr %45, align 4, !tbaa !9
  %8186 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8186, ptr %18, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %8187 = load i32, ptr %46, align 4, !tbaa !9
  %8188 = and i32 %8187, 31
  %8189 = load i32, ptr %45, align 4, !tbaa !9
  %8190 = shl i32 %8189, %8188
  store i32 %8190, ptr %45, align 4, !tbaa !9
  store i32 23, ptr %46, align 4, !tbaa !9
  %8191 = load i32, ptr %46, align 4, !tbaa !9
  %8192 = load i32, ptr %45, align 4, !tbaa !9
  %8193 = add i32 %8192, %8191
  store i32 %8193, ptr %45, align 4, !tbaa !9
  %8194 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8194, ptr %15, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %8195 = load i32, ptr %46, align 4, !tbaa !9
  %8196 = load i32, ptr %45, align 4, !tbaa !9
  %8197 = and i32 %8196, %8195
  store i32 %8197, ptr %45, align 4, !tbaa !9
  %8198 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8198, ptr %12, align 4, !tbaa !9
  %8199 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8199, ptr %46, align 4, !tbaa !9
  %8200 = load ptr, ptr %5, align 8, !tbaa !5
  %8201 = getelementptr inbounds %struct.w2c_hermes, ptr %8200, i32 0, i32 6
  %8202 = load i32, ptr %46, align 4, !tbaa !9
  %8203 = zext i32 %8202 to i64
  %8204 = add i64 %8203, 1368
  %8205 = call i32 @i32_load(ptr noundef %8201, i64 noundef %8204)
  store i32 %8205, ptr %46, align 4, !tbaa !9
  %8206 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8206, ptr %47, align 4, !tbaa !9
  %8207 = load ptr, ptr %5, align 8, !tbaa !5
  %8208 = getelementptr inbounds %struct.w2c_hermes, ptr %8207, i32 0, i32 6
  %8209 = load i32, ptr %47, align 4, !tbaa !9
  %8210 = zext i32 %8209 to i64
  %8211 = add i64 %8210, 1364
  %8212 = call i32 @i32_load(ptr noundef %8208, i64 noundef %8211)
  store i32 %8212, ptr %47, align 4, !tbaa !9
  %8213 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %8213, ptr %8, align 4, !tbaa !9
  %8214 = load i32, ptr %47, align 4, !tbaa !9
  %8215 = load i32, ptr %46, align 4, !tbaa !9
  %8216 = sub i32 %8215, %8214
  store i32 %8216, ptr %46, align 4, !tbaa !9
  %8217 = load i32, ptr %45, align 4, !tbaa !9
  %8218 = load i32, ptr %46, align 4, !tbaa !9
  %8219 = icmp ugt i32 %8217, %8218
  %8220 = zext i1 %8219 to i32
  store i32 %8220, ptr %45, align 4, !tbaa !9
  %8221 = load i32, ptr %45, align 4, !tbaa !9
  %8222 = icmp ne i32 %8221, 0
  br i1 %8222, label %8223, label %8231

8223:                                             ; preds = %8154
  %8224 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8224, ptr %45, align 4, !tbaa !9
  %8225 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8225, ptr %46, align 4, !tbaa !9
  %8226 = load ptr, ptr %5, align 8, !tbaa !5
  %8227 = load i32, ptr %45, align 4, !tbaa !9
  %8228 = load i32, ptr %46, align 4, !tbaa !9
  %8229 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %8226, i32 noundef %8227, i32 noundef %8228)
  store i32 %8229, ptr %45, align 4, !tbaa !9
  %8230 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8230, ptr %8, align 4, !tbaa !9
  br label %8244

8231:                                             ; preds = %8154
  %8232 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8232, ptr %45, align 4, !tbaa !9
  %8233 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8233, ptr %46, align 4, !tbaa !9
  %8234 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8234, ptr %47, align 4, !tbaa !9
  %8235 = load i32, ptr %47, align 4, !tbaa !9
  %8236 = load i32, ptr %46, align 4, !tbaa !9
  %8237 = add i32 %8236, %8235
  store i32 %8237, ptr %46, align 4, !tbaa !9
  %8238 = load ptr, ptr %5, align 8, !tbaa !5
  %8239 = getelementptr inbounds %struct.w2c_hermes, ptr %8238, i32 0, i32 6
  %8240 = load i32, ptr %45, align 4, !tbaa !9
  %8241 = zext i32 %8240 to i64
  %8242 = add i64 %8241, 1364
  %8243 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8239, i64 noundef %8242, i32 noundef %8243)
  br label %8244

8244:                                             ; preds = %8231, %8223
  %8245 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8245, ptr %45, align 4, !tbaa !9
  %8246 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8246, ptr %46, align 4, !tbaa !9
  %8247 = load ptr, ptr %5, align 8, !tbaa !5
  %8248 = getelementptr inbounds %struct.w2c_hermes, ptr %8247, i32 0, i32 6
  %8249 = load i32, ptr %46, align 4, !tbaa !9
  %8250 = zext i32 %8249 to i64
  %8251 = call i32 @i32_load(ptr noundef %8248, i64 noundef %8250)
  store i32 %8251, ptr %46, align 4, !tbaa !9
  %8252 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %8252, ptr %12, 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 %45, align 4, !tbaa !9
  %8256 = zext i32 %8255 to i64
  %8257 = add i64 %8256, 4
  %8258 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8254, i64 noundef %8257, i32 noundef %8258)
  %8259 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8259, ptr %45, 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 %45, align 4, !tbaa !9
  %8263 = zext i32 %8262 to i64
  %8264 = add i64 %8263, 1356
  %8265 = call i32 @i32_load(ptr noundef %8261, i64 noundef %8264)
  store i32 %8265, ptr %45, align 4, !tbaa !9
  %8266 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8266, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %8267 = load i32, ptr %47, align 4, !tbaa !9
  %8268 = load i32, ptr %46, align 4, !tbaa !9
  %8269 = add i32 %8268, %8267
  store i32 %8269, ptr %46, align 4, !tbaa !9
  %8270 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %8270, ptr %7, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %8271 = load i32, ptr %47, align 4, !tbaa !9
  %8272 = load i32, ptr %46, align 4, !tbaa !9
  %8273 = and i32 %8272, %8271
  store i32 %8273, ptr %46, align 4, !tbaa !9
  %8274 = load i32, ptr %45, align 4, !tbaa !9
  %8275 = load i32, ptr %46, align 4, !tbaa !9
  %8276 = icmp ne i32 %8274, %8275
  %8277 = zext i1 %8276 to i32
  store i32 %8277, ptr %45, align 4, !tbaa !9
  %8278 = load i32, ptr %45, align 4, !tbaa !9
  %8279 = icmp ne i32 %8278, 0
  br i1 %8279, label %8280, label %8288

8280:                                             ; preds = %8244
  %8281 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8281, ptr %45, align 4, !tbaa !9
  %8282 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8282, ptr %46, align 4, !tbaa !9
  %8283 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8283, ptr %47, align 4, !tbaa !9
  %8284 = load ptr, ptr %5, align 8, !tbaa !5
  %8285 = load i32, ptr %45, align 4, !tbaa !9
  %8286 = load i32, ptr %46, align 4, !tbaa !9
  %8287 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %8284, i32 noundef %8285, i32 noundef %8286, i32 noundef %8287)
  br label %8288

8288:                                             ; preds = %8280, %8244
  %8289 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8289, ptr %45, align 4, !tbaa !9
  %8290 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8290, ptr %46, align 4, !tbaa !9
  %8291 = load ptr, ptr %5, align 8, !tbaa !5
  %8292 = getelementptr inbounds %struct.w2c_hermes, ptr %8291, i32 0, i32 6
  %8293 = load i32, ptr %45, align 4, !tbaa !9
  %8294 = zext i32 %8293 to i64
  %8295 = add i64 %8294, 8
  %8296 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8292, i64 noundef %8295, i32 noundef %8296)
  %8297 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8297, ptr %45, align 4, !tbaa !9
  %8298 = load i32, ptr %45, align 4, !tbaa !9
  %8299 = icmp ne i32 %8298, 0
  %8300 = xor i1 %8299, true
  %8301 = zext i1 %8300 to i32
  store i32 %8301, ptr %45, align 4, !tbaa !9
  %8302 = load i32, ptr %45, align 4, !tbaa !9
  %8303 = icmp ne i32 %8302, 0
  br i1 %8303, label %8304, label %8305

8304:                                             ; preds = %8288
  br label %8443

8305:                                             ; preds = %8288
  store i32 0, ptr %45, align 4, !tbaa !9
  %8306 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8306, ptr %7, align 4, !tbaa !9
  %8307 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8307, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %8308 = load i32, ptr %46, align 4, !tbaa !9
  %8309 = load i32, ptr %45, align 4, !tbaa !9
  %8310 = add i32 %8309, %8308
  store i32 %8310, ptr %45, align 4, !tbaa !9
  %8311 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8311, ptr %14, align 4, !tbaa !9
  %8312 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8312, ptr %12, align 4, !tbaa !9
  %8313 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8313, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8314 = load i32, ptr %46, align 4, !tbaa !9
  %8315 = load i32, ptr %45, align 4, !tbaa !9
  %8316 = and i32 %8315, %8314
  store i32 %8316, ptr %45, align 4, !tbaa !9
  %8317 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8317, ptr %13, align 4, !tbaa !9
  %8318 = load i32, ptr %45, align 4, !tbaa !9
  %8319 = icmp ne i32 %8318, 0
  br i1 %8319, label %8320, label %8347

8320:                                             ; preds = %8305
  br label %8321

8321:                                             ; preds = %8345, %8320
  %8322 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8322, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8323 = load ptr, ptr %5, align 8, !tbaa !5
  %8324 = getelementptr inbounds %struct.w2c_hermes, ptr %8323, i32 0, i32 6
  %8325 = load i32, ptr %45, align 4, !tbaa !9
  %8326 = zext i32 %8325 to i64
  %8327 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8324, i64 noundef %8326, i64 noundef %8327)
  %8328 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8328, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %8329 = load i32, ptr %46, align 4, !tbaa !9
  %8330 = load i32, ptr %45, align 4, !tbaa !9
  %8331 = add i32 %8330, %8329
  store i32 %8331, ptr %45, align 4, !tbaa !9
  %8332 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8332, ptr %12, align 4, !tbaa !9
  %8333 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8333, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8334 = load i32, ptr %46, align 4, !tbaa !9
  %8335 = load i32, ptr %45, align 4, !tbaa !9
  %8336 = add i32 %8335, %8334
  store i32 %8336, ptr %45, align 4, !tbaa !9
  %8337 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8337, ptr %7, align 4, !tbaa !9
  %8338 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8338, ptr %46, align 4, !tbaa !9
  %8339 = load i32, ptr %45, align 4, !tbaa !9
  %8340 = load i32, ptr %46, align 4, !tbaa !9
  %8341 = icmp ne i32 %8339, %8340
  %8342 = zext i1 %8341 to i32
  store i32 %8342, ptr %45, align 4, !tbaa !9
  %8343 = load i32, ptr %45, align 4, !tbaa !9
  %8344 = icmp ne i32 %8343, 0
  br i1 %8344, label %8345, label %8346

8345:                                             ; preds = %8321
  br label %8321

8346:                                             ; preds = %8321
  br label %8347

8347:                                             ; preds = %8346, %8305
  %8348 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8348, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8349 = load i32, ptr %46, align 4, !tbaa !9
  %8350 = load i32, ptr %45, align 4, !tbaa !9
  %8351 = sub i32 %8350, %8349
  store i32 %8351, ptr %45, align 4, !tbaa !9
  store i32 536870911, ptr %46, align 4, !tbaa !9
  %8352 = load i32, ptr %46, align 4, !tbaa !9
  %8353 = load i32, ptr %45, align 4, !tbaa !9
  %8354 = and i32 %8353, %8352
  store i32 %8354, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8355 = load i32, ptr %45, align 4, !tbaa !9
  %8356 = load i32, ptr %46, align 4, !tbaa !9
  %8357 = icmp ult i32 %8355, %8356
  %8358 = zext i1 %8357 to i32
  store i32 %8358, ptr %45, align 4, !tbaa !9
  %8359 = load i32, ptr %45, align 4, !tbaa !9
  %8360 = icmp ne i32 %8359, 0
  br i1 %8360, label %8361, label %8362

8361:                                             ; preds = %8347
  br label %8443

8362:                                             ; preds = %8347
  %8363 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8363, ptr %45, align 4, !tbaa !9
  %8364 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8364, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8365 = load i32, ptr %47, align 4, !tbaa !9
  %8366 = and i32 %8365, 31
  %8367 = load i32, ptr %46, align 4, !tbaa !9
  %8368 = shl i32 %8367, %8366
  store i32 %8368, ptr %46, align 4, !tbaa !9
  %8369 = load i32, ptr %46, align 4, !tbaa !9
  %8370 = load i32, ptr %45, align 4, !tbaa !9
  %8371 = add i32 %8370, %8369
  store i32 %8371, ptr %45, align 4, !tbaa !9
  %8372 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8372, ptr %7, align 4, !tbaa !9
  br label %8373

8373:                                             ; preds = %8441, %8362
  %8374 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8374, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8375 = load ptr, ptr %5, align 8, !tbaa !5
  %8376 = getelementptr inbounds %struct.w2c_hermes, ptr %8375, i32 0, i32 6
  %8377 = load i32, ptr %45, align 4, !tbaa !9
  %8378 = zext i32 %8377 to i64
  %8379 = add i64 %8378, 56
  %8380 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8376, i64 noundef %8379, i64 noundef %8380)
  %8381 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8381, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8382 = load ptr, ptr %5, align 8, !tbaa !5
  %8383 = getelementptr inbounds %struct.w2c_hermes, ptr %8382, i32 0, i32 6
  %8384 = load i32, ptr %45, align 4, !tbaa !9
  %8385 = zext i32 %8384 to i64
  %8386 = add i64 %8385, 48
  %8387 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8383, i64 noundef %8386, i64 noundef %8387)
  %8388 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8388, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8389 = load ptr, ptr %5, align 8, !tbaa !5
  %8390 = getelementptr inbounds %struct.w2c_hermes, ptr %8389, i32 0, i32 6
  %8391 = load i32, ptr %45, align 4, !tbaa !9
  %8392 = zext i32 %8391 to i64
  %8393 = add i64 %8392, 40
  %8394 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8390, i64 noundef %8393, i64 noundef %8394)
  %8395 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8395, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8396 = load ptr, ptr %5, align 8, !tbaa !5
  %8397 = getelementptr inbounds %struct.w2c_hermes, ptr %8396, i32 0, i32 6
  %8398 = load i32, ptr %45, align 4, !tbaa !9
  %8399 = zext i32 %8398 to i64
  %8400 = add i64 %8399, 32
  %8401 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8397, i64 noundef %8400, i64 noundef %8401)
  %8402 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8402, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8403 = load ptr, ptr %5, align 8, !tbaa !5
  %8404 = getelementptr inbounds %struct.w2c_hermes, ptr %8403, i32 0, i32 6
  %8405 = load i32, ptr %45, align 4, !tbaa !9
  %8406 = zext i32 %8405 to i64
  %8407 = add i64 %8406, 24
  %8408 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8404, i64 noundef %8407, i64 noundef %8408)
  %8409 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8409, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8410 = load ptr, ptr %5, align 8, !tbaa !5
  %8411 = getelementptr inbounds %struct.w2c_hermes, ptr %8410, i32 0, i32 6
  %8412 = load i32, ptr %45, align 4, !tbaa !9
  %8413 = zext i32 %8412 to i64
  %8414 = add i64 %8413, 16
  %8415 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8411, i64 noundef %8414, i64 noundef %8415)
  %8416 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8416, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8417 = load ptr, ptr %5, align 8, !tbaa !5
  %8418 = getelementptr inbounds %struct.w2c_hermes, ptr %8417, i32 0, i32 6
  %8419 = load i32, ptr %45, align 4, !tbaa !9
  %8420 = zext i32 %8419 to i64
  %8421 = add i64 %8420, 8
  %8422 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8418, i64 noundef %8421, i64 noundef %8422)
  %8423 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8423, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8424 = load ptr, ptr %5, align 8, !tbaa !5
  %8425 = getelementptr inbounds %struct.w2c_hermes, ptr %8424, i32 0, i32 6
  %8426 = load i32, ptr %45, align 4, !tbaa !9
  %8427 = zext i32 %8426 to i64
  %8428 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8425, i64 noundef %8427, i64 noundef %8428)
  %8429 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8429, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %8430 = load i32, ptr %46, align 4, !tbaa !9
  %8431 = load i32, ptr %45, align 4, !tbaa !9
  %8432 = sub i32 %8431, %8430
  store i32 %8432, ptr %45, align 4, !tbaa !9
  %8433 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8433, ptr %12, align 4, !tbaa !9
  %8434 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8434, ptr %46, align 4, !tbaa !9
  %8435 = load i32, ptr %45, align 4, !tbaa !9
  %8436 = load i32, ptr %46, align 4, !tbaa !9
  %8437 = icmp ne i32 %8435, %8436
  %8438 = zext i1 %8437 to i32
  store i32 %8438, ptr %45, align 4, !tbaa !9
  %8439 = load i32, ptr %45, align 4, !tbaa !9
  %8440 = icmp ne i32 %8439, 0
  br i1 %8440, label %8441, label %8442

8441:                                             ; preds = %8373
  br label %8373

8442:                                             ; preds = %8373
  br label %8443

8443:                                             ; preds = %8442, %8361, %8304
  %8444 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8444, ptr %45, align 4, !tbaa !9
  %8445 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %8445, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %8446 = load i32, ptr %47, align 4, !tbaa !9
  %8447 = load i32, ptr %46, align 4, !tbaa !9
  %8448 = and i32 %8447, %8446
  store i32 %8448, ptr %46, align 4, !tbaa !9
  store i32 352321536, ptr %47, align 4, !tbaa !9
  %8449 = load i32, ptr %47, align 4, !tbaa !9
  %8450 = load i32, ptr %46, align 4, !tbaa !9
  %8451 = or i32 %8450, %8449
  store i32 %8451, ptr %46, align 4, !tbaa !9
  %8452 = load ptr, ptr %5, align 8, !tbaa !5
  %8453 = getelementptr inbounds %struct.w2c_hermes, ptr %8452, i32 0, i32 6
  %8454 = load i32, ptr %45, align 4, !tbaa !9
  %8455 = zext i32 %8454 to i64
  %8456 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8453, i64 noundef %8455, i32 noundef %8456)
  %8457 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8457, ptr %45, align 4, !tbaa !9
  %8458 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8458, ptr %46, align 4, !tbaa !9
  %8459 = load ptr, ptr %5, align 8, !tbaa !5
  %8460 = getelementptr inbounds %struct.w2c_hermes, ptr %8459, i32 0, i32 6
  %8461 = load i32, ptr %46, align 4, !tbaa !9
  %8462 = zext i32 %8461 to i64
  %8463 = add i64 %8462, 1
  %8464 = call i32 @i32_load8_u(ptr noundef %8460, i64 noundef %8463)
  store i32 %8464, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8465 = load i32, ptr %47, align 4, !tbaa !9
  %8466 = and i32 %8465, 31
  %8467 = load i32, ptr %46, align 4, !tbaa !9
  %8468 = shl i32 %8467, %8466
  store i32 %8468, ptr %46, align 4, !tbaa !9
  %8469 = load i32, ptr %46, align 4, !tbaa !9
  %8470 = load i32, ptr %45, align 4, !tbaa !9
  %8471 = add i32 %8470, %8469
  store i32 %8471, ptr %45, align 4, !tbaa !9
  %8472 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8472, ptr %46, align 4, !tbaa !9
  %8473 = load i32, ptr %46, align 4, !tbaa !9
  %8474 = zext i32 %8473 to i64
  store i64 %8474, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %8475 = load i64, ptr %56, align 8, !tbaa !11
  %8476 = load i64, ptr %55, align 8, !tbaa !11
  %8477 = or i64 %8476, %8475
  store i64 %8477, ptr %55, align 8, !tbaa !11
  %8478 = load ptr, ptr %5, align 8, !tbaa !5
  %8479 = getelementptr inbounds %struct.w2c_hermes, ptr %8478, i32 0, i32 6
  %8480 = load i32, ptr %45, align 4, !tbaa !9
  %8481 = zext i32 %8480 to i64
  %8482 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8479, i64 noundef %8481, i64 noundef %8482)
  %8483 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8483, ptr %45, align 4, !tbaa !9
  %8484 = load ptr, ptr %5, align 8, !tbaa !5
  %8485 = getelementptr inbounds %struct.w2c_hermes, ptr %8484, i32 0, i32 6
  %8486 = load i32, ptr %45, align 4, !tbaa !9
  %8487 = zext i32 %8486 to i64
  %8488 = add i64 %8487, 5808
  %8489 = call i32 @i32_load(ptr noundef %8485, i64 noundef %8488)
  store i32 %8489, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8490 = load i32, ptr %46, align 4, !tbaa !9
  %8491 = load i32, ptr %45, align 4, !tbaa !9
  %8492 = add i32 %8491, %8490
  store i32 %8492, ptr %45, align 4, !tbaa !9
  %8493 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8493, ptr %6, align 4, !tbaa !9
  br label %2945

8494:                                             ; preds = %3009
  %8495 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8495, ptr %45, align 4, !tbaa !9
  %8496 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8496, ptr %46, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %8497 = load i32, ptr %47, align 4, !tbaa !9
  %8498 = load i32, ptr %46, align 4, !tbaa !9
  %8499 = sub i32 %8498, %8497
  store i32 %8499, ptr %46, align 4, !tbaa !9
  %8500 = load ptr, ptr %5, align 8, !tbaa !5
  %8501 = getelementptr inbounds %struct.w2c_hermes, ptr %8500, i32 0, i32 6
  %8502 = load i32, ptr %46, align 4, !tbaa !9
  %8503 = zext i32 %8502 to i64
  %8504 = call i32 @i32_load(ptr noundef %8501, i64 noundef %8503)
  store i32 %8504, ptr %46, align 4, !tbaa !9
  %8505 = load ptr, ptr %5, align 8, !tbaa !5
  %8506 = getelementptr inbounds %struct.w2c_hermes, ptr %8505, i32 0, i32 6
  %8507 = load i32, ptr %46, align 4, !tbaa !9
  %8508 = zext i32 %8507 to i64
  %8509 = add i64 %8508, 20
  %8510 = call i64 @i64_load32_u(ptr noundef %8506, i64 noundef %8509)
  store i64 %8510, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %8511 = load i64, ptr %56, align 8, !tbaa !11
  %8512 = load i64, ptr %55, align 8, !tbaa !11
  %8513 = or i64 %8512, %8511
  store i64 %8513, ptr %55, align 8, !tbaa !11
  %8514 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %8514, ptr %40, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %8518 = zext i32 %8517 to i64
  %8519 = add i64 %8518, 352
  %8520 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8516, i64 noundef %8519, i64 noundef %8520)
  %8521 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8521, ptr %45, align 4, !tbaa !9
  %8522 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8522, ptr %46, align 4, !tbaa !9
  %8523 = load ptr, ptr %5, align 8, !tbaa !5
  %8524 = getelementptr inbounds %struct.w2c_hermes, ptr %8523, i32 0, i32 6
  %8525 = load i32, ptr %45, align 4, !tbaa !9
  %8526 = zext i32 %8525 to i64
  %8527 = add i64 %8526, 5808
  %8528 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8524, i64 noundef %8527, i32 noundef %8528)
  %8529 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8529, ptr %45, align 4, !tbaa !9
  %8530 = load ptr, ptr %5, align 8, !tbaa !5
  %8531 = getelementptr inbounds %struct.w2c_hermes, ptr %8530, i32 0, i32 6
  %8532 = load i32, ptr %45, align 4, !tbaa !9
  %8533 = zext i32 %8532 to i64
  %8534 = add i64 %8533, 4
  %8535 = call i32 @i32_load(ptr noundef %8531, i64 noundef %8534)
  store i32 %8535, ptr %45, align 4, !tbaa !9
  %8536 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8536, ptr %7, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8537 = load i32, ptr %46, align 4, !tbaa !9
  %8538 = load i32, ptr %45, align 4, !tbaa !9
  %8539 = and i32 %8538, %8537
  store i32 %8539, ptr %45, align 4, !tbaa !9
  %8540 = load i32, ptr %45, align 4, !tbaa !9
  %8541 = icmp ne i32 %8540, 0
  br i1 %8541, label %8542, label %8550

8542:                                             ; preds = %8494
  %8543 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8543, ptr %45, align 4, !tbaa !9
  %8544 = load ptr, ptr %5, align 8, !tbaa !5
  %8545 = getelementptr inbounds %struct.w2c_hermes, ptr %8544, i32 0, i32 6
  %8546 = load i32, ptr %45, align 4, !tbaa !9
  %8547 = zext i32 %8546 to i64
  %8548 = add i64 %8547, 23
  %8549 = call i32 @i32_load(ptr noundef %8545, i64 noundef %8548)
  store i32 %8549, ptr %45, align 4, !tbaa !9
  br label %8558

8550:                                             ; preds = %8494
  %8551 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8551, ptr %45, align 4, !tbaa !9
  %8552 = load ptr, ptr %5, align 8, !tbaa !5
  %8553 = getelementptr inbounds %struct.w2c_hermes, ptr %8552, i32 0, i32 6
  %8554 = load i32, ptr %45, align 4, !tbaa !9
  %8555 = zext i32 %8554 to i64
  %8556 = add i64 %8555, 12
  %8557 = call i32 @i32_load8_u(ptr noundef %8553, i64 noundef %8556)
  store i32 %8557, ptr %45, align 4, !tbaa !9
  br label %8558

8558:                                             ; preds = %8550, %8542
  %8559 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8559, ptr %18, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %8560 = load i32, ptr %46, align 4, !tbaa !9
  %8561 = and i32 %8560, 31
  %8562 = load i32, ptr %45, align 4, !tbaa !9
  %8563 = shl i32 %8562, %8561
  store i32 %8563, ptr %45, align 4, !tbaa !9
  store i32 23, ptr %46, align 4, !tbaa !9
  %8564 = load i32, ptr %46, align 4, !tbaa !9
  %8565 = load i32, ptr %45, align 4, !tbaa !9
  %8566 = add i32 %8565, %8564
  store i32 %8566, ptr %45, align 4, !tbaa !9
  %8567 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8567, ptr %15, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %8568 = load i32, ptr %46, align 4, !tbaa !9
  %8569 = load i32, ptr %45, align 4, !tbaa !9
  %8570 = and i32 %8569, %8568
  store i32 %8570, ptr %45, align 4, !tbaa !9
  %8571 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8571, ptr %7, align 4, !tbaa !9
  %8572 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8572, ptr %46, align 4, !tbaa !9
  %8573 = load ptr, ptr %5, align 8, !tbaa !5
  %8574 = getelementptr inbounds %struct.w2c_hermes, ptr %8573, i32 0, i32 6
  %8575 = load i32, ptr %46, align 4, !tbaa !9
  %8576 = zext i32 %8575 to i64
  %8577 = add i64 %8576, 1368
  %8578 = call i32 @i32_load(ptr noundef %8574, i64 noundef %8577)
  store i32 %8578, ptr %46, align 4, !tbaa !9
  %8579 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8579, ptr %47, align 4, !tbaa !9
  %8580 = load ptr, ptr %5, align 8, !tbaa !5
  %8581 = getelementptr inbounds %struct.w2c_hermes, ptr %8580, i32 0, i32 6
  %8582 = load i32, ptr %47, align 4, !tbaa !9
  %8583 = zext i32 %8582 to i64
  %8584 = add i64 %8583, 1364
  %8585 = call i32 @i32_load(ptr noundef %8581, i64 noundef %8584)
  store i32 %8585, ptr %47, align 4, !tbaa !9
  %8586 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %8586, ptr %8, align 4, !tbaa !9
  %8587 = load i32, ptr %47, align 4, !tbaa !9
  %8588 = load i32, ptr %46, align 4, !tbaa !9
  %8589 = sub i32 %8588, %8587
  store i32 %8589, ptr %46, align 4, !tbaa !9
  %8590 = load i32, ptr %45, align 4, !tbaa !9
  %8591 = load i32, ptr %46, align 4, !tbaa !9
  %8592 = icmp ugt i32 %8590, %8591
  %8593 = zext i1 %8592 to i32
  store i32 %8593, ptr %45, align 4, !tbaa !9
  %8594 = load i32, ptr %45, align 4, !tbaa !9
  %8595 = icmp ne i32 %8594, 0
  br i1 %8595, label %8596, label %8612

8596:                                             ; preds = %8558
  %8597 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8597, ptr %45, align 4, !tbaa !9
  %8598 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8598, ptr %46, align 4, !tbaa !9
  %8599 = load ptr, ptr %5, align 8, !tbaa !5
  %8600 = load i32, ptr %45, align 4, !tbaa !9
  %8601 = load i32, ptr %46, align 4, !tbaa !9
  %8602 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %8599, i32 noundef %8600, i32 noundef %8601)
  store i32 %8602, ptr %45, align 4, !tbaa !9
  %8603 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8603, ptr %8, align 4, !tbaa !9
  %8604 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8604, ptr %45, align 4, !tbaa !9
  %8605 = load ptr, ptr %5, align 8, !tbaa !5
  %8606 = getelementptr inbounds %struct.w2c_hermes, ptr %8605, i32 0, i32 6
  %8607 = load i32, ptr %45, align 4, !tbaa !9
  %8608 = zext i32 %8607 to i64
  %8609 = add i64 %8608, 352
  %8610 = call i64 @i64_load(ptr noundef %8606, i64 noundef %8609)
  store i64 %8610, ptr %54, align 8, !tbaa !11
  %8611 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %8611, ptr %40, align 8, !tbaa !11
  br label %8625

8612:                                             ; preds = %8558
  %8613 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8613, ptr %45, align 4, !tbaa !9
  %8614 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8614, ptr %46, align 4, !tbaa !9
  %8615 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8615, ptr %47, align 4, !tbaa !9
  %8616 = load i32, ptr %47, align 4, !tbaa !9
  %8617 = load i32, ptr %46, align 4, !tbaa !9
  %8618 = add i32 %8617, %8616
  store i32 %8618, ptr %46, align 4, !tbaa !9
  %8619 = load ptr, ptr %5, align 8, !tbaa !5
  %8620 = getelementptr inbounds %struct.w2c_hermes, ptr %8619, i32 0, i32 6
  %8621 = load i32, ptr %45, align 4, !tbaa !9
  %8622 = zext i32 %8621 to i64
  %8623 = add i64 %8622, 1364
  %8624 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8620, i64 noundef %8623, i32 noundef %8624)
  br label %8625

8625:                                             ; preds = %8612, %8596
  %8626 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8626, ptr %45, align 4, !tbaa !9
  %8627 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %8627, ptr %55, align 8, !tbaa !11
  %8628 = load i64, ptr %55, align 8, !tbaa !11
  %8629 = trunc i64 %8628 to i32
  store i32 %8629, ptr %46, align 4, !tbaa !9
  %8630 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %8630, ptr %12, align 4, !tbaa !9
  %8631 = load ptr, ptr %5, align 8, !tbaa !5
  %8632 = getelementptr inbounds %struct.w2c_hermes, ptr %8631, i32 0, i32 6
  %8633 = load i32, ptr %45, align 4, !tbaa !9
  %8634 = zext i32 %8633 to i64
  %8635 = add i64 %8634, 4
  %8636 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8632, i64 noundef %8635, i32 noundef %8636)
  %8637 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8637, ptr %45, align 4, !tbaa !9
  %8638 = load ptr, ptr %5, align 8, !tbaa !5
  %8639 = getelementptr inbounds %struct.w2c_hermes, ptr %8638, i32 0, i32 6
  %8640 = load i32, ptr %45, align 4, !tbaa !9
  %8641 = zext i32 %8640 to i64
  %8642 = add i64 %8641, 1356
  %8643 = call i32 @i32_load(ptr noundef %8639, i64 noundef %8642)
  store i32 %8643, ptr %45, align 4, !tbaa !9
  %8644 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8644, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %8645 = load i32, ptr %47, align 4, !tbaa !9
  %8646 = load i32, ptr %46, align 4, !tbaa !9
  %8647 = add i32 %8646, %8645
  store i32 %8647, ptr %46, align 4, !tbaa !9
  %8648 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %8648, ptr %7, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %8649 = load i32, ptr %47, align 4, !tbaa !9
  %8650 = load i32, ptr %46, align 4, !tbaa !9
  %8651 = and i32 %8650, %8649
  store i32 %8651, ptr %46, align 4, !tbaa !9
  %8652 = load i32, ptr %45, align 4, !tbaa !9
  %8653 = load i32, ptr %46, align 4, !tbaa !9
  %8654 = icmp ne i32 %8652, %8653
  %8655 = zext i1 %8654 to i32
  store i32 %8655, ptr %45, align 4, !tbaa !9
  %8656 = load i32, ptr %45, align 4, !tbaa !9
  %8657 = icmp ne i32 %8656, 0
  br i1 %8657, label %8658, label %8666

8658:                                             ; preds = %8625
  %8659 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8659, ptr %45, align 4, !tbaa !9
  %8660 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8660, ptr %46, align 4, !tbaa !9
  %8661 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8661, ptr %47, align 4, !tbaa !9
  %8662 = load ptr, ptr %5, align 8, !tbaa !5
  %8663 = load i32, ptr %45, align 4, !tbaa !9
  %8664 = load i32, ptr %46, align 4, !tbaa !9
  %8665 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %8662, i32 noundef %8663, i32 noundef %8664, i32 noundef %8665)
  br label %8666

8666:                                             ; preds = %8658, %8625
  %8667 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8667, ptr %45, align 4, !tbaa !9
  %8668 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8668, ptr %46, align 4, !tbaa !9
  %8669 = load ptr, ptr %5, align 8, !tbaa !5
  %8670 = getelementptr inbounds %struct.w2c_hermes, ptr %8669, i32 0, i32 6
  %8671 = load i32, ptr %45, align 4, !tbaa !9
  %8672 = zext i32 %8671 to i64
  %8673 = add i64 %8672, 8
  %8674 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8670, i64 noundef %8673, i32 noundef %8674)
  %8675 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8675, ptr %45, align 4, !tbaa !9
  %8676 = load i32, ptr %45, align 4, !tbaa !9
  %8677 = icmp ne i32 %8676, 0
  %8678 = xor i1 %8677, true
  %8679 = zext i1 %8678 to i32
  store i32 %8679, ptr %45, align 4, !tbaa !9
  %8680 = load i32, ptr %45, align 4, !tbaa !9
  %8681 = icmp ne i32 %8680, 0
  br i1 %8681, label %8682, label %8683

8682:                                             ; preds = %8666
  br label %8821

8683:                                             ; preds = %8666
  store i32 0, ptr %45, align 4, !tbaa !9
  %8684 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8684, ptr %7, align 4, !tbaa !9
  %8685 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8685, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %8686 = load i32, ptr %46, align 4, !tbaa !9
  %8687 = load i32, ptr %45, align 4, !tbaa !9
  %8688 = add i32 %8687, %8686
  store i32 %8688, ptr %45, align 4, !tbaa !9
  %8689 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8689, ptr %14, align 4, !tbaa !9
  %8690 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8690, ptr %12, align 4, !tbaa !9
  %8691 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8691, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8692 = load i32, ptr %46, align 4, !tbaa !9
  %8693 = load i32, ptr %45, align 4, !tbaa !9
  %8694 = and i32 %8693, %8692
  store i32 %8694, ptr %45, align 4, !tbaa !9
  %8695 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8695, ptr %13, align 4, !tbaa !9
  %8696 = load i32, ptr %45, align 4, !tbaa !9
  %8697 = icmp ne i32 %8696, 0
  br i1 %8697, label %8698, label %8725

8698:                                             ; preds = %8683
  br label %8699

8699:                                             ; preds = %8723, %8698
  %8700 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8700, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8701 = load ptr, ptr %5, align 8, !tbaa !5
  %8702 = getelementptr inbounds %struct.w2c_hermes, ptr %8701, i32 0, i32 6
  %8703 = load i32, ptr %45, align 4, !tbaa !9
  %8704 = zext i32 %8703 to i64
  %8705 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8702, i64 noundef %8704, i64 noundef %8705)
  %8706 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8706, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %8707 = load i32, ptr %46, align 4, !tbaa !9
  %8708 = load i32, ptr %45, align 4, !tbaa !9
  %8709 = add i32 %8708, %8707
  store i32 %8709, ptr %45, align 4, !tbaa !9
  %8710 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8710, ptr %12, align 4, !tbaa !9
  %8711 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8711, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8712 = load i32, ptr %46, align 4, !tbaa !9
  %8713 = load i32, ptr %45, align 4, !tbaa !9
  %8714 = add i32 %8713, %8712
  store i32 %8714, ptr %45, align 4, !tbaa !9
  %8715 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8715, ptr %7, align 4, !tbaa !9
  %8716 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %8716, ptr %46, align 4, !tbaa !9
  %8717 = load i32, ptr %45, align 4, !tbaa !9
  %8718 = load i32, ptr %46, align 4, !tbaa !9
  %8719 = icmp ne i32 %8717, %8718
  %8720 = zext i1 %8719 to i32
  store i32 %8720, ptr %45, align 4, !tbaa !9
  %8721 = load i32, ptr %45, align 4, !tbaa !9
  %8722 = icmp ne i32 %8721, 0
  br i1 %8722, label %8723, label %8724

8723:                                             ; preds = %8699
  br label %8699

8724:                                             ; preds = %8699
  br label %8725

8725:                                             ; preds = %8724, %8683
  %8726 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8726, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %8727 = load i32, ptr %46, align 4, !tbaa !9
  %8728 = load i32, ptr %45, align 4, !tbaa !9
  %8729 = sub i32 %8728, %8727
  store i32 %8729, ptr %45, align 4, !tbaa !9
  store i32 536870911, ptr %46, align 4, !tbaa !9
  %8730 = load i32, ptr %46, align 4, !tbaa !9
  %8731 = load i32, ptr %45, align 4, !tbaa !9
  %8732 = and i32 %8731, %8730
  store i32 %8732, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %8733 = load i32, ptr %45, align 4, !tbaa !9
  %8734 = load i32, ptr %46, align 4, !tbaa !9
  %8735 = icmp ult i32 %8733, %8734
  %8736 = zext i1 %8735 to i32
  store i32 %8736, ptr %45, align 4, !tbaa !9
  %8737 = load i32, ptr %45, align 4, !tbaa !9
  %8738 = icmp ne i32 %8737, 0
  br i1 %8738, label %8739, label %8740

8739:                                             ; preds = %8725
  br label %8821

8740:                                             ; preds = %8725
  %8741 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8741, ptr %45, align 4, !tbaa !9
  %8742 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8742, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8743 = load i32, ptr %47, align 4, !tbaa !9
  %8744 = and i32 %8743, 31
  %8745 = load i32, ptr %46, align 4, !tbaa !9
  %8746 = shl i32 %8745, %8744
  store i32 %8746, ptr %46, align 4, !tbaa !9
  %8747 = load i32, ptr %46, align 4, !tbaa !9
  %8748 = load i32, ptr %45, align 4, !tbaa !9
  %8749 = add i32 %8748, %8747
  store i32 %8749, ptr %45, align 4, !tbaa !9
  %8750 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8750, ptr %7, align 4, !tbaa !9
  br label %8751

8751:                                             ; preds = %8819, %8740
  %8752 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8752, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8753 = load ptr, ptr %5, align 8, !tbaa !5
  %8754 = getelementptr inbounds %struct.w2c_hermes, ptr %8753, i32 0, i32 6
  %8755 = load i32, ptr %45, align 4, !tbaa !9
  %8756 = zext i32 %8755 to i64
  %8757 = add i64 %8756, 56
  %8758 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8754, i64 noundef %8757, i64 noundef %8758)
  %8759 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8759, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8760 = load ptr, ptr %5, align 8, !tbaa !5
  %8761 = getelementptr inbounds %struct.w2c_hermes, ptr %8760, i32 0, i32 6
  %8762 = load i32, ptr %45, align 4, !tbaa !9
  %8763 = zext i32 %8762 to i64
  %8764 = add i64 %8763, 48
  %8765 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8761, i64 noundef %8764, i64 noundef %8765)
  %8766 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8766, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %8770 = zext i32 %8769 to i64
  %8771 = add i64 %8770, 40
  %8772 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8768, i64 noundef %8771, i64 noundef %8772)
  %8773 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8773, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, 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 %45, align 4, !tbaa !9
  %8777 = zext i32 %8776 to i64
  %8778 = add i64 %8777, 32
  %8779 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8775, i64 noundef %8778, i64 noundef %8779)
  %8780 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8780, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8781 = load ptr, ptr %5, align 8, !tbaa !5
  %8782 = getelementptr inbounds %struct.w2c_hermes, ptr %8781, i32 0, i32 6
  %8783 = load i32, ptr %45, align 4, !tbaa !9
  %8784 = zext i32 %8783 to i64
  %8785 = add i64 %8784, 24
  %8786 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8782, i64 noundef %8785, i64 noundef %8786)
  %8787 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8787, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8788 = load ptr, ptr %5, align 8, !tbaa !5
  %8789 = getelementptr inbounds %struct.w2c_hermes, ptr %8788, i32 0, i32 6
  %8790 = load i32, ptr %45, align 4, !tbaa !9
  %8791 = zext i32 %8790 to i64
  %8792 = add i64 %8791, 16
  %8793 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8789, i64 noundef %8792, i64 noundef %8793)
  %8794 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8794, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8795 = load ptr, ptr %5, align 8, !tbaa !5
  %8796 = getelementptr inbounds %struct.w2c_hermes, ptr %8795, i32 0, i32 6
  %8797 = load i32, ptr %45, align 4, !tbaa !9
  %8798 = zext i32 %8797 to i64
  %8799 = add i64 %8798, 8
  %8800 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8796, i64 noundef %8799, i64 noundef %8800)
  %8801 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8801, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8802 = load ptr, ptr %5, align 8, !tbaa !5
  %8803 = getelementptr inbounds %struct.w2c_hermes, ptr %8802, i32 0, i32 6
  %8804 = load i32, ptr %45, align 4, !tbaa !9
  %8805 = zext i32 %8804 to i64
  %8806 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8803, i64 noundef %8805, i64 noundef %8806)
  %8807 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %8807, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %8808 = load i32, ptr %46, align 4, !tbaa !9
  %8809 = load i32, ptr %45, align 4, !tbaa !9
  %8810 = sub i32 %8809, %8808
  store i32 %8810, ptr %45, align 4, !tbaa !9
  %8811 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8811, ptr %12, align 4, !tbaa !9
  %8812 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8812, ptr %46, align 4, !tbaa !9
  %8813 = load i32, ptr %45, align 4, !tbaa !9
  %8814 = load i32, ptr %46, align 4, !tbaa !9
  %8815 = icmp ne i32 %8813, %8814
  %8816 = zext i1 %8815 to i32
  store i32 %8816, ptr %45, align 4, !tbaa !9
  %8817 = load i32, ptr %45, align 4, !tbaa !9
  %8818 = icmp ne i32 %8817, 0
  br i1 %8818, label %8819, label %8820

8819:                                             ; preds = %8751
  br label %8751

8820:                                             ; preds = %8751
  br label %8821

8821:                                             ; preds = %8820, %8739, %8682
  %8822 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8822, ptr %45, align 4, !tbaa !9
  %8823 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %8823, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %8824 = load i32, ptr %47, align 4, !tbaa !9
  %8825 = load i32, ptr %46, align 4, !tbaa !9
  %8826 = and i32 %8825, %8824
  store i32 %8826, ptr %46, align 4, !tbaa !9
  store i32 352321536, ptr %47, align 4, !tbaa !9
  %8827 = load i32, ptr %47, align 4, !tbaa !9
  %8828 = load i32, ptr %46, align 4, !tbaa !9
  %8829 = or i32 %8828, %8827
  store i32 %8829, ptr %46, align 4, !tbaa !9
  %8830 = load ptr, ptr %5, align 8, !tbaa !5
  %8831 = getelementptr inbounds %struct.w2c_hermes, ptr %8830, i32 0, i32 6
  %8832 = load i32, ptr %45, align 4, !tbaa !9
  %8833 = zext i32 %8832 to i64
  %8834 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8831, i64 noundef %8833, i32 noundef %8834)
  %8835 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8835, ptr %45, align 4, !tbaa !9
  %8836 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8836, ptr %46, align 4, !tbaa !9
  %8837 = load ptr, ptr %5, align 8, !tbaa !5
  %8838 = getelementptr inbounds %struct.w2c_hermes, ptr %8837, i32 0, i32 6
  %8839 = load i32, ptr %46, align 4, !tbaa !9
  %8840 = zext i32 %8839 to i64
  %8841 = add i64 %8840, 1
  %8842 = call i32 @i32_load8_u(ptr noundef %8838, i64 noundef %8841)
  store i32 %8842, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8843 = load i32, ptr %47, align 4, !tbaa !9
  %8844 = and i32 %8843, 31
  %8845 = load i32, ptr %46, align 4, !tbaa !9
  %8846 = shl i32 %8845, %8844
  store i32 %8846, ptr %46, align 4, !tbaa !9
  %8847 = load i32, ptr %46, align 4, !tbaa !9
  %8848 = load i32, ptr %45, align 4, !tbaa !9
  %8849 = add i32 %8848, %8847
  store i32 %8849, ptr %45, align 4, !tbaa !9
  %8850 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %8850, ptr %46, align 4, !tbaa !9
  %8851 = load i32, ptr %46, align 4, !tbaa !9
  %8852 = zext i32 %8851 to i64
  store i64 %8852, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %8853 = load i64, ptr %56, align 8, !tbaa !11
  %8854 = load i64, ptr %55, align 8, !tbaa !11
  %8855 = or i64 %8854, %8853
  store i64 %8855, ptr %55, align 8, !tbaa !11
  %8856 = load ptr, ptr %5, align 8, !tbaa !5
  %8857 = getelementptr inbounds %struct.w2c_hermes, ptr %8856, i32 0, i32 6
  %8858 = load i32, ptr %45, align 4, !tbaa !9
  %8859 = zext i32 %8858 to i64
  %8860 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8857, i64 noundef %8859, i64 noundef %8860)
  %8861 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8861, ptr %45, align 4, !tbaa !9
  %8862 = load ptr, ptr %5, align 8, !tbaa !5
  %8863 = getelementptr inbounds %struct.w2c_hermes, ptr %8862, i32 0, i32 6
  %8864 = load i32, ptr %45, align 4, !tbaa !9
  %8865 = zext i32 %8864 to i64
  %8866 = add i64 %8865, 5808
  %8867 = call i32 @i32_load(ptr noundef %8863, i64 noundef %8866)
  store i32 %8867, ptr %45, align 4, !tbaa !9
  %8868 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8868, ptr %6, align 4, !tbaa !9
  %8869 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %8869, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %8870 = load ptr, ptr %5, align 8, !tbaa !5
  %8871 = getelementptr inbounds %struct.w2c_hermes, ptr %8870, i32 0, i32 6
  %8872 = load i32, ptr %45, align 4, !tbaa !9
  %8873 = zext i32 %8872 to i64
  %8874 = add i64 %8873, 352
  %8875 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8871, i64 noundef %8874, i64 noundef %8875)
  %8876 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8876, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %8877 = load i32, ptr %46, align 4, !tbaa !9
  %8878 = load i32, ptr %45, align 4, !tbaa !9
  %8879 = add i32 %8878, %8877
  store i32 %8879, ptr %45, align 4, !tbaa !9
  %8880 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8880, ptr %6, align 4, !tbaa !9
  br label %2945

8881:                                             ; preds = %3010
  %8882 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8882, ptr %45, align 4, !tbaa !9
  %8883 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8883, ptr %46, align 4, !tbaa !9
  %8884 = load ptr, ptr %5, align 8, !tbaa !5
  %8885 = getelementptr inbounds %struct.w2c_hermes, ptr %8884, i32 0, i32 6
  %8886 = load i32, ptr %46, align 4, !tbaa !9
  %8887 = zext i32 %8886 to i64
  %8888 = add i64 %8887, 3
  %8889 = call i32 @i32_load8_u(ptr noundef %8885, i64 noundef %8888)
  store i32 %8889, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8890 = load i32, ptr %47, align 4, !tbaa !9
  %8891 = and i32 %8890, 31
  %8892 = load i32, ptr %46, align 4, !tbaa !9
  %8893 = shl i32 %8892, %8891
  store i32 %8893, ptr %46, align 4, !tbaa !9
  %8894 = load i32, ptr %46, align 4, !tbaa !9
  %8895 = load i32, ptr %45, align 4, !tbaa !9
  %8896 = add i32 %8895, %8894
  store i32 %8896, ptr %45, align 4, !tbaa !9
  %8897 = load ptr, ptr %5, align 8, !tbaa !5
  %8898 = getelementptr inbounds %struct.w2c_hermes, ptr %8897, i32 0, i32 6
  %8899 = load i32, ptr %45, align 4, !tbaa !9
  %8900 = zext i32 %8899 to i64
  %8901 = call i64 @i64_load(ptr noundef %8898, i64 noundef %8900)
  store i64 %8901, ptr %54, align 8, !tbaa !11
  %8902 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %8902, ptr %39, align 8, !tbaa !11
  %8903 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %8903, ptr %45, 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 %45, align 4, !tbaa !9
  %8907 = zext i32 %8906 to i64
  %8908 = add i64 %8907, 1356
  %8909 = call i32 @i32_load(ptr noundef %8905, i64 noundef %8908)
  store i32 %8909, ptr %45, align 4, !tbaa !9
  %8910 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8910, ptr %46, align 4, !tbaa !9
  %8911 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8911, ptr %47, 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 %47, align 4, !tbaa !9
  %8915 = zext i32 %8914 to i64
  %8916 = add i64 %8915, 1
  %8917 = call i32 @i32_load8_u(ptr noundef %8913, i64 noundef %8916)
  store i32 %8917, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %8918 = load i32, ptr %48, align 4, !tbaa !9
  %8919 = and i32 %8918, 31
  %8920 = load i32, ptr %47, align 4, !tbaa !9
  %8921 = shl i32 %8920, %8919
  store i32 %8921, ptr %47, align 4, !tbaa !9
  %8922 = load i32, ptr %47, align 4, !tbaa !9
  %8923 = load i32, ptr %46, align 4, !tbaa !9
  %8924 = add i32 %8923, %8922
  store i32 %8924, ptr %46, align 4, !tbaa !9
  %8925 = load ptr, ptr %5, align 8, !tbaa !5
  %8926 = getelementptr inbounds %struct.w2c_hermes, ptr %8925, i32 0, i32 6
  %8927 = load i32, ptr %46, align 4, !tbaa !9
  %8928 = zext i32 %8927 to i64
  %8929 = call i32 @i32_load(ptr noundef %8926, i64 noundef %8928)
  store i32 %8929, ptr %46, align 4, !tbaa !9
  %8930 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8930, ptr %47, align 4, !tbaa !9
  %8931 = load ptr, ptr %5, align 8, !tbaa !5
  %8932 = getelementptr inbounds %struct.w2c_hermes, ptr %8931, i32 0, i32 6
  %8933 = load i32, ptr %47, align 4, !tbaa !9
  %8934 = zext i32 %8933 to i64
  %8935 = add i64 %8934, 2
  %8936 = call i32 @i32_load8_u(ptr noundef %8932, i64 noundef %8935)
  store i32 %8936, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %8937 = load i32, ptr %48, align 4, !tbaa !9
  %8938 = and i32 %8937, 31
  %8939 = load i32, ptr %47, align 4, !tbaa !9
  %8940 = shl i32 %8939, %8938
  store i32 %8940, ptr %47, align 4, !tbaa !9
  %8941 = load i32, ptr %47, align 4, !tbaa !9
  %8942 = load i32, ptr %46, align 4, !tbaa !9
  %8943 = add i32 %8942, %8941
  store i32 %8943, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %8944 = load i32, ptr %47, align 4, !tbaa !9
  %8945 = load i32, ptr %46, align 4, !tbaa !9
  %8946 = add i32 %8945, %8944
  store i32 %8946, ptr %46, align 4, !tbaa !9
  %8947 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %8947, ptr %7, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %8948 = load i32, ptr %47, align 4, !tbaa !9
  %8949 = load i32, ptr %46, align 4, !tbaa !9
  %8950 = and i32 %8949, %8948
  store i32 %8950, ptr %46, align 4, !tbaa !9
  %8951 = load i32, ptr %45, align 4, !tbaa !9
  %8952 = load i32, ptr %46, align 4, !tbaa !9
  %8953 = icmp ne i32 %8951, %8952
  %8954 = zext i1 %8953 to i32
  store i32 %8954, ptr %45, align 4, !tbaa !9
  %8955 = load i32, ptr %45, align 4, !tbaa !9
  %8956 = icmp ne i32 %8955, 0
  br i1 %8956, label %8957, label %8965

8957:                                             ; preds = %8881
  %8958 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8958, ptr %45, align 4, !tbaa !9
  %8959 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8959, ptr %46, align 4, !tbaa !9
  %8960 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8960, ptr %56, align 8, !tbaa !11
  %8961 = load ptr, ptr %5, align 8, !tbaa !5
  %8962 = load i32, ptr %45, align 4, !tbaa !9
  %8963 = load i32, ptr %46, align 4, !tbaa !9
  %8964 = load i64, ptr %56, align 8, !tbaa !11
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %8961, i32 noundef %8962, i32 noundef %8963, i64 noundef %8964)
  br label %8965

8965:                                             ; preds = %8957, %8881
  %8966 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %8966, ptr %45, align 4, !tbaa !9
  %8967 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %8967, ptr %55, align 8, !tbaa !11
  %8968 = load ptr, ptr %5, align 8, !tbaa !5
  %8969 = getelementptr inbounds %struct.w2c_hermes, ptr %8968, i32 0, i32 6
  %8970 = load i32, ptr %45, align 4, !tbaa !9
  %8971 = zext i32 %8970 to i64
  %8972 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8969, i64 noundef %8971, i64 noundef %8972)
  %8973 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8973, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %8974 = load i32, ptr %46, align 4, !tbaa !9
  %8975 = load i32, ptr %45, align 4, !tbaa !9
  %8976 = add i32 %8975, %8974
  store i32 %8976, ptr %45, align 4, !tbaa !9
  %8977 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %8977, ptr %6, align 4, !tbaa !9
  br label %2945

8978:                                             ; preds = %3011
  %8979 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %8979, ptr %45, align 4, !tbaa !9
  %8980 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %8980, ptr %46, align 4, !tbaa !9
  %8981 = load ptr, ptr %5, align 8, !tbaa !5
  %8982 = getelementptr inbounds %struct.w2c_hermes, ptr %8981, i32 0, i32 6
  %8983 = load i32, ptr %46, align 4, !tbaa !9
  %8984 = zext i32 %8983 to i64
  %8985 = add i64 %8984, 4
  %8986 = call i32 @i32_load8_u(ptr noundef %8982, i64 noundef %8985)
  store i32 %8986, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %8987 = load i32, ptr %47, align 4, !tbaa !9
  %8988 = and i32 %8987, 31
  %8989 = load i32, ptr %46, align 4, !tbaa !9
  %8990 = shl i32 %8989, %8988
  store i32 %8990, ptr %46, align 4, !tbaa !9
  %8991 = load i32, ptr %46, align 4, !tbaa !9
  %8992 = load i32, ptr %45, align 4, !tbaa !9
  %8993 = add i32 %8992, %8991
  store i32 %8993, ptr %45, align 4, !tbaa !9
  %8994 = load ptr, ptr %5, align 8, !tbaa !5
  %8995 = getelementptr inbounds %struct.w2c_hermes, ptr %8994, i32 0, i32 6
  %8996 = load i32, ptr %45, align 4, !tbaa !9
  %8997 = zext i32 %8996 to i64
  %8998 = call i64 @i64_load(ptr noundef %8995, i64 noundef %8997)
  store i64 %8998, ptr %54, align 8, !tbaa !11
  %8999 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %8999, ptr %39, align 8, !tbaa !11
  %9000 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9000, ptr %45, align 4, !tbaa !9
  %9001 = load ptr, ptr %5, align 8, !tbaa !5
  %9002 = getelementptr inbounds %struct.w2c_hermes, ptr %9001, i32 0, i32 6
  %9003 = load i32, ptr %45, align 4, !tbaa !9
  %9004 = zext i32 %9003 to i64
  %9005 = add i64 %9004, 1356
  %9006 = call i32 @i32_load(ptr noundef %9002, i64 noundef %9005)
  store i32 %9006, ptr %45, align 4, !tbaa !9
  %9007 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9007, ptr %46, align 4, !tbaa !9
  %9008 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9008, ptr %47, align 4, !tbaa !9
  %9009 = load ptr, ptr %5, align 8, !tbaa !5
  %9010 = getelementptr inbounds %struct.w2c_hermes, ptr %9009, i32 0, i32 6
  %9011 = load i32, ptr %47, align 4, !tbaa !9
  %9012 = zext i32 %9011 to i64
  %9013 = add i64 %9012, 1
  %9014 = call i32 @i32_load8_u(ptr noundef %9010, i64 noundef %9013)
  store i32 %9014, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9015 = load i32, ptr %48, align 4, !tbaa !9
  %9016 = and i32 %9015, 31
  %9017 = load i32, ptr %47, align 4, !tbaa !9
  %9018 = shl i32 %9017, %9016
  store i32 %9018, ptr %47, align 4, !tbaa !9
  %9019 = load i32, ptr %47, align 4, !tbaa !9
  %9020 = load i32, ptr %46, align 4, !tbaa !9
  %9021 = add i32 %9020, %9019
  store i32 %9021, ptr %46, align 4, !tbaa !9
  %9022 = load ptr, ptr %5, align 8, !tbaa !5
  %9023 = getelementptr inbounds %struct.w2c_hermes, ptr %9022, i32 0, i32 6
  %9024 = load i32, ptr %46, align 4, !tbaa !9
  %9025 = zext i32 %9024 to i64
  %9026 = call i32 @i32_load(ptr noundef %9023, i64 noundef %9025)
  store i32 %9026, ptr %46, align 4, !tbaa !9
  %9027 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9027, ptr %47, align 4, !tbaa !9
  %9028 = load ptr, ptr %5, align 8, !tbaa !5
  %9029 = getelementptr inbounds %struct.w2c_hermes, ptr %9028, i32 0, i32 6
  %9030 = load i32, ptr %47, align 4, !tbaa !9
  %9031 = zext i32 %9030 to i64
  %9032 = add i64 %9031, 2
  %9033 = call i32 @i32_load16_u(ptr noundef %9029, i64 noundef %9032)
  store i32 %9033, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9034 = load i32, ptr %48, align 4, !tbaa !9
  %9035 = and i32 %9034, 31
  %9036 = load i32, ptr %47, align 4, !tbaa !9
  %9037 = shl i32 %9036, %9035
  store i32 %9037, ptr %47, align 4, !tbaa !9
  %9038 = load i32, ptr %47, align 4, !tbaa !9
  %9039 = load i32, ptr %46, align 4, !tbaa !9
  %9040 = add i32 %9039, %9038
  store i32 %9040, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %9041 = load i32, ptr %47, align 4, !tbaa !9
  %9042 = load i32, ptr %46, align 4, !tbaa !9
  %9043 = add i32 %9042, %9041
  store i32 %9043, ptr %46, align 4, !tbaa !9
  %9044 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %9044, ptr %7, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %9045 = load i32, ptr %47, align 4, !tbaa !9
  %9046 = load i32, ptr %46, align 4, !tbaa !9
  %9047 = and i32 %9046, %9045
  store i32 %9047, ptr %46, align 4, !tbaa !9
  %9048 = load i32, ptr %45, align 4, !tbaa !9
  %9049 = load i32, ptr %46, align 4, !tbaa !9
  %9050 = icmp ne i32 %9048, %9049
  %9051 = zext i1 %9050 to i32
  store i32 %9051, ptr %45, align 4, !tbaa !9
  %9052 = load i32, ptr %45, align 4, !tbaa !9
  %9053 = icmp ne i32 %9052, 0
  br i1 %9053, label %9054, label %9062

9054:                                             ; preds = %8978
  %9055 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %9055, ptr %45, align 4, !tbaa !9
  %9056 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9056, ptr %46, align 4, !tbaa !9
  %9057 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9057, ptr %56, align 8, !tbaa !11
  %9058 = load ptr, ptr %5, align 8, !tbaa !5
  %9059 = load i32, ptr %45, align 4, !tbaa !9
  %9060 = load i32, ptr %46, align 4, !tbaa !9
  %9061 = load i64, ptr %56, align 8, !tbaa !11
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %9058, i32 noundef %9059, i32 noundef %9060, i64 noundef %9061)
  br label %9062

9062:                                             ; preds = %9054, %8978
  %9063 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9063, ptr %45, align 4, !tbaa !9
  %9064 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9064, ptr %55, align 8, !tbaa !11
  %9065 = load ptr, ptr %5, align 8, !tbaa !5
  %9066 = getelementptr inbounds %struct.w2c_hermes, ptr %9065, i32 0, i32 6
  %9067 = load i32, ptr %45, align 4, !tbaa !9
  %9068 = zext i32 %9067 to i64
  %9069 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9066, i64 noundef %9068, i64 noundef %9069)
  %9070 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9070, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %9071 = load i32, ptr %46, align 4, !tbaa !9
  %9072 = load i32, ptr %45, align 4, !tbaa !9
  %9073 = add i32 %9072, %9071
  store i32 %9073, ptr %45, align 4, !tbaa !9
  %9074 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9074, ptr %6, align 4, !tbaa !9
  br label %2945

9075:                                             ; preds = %3012
  %9076 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9076, ptr %45, align 4, !tbaa !9
  %9077 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9077, ptr %46, align 4, !tbaa !9
  %9078 = load ptr, ptr %5, align 8, !tbaa !5
  %9079 = getelementptr inbounds %struct.w2c_hermes, ptr %9078, i32 0, i32 6
  %9080 = load i32, ptr %46, align 4, !tbaa !9
  %9081 = zext i32 %9080 to i64
  %9082 = add i64 %9081, 3
  %9083 = call i32 @i32_load8_u(ptr noundef %9079, i64 noundef %9082)
  store i32 %9083, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %9084 = load i32, ptr %47, align 4, !tbaa !9
  %9085 = and i32 %9084, 31
  %9086 = load i32, ptr %46, align 4, !tbaa !9
  %9087 = shl i32 %9086, %9085
  store i32 %9087, ptr %46, align 4, !tbaa !9
  %9088 = load i32, ptr %46, align 4, !tbaa !9
  %9089 = load i32, ptr %45, align 4, !tbaa !9
  %9090 = add i32 %9089, %9088
  store i32 %9090, ptr %45, align 4, !tbaa !9
  %9091 = load ptr, ptr %5, align 8, !tbaa !5
  %9092 = getelementptr inbounds %struct.w2c_hermes, ptr %9091, i32 0, i32 6
  %9093 = load i32, ptr %45, align 4, !tbaa !9
  %9094 = zext i32 %9093 to i64
  %9095 = call i64 @i64_load(ptr noundef %9092, i64 noundef %9094)
  store i64 %9095, ptr %54, align 8, !tbaa !11
  %9096 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %9096, ptr %39, align 8, !tbaa !11
  %9097 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9097, ptr %45, align 4, !tbaa !9
  %9098 = load ptr, ptr %5, align 8, !tbaa !5
  %9099 = getelementptr inbounds %struct.w2c_hermes, ptr %9098, i32 0, i32 6
  %9100 = load i32, ptr %45, align 4, !tbaa !9
  %9101 = zext i32 %9100 to i64
  %9102 = add i64 %9101, 1356
  %9103 = call i32 @i32_load(ptr noundef %9099, i64 noundef %9102)
  store i32 %9103, ptr %45, align 4, !tbaa !9
  %9104 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9104, ptr %46, align 4, !tbaa !9
  %9105 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9105, ptr %47, align 4, !tbaa !9
  %9106 = load ptr, ptr %5, align 8, !tbaa !5
  %9107 = getelementptr inbounds %struct.w2c_hermes, ptr %9106, i32 0, i32 6
  %9108 = load i32, ptr %47, align 4, !tbaa !9
  %9109 = zext i32 %9108 to i64
  %9110 = add i64 %9109, 1
  %9111 = call i32 @i32_load8_u(ptr noundef %9107, i64 noundef %9110)
  store i32 %9111, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9112 = load i32, ptr %48, align 4, !tbaa !9
  %9113 = and i32 %9112, 31
  %9114 = load i32, ptr %47, align 4, !tbaa !9
  %9115 = shl i32 %9114, %9113
  store i32 %9115, ptr %47, align 4, !tbaa !9
  %9116 = load i32, ptr %47, align 4, !tbaa !9
  %9117 = load i32, ptr %46, align 4, !tbaa !9
  %9118 = add i32 %9117, %9116
  store i32 %9118, ptr %46, align 4, !tbaa !9
  %9119 = load ptr, ptr %5, align 8, !tbaa !5
  %9120 = getelementptr inbounds %struct.w2c_hermes, ptr %9119, i32 0, i32 6
  %9121 = load i32, ptr %46, align 4, !tbaa !9
  %9122 = zext i32 %9121 to i64
  %9123 = call i32 @i32_load(ptr noundef %9120, i64 noundef %9122)
  store i32 %9123, ptr %46, align 4, !tbaa !9
  %9124 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9124, ptr %47, align 4, !tbaa !9
  %9125 = load ptr, ptr %5, align 8, !tbaa !5
  %9126 = getelementptr inbounds %struct.w2c_hermes, ptr %9125, i32 0, i32 6
  %9127 = load i32, ptr %47, align 4, !tbaa !9
  %9128 = zext i32 %9127 to i64
  %9129 = add i64 %9128, 2
  %9130 = call i32 @i32_load8_u(ptr noundef %9126, i64 noundef %9129)
  store i32 %9130, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9131 = load i32, ptr %48, align 4, !tbaa !9
  %9132 = and i32 %9131, 31
  %9133 = load i32, ptr %47, align 4, !tbaa !9
  %9134 = shl i32 %9133, %9132
  store i32 %9134, ptr %47, align 4, !tbaa !9
  %9135 = load i32, ptr %47, align 4, !tbaa !9
  %9136 = load i32, ptr %46, align 4, !tbaa !9
  %9137 = add i32 %9136, %9135
  store i32 %9137, ptr %46, align 4, !tbaa !9
  %9138 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %9138, ptr %7, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %9139 = load i32, ptr %47, align 4, !tbaa !9
  %9140 = load i32, ptr %46, align 4, !tbaa !9
  %9141 = add i32 %9140, %9139
  store i32 %9141, ptr %46, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %9142 = load i32, ptr %47, align 4, !tbaa !9
  %9143 = load i32, ptr %46, align 4, !tbaa !9
  %9144 = and i32 %9143, %9142
  store i32 %9144, ptr %46, align 4, !tbaa !9
  %9145 = load i32, ptr %45, align 4, !tbaa !9
  %9146 = load i32, ptr %46, align 4, !tbaa !9
  %9147 = icmp eq i32 %9145, %9146
  %9148 = zext i1 %9147 to i32
  store i32 %9148, ptr %45, align 4, !tbaa !9
  %9149 = load i32, ptr %45, align 4, !tbaa !9
  %9150 = icmp ne i32 %9149, 0
  br i1 %9150, label %9151, label %9152

9151:                                             ; preds = %9075
  br label %9179

9152:                                             ; preds = %9075
  %9153 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9153, ptr %45, align 4, !tbaa !9
  %9154 = load ptr, ptr %5, align 8, !tbaa !5
  %9155 = getelementptr inbounds %struct.w2c_hermes, ptr %9154, i32 0, i32 6
  %9156 = load i32, ptr %45, align 4, !tbaa !9
  %9157 = zext i32 %9156 to i64
  %9158 = add i64 %9157, 4813
  %9159 = call i32 @i32_load8_u(ptr noundef %9155, i64 noundef %9158)
  store i32 %9159, ptr %45, align 4, !tbaa !9
  %9160 = load i32, ptr %45, align 4, !tbaa !9
  %9161 = icmp ne i32 %9160, 0
  %9162 = xor i1 %9161, true
  %9163 = zext i1 %9162 to i32
  store i32 %9163, ptr %45, align 4, !tbaa !9
  %9164 = load i32, ptr %45, align 4, !tbaa !9
  %9165 = icmp ne i32 %9164, 0
  br i1 %9165, label %9166, label %9167

9166:                                             ; preds = %9152
  br label %9179

9167:                                             ; preds = %9152
  %9168 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %9168, ptr %45, align 4, !tbaa !9
  %9169 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9169, ptr %46, align 4, !tbaa !9
  %9170 = load ptr, ptr %5, align 8, !tbaa !5
  %9171 = getelementptr inbounds %struct.w2c_hermes, ptr %9170, i32 0, i32 6
  %9172 = load i32, ptr %46, align 4, !tbaa !9
  %9173 = zext i32 %9172 to i64
  %9174 = add i64 %9173, 16
  %9175 = call i64 @i64_load(ptr noundef %9171, i64 noundef %9174)
  store i64 %9175, ptr %55, align 8, !tbaa !11
  %9176 = load ptr, ptr %5, align 8, !tbaa !5
  %9177 = load i32, ptr %45, align 4, !tbaa !9
  %9178 = load i64, ptr %55, align 8, !tbaa !11
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %9176, i32 noundef %9177, i64 noundef %9178)
  br label %9179

9179:                                             ; preds = %9167, %9166, %9151
  %9180 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9180, ptr %45, align 4, !tbaa !9
  %9181 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9181, ptr %55, align 8, !tbaa !11
  %9182 = load ptr, ptr %5, align 8, !tbaa !5
  %9183 = getelementptr inbounds %struct.w2c_hermes, ptr %9182, i32 0, i32 6
  %9184 = load i32, ptr %45, align 4, !tbaa !9
  %9185 = zext i32 %9184 to i64
  %9186 = add i64 %9185, 16
  %9187 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9183, i64 noundef %9186, i64 noundef %9187)
  %9188 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9188, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %9189 = load i32, ptr %46, align 4, !tbaa !9
  %9190 = load i32, ptr %45, align 4, !tbaa !9
  %9191 = add i32 %9190, %9189
  store i32 %9191, ptr %45, align 4, !tbaa !9
  %9192 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9192, ptr %6, align 4, !tbaa !9
  br label %2945

9193:                                             ; preds = %3013
  %9194 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9194, ptr %45, align 4, !tbaa !9
  %9195 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9195, ptr %46, align 4, !tbaa !9
  %9196 = load ptr, ptr %5, align 8, !tbaa !5
  %9197 = getelementptr inbounds %struct.w2c_hermes, ptr %9196, i32 0, i32 6
  %9198 = load i32, ptr %46, align 4, !tbaa !9
  %9199 = zext i32 %9198 to i64
  %9200 = add i64 %9199, 4
  %9201 = call i32 @i32_load8_u(ptr noundef %9197, i64 noundef %9200)
  store i32 %9201, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %9202 = load i32, ptr %47, align 4, !tbaa !9
  %9203 = and i32 %9202, 31
  %9204 = load i32, ptr %46, align 4, !tbaa !9
  %9205 = shl i32 %9204, %9203
  store i32 %9205, ptr %46, align 4, !tbaa !9
  %9206 = load i32, ptr %46, align 4, !tbaa !9
  %9207 = load i32, ptr %45, align 4, !tbaa !9
  %9208 = add i32 %9207, %9206
  store i32 %9208, ptr %45, align 4, !tbaa !9
  %9209 = load ptr, ptr %5, align 8, !tbaa !5
  %9210 = getelementptr inbounds %struct.w2c_hermes, ptr %9209, i32 0, i32 6
  %9211 = load i32, ptr %45, align 4, !tbaa !9
  %9212 = zext i32 %9211 to i64
  %9213 = call i64 @i64_load(ptr noundef %9210, i64 noundef %9212)
  store i64 %9213, ptr %54, align 8, !tbaa !11
  %9214 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %9214, ptr %39, align 8, !tbaa !11
  %9215 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9215, ptr %45, align 4, !tbaa !9
  %9216 = load ptr, ptr %5, align 8, !tbaa !5
  %9217 = getelementptr inbounds %struct.w2c_hermes, ptr %9216, i32 0, i32 6
  %9218 = load i32, ptr %45, align 4, !tbaa !9
  %9219 = zext i32 %9218 to i64
  %9220 = add i64 %9219, 1356
  %9221 = call i32 @i32_load(ptr noundef %9217, i64 noundef %9220)
  store i32 %9221, ptr %45, align 4, !tbaa !9
  %9222 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9222, ptr %46, align 4, !tbaa !9
  %9223 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9223, ptr %47, align 4, !tbaa !9
  %9224 = load ptr, ptr %5, align 8, !tbaa !5
  %9225 = getelementptr inbounds %struct.w2c_hermes, ptr %9224, i32 0, i32 6
  %9226 = load i32, ptr %47, align 4, !tbaa !9
  %9227 = zext i32 %9226 to i64
  %9228 = add i64 %9227, 1
  %9229 = call i32 @i32_load8_u(ptr noundef %9225, i64 noundef %9228)
  store i32 %9229, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9230 = load i32, ptr %48, align 4, !tbaa !9
  %9231 = and i32 %9230, 31
  %9232 = load i32, ptr %47, align 4, !tbaa !9
  %9233 = shl i32 %9232, %9231
  store i32 %9233, ptr %47, align 4, !tbaa !9
  %9234 = load i32, ptr %47, align 4, !tbaa !9
  %9235 = load i32, ptr %46, align 4, !tbaa !9
  %9236 = add i32 %9235, %9234
  store i32 %9236, ptr %46, align 4, !tbaa !9
  %9237 = load ptr, ptr %5, align 8, !tbaa !5
  %9238 = getelementptr inbounds %struct.w2c_hermes, ptr %9237, i32 0, i32 6
  %9239 = load i32, ptr %46, align 4, !tbaa !9
  %9240 = zext i32 %9239 to i64
  %9241 = call i32 @i32_load(ptr noundef %9238, i64 noundef %9240)
  store i32 %9241, ptr %46, align 4, !tbaa !9
  %9242 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9242, ptr %47, align 4, !tbaa !9
  %9243 = load ptr, ptr %5, align 8, !tbaa !5
  %9244 = getelementptr inbounds %struct.w2c_hermes, ptr %9243, i32 0, i32 6
  %9245 = load i32, ptr %47, align 4, !tbaa !9
  %9246 = zext i32 %9245 to i64
  %9247 = add i64 %9246, 2
  %9248 = call i32 @i32_load16_u(ptr noundef %9244, i64 noundef %9247)
  store i32 %9248, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9249 = load i32, ptr %48, align 4, !tbaa !9
  %9250 = and i32 %9249, 31
  %9251 = load i32, ptr %47, align 4, !tbaa !9
  %9252 = shl i32 %9251, %9250
  store i32 %9252, ptr %47, align 4, !tbaa !9
  %9253 = load i32, ptr %47, align 4, !tbaa !9
  %9254 = load i32, ptr %46, align 4, !tbaa !9
  %9255 = add i32 %9254, %9253
  store i32 %9255, ptr %46, align 4, !tbaa !9
  %9256 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %9256, ptr %7, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %9257 = load i32, ptr %47, align 4, !tbaa !9
  %9258 = load i32, ptr %46, align 4, !tbaa !9
  %9259 = add i32 %9258, %9257
  store i32 %9259, ptr %46, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %9260 = load i32, ptr %47, align 4, !tbaa !9
  %9261 = load i32, ptr %46, align 4, !tbaa !9
  %9262 = and i32 %9261, %9260
  store i32 %9262, ptr %46, align 4, !tbaa !9
  %9263 = load i32, ptr %45, align 4, !tbaa !9
  %9264 = load i32, ptr %46, align 4, !tbaa !9
  %9265 = icmp eq i32 %9263, %9264
  %9266 = zext i1 %9265 to i32
  store i32 %9266, ptr %45, align 4, !tbaa !9
  %9267 = load i32, ptr %45, align 4, !tbaa !9
  %9268 = icmp ne i32 %9267, 0
  br i1 %9268, label %9269, label %9270

9269:                                             ; preds = %9193
  br label %9297

9270:                                             ; preds = %9193
  %9271 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9271, ptr %45, align 4, !tbaa !9
  %9272 = load ptr, ptr %5, align 8, !tbaa !5
  %9273 = getelementptr inbounds %struct.w2c_hermes, ptr %9272, i32 0, i32 6
  %9274 = load i32, ptr %45, align 4, !tbaa !9
  %9275 = zext i32 %9274 to i64
  %9276 = add i64 %9275, 4813
  %9277 = call i32 @i32_load8_u(ptr noundef %9273, i64 noundef %9276)
  store i32 %9277, ptr %45, align 4, !tbaa !9
  %9278 = load i32, ptr %45, align 4, !tbaa !9
  %9279 = icmp ne i32 %9278, 0
  %9280 = xor i1 %9279, true
  %9281 = zext i1 %9280 to i32
  store i32 %9281, ptr %45, align 4, !tbaa !9
  %9282 = load i32, ptr %45, align 4, !tbaa !9
  %9283 = icmp ne i32 %9282, 0
  br i1 %9283, label %9284, label %9285

9284:                                             ; preds = %9270
  br label %9297

9285:                                             ; preds = %9270
  %9286 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %9286, ptr %45, align 4, !tbaa !9
  %9287 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9287, ptr %46, align 4, !tbaa !9
  %9288 = load ptr, ptr %5, align 8, !tbaa !5
  %9289 = getelementptr inbounds %struct.w2c_hermes, ptr %9288, i32 0, i32 6
  %9290 = load i32, ptr %46, align 4, !tbaa !9
  %9291 = zext i32 %9290 to i64
  %9292 = add i64 %9291, 16
  %9293 = call i64 @i64_load(ptr noundef %9289, i64 noundef %9292)
  store i64 %9293, ptr %55, align 8, !tbaa !11
  %9294 = load ptr, ptr %5, align 8, !tbaa !5
  %9295 = load i32, ptr %45, align 4, !tbaa !9
  %9296 = load i64, ptr %55, align 8, !tbaa !11
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %9294, i32 noundef %9295, i64 noundef %9296)
  br label %9297

9297:                                             ; preds = %9285, %9284, %9269
  %9298 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9298, ptr %45, align 4, !tbaa !9
  %9299 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %9299, ptr %55, align 8, !tbaa !11
  %9300 = load ptr, ptr %5, align 8, !tbaa !5
  %9301 = getelementptr inbounds %struct.w2c_hermes, ptr %9300, i32 0, i32 6
  %9302 = load i32, ptr %45, align 4, !tbaa !9
  %9303 = zext i32 %9302 to i64
  %9304 = add i64 %9303, 16
  %9305 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9301, i64 noundef %9304, i64 noundef %9305)
  %9306 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9306, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %9307 = load i32, ptr %46, align 4, !tbaa !9
  %9308 = load i32, ptr %45, align 4, !tbaa !9
  %9309 = add i32 %9308, %9307
  store i32 %9309, ptr %45, align 4, !tbaa !9
  %9310 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9310, ptr %6, align 4, !tbaa !9
  br label %2945

9311:                                             ; preds = %3014
  %9312 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9312, ptr %45, align 4, !tbaa !9
  %9313 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9313, ptr %46, align 4, !tbaa !9
  %9314 = load ptr, ptr %5, align 8, !tbaa !5
  %9315 = getelementptr inbounds %struct.w2c_hermes, ptr %9314, i32 0, i32 6
  %9316 = load i32, ptr %46, align 4, !tbaa !9
  %9317 = zext i32 %9316 to i64
  %9318 = add i64 %9317, 1
  %9319 = call i32 @i32_load8_u(ptr noundef %9315, i64 noundef %9318)
  store i32 %9319, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %9320 = load i32, ptr %47, align 4, !tbaa !9
  %9321 = and i32 %9320, 31
  %9322 = load i32, ptr %46, align 4, !tbaa !9
  %9323 = shl i32 %9322, %9321
  store i32 %9323, ptr %46, align 4, !tbaa !9
  %9324 = load i32, ptr %46, align 4, !tbaa !9
  %9325 = load i32, ptr %45, align 4, !tbaa !9
  %9326 = add i32 %9325, %9324
  store i32 %9326, ptr %45, align 4, !tbaa !9
  %9327 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9327, ptr %46, align 4, !tbaa !9
  %9328 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9328, ptr %47, align 4, !tbaa !9
  %9329 = load ptr, ptr %5, align 8, !tbaa !5
  %9330 = getelementptr inbounds %struct.w2c_hermes, ptr %9329, i32 0, i32 6
  %9331 = load i32, ptr %47, align 4, !tbaa !9
  %9332 = zext i32 %9331 to i64
  %9333 = add i64 %9332, 2
  %9334 = call i32 @i32_load8_u(ptr noundef %9330, i64 noundef %9333)
  store i32 %9334, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9335 = load i32, ptr %48, align 4, !tbaa !9
  %9336 = and i32 %9335, 31
  %9337 = load i32, ptr %47, align 4, !tbaa !9
  %9338 = shl i32 %9337, %9336
  store i32 %9338, ptr %47, align 4, !tbaa !9
  %9339 = load i32, ptr %47, align 4, !tbaa !9
  %9340 = load i32, ptr %46, align 4, !tbaa !9
  %9341 = add i32 %9340, %9339
  store i32 %9341, ptr %46, align 4, !tbaa !9
  %9342 = load ptr, ptr %5, align 8, !tbaa !5
  %9343 = getelementptr inbounds %struct.w2c_hermes, ptr %9342, i32 0, i32 6
  %9344 = load i32, ptr %46, align 4, !tbaa !9
  %9345 = zext i32 %9344 to i64
  %9346 = call i32 @i32_load(ptr noundef %9343, i64 noundef %9345)
  store i32 %9346, ptr %46, align 4, !tbaa !9
  %9347 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9347, ptr %47, align 4, !tbaa !9
  %9348 = load ptr, ptr %5, align 8, !tbaa !5
  %9349 = getelementptr inbounds %struct.w2c_hermes, ptr %9348, i32 0, i32 6
  %9350 = load i32, ptr %47, align 4, !tbaa !9
  %9351 = zext i32 %9350 to i64
  %9352 = add i64 %9351, 3
  %9353 = call i32 @i32_load8_u(ptr noundef %9349, i64 noundef %9352)
  store i32 %9353, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9354 = load i32, ptr %48, align 4, !tbaa !9
  %9355 = and i32 %9354, 31
  %9356 = load i32, ptr %47, align 4, !tbaa !9
  %9357 = shl i32 %9356, %9355
  store i32 %9357, ptr %47, align 4, !tbaa !9
  %9358 = load i32, ptr %47, align 4, !tbaa !9
  %9359 = load i32, ptr %46, align 4, !tbaa !9
  %9360 = add i32 %9359, %9358
  store i32 %9360, ptr %46, align 4, !tbaa !9
  %9361 = load ptr, ptr %5, align 8, !tbaa !5
  %9362 = getelementptr inbounds %struct.w2c_hermes, ptr %9361, i32 0, i32 6
  %9363 = load i32, ptr %46, align 4, !tbaa !9
  %9364 = zext i32 %9363 to i64
  %9365 = add i64 %9364, 16
  %9366 = call i64 @i64_load(ptr noundef %9362, i64 noundef %9365)
  store i64 %9366, ptr %55, align 8, !tbaa !11
  %9367 = load ptr, ptr %5, align 8, !tbaa !5
  %9368 = getelementptr inbounds %struct.w2c_hermes, ptr %9367, i32 0, i32 6
  %9369 = load i32, ptr %45, align 4, !tbaa !9
  %9370 = zext i32 %9369 to i64
  %9371 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9368, i64 noundef %9370, i64 noundef %9371)
  %9372 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9372, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %9373 = load i32, ptr %46, align 4, !tbaa !9
  %9374 = load i32, ptr %45, align 4, !tbaa !9
  %9375 = add i32 %9374, %9373
  store i32 %9375, ptr %45, align 4, !tbaa !9
  %9376 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9376, ptr %6, align 4, !tbaa !9
  br label %2945

9377:                                             ; preds = %3015
  %9378 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9378, ptr %45, align 4, !tbaa !9
  %9379 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9379, ptr %46, align 4, !tbaa !9
  %9380 = load ptr, ptr %5, align 8, !tbaa !5
  %9381 = getelementptr inbounds %struct.w2c_hermes, ptr %9380, i32 0, i32 6
  %9382 = load i32, ptr %46, align 4, !tbaa !9
  %9383 = zext i32 %9382 to i64
  %9384 = add i64 %9383, 1
  %9385 = call i32 @i32_load8_u(ptr noundef %9381, i64 noundef %9384)
  store i32 %9385, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %9386 = load i32, ptr %47, align 4, !tbaa !9
  %9387 = and i32 %9386, 31
  %9388 = load i32, ptr %46, align 4, !tbaa !9
  %9389 = shl i32 %9388, %9387
  store i32 %9389, ptr %46, align 4, !tbaa !9
  %9390 = load i32, ptr %46, align 4, !tbaa !9
  %9391 = load i32, ptr %45, align 4, !tbaa !9
  %9392 = add i32 %9391, %9390
  store i32 %9392, ptr %45, align 4, !tbaa !9
  %9393 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9393, ptr %46, align 4, !tbaa !9
  %9394 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9394, ptr %47, align 4, !tbaa !9
  %9395 = load ptr, ptr %5, align 8, !tbaa !5
  %9396 = getelementptr inbounds %struct.w2c_hermes, ptr %9395, i32 0, i32 6
  %9397 = load i32, ptr %47, align 4, !tbaa !9
  %9398 = zext i32 %9397 to i64
  %9399 = add i64 %9398, 2
  %9400 = call i32 @i32_load8_u(ptr noundef %9396, i64 noundef %9399)
  store i32 %9400, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9401 = load i32, ptr %48, align 4, !tbaa !9
  %9402 = and i32 %9401, 31
  %9403 = load i32, ptr %47, align 4, !tbaa !9
  %9404 = shl i32 %9403, %9402
  store i32 %9404, ptr %47, align 4, !tbaa !9
  %9405 = load i32, ptr %47, align 4, !tbaa !9
  %9406 = load i32, ptr %46, align 4, !tbaa !9
  %9407 = add i32 %9406, %9405
  store i32 %9407, ptr %46, align 4, !tbaa !9
  %9408 = load ptr, ptr %5, align 8, !tbaa !5
  %9409 = getelementptr inbounds %struct.w2c_hermes, ptr %9408, i32 0, i32 6
  %9410 = load i32, ptr %46, align 4, !tbaa !9
  %9411 = zext i32 %9410 to i64
  %9412 = call i32 @i32_load(ptr noundef %9409, i64 noundef %9411)
  store i32 %9412, ptr %46, align 4, !tbaa !9
  %9413 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9413, ptr %47, align 4, !tbaa !9
  %9414 = load ptr, ptr %5, align 8, !tbaa !5
  %9415 = getelementptr inbounds %struct.w2c_hermes, ptr %9414, i32 0, i32 6
  %9416 = load i32, ptr %47, align 4, !tbaa !9
  %9417 = zext i32 %9416 to i64
  %9418 = add i64 %9417, 3
  %9419 = call i32 @i32_load16_u(ptr noundef %9415, i64 noundef %9418)
  store i32 %9419, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %9420 = load i32, ptr %48, align 4, !tbaa !9
  %9421 = and i32 %9420, 31
  %9422 = load i32, ptr %47, align 4, !tbaa !9
  %9423 = shl i32 %9422, %9421
  store i32 %9423, ptr %47, align 4, !tbaa !9
  %9424 = load i32, ptr %47, align 4, !tbaa !9
  %9425 = load i32, ptr %46, align 4, !tbaa !9
  %9426 = add i32 %9425, %9424
  store i32 %9426, ptr %46, align 4, !tbaa !9
  %9427 = load ptr, ptr %5, align 8, !tbaa !5
  %9428 = getelementptr inbounds %struct.w2c_hermes, ptr %9427, i32 0, i32 6
  %9429 = load i32, ptr %46, align 4, !tbaa !9
  %9430 = zext i32 %9429 to i64
  %9431 = add i64 %9430, 16
  %9432 = call i64 @i64_load(ptr noundef %9428, i64 noundef %9431)
  store i64 %9432, ptr %55, align 8, !tbaa !11
  %9433 = load ptr, ptr %5, align 8, !tbaa !5
  %9434 = getelementptr inbounds %struct.w2c_hermes, ptr %9433, i32 0, i32 6
  %9435 = load i32, ptr %45, align 4, !tbaa !9
  %9436 = zext i32 %9435 to i64
  %9437 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9434, i64 noundef %9436, i64 noundef %9437)
  %9438 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9438, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %9439 = load i32, ptr %46, align 4, !tbaa !9
  %9440 = load i32, ptr %45, align 4, !tbaa !9
  %9441 = add i32 %9440, %9439
  store i32 %9441, ptr %45, align 4, !tbaa !9
  %9442 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9442, ptr %6, align 4, !tbaa !9
  br label %2945

9443:                                             ; preds = %3016
  %9444 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9444, ptr %45, align 4, !tbaa !9
  %9445 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9445, ptr %46, align 4, !tbaa !9
  %9446 = load ptr, ptr %5, align 8, !tbaa !5
  %9447 = getelementptr inbounds %struct.w2c_hermes, ptr %9446, i32 0, i32 6
  %9448 = load i32, ptr %46, align 4, !tbaa !9
  %9449 = zext i32 %9448 to i64
  %9450 = add i64 %9449, 1
  %9451 = call i32 @i32_load8_u(ptr noundef %9447, i64 noundef %9450)
  store i32 %9451, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %9452 = load i32, ptr %47, align 4, !tbaa !9
  %9453 = and i32 %9452, 31
  %9454 = load i32, ptr %46, align 4, !tbaa !9
  %9455 = shl i32 %9454, %9453
  store i32 %9455, ptr %46, align 4, !tbaa !9
  %9456 = load i32, ptr %46, align 4, !tbaa !9
  %9457 = load i32, ptr %45, align 4, !tbaa !9
  %9458 = add i32 %9457, %9456
  store i32 %9458, ptr %45, align 4, !tbaa !9
  %9459 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9459, ptr %46, align 4, !tbaa !9
  %9460 = load ptr, ptr %5, align 8, !tbaa !5
  %9461 = getelementptr inbounds %struct.w2c_hermes, ptr %9460, i32 0, i32 6
  %9462 = load i32, ptr %46, align 4, !tbaa !9
  %9463 = zext i32 %9462 to i64
  %9464 = add i64 %9463, 696
  %9465 = call i64 @i64_load(ptr noundef %9461, i64 noundef %9464)
  store i64 %9465, ptr %55, align 8, !tbaa !11
  %9466 = load ptr, ptr %5, align 8, !tbaa !5
  %9467 = getelementptr inbounds %struct.w2c_hermes, ptr %9466, i32 0, i32 6
  %9468 = load i32, ptr %45, align 4, !tbaa !9
  %9469 = zext i32 %9468 to i64
  %9470 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9467, i64 noundef %9469, i64 noundef %9470)
  %9471 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9471, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %9472 = load i32, ptr %46, align 4, !tbaa !9
  %9473 = load i32, ptr %45, align 4, !tbaa !9
  %9474 = add i32 %9473, %9472
  store i32 %9474, ptr %45, align 4, !tbaa !9
  %9475 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9475, ptr %6, align 4, !tbaa !9
  br label %2945

9476:                                             ; preds = %3017
  %9477 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9477, ptr %45, align 4, !tbaa !9
  %9478 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9478, ptr %46, align 4, !tbaa !9
  %9479 = load ptr, ptr %5, align 8, !tbaa !5
  %9480 = getelementptr inbounds %struct.w2c_hermes, ptr %9479, i32 0, i32 6
  %9481 = load i32, ptr %46, align 4, !tbaa !9
  %9482 = zext i32 %9481 to i64
  %9483 = add i64 %9482, 1
  %9484 = call i32 @i32_load8_u(ptr noundef %9480, i64 noundef %9483)
  store i32 %9484, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %9485 = load i32, ptr %47, align 4, !tbaa !9
  %9486 = and i32 %9485, 31
  %9487 = load i32, ptr %46, align 4, !tbaa !9
  %9488 = shl i32 %9487, %9486
  store i32 %9488, ptr %46, align 4, !tbaa !9
  %9489 = load i32, ptr %46, align 4, !tbaa !9
  %9490 = load i32, ptr %45, align 4, !tbaa !9
  %9491 = add i32 %9490, %9489
  store i32 %9491, ptr %45, align 4, !tbaa !9
  %9492 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %9492, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %9493 = load i32, ptr %47, align 4, !tbaa !9
  %9494 = load i32, ptr %46, align 4, !tbaa !9
  %9495 = sub i32 %9494, %9493
  store i32 %9495, ptr %46, align 4, !tbaa !9
  %9496 = load ptr, ptr %5, align 8, !tbaa !5
  %9497 = getelementptr inbounds %struct.w2c_hermes, ptr %9496, i32 0, i32 6
  %9498 = load i32, ptr %46, align 4, !tbaa !9
  %9499 = zext i32 %9498 to i64
  %9500 = call i64 @i64_load(ptr noundef %9497, i64 noundef %9499)
  store i64 %9500, ptr %55, align 8, !tbaa !11
  %9501 = load ptr, ptr %5, align 8, !tbaa !5
  %9502 = getelementptr inbounds %struct.w2c_hermes, ptr %9501, i32 0, i32 6
  %9503 = load i32, ptr %45, align 4, !tbaa !9
  %9504 = zext i32 %9503 to i64
  %9505 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9502, i64 noundef %9504, i64 noundef %9505)
  %9506 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9506, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %9507 = load i32, ptr %46, align 4, !tbaa !9
  %9508 = load i32, ptr %45, align 4, !tbaa !9
  %9509 = add i32 %9508, %9507
  store i32 %9509, ptr %45, align 4, !tbaa !9
  %9510 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9510, ptr %6, align 4, !tbaa !9
  br label %2945

9511:                                             ; preds = %3018
  %9512 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9512, ptr %45, align 4, !tbaa !9
  %9513 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9513, ptr %46, align 4, !tbaa !9
  %9514 = load ptr, ptr %5, align 8, !tbaa !5
  %9515 = getelementptr inbounds %struct.w2c_hermes, ptr %9514, i32 0, i32 6
  %9516 = load i32, ptr %45, align 4, !tbaa !9
  %9517 = zext i32 %9516 to i64
  %9518 = add i64 %9517, 5808
  %9519 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9515, i64 noundef %9518, i32 noundef %9519)
  %9520 = load ptr, ptr %5, align 8, !tbaa !5
  %9521 = getelementptr inbounds %struct.w2c_hermes, ptr %9520, i32 0, i32 3
  %9522 = load i32, ptr %9521, align 8, !tbaa !15
  store i32 %9522, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %9523 = load i32, ptr %46, align 4, !tbaa !9
  %9524 = load i32, ptr %45, align 4, !tbaa !9
  %9525 = sub i32 %9524, %9523
  store i32 %9525, ptr %45, align 4, !tbaa !9
  %9526 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9526, ptr %15, align 4, !tbaa !9
  %9527 = load i32, ptr %45, align 4, !tbaa !9
  %9528 = load ptr, ptr %5, align 8, !tbaa !5
  %9529 = getelementptr inbounds %struct.w2c_hermes, ptr %9528, i32 0, i32 3
  store i32 %9527, ptr %9529, align 8, !tbaa !15
  %9530 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9530, ptr %45, align 4, !tbaa !9
  %9531 = load ptr, ptr %5, align 8, !tbaa !5
  %9532 = getelementptr inbounds %struct.w2c_hermes, ptr %9531, i32 0, i32 6
  %9533 = load i32, ptr %45, align 4, !tbaa !9
  %9534 = zext i32 %9533 to i64
  %9535 = add i64 %9534, 4
  %9536 = call i32 @i32_load(ptr noundef %9532, i64 noundef %9535)
  store i32 %9536, ptr %45, align 4, !tbaa !9
  %9537 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9537, ptr %14, align 4, !tbaa !9
  %9538 = load ptr, ptr %5, align 8, !tbaa !5
  %9539 = getelementptr inbounds %struct.w2c_hermes, ptr %9538, i32 0, i32 6
  %9540 = load i32, ptr %45, align 4, !tbaa !9
  %9541 = zext i32 %9540 to i64
  %9542 = add i64 %9541, 172
  %9543 = call i32 @i32_load(ptr noundef %9539, i64 noundef %9542)
  store i32 %9543, ptr %45, align 4, !tbaa !9
  %9544 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9544, ptr %12, align 4, !tbaa !9
  %9545 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9545, ptr %45, align 4, !tbaa !9
  %9546 = load ptr, ptr %5, align 8, !tbaa !5
  %9547 = getelementptr inbounds %struct.w2c_hermes, ptr %9546, i32 0, i32 6
  %9548 = load i32, ptr %45, align 4, !tbaa !9
  %9549 = zext i32 %9548 to i64
  %9550 = add i64 %9549, 164
  %9551 = call i32 @i32_load(ptr noundef %9547, i64 noundef %9550)
  store i32 %9551, ptr %45, align 4, !tbaa !9
  %9552 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9552, ptr %8, align 4, !tbaa !9
  %9553 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9553, ptr %45, align 4, !tbaa !9
  %9554 = load ptr, ptr %5, align 8, !tbaa !5
  %9555 = getelementptr inbounds %struct.w2c_hermes, ptr %9554, i32 0, i32 6
  %9556 = load i32, ptr %45, align 4, !tbaa !9
  %9557 = zext i32 %9556 to i64
  %9558 = call i32 @i32_load(ptr noundef %9555, i64 noundef %9557)
  store i32 %9558, ptr %45, align 4, !tbaa !9
  %9559 = load ptr, ptr %5, align 8, !tbaa !5
  %9560 = getelementptr inbounds %struct.w2c_hermes, ptr %9559, i32 0, i32 6
  %9561 = load i32, ptr %45, align 4, !tbaa !9
  %9562 = zext i32 %9561 to i64
  %9563 = add i64 %9562, 12
  %9564 = call i32 @i32_load(ptr noundef %9560, i64 noundef %9563)
  store i32 %9564, ptr %45, align 4, !tbaa !9
  %9565 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9565, ptr %46, align 4, !tbaa !9
  %9566 = load ptr, ptr %5, align 8, !tbaa !5
  %9567 = getelementptr inbounds %struct.w2c_hermes, ptr %9566, i32 0, i32 6
  %9568 = load i32, ptr %46, align 4, !tbaa !9
  %9569 = zext i32 %9568 to i64
  %9570 = add i64 %9569, 1
  %9571 = call i32 @i32_load(ptr noundef %9567, i64 noundef %9570)
  store i32 %9571, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %9572 = load i32, ptr %47, align 4, !tbaa !9
  %9573 = and i32 %9572, 31
  %9574 = load i32, ptr %46, align 4, !tbaa !9
  %9575 = shl i32 %9574, %9573
  store i32 %9575, ptr %46, align 4, !tbaa !9
  %9576 = load i32, ptr %46, align 4, !tbaa !9
  %9577 = load i32, ptr %45, align 4, !tbaa !9
  %9578 = add i32 %9577, %9576
  store i32 %9578, ptr %45, 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 %45, align 4, !tbaa !9
  %9582 = zext i32 %9581 to i64
  %9583 = call i32 @i32_load(ptr noundef %9580, i64 noundef %9582)
  store i32 %9583, ptr %45, align 4, !tbaa !9
  %9584 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9584, ptr %7, align 4, !tbaa !9
  %9585 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9585, ptr %45, align 4, !tbaa !9
  store i32 59, ptr %46, align 4, !tbaa !9
  %9586 = load ptr, ptr %5, align 8, !tbaa !5
  %9587 = getelementptr inbounds %struct.w2c_hermes, ptr %9586, i32 0, i32 6
  %9588 = load i32, ptr %45, align 4, !tbaa !9
  %9589 = zext i32 %9588 to i64
  %9590 = add i64 %9589, 12
  %9591 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9587, i64 noundef %9590, i32 noundef %9591)
  store i32 1, ptr %45, align 4, !tbaa !9
  %9592 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9592, ptr %13, align 4, !tbaa !9
  %9593 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9593, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %9594 = load ptr, ptr %5, align 8, !tbaa !5
  %9595 = getelementptr inbounds %struct.w2c_hermes, ptr %9594, i32 0, i32 6
  %9596 = load i32, ptr %45, align 4, !tbaa !9
  %9597 = zext i32 %9596 to i64
  %9598 = add i64 %9597, 8
  %9599 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9595, i64 noundef %9598, i32 noundef %9599)
  %9600 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9600, ptr %45, align 4, !tbaa !9
  store i32 59, ptr %46, align 4, !tbaa !9
  %9601 = load ptr, ptr %5, align 8, !tbaa !5
  %9602 = getelementptr inbounds %struct.w2c_hermes, ptr %9601, i32 0, i32 6
  %9603 = load i32, ptr %45, align 4, !tbaa !9
  %9604 = zext i32 %9603 to i64
  %9605 = add i64 %9604, 16
  %9606 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9602, i64 noundef %9605, i32 noundef %9606)
  %9607 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9607, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %9608 = load ptr, ptr %5, align 8, !tbaa !5
  %9609 = getelementptr inbounds %struct.w2c_hermes, ptr %9608, i32 0, i32 6
  %9610 = load i32, ptr %45, align 4, !tbaa !9
  %9611 = zext i32 %9610 to i64
  %9612 = add i64 %9611, 28
  %9613 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9609, i64 noundef %9612, i32 noundef %9613)
  %9614 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9614, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %9615 = load i32, ptr %46, align 4, !tbaa !9
  %9616 = load i32, ptr %45, align 4, !tbaa !9
  %9617 = add i32 %9616, %9615
  store i32 %9617, ptr %45, align 4, !tbaa !9
  %9618 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9618, ptr %46, align 4, !tbaa !9
  store i32 696, ptr %47, align 4, !tbaa !9
  %9619 = load i32, ptr %47, align 4, !tbaa !9
  %9620 = load i32, ptr %46, align 4, !tbaa !9
  %9621 = add i32 %9620, %9619
  store i32 %9621, ptr %46, align 4, !tbaa !9
  %9622 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9622, ptr %47, align 4, !tbaa !9
  %9623 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9623, ptr %48, align 4, !tbaa !9
  %9624 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9624, ptr %49, align 4, !tbaa !9
  store i32 12, ptr %50, align 4, !tbaa !9
  %9625 = load i32, ptr %50, align 4, !tbaa !9
  %9626 = load i32, ptr %49, align 4, !tbaa !9
  %9627 = add i32 %9626, %9625
  store i32 %9627, ptr %49, align 4, !tbaa !9
  store i32 67208, ptr %50, align 4, !tbaa !9
  %9628 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9628, ptr %51, align 4, !tbaa !9
  store i32 8, ptr %52, align 4, !tbaa !9
  %9629 = load i32, ptr %52, align 4, !tbaa !9
  %9630 = load i32, ptr %51, align 4, !tbaa !9
  %9631 = add i32 %9630, %9629
  store i32 %9631, ptr %51, align 4, !tbaa !9
  %9632 = load ptr, ptr %5, align 8, !tbaa !5
  %9633 = load i32, ptr %45, align 4, !tbaa !9
  %9634 = load i32, ptr %46, align 4, !tbaa !9
  %9635 = load i32, ptr %47, align 4, !tbaa !9
  %9636 = load i32, ptr %48, align 4, !tbaa !9
  %9637 = load i32, ptr %49, align 4, !tbaa !9
  %9638 = load i32, ptr %50, align 4, !tbaa !9
  %9639 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnPropertyInternal0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %9632, i32 noundef %9633, i32 noundef %9634, i32 noundef %9635, i32 noundef %9636, i32 noundef %9637, i32 noundef %9638, i32 noundef %9639)
  %9640 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9640, ptr %45, align 4, !tbaa !9
  %9641 = load ptr, ptr %5, align 8, !tbaa !5
  %9642 = getelementptr inbounds %struct.w2c_hermes, ptr %9641, i32 0, i32 6
  %9643 = load i32, ptr %45, align 4, !tbaa !9
  %9644 = zext i32 %9643 to i64
  %9645 = add i64 %9644, 24
  %9646 = call i32 @i32_load8_u(ptr noundef %9642, i64 noundef %9645)
  store i32 %9646, ptr %45, align 4, !tbaa !9
  %9647 = load i32, ptr %45, align 4, !tbaa !9
  %9648 = icmp ne i32 %9647, 0
  br i1 %9648, label %9649, label %9650

9649:                                             ; preds = %9511
  br label %9716

9650:                                             ; preds = %9511
  %9651 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9651, ptr %45, align 4, !tbaa !9
  store i64 -4294967296, ptr %55, align 8, !tbaa !11
  %9652 = load ptr, ptr %5, align 8, !tbaa !5
  %9653 = getelementptr inbounds %struct.w2c_hermes, ptr %9652, i32 0, i32 6
  %9654 = load i32, ptr %45, align 4, !tbaa !9
  %9655 = zext i32 %9654 to i64
  %9656 = add i64 %9655, 16
  %9657 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9653, i64 noundef %9656, i64 noundef %9657)
  %9658 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9658, ptr %45, align 4, !tbaa !9
  store i32 696, ptr %46, align 4, !tbaa !9
  %9659 = load i32, ptr %46, align 4, !tbaa !9
  %9660 = load i32, ptr %45, align 4, !tbaa !9
  %9661 = add i32 %9660, %9659
  store i32 %9661, ptr %45, align 4, !tbaa !9
  %9662 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9662, ptr %46, align 4, !tbaa !9
  %9663 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9663, ptr %47, 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 %47, align 4, !tbaa !9
  %9667 = zext i32 %9666 to i64
  %9668 = call i32 @i32_load(ptr noundef %9665, i64 noundef %9667)
  store i32 %9668, ptr %47, align 4, !tbaa !9
  %9669 = load ptr, ptr %5, align 8, !tbaa !5
  %9670 = getelementptr inbounds %struct.w2c_hermes, ptr %9669, i32 0, i32 6
  %9671 = load i32, ptr %47, align 4, !tbaa !9
  %9672 = zext i32 %9671 to i64
  %9673 = add i64 %9672, 12
  %9674 = call i32 @i32_load(ptr noundef %9670, i64 noundef %9673)
  store i32 %9674, ptr %47, align 4, !tbaa !9
  %9675 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9675, ptr %48, align 4, !tbaa !9
  %9676 = load ptr, ptr %5, align 8, !tbaa !5
  %9677 = getelementptr inbounds %struct.w2c_hermes, ptr %9676, i32 0, i32 6
  %9678 = load i32, ptr %48, align 4, !tbaa !9
  %9679 = zext i32 %9678 to i64
  %9680 = add i64 %9679, 1
  %9681 = call i32 @i32_load(ptr noundef %9677, i64 noundef %9680)
  store i32 %9681, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %9682 = load i32, ptr %49, align 4, !tbaa !9
  %9683 = and i32 %9682, 31
  %9684 = load i32, ptr %48, align 4, !tbaa !9
  %9685 = shl i32 %9684, %9683
  store i32 %9685, ptr %48, align 4, !tbaa !9
  %9686 = load i32, ptr %48, align 4, !tbaa !9
  %9687 = load i32, ptr %47, align 4, !tbaa !9
  %9688 = add i32 %9687, %9686
  store i32 %9688, ptr %47, align 4, !tbaa !9
  %9689 = load ptr, ptr %5, align 8, !tbaa !5
  %9690 = getelementptr inbounds %struct.w2c_hermes, ptr %9689, i32 0, i32 6
  %9691 = load i32, ptr %47, align 4, !tbaa !9
  %9692 = zext i32 %9691 to i64
  %9693 = call i32 @i32_load(ptr noundef %9690, i64 noundef %9692)
  store i32 %9693, ptr %47, align 4, !tbaa !9
  %9694 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9694, ptr %48, align 4, !tbaa !9
  store i32 16, ptr %49, align 4, !tbaa !9
  %9695 = load i32, ptr %49, align 4, !tbaa !9
  %9696 = load i32, ptr %48, align 4, !tbaa !9
  %9697 = add i32 %9696, %9695
  store i32 %9697, ptr %48, align 4, !tbaa !9
  %9698 = load ptr, ptr %5, align 8, !tbaa !5
  %9699 = load i32, ptr %45, align 4, !tbaa !9
  %9700 = load i32, ptr %46, align 4, !tbaa !9
  %9701 = load i32, ptr %47, align 4, !tbaa !9
  %9702 = load i32, ptr %48, align 4, !tbaa !9
  %9703 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetOwnNamedDescriptor0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %9698, i32 noundef %9699, i32 noundef %9700, i32 noundef %9701, i32 noundef %9702)
  store i32 %9703, ptr %45, align 4, !tbaa !9
  %9704 = load i32, ptr %45, align 4, !tbaa !9
  %9705 = icmp ne i32 %9704, 0
  br i1 %9705, label %9706, label %9714

9706:                                             ; preds = %9650
  %9707 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9707, ptr %45, align 4, !tbaa !9
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %9708 = load ptr, ptr %5, align 8, !tbaa !5
  %9709 = getelementptr inbounds %struct.w2c_hermes, ptr %9708, i32 0, i32 6
  %9710 = load i32, ptr %45, align 4, !tbaa !9
  %9711 = zext i32 %9710 to i64
  %9712 = add i64 %9711, 704
  %9713 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9709, i64 noundef %9712, i64 noundef %9713)
  br label %9716

9714:                                             ; preds = %9650
  store i32 0, ptr %45, align 4, !tbaa !9
  %9715 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9715, ptr %13, align 4, !tbaa !9
  br label %9716

9716:                                             ; preds = %9714, %9706, %9649
  %9717 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9717, ptr %45, align 4, !tbaa !9
  %9718 = load ptr, ptr %5, align 8, !tbaa !5
  %9719 = getelementptr inbounds %struct.w2c_hermes, ptr %9718, i32 0, i32 6
  %9720 = load i32, ptr %45, align 4, !tbaa !9
  %9721 = zext i32 %9720 to i64
  %9722 = add i64 %9721, 136
  %9723 = call i32 @i32_load(ptr noundef %9719, i64 noundef %9722)
  store i32 %9723, ptr %45, align 4, !tbaa !9
  %9724 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9724, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %9725 = load i32, ptr %47, align 4, !tbaa !9
  %9726 = and i32 %9725, 31
  %9727 = load i32, ptr %46, align 4, !tbaa !9
  %9728 = shl i32 %9727, %9726
  store i32 %9728, ptr %46, align 4, !tbaa !9
  %9729 = load i32, ptr %46, align 4, !tbaa !9
  %9730 = load i32, ptr %45, align 4, !tbaa !9
  %9731 = add i32 %9730, %9729
  store i32 %9731, ptr %45, align 4, !tbaa !9
  %9732 = load ptr, ptr %5, align 8, !tbaa !5
  %9733 = getelementptr inbounds %struct.w2c_hermes, ptr %9732, i32 0, i32 6
  %9734 = load i32, ptr %45, align 4, !tbaa !9
  %9735 = zext i32 %9734 to i64
  %9736 = call i32 @i32_load(ptr noundef %9733, i64 noundef %9735)
  store i32 %9736, ptr %45, align 4, !tbaa !9
  %9737 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9737, ptr %6, align 4, !tbaa !9
  %9738 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9738, ptr %45, align 4, !tbaa !9
  %9739 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %9739, ptr %46, align 4, !tbaa !9
  %9740 = load ptr, ptr %5, align 8, !tbaa !5
  %9741 = getelementptr inbounds %struct.w2c_hermes, ptr %9740, i32 0, i32 6
  %9742 = load i32, ptr %45, align 4, !tbaa !9
  %9743 = zext i32 %9742 to i64
  %9744 = add i64 %9743, 172
  %9745 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9741, i64 noundef %9744, i32 noundef %9745)
  %9746 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9746, ptr %45, align 4, !tbaa !9
  %9747 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %9747, ptr %46, align 4, !tbaa !9
  %9748 = load ptr, ptr %5, align 8, !tbaa !5
  %9749 = getelementptr inbounds %struct.w2c_hermes, ptr %9748, i32 0, i32 6
  %9750 = load i32, ptr %45, align 4, !tbaa !9
  %9751 = zext i32 %9750 to i64
  %9752 = add i64 %9751, 164
  %9753 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9749, i64 noundef %9752, i32 noundef %9753)
  %9754 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9754, ptr %45, align 4, !tbaa !9
  %9755 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9755, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %9756 = load i32, ptr %47, align 4, !tbaa !9
  %9757 = load i32, ptr %46, align 4, !tbaa !9
  %9758 = add i32 %9757, %9756
  store i32 %9758, ptr %46, align 4, !tbaa !9
  %9759 = load ptr, ptr %5, align 8, !tbaa !5
  %9760 = getelementptr inbounds %struct.w2c_hermes, ptr %9759, i32 0, i32 6
  %9761 = load i32, ptr %45, align 4, !tbaa !9
  %9762 = zext i32 %9761 to i64
  %9763 = add i64 %9762, 168
  %9764 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9760, i64 noundef %9763, i32 noundef %9764)
  %9765 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9765, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %9766 = load i32, ptr %46, align 4, !tbaa !9
  %9767 = load i32, ptr %45, align 4, !tbaa !9
  %9768 = add i32 %9767, %9766
  store i32 %9768, ptr %45, align 4, !tbaa !9
  %9769 = load i32, ptr %45, align 4, !tbaa !9
  %9770 = load ptr, ptr %5, align 8, !tbaa !5
  %9771 = getelementptr inbounds %struct.w2c_hermes, ptr %9770, i32 0, i32 3
  store i32 %9769, ptr %9771, align 8, !tbaa !15
  %9772 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9772, ptr %45, align 4, !tbaa !9
  %9773 = load ptr, ptr %5, align 8, !tbaa !5
  %9774 = getelementptr inbounds %struct.w2c_hermes, ptr %9773, i32 0, i32 6
  %9775 = load i32, ptr %45, align 4, !tbaa !9
  %9776 = zext i32 %9775 to i64
  %9777 = add i64 %9776, 5808
  %9778 = call i32 @i32_load(ptr noundef %9774, i64 noundef %9777)
  store i32 %9778, ptr %45, align 4, !tbaa !9
  %9779 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9779, ptr %6, align 4, !tbaa !9
  %9780 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %9780, ptr %45, align 4, !tbaa !9
  %9781 = load i32, ptr %45, align 4, !tbaa !9
  %9782 = icmp ne i32 %9781, 0
  %9783 = xor i1 %9782, true
  %9784 = zext i1 %9783 to i32
  store i32 %9784, ptr %45, align 4, !tbaa !9
  %9785 = load i32, ptr %45, align 4, !tbaa !9
  %9786 = icmp ne i32 %9785, 0
  br i1 %9786, label %9787, label %9788

9787:                                             ; preds = %9716
  br label %43136

9788:                                             ; preds = %9716
  %9789 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9789, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %9790 = load i32, ptr %46, align 4, !tbaa !9
  %9791 = load i32, ptr %45, align 4, !tbaa !9
  %9792 = add i32 %9791, %9790
  store i32 %9792, ptr %45, align 4, !tbaa !9
  %9793 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9793, ptr %6, align 4, !tbaa !9
  br label %2945

9794:                                             ; preds = %3019
  %9795 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9795, ptr %45, align 4, !tbaa !9
  %9796 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9796, ptr %46, align 4, !tbaa !9
  %9797 = load ptr, ptr %5, align 8, !tbaa !5
  %9798 = getelementptr inbounds %struct.w2c_hermes, ptr %9797, i32 0, i32 6
  %9799 = load i32, ptr %45, align 4, !tbaa !9
  %9800 = zext i32 %9799 to i64
  %9801 = add i64 %9800, 5808
  %9802 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9798, i64 noundef %9801, i32 noundef %9802)
  %9803 = load ptr, ptr %5, align 8, !tbaa !5
  %9804 = getelementptr inbounds %struct.w2c_hermes, ptr %9803, i32 0, i32 3
  %9805 = load i32, ptr %9804, align 8, !tbaa !15
  store i32 %9805, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %9806 = load i32, ptr %46, align 4, !tbaa !9
  %9807 = load i32, ptr %45, align 4, !tbaa !9
  %9808 = sub i32 %9807, %9806
  store i32 %9808, ptr %45, align 4, !tbaa !9
  %9809 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9809, ptr %15, align 4, !tbaa !9
  %9810 = load i32, ptr %45, align 4, !tbaa !9
  %9811 = load ptr, ptr %5, align 8, !tbaa !5
  %9812 = getelementptr inbounds %struct.w2c_hermes, ptr %9811, i32 0, i32 3
  store i32 %9810, ptr %9812, align 8, !tbaa !15
  %9813 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9813, ptr %45, align 4, !tbaa !9
  %9814 = load ptr, ptr %5, align 8, !tbaa !5
  %9815 = getelementptr inbounds %struct.w2c_hermes, ptr %9814, i32 0, i32 6
  %9816 = load i32, ptr %45, align 4, !tbaa !9
  %9817 = zext i32 %9816 to i64
  %9818 = add i64 %9817, 4
  %9819 = call i32 @i32_load(ptr noundef %9815, i64 noundef %9818)
  store i32 %9819, ptr %45, align 4, !tbaa !9
  %9820 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9820, ptr %14, align 4, !tbaa !9
  %9821 = load ptr, ptr %5, align 8, !tbaa !5
  %9822 = getelementptr inbounds %struct.w2c_hermes, ptr %9821, i32 0, i32 6
  %9823 = load i32, ptr %45, align 4, !tbaa !9
  %9824 = zext i32 %9823 to i64
  %9825 = add i64 %9824, 172
  %9826 = call i32 @i32_load(ptr noundef %9822, i64 noundef %9825)
  store i32 %9826, ptr %45, align 4, !tbaa !9
  %9827 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9827, ptr %13, align 4, !tbaa !9
  %9828 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9828, ptr %45, align 4, !tbaa !9
  %9829 = load ptr, ptr %5, align 8, !tbaa !5
  %9830 = getelementptr inbounds %struct.w2c_hermes, ptr %9829, i32 0, i32 6
  %9831 = load i32, ptr %45, align 4, !tbaa !9
  %9832 = zext i32 %9831 to i64
  %9833 = add i64 %9832, 164
  %9834 = call i32 @i32_load(ptr noundef %9830, i64 noundef %9833)
  store i32 %9834, ptr %45, align 4, !tbaa !9
  %9835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9835, ptr %12, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  %9836 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9836, ptr %8, align 4, !tbaa !9
  %9837 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9837, ptr %45, align 4, !tbaa !9
  %9838 = load ptr, ptr %5, align 8, !tbaa !5
  %9839 = getelementptr inbounds %struct.w2c_hermes, ptr %9838, i32 0, i32 6
  %9840 = load i32, ptr %45, align 4, !tbaa !9
  %9841 = zext i32 %9840 to i64
  %9842 = call i32 @i32_load(ptr noundef %9839, i64 noundef %9841)
  store i32 %9842, ptr %45, align 4, !tbaa !9
  %9843 = load ptr, ptr %5, align 8, !tbaa !5
  %9844 = getelementptr inbounds %struct.w2c_hermes, ptr %9843, i32 0, i32 6
  %9845 = load i32, ptr %45, align 4, !tbaa !9
  %9846 = zext i32 %9845 to i64
  %9847 = add i64 %9846, 12
  %9848 = call i32 @i32_load(ptr noundef %9844, i64 noundef %9847)
  store i32 %9848, ptr %45, align 4, !tbaa !9
  %9849 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9849, ptr %46, align 4, !tbaa !9
  %9850 = load ptr, ptr %5, align 8, !tbaa !5
  %9851 = getelementptr inbounds %struct.w2c_hermes, ptr %9850, i32 0, i32 6
  %9852 = load i32, ptr %46, align 4, !tbaa !9
  %9853 = zext i32 %9852 to i64
  %9854 = add i64 %9853, 1
  %9855 = call i32 @i32_load(ptr noundef %9851, i64 noundef %9854)
  store i32 %9855, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %9856 = load i32, ptr %47, align 4, !tbaa !9
  %9857 = and i32 %9856, 31
  %9858 = load i32, ptr %46, align 4, !tbaa !9
  %9859 = shl i32 %9858, %9857
  store i32 %9859, ptr %46, align 4, !tbaa !9
  %9860 = load i32, ptr %46, align 4, !tbaa !9
  %9861 = load i32, ptr %45, align 4, !tbaa !9
  %9862 = add i32 %9861, %9860
  store i32 %9862, ptr %45, align 4, !tbaa !9
  %9863 = load ptr, ptr %5, align 8, !tbaa !5
  %9864 = getelementptr inbounds %struct.w2c_hermes, ptr %9863, i32 0, i32 6
  %9865 = load i32, ptr %45, align 4, !tbaa !9
  %9866 = zext i32 %9865 to i64
  %9867 = call i32 @i32_load(ptr noundef %9864, i64 noundef %9866)
  store i32 %9867, ptr %45, align 4, !tbaa !9
  %9868 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9868, ptr %6, align 4, !tbaa !9
  %9869 = load ptr, ptr %5, align 8, !tbaa !5
  %9870 = getelementptr inbounds %struct.w2c_hermes, ptr %9869, i32 0, i32 3
  %9871 = load i32, ptr %9870, align 8, !tbaa !15
  store i32 %9871, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %9872 = load i32, ptr %46, align 4, !tbaa !9
  %9873 = load i32, ptr %45, align 4, !tbaa !9
  %9874 = sub i32 %9873, %9872
  store i32 %9874, ptr %45, align 4, !tbaa !9
  %9875 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9875, ptr %18, align 4, !tbaa !9
  %9876 = load i32, ptr %45, align 4, !tbaa !9
  %9877 = load ptr, ptr %5, align 8, !tbaa !5
  %9878 = getelementptr inbounds %struct.w2c_hermes, ptr %9877, i32 0, i32 3
  store i32 %9876, ptr %9878, align 8, !tbaa !15
  %9879 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9879, ptr %45, align 4, !tbaa !9
  store i64 -4294967296, ptr %55, align 8, !tbaa !11
  %9880 = load ptr, ptr %5, align 8, !tbaa !5
  %9881 = getelementptr inbounds %struct.w2c_hermes, ptr %9880, i32 0, i32 6
  %9882 = load i32, ptr %45, align 4, !tbaa !9
  %9883 = zext i32 %9882 to i64
  %9884 = add i64 %9883, 4
  %9885 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9881, i64 noundef %9884, i64 noundef %9885)
  %9886 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9886, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %9887 = load ptr, ptr %5, align 8, !tbaa !5
  %9888 = getelementptr inbounds %struct.w2c_hermes, ptr %9887, i32 0, i32 6
  %9889 = load i32, ptr %45, align 4, !tbaa !9
  %9890 = zext i32 %9889 to i64
  %9891 = add i64 %9890, 2
  %9892 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %9888, i64 noundef %9891, i32 noundef %9892)
  %9893 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9893, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %9894 = load ptr, ptr %5, align 8, !tbaa !5
  %9895 = getelementptr inbounds %struct.w2c_hermes, ptr %9894, i32 0, i32 6
  %9896 = load i32, ptr %45, align 4, !tbaa !9
  %9897 = zext i32 %9896 to i64
  %9898 = add i64 %9897, 14
  %9899 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %9895, i64 noundef %9898, i32 noundef %9899)
  %9900 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9900, ptr %45, align 4, !tbaa !9
  store i32 696, ptr %46, align 4, !tbaa !9
  %9901 = load i32, ptr %46, align 4, !tbaa !9
  %9902 = load i32, ptr %45, align 4, !tbaa !9
  %9903 = add i32 %9902, %9901
  store i32 %9903, ptr %45, align 4, !tbaa !9
  %9904 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9904, ptr %46, align 4, !tbaa !9
  %9905 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9905, ptr %47, align 4, !tbaa !9
  %9906 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9906, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %9907 = load i32, ptr %49, align 4, !tbaa !9
  %9908 = load i32, ptr %48, align 4, !tbaa !9
  %9909 = add i32 %9908, %9907
  store i32 %9909, ptr %48, align 4, !tbaa !9
  %9910 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9910, ptr %49, align 4, !tbaa !9
  store i32 4, ptr %50, align 4, !tbaa !9
  %9911 = load i32, ptr %50, align 4, !tbaa !9
  %9912 = load i32, ptr %49, align 4, !tbaa !9
  %9913 = add i32 %9912, %9911
  store i32 %9913, ptr %49, align 4, !tbaa !9
  %9914 = load ptr, ptr %5, align 8, !tbaa !5
  %9915 = load i32, ptr %45, align 4, !tbaa !9
  %9916 = load i32, ptr %46, align 4, !tbaa !9
  %9917 = load i32, ptr %47, align 4, !tbaa !9
  %9918 = load i32, ptr %48, align 4, !tbaa !9
  %9919 = load i32, ptr %49, align 4, !tbaa !9
  %9920 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedDescriptorUnsafe0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %9914, i32 noundef %9915, i32 noundef %9916, i32 noundef %9917, i32 noundef %9918, i32 noundef %9919)
  store i32 %9920, ptr %45, align 4, !tbaa !9
  %9921 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9921, ptr %7, align 4, !tbaa !9
  %9922 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9922, ptr %45, align 4, !tbaa !9
  %9923 = load ptr, ptr %5, align 8, !tbaa !5
  %9924 = getelementptr inbounds %struct.w2c_hermes, ptr %9923, i32 0, i32 6
  %9925 = load i32, ptr %45, align 4, !tbaa !9
  %9926 = zext i32 %9925 to i64
  %9927 = add i64 %9926, 4
  %9928 = call i32 @i32_load16_u(ptr noundef %9924, i64 noundef %9927)
  store i32 %9928, ptr %45, align 4, !tbaa !9
  %9929 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9929, ptr %6, align 4, !tbaa !9
  %9930 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9930, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %9931 = load i32, ptr %46, align 4, !tbaa !9
  %9932 = load i32, ptr %45, align 4, !tbaa !9
  %9933 = add i32 %9932, %9931
  store i32 %9933, ptr %45, align 4, !tbaa !9
  %9934 = load i32, ptr %45, align 4, !tbaa !9
  %9935 = load ptr, ptr %5, align 8, !tbaa !5
  %9936 = getelementptr inbounds %struct.w2c_hermes, ptr %9935, i32 0, i32 3
  store i32 %9934, ptr %9936, align 8, !tbaa !15
  %9937 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %9937, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %9938 = load i32, ptr %46, align 4, !tbaa !9
  %9939 = load i32, ptr %45, align 4, !tbaa !9
  %9940 = and i32 %9939, %9938
  store i32 %9940, ptr %45, align 4, !tbaa !9
  %9941 = load i32, ptr %45, align 4, !tbaa !9
  %9942 = icmp ne i32 %9941, 0
  %9943 = xor i1 %9942, true
  %9944 = zext i1 %9943 to i32
  store i32 %9944, ptr %45, align 4, !tbaa !9
  %9945 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %9945, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  %9946 = load i32, ptr %46, align 4, !tbaa !9
  %9947 = load i32, ptr %47, align 4, !tbaa !9
  %9948 = icmp ne i32 %9946, %9947
  %9949 = zext i1 %9948 to i32
  store i32 %9949, ptr %46, align 4, !tbaa !9
  %9950 = load i32, ptr %46, align 4, !tbaa !9
  %9951 = load i32, ptr %45, align 4, !tbaa !9
  %9952 = and i32 %9951, %9950
  store i32 %9952, ptr %45, align 4, !tbaa !9
  %9953 = load i32, ptr %45, align 4, !tbaa !9
  %9954 = icmp ne i32 %9953, 0
  br i1 %9954, label %9955, label %9994

9955:                                             ; preds = %9794
  %9956 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9956, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %9957 = load ptr, ptr %5, align 8, !tbaa !5
  %9958 = getelementptr inbounds %struct.w2c_hermes, ptr %9957, i32 0, i32 6
  %9959 = load i32, ptr %45, align 4, !tbaa !9
  %9960 = zext i32 %9959 to i64
  %9961 = add i64 %9960, 40
  %9962 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9958, i64 noundef %9961, i32 noundef %9962)
  %9963 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9963, ptr %45, align 4, !tbaa !9
  store i64 163208757249, ptr %55, align 8, !tbaa !11
  %9964 = load ptr, ptr %5, align 8, !tbaa !5
  %9965 = getelementptr inbounds %struct.w2c_hermes, ptr %9964, i32 0, i32 6
  %9966 = load i32, ptr %45, align 4, !tbaa !9
  %9967 = zext i32 %9966 to i64
  %9968 = add i64 %9967, 32
  %9969 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9965, i64 noundef %9968, i64 noundef %9969)
  %9970 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9970, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %9971 = load ptr, ptr %5, align 8, !tbaa !5
  %9972 = getelementptr inbounds %struct.w2c_hermes, ptr %9971, i32 0, i32 6
  %9973 = load i32, ptr %45, align 4, !tbaa !9
  %9974 = zext i32 %9973 to i64
  %9975 = add i64 %9974, 16
  %9976 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9972, i64 noundef %9975, i32 noundef %9976)
  %9977 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9977, ptr %45, align 4, !tbaa !9
  store i32 38140, ptr %46, align 4, !tbaa !9
  %9978 = load ptr, ptr %5, align 8, !tbaa !5
  %9979 = getelementptr inbounds %struct.w2c_hermes, ptr %9978, i32 0, i32 6
  %9980 = load i32, ptr %45, align 4, !tbaa !9
  %9981 = zext i32 %9980 to i64
  %9982 = add i64 %9981, 8
  %9983 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9979, i64 noundef %9982, i32 noundef %9983)
  %9984 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9984, ptr %45, align 4, !tbaa !9
  %9985 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %9985, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %9986 = load i32, ptr %47, align 4, !tbaa !9
  %9987 = load i32, ptr %46, align 4, !tbaa !9
  %9988 = add i32 %9987, %9986
  store i32 %9988, ptr %46, align 4, !tbaa !9
  %9989 = load ptr, ptr %5, align 8, !tbaa !5
  %9990 = load i32, ptr %45, align 4, !tbaa !9
  %9991 = load i32, ptr %46, align 4, !tbaa !9
  %9992 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseSyntaxError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %9989, i32 noundef %9990, i32 noundef %9991)
  store i32 %9992, ptr %45, align 4, !tbaa !9
  %9993 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %9993, ptr %8, align 4, !tbaa !9
  br label %9994

9994:                                             ; preds = %9955, %9794
  %9995 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9995, ptr %45, align 4, !tbaa !9
  %9996 = load ptr, ptr %5, align 8, !tbaa !5
  %9997 = getelementptr inbounds %struct.w2c_hermes, ptr %9996, i32 0, i32 6
  %9998 = load i32, ptr %45, align 4, !tbaa !9
  %9999 = zext i32 %9998 to i64
  %10000 = add i64 %9999, 136
  %10001 = call i32 @i32_load(ptr noundef %9997, i64 noundef %10000)
  store i32 %10001, ptr %45, align 4, !tbaa !9
  %10002 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10002, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %10003 = load i32, ptr %47, align 4, !tbaa !9
  %10004 = and i32 %10003, 31
  %10005 = load i32, ptr %46, align 4, !tbaa !9
  %10006 = shl i32 %10005, %10004
  store i32 %10006, ptr %46, align 4, !tbaa !9
  %10007 = load i32, ptr %46, align 4, !tbaa !9
  %10008 = load i32, ptr %45, align 4, !tbaa !9
  %10009 = add i32 %10008, %10007
  store i32 %10009, ptr %45, align 4, !tbaa !9
  %10010 = load ptr, ptr %5, align 8, !tbaa !5
  %10011 = getelementptr inbounds %struct.w2c_hermes, ptr %10010, i32 0, i32 6
  %10012 = load i32, ptr %45, align 4, !tbaa !9
  %10013 = zext i32 %10012 to i64
  %10014 = call i32 @i32_load(ptr noundef %10011, i64 noundef %10013)
  store i32 %10014, ptr %45, align 4, !tbaa !9
  %10015 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10015, ptr %6, align 4, !tbaa !9
  %10016 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10016, ptr %45, align 4, !tbaa !9
  %10017 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10017, ptr %46, align 4, !tbaa !9
  %10018 = load ptr, ptr %5, align 8, !tbaa !5
  %10019 = getelementptr inbounds %struct.w2c_hermes, ptr %10018, i32 0, i32 6
  %10020 = load i32, ptr %45, align 4, !tbaa !9
  %10021 = zext i32 %10020 to i64
  %10022 = add i64 %10021, 172
  %10023 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10019, i64 noundef %10022, i32 noundef %10023)
  %10024 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10024, ptr %45, align 4, !tbaa !9
  %10025 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10025, ptr %46, align 4, !tbaa !9
  %10026 = load ptr, ptr %5, align 8, !tbaa !5
  %10027 = getelementptr inbounds %struct.w2c_hermes, ptr %10026, i32 0, i32 6
  %10028 = load i32, ptr %45, align 4, !tbaa !9
  %10029 = zext i32 %10028 to i64
  %10030 = add i64 %10029, 164
  %10031 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10027, i64 noundef %10030, i32 noundef %10031)
  %10032 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10032, ptr %45, align 4, !tbaa !9
  %10033 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10033, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %10034 = load i32, ptr %47, align 4, !tbaa !9
  %10035 = load i32, ptr %46, align 4, !tbaa !9
  %10036 = add i32 %10035, %10034
  store i32 %10036, ptr %46, align 4, !tbaa !9
  %10037 = load ptr, ptr %5, align 8, !tbaa !5
  %10038 = getelementptr inbounds %struct.w2c_hermes, ptr %10037, i32 0, i32 6
  %10039 = load i32, ptr %45, align 4, !tbaa !9
  %10040 = zext i32 %10039 to i64
  %10041 = add i64 %10040, 168
  %10042 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10038, i64 noundef %10041, i32 noundef %10042)
  %10043 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10043, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %10044 = load i32, ptr %46, align 4, !tbaa !9
  %10045 = load i32, ptr %45, align 4, !tbaa !9
  %10046 = add i32 %10045, %10044
  store i32 %10046, ptr %45, align 4, !tbaa !9
  %10047 = load i32, ptr %45, align 4, !tbaa !9
  %10048 = load ptr, ptr %5, align 8, !tbaa !5
  %10049 = getelementptr inbounds %struct.w2c_hermes, ptr %10048, i32 0, i32 3
  store i32 %10047, ptr %10049, align 8, !tbaa !15
  %10050 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10050, ptr %45, align 4, !tbaa !9
  %10051 = load ptr, ptr %5, align 8, !tbaa !5
  %10052 = getelementptr inbounds %struct.w2c_hermes, ptr %10051, i32 0, i32 6
  %10053 = load i32, ptr %45, align 4, !tbaa !9
  %10054 = zext i32 %10053 to i64
  %10055 = add i64 %10054, 5808
  %10056 = call i32 @i32_load(ptr noundef %10052, i64 noundef %10055)
  store i32 %10056, ptr %45, align 4, !tbaa !9
  %10057 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10057, ptr %6, align 4, !tbaa !9
  %10058 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10058, ptr %45, align 4, !tbaa !9
  %10059 = load i32, ptr %45, align 4, !tbaa !9
  %10060 = icmp ne i32 %10059, 0
  %10061 = xor i1 %10060, true
  %10062 = zext i1 %10061 to i32
  store i32 %10062, ptr %45, align 4, !tbaa !9
  %10063 = load i32, ptr %45, align 4, !tbaa !9
  %10064 = icmp ne i32 %10063, 0
  br i1 %10064, label %10065, label %10066

10065:                                            ; preds = %9994
  br label %43136

10066:                                            ; preds = %9994
  %10067 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10067, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %10068 = load i32, ptr %46, align 4, !tbaa !9
  %10069 = load i32, ptr %45, align 4, !tbaa !9
  %10070 = add i32 %10069, %10068
  store i32 %10070, ptr %45, align 4, !tbaa !9
  %10071 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10071, ptr %6, align 4, !tbaa !9
  br label %2945

10072:                                            ; preds = %3020
  %10073 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10073, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %10074 = load i32, ptr %46, align 4, !tbaa !9
  %10075 = load i32, ptr %45, align 4, !tbaa !9
  %10076 = add i32 %10075, %10074
  store i32 %10076, ptr %45, align 4, !tbaa !9
  %10077 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10077, ptr %12, align 4, !tbaa !9
  %10078 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10078, ptr %45, align 4, !tbaa !9
  %10079 = load ptr, ptr %5, align 8, !tbaa !5
  %10080 = getelementptr inbounds %struct.w2c_hermes, ptr %10079, i32 0, i32 6
  %10081 = load i32, ptr %45, align 4, !tbaa !9
  %10082 = zext i32 %10081 to i64
  %10083 = add i64 %10082, 4
  %10084 = call i32 @i32_load(ptr noundef %10080, i64 noundef %10083)
  store i32 %10084, ptr %45, align 4, !tbaa !9
  %10085 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10085, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %10141

10086:                                            ; preds = %3021
  %10087 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10087, ptr %45, align 4, !tbaa !9
  %10088 = load ptr, ptr %5, align 8, !tbaa !5
  %10089 = getelementptr inbounds %struct.w2c_hermes, ptr %10088, i32 0, i32 6
  %10090 = load i32, ptr %45, align 4, !tbaa !9
  %10091 = zext i32 %10090 to i64
  %10092 = add i64 %10091, 4
  %10093 = call i32 @i32_load(ptr noundef %10089, i64 noundef %10092)
  store i32 %10093, ptr %45, align 4, !tbaa !9
  %10094 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10094, ptr %8, align 4, !tbaa !9
  %10095 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10095, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %10096 = load i32, ptr %46, align 4, !tbaa !9
  %10097 = load i32, ptr %45, align 4, !tbaa !9
  %10098 = add i32 %10097, %10096
  store i32 %10098, ptr %45, align 4, !tbaa !9
  br label %10139

10099:                                            ; preds = %3022
  %10100 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10100, ptr %45, align 4, !tbaa !9
  %10101 = load ptr, ptr %5, align 8, !tbaa !5
  %10102 = getelementptr inbounds %struct.w2c_hermes, ptr %10101, i32 0, i32 6
  %10103 = load i32, ptr %45, align 4, !tbaa !9
  %10104 = zext i32 %10103 to i64
  %10105 = add i64 %10104, 4
  %10106 = call i32 @i32_load8_u(ptr noundef %10102, i64 noundef %10105)
  store i32 %10106, ptr %45, align 4, !tbaa !9
  %10107 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10107, ptr %8, align 4, !tbaa !9
  %10108 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10108, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %10109 = load i32, ptr %46, align 4, !tbaa !9
  %10110 = load i32, ptr %45, align 4, !tbaa !9
  %10111 = add i32 %10110, %10109
  store i32 %10111, ptr %45, align 4, !tbaa !9
  br label %10139

10112:                                            ; preds = %3023
  %10113 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10113, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %10114 = load i32, ptr %46, align 4, !tbaa !9
  %10115 = load i32, ptr %45, align 4, !tbaa !9
  %10116 = add i32 %10115, %10114
  store i32 %10116, ptr %45, align 4, !tbaa !9
  %10117 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10117, ptr %12, align 4, !tbaa !9
  %10118 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10118, ptr %45, align 4, !tbaa !9
  %10119 = load ptr, ptr %5, align 8, !tbaa !5
  %10120 = getelementptr inbounds %struct.w2c_hermes, ptr %10119, i32 0, i32 6
  %10121 = load i32, ptr %45, align 4, !tbaa !9
  %10122 = zext i32 %10121 to i64
  %10123 = add i64 %10122, 4
  %10124 = call i32 @i32_load16_u(ptr noundef %10120, i64 noundef %10123)
  store i32 %10124, ptr %45, align 4, !tbaa !9
  %10125 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10125, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %10141

10126:                                            ; preds = %3024
  %10127 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10127, ptr %45, align 4, !tbaa !9
  %10128 = load ptr, ptr %5, align 8, !tbaa !5
  %10129 = getelementptr inbounds %struct.w2c_hermes, ptr %10128, i32 0, i32 6
  %10130 = load i32, ptr %45, align 4, !tbaa !9
  %10131 = zext i32 %10130 to i64
  %10132 = add i64 %10131, 4
  %10133 = call i32 @i32_load16_u(ptr noundef %10129, i64 noundef %10132)
  store i32 %10133, ptr %45, align 4, !tbaa !9
  %10134 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10134, ptr %8, align 4, !tbaa !9
  %10135 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10135, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %10136 = load i32, ptr %46, align 4, !tbaa !9
  %10137 = load i32, ptr %45, align 4, !tbaa !9
  %10138 = add i32 %10137, %10136
  store i32 %10138, ptr %45, align 4, !tbaa !9
  br label %10139

10139:                                            ; preds = %10126, %10099, %10086
  %10140 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10140, ptr %12, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %10141

10141:                                            ; preds = %10139, %10112, %10072
  %10142 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10142, ptr %13, align 4, !tbaa !9
  %10143 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10143, ptr %45, align 4, !tbaa !9
  %10144 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10144, ptr %46, align 4, !tbaa !9
  %10145 = load ptr, ptr %5, align 8, !tbaa !5
  %10146 = getelementptr inbounds %struct.w2c_hermes, ptr %10145, i32 0, i32 6
  %10147 = load i32, ptr %46, align 4, !tbaa !9
  %10148 = zext i32 %10147 to i64
  %10149 = add i64 %10148, 2
  %10150 = call i32 @i32_load8_u(ptr noundef %10146, i64 noundef %10149)
  store i32 %10150, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10151 = load i32, ptr %47, align 4, !tbaa !9
  %10152 = and i32 %10151, 31
  %10153 = load i32, ptr %46, align 4, !tbaa !9
  %10154 = shl i32 %10153, %10152
  store i32 %10154, ptr %46, align 4, !tbaa !9
  %10155 = load i32, ptr %46, align 4, !tbaa !9
  %10156 = load i32, ptr %45, align 4, !tbaa !9
  %10157 = add i32 %10156, %10155
  store i32 %10157, ptr %45, align 4, !tbaa !9
  %10158 = load ptr, ptr %5, align 8, !tbaa !5
  %10159 = getelementptr inbounds %struct.w2c_hermes, ptr %10158, i32 0, i32 6
  %10160 = load i32, ptr %45, align 4, !tbaa !9
  %10161 = zext i32 %10160 to i64
  %10162 = call i64 @i64_load(ptr noundef %10159, i64 noundef %10161)
  store i64 %10162, ptr %54, align 8, !tbaa !11
  %10163 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10163, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %10164 = load i64, ptr %54, align 8, !tbaa !11
  %10165 = load i64, ptr %55, align 8, !tbaa !11
  %10166 = and i64 %10165, 63
  %10167 = ashr i64 %10164, %10166
  store i64 %10167, ptr %54, align 8, !tbaa !11
  %10168 = load i64, ptr %54, align 8, !tbaa !11
  %10169 = trunc i64 %10168 to i32
  store i32 %10169, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %10170 = load i32, ptr %45, align 4, !tbaa !9
  %10171 = load i32, ptr %46, align 4, !tbaa !9
  %10172 = icmp eq i32 %10170, %10171
  %10173 = zext i1 %10172 to i32
  store i32 %10173, ptr %45, align 4, !tbaa !9
  %10174 = load i32, ptr %45, align 4, !tbaa !9
  %10175 = icmp ne i32 %10174, 0
  br i1 %10175, label %10176, label %10924

10176:                                            ; preds = %10141
  %10177 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10177, ptr %54, align 8, !tbaa !11
  %10178 = load i64, ptr %54, align 8, !tbaa !11
  %10179 = trunc i64 %10178 to i32
  store i32 %10179, ptr %45, align 4, !tbaa !9
  %10180 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10180, ptr %25, align 4, !tbaa !9
  %10181 = load ptr, ptr %5, align 8, !tbaa !5
  %10182 = getelementptr inbounds %struct.w2c_hermes, ptr %10181, i32 0, i32 6
  %10183 = load i32, ptr %45, align 4, !tbaa !9
  %10184 = zext i32 %10183 to i64
  %10185 = add i64 %10184, 12
  %10186 = call i32 @i32_load(ptr noundef %10182, i64 noundef %10185)
  store i32 %10186, ptr %45, align 4, !tbaa !9
  %10187 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10187, ptr %7, align 4, !tbaa !9
  %10188 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10188, ptr %46, align 4, !tbaa !9
  store i32 24, ptr %47, align 4, !tbaa !9
  %10189 = load i32, ptr %47, align 4, !tbaa !9
  %10190 = load i32, ptr %46, align 4, !tbaa !9
  %10191 = add i32 %10190, %10189
  store i32 %10191, ptr %46, align 4, !tbaa !9
  %10192 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %10192, ptr %18, align 4, !tbaa !9
  %10193 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10193, ptr %47, align 4, !tbaa !9
  %10194 = load ptr, ptr %5, align 8, !tbaa !5
  %10195 = getelementptr inbounds %struct.w2c_hermes, ptr %10194, i32 0, i32 6
  %10196 = load i32, ptr %47, align 4, !tbaa !9
  %10197 = zext i32 %10196 to i64
  %10198 = add i64 %10197, 3
  %10199 = call i32 @i32_load8_u(ptr noundef %10195, i64 noundef %10198)
  store i32 %10199, ptr %47, align 4, !tbaa !9
  %10200 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %10200, ptr %16, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %10201 = load i32, ptr %48, align 4, !tbaa !9
  %10202 = and i32 %10201, 31
  %10203 = load i32, ptr %47, align 4, !tbaa !9
  %10204 = shl i32 %10203, %10202
  store i32 %10204, ptr %47, align 4, !tbaa !9
  %10205 = load i32, ptr %47, align 4, !tbaa !9
  %10206 = load i32, ptr %46, align 4, !tbaa !9
  %10207 = add i32 %10206, %10205
  store i32 %10207, ptr %46, align 4, !tbaa !9
  %10208 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %10208, ptr %15, align 4, !tbaa !9
  %10209 = load ptr, ptr %5, align 8, !tbaa !5
  %10210 = getelementptr inbounds %struct.w2c_hermes, ptr %10209, i32 0, i32 6
  %10211 = load i32, ptr %46, align 4, !tbaa !9
  %10212 = zext i32 %10211 to i64
  %10213 = call i32 @i32_load(ptr noundef %10210, i64 noundef %10212)
  store i32 %10213, ptr %46, align 4, !tbaa !9
  %10214 = load i32, ptr %45, align 4, !tbaa !9
  %10215 = load i32, ptr %46, align 4, !tbaa !9
  %10216 = icmp eq i32 %10214, %10215
  %10217 = zext i1 %10216 to i32
  store i32 %10217, ptr %45, align 4, !tbaa !9
  %10218 = load i32, ptr %45, align 4, !tbaa !9
  %10219 = icmp ne i32 %10218, 0
  br i1 %10219, label %10220, label %10436

10220:                                            ; preds = %10176
  %10221 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10221, ptr %45, align 4, !tbaa !9
  %10222 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10222, ptr %46, align 4, !tbaa !9
  %10223 = load ptr, ptr %5, align 8, !tbaa !5
  %10224 = getelementptr inbounds %struct.w2c_hermes, ptr %10223, i32 0, i32 6
  %10225 = load i32, ptr %45, align 4, !tbaa !9
  %10226 = zext i32 %10225 to i64
  %10227 = add i64 %10226, 5808
  %10228 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10224, i64 noundef %10227, i32 noundef %10228)
  store i64 -1688849860263936, ptr %54, align 8, !tbaa !11
  %10229 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10229, ptr %40, align 8, !tbaa !11
  %10230 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10230, ptr %45, align 4, !tbaa !9
  %10231 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %10231, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10232 = load i32, ptr %47, align 4, !tbaa !9
  %10233 = and i32 %10232, 31
  %10234 = load i32, ptr %46, align 4, !tbaa !9
  %10235 = shl i32 %10234, %10233
  store i32 %10235, ptr %46, align 4, !tbaa !9
  %10236 = load i32, ptr %46, align 4, !tbaa !9
  %10237 = load i32, ptr %45, align 4, !tbaa !9
  %10238 = add i32 %10237, %10236
  store i32 %10238, ptr %45, align 4, !tbaa !9
  %10239 = load ptr, ptr %5, align 8, !tbaa !5
  %10240 = getelementptr inbounds %struct.w2c_hermes, ptr %10239, i32 0, i32 6
  %10241 = load i32, ptr %45, align 4, !tbaa !9
  %10242 = zext i32 %10241 to i64
  %10243 = add i64 %10242, 4
  %10244 = call i32 @i32_load(ptr noundef %10240, i64 noundef %10243)
  store i32 %10244, ptr %45, align 4, !tbaa !9
  %10245 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10245, ptr %7, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %10246 = load i32, ptr %45, align 4, !tbaa !9
  %10247 = load i32, ptr %46, align 4, !tbaa !9
  %10248 = icmp ule i32 %10246, %10247
  %10249 = zext i1 %10248 to i32
  store i32 %10249, ptr %45, align 4, !tbaa !9
  %10250 = load i32, ptr %45, align 4, !tbaa !9
  %10251 = icmp ne i32 %10250, 0
  br i1 %10251, label %10252, label %10265

10252:                                            ; preds = %10220
  %10253 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10253, ptr %45, align 4, !tbaa !9
  %10254 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10254, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %10255 = load i32, ptr %47, align 4, !tbaa !9
  %10256 = and i32 %10255, 31
  %10257 = load i32, ptr %46, align 4, !tbaa !9
  %10258 = shl i32 %10257, %10256
  store i32 %10258, ptr %46, align 4, !tbaa !9
  %10259 = load i32, ptr %46, align 4, !tbaa !9
  %10260 = load i32, ptr %45, align 4, !tbaa !9
  %10261 = add i32 %10260, %10259
  store i32 %10261, ptr %45, align 4, !tbaa !9
  store i32 20, ptr %46, align 4, !tbaa !9
  %10262 = load i32, ptr %46, align 4, !tbaa !9
  %10263 = load i32, ptr %45, align 4, !tbaa !9
  %10264 = add i32 %10263, %10262
  store i32 %10264, ptr %45, align 4, !tbaa !9
  br label %10284

10265:                                            ; preds = %10220
  %10266 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10266, ptr %45, align 4, !tbaa !9
  %10267 = load ptr, ptr %5, align 8, !tbaa !5
  %10268 = getelementptr inbounds %struct.w2c_hermes, ptr %10267, i32 0, i32 6
  %10269 = load i32, ptr %45, align 4, !tbaa !9
  %10270 = zext i32 %10269 to i64
  %10271 = add i64 %10270, 16
  %10272 = call i32 @i32_load(ptr noundef %10268, i64 noundef %10271)
  store i32 %10272, ptr %45, align 4, !tbaa !9
  %10273 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10273, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %10274 = load i32, ptr %47, align 4, !tbaa !9
  %10275 = and i32 %10274, 31
  %10276 = load i32, ptr %46, align 4, !tbaa !9
  %10277 = shl i32 %10276, %10275
  store i32 %10277, ptr %46, align 4, !tbaa !9
  %10278 = load i32, ptr %46, align 4, !tbaa !9
  %10279 = load i32, ptr %45, align 4, !tbaa !9
  %10280 = add i32 %10279, %10278
  store i32 %10280, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %10281 = load i32, ptr %46, align 4, !tbaa !9
  %10282 = load i32, ptr %45, align 4, !tbaa !9
  %10283 = sub i32 %10282, %10281
  store i32 %10283, ptr %45, align 4, !tbaa !9
  br label %10284

10284:                                            ; preds = %10265, %10252
  %10285 = load ptr, ptr %5, align 8, !tbaa !5
  %10286 = getelementptr inbounds %struct.w2c_hermes, ptr %10285, i32 0, i32 6
  %10287 = load i32, ptr %45, align 4, !tbaa !9
  %10288 = zext i32 %10287 to i64
  %10289 = call i32 @i32_load(ptr noundef %10286, i64 noundef %10288)
  store i32 %10289, ptr %45, align 4, !tbaa !9
  %10290 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10290, ptr %7, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %10291 = load i32, ptr %46, align 4, !tbaa !9
  %10292 = load i32, ptr %45, align 4, !tbaa !9
  %10293 = and i32 %10292, %10291
  store i32 %10293, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %10294 = load i32, ptr %46, align 4, !tbaa !9
  %10295 = load i32, ptr %45, align 4, !tbaa !9
  %10296 = sub i32 %10295, %10294
  store i32 %10296, ptr %45, align 4, !tbaa !9
  %10297 = load i32, ptr %45, align 4, !tbaa !9
  switch i32 %10297, label %10313 [
    i32 0, label %10298
    i32 1, label %10299
    i32 2, label %10300
    i32 3, label %10301
    i32 4, label %10302
    i32 5, label %10303
    i32 6, label %10304
    i32 7, label %10305
    i32 8, label %10306
    i32 9, label %10307
    i32 10, label %10308
    i32 11, label %10309
    i32 12, label %10310
    i32 13, label %10311
    i32 14, label %10312
  ]

10298:                                            ; preds = %10284
  br label %10322

10299:                                            ; preds = %10284
  br label %10333

10300:                                            ; preds = %10284
  br label %10344

10301:                                            ; preds = %10284
  br label %10373

10302:                                            ; preds = %10284
  br label %10384

10303:                                            ; preds = %10284
  br label %10396

10304:                                            ; preds = %10284
  br label %10408

10305:                                            ; preds = %10284
  br label %10314

10306:                                            ; preds = %10284
  br label %10322

10307:                                            ; preds = %10284
  br label %10333

10308:                                            ; preds = %10284
  br label %10344

10309:                                            ; preds = %10284
  br label %10373

10310:                                            ; preds = %10284
  br label %10384

10311:                                            ; preds = %10284
  br label %10412

10312:                                            ; preds = %10284
  br label %10410

10313:                                            ; preds = %10284
  br label %10314

10314:                                            ; preds = %10313, %10305
  %10315 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10315, ptr %45, align 4, !tbaa !9
  %10316 = load i32, ptr %45, align 4, !tbaa !9
  %10317 = zext i32 %10316 to i64
  store i64 %10317, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %10318 = load i64, ptr %55, align 8, !tbaa !11
  %10319 = load i64, ptr %54, align 8, !tbaa !11
  %10320 = or i64 %10319, %10318
  store i64 %10320, ptr %54, align 8, !tbaa !11
  %10321 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10321, ptr %40, align 8, !tbaa !11
  br label %10412

10322:                                            ; preds = %10306, %10298
  %10323 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10323, ptr %45, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %10324 = load i32, ptr %46, align 4, !tbaa !9
  %10325 = load i32, ptr %45, align 4, !tbaa !9
  %10326 = and i32 %10325, %10324
  store i32 %10326, ptr %45, align 4, !tbaa !9
  %10327 = load i32, ptr %45, align 4, !tbaa !9
  %10328 = zext i32 %10327 to i64
  store i64 %10328, ptr %54, align 8, !tbaa !11
  store i64 -562949953421312, ptr %55, align 8, !tbaa !11
  %10329 = load i64, ptr %55, align 8, !tbaa !11
  %10330 = load i64, ptr %54, align 8, !tbaa !11
  %10331 = or i64 %10330, %10329
  store i64 %10331, ptr %54, align 8, !tbaa !11
  %10332 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10332, ptr %40, align 8, !tbaa !11
  br label %10412

10333:                                            ; preds = %10307, %10299
  %10334 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10334, ptr %45, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %10335 = load i32, ptr %46, align 4, !tbaa !9
  %10336 = load i32, ptr %45, align 4, !tbaa !9
  %10337 = and i32 %10336, %10335
  store i32 %10337, ptr %45, align 4, !tbaa !9
  %10338 = load i32, ptr %45, align 4, !tbaa !9
  %10339 = zext i32 %10338 to i64
  store i64 %10339, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %10340 = load i64, ptr %55, align 8, !tbaa !11
  %10341 = load i64, ptr %54, align 8, !tbaa !11
  %10342 = or i64 %10341, %10340
  store i64 %10342, ptr %54, align 8, !tbaa !11
  %10343 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10343, ptr %40, align 8, !tbaa !11
  br label %10412

10344:                                            ; preds = %10308, %10300
  store i64 9221120237041090560, ptr %54, align 8, !tbaa !11
  %10345 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10345, ptr %46, align 4, !tbaa !9
  store i32 -8, ptr %47, align 4, !tbaa !9
  %10346 = load i32, ptr %47, align 4, !tbaa !9
  %10347 = load i32, ptr %46, align 4, !tbaa !9
  %10348 = and i32 %10347, %10346
  store i32 %10348, ptr %46, 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 %46, align 4, !tbaa !9
  %10352 = zext i32 %10351 to i64
  %10353 = add i64 %10352, 8
  %10354 = call double @f64_load(ptr noundef %10350, i64 noundef %10353)
  store double %10354, ptr %61, align 8, !tbaa !13
  %10355 = load double, ptr %61, align 8, !tbaa !13
  store double %10355, ptr %43, align 8, !tbaa !13
  %10356 = load double, ptr %61, align 8, !tbaa !13
  %10357 = call i64 @i64_reinterpret_f64(double noundef %10356)
  store i64 %10357, ptr %55, align 8, !tbaa !11
  %10358 = load double, ptr %43, align 8, !tbaa !13
  store double %10358, ptr %62, align 8, !tbaa !13
  %10359 = load double, ptr %43, align 8, !tbaa !13
  store double %10359, ptr %63, align 8, !tbaa !13
  %10360 = load double, ptr %62, align 8, !tbaa !13
  %10361 = load double, ptr %63, align 8, !tbaa !13
  %10362 = fcmp une double %10360, %10361
  %10363 = zext i1 %10362 to i32
  store i32 %10363, ptr %47, align 4, !tbaa !9
  %10364 = load i32, ptr %47, align 4, !tbaa !9
  %10365 = icmp ne i32 %10364, 0
  br i1 %10365, label %10366, label %10368

10366:                                            ; preds = %10344
  %10367 = load i64, ptr %54, align 8, !tbaa !11
  br label %10370

10368:                                            ; preds = %10344
  %10369 = load i64, ptr %55, align 8, !tbaa !11
  br label %10370

10370:                                            ; preds = %10368, %10366
  %10371 = phi i64 [ %10367, %10366 ], [ %10369, %10368 ]
  store i64 %10371, ptr %54, align 8, !tbaa !11
  %10372 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10372, ptr %40, align 8, !tbaa !11
  br label %10412

10373:                                            ; preds = %10309, %10301
  %10374 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10374, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %10375 = load i32, ptr %45, align 4, !tbaa !9
  %10376 = load i32, ptr %46, align 4, !tbaa !9
  %10377 = and i32 %10376, 31
  %10378 = ashr i32 %10375, %10377
  store i32 %10378, ptr %45, align 4, !tbaa !9
  %10379 = load i32, ptr %45, align 4, !tbaa !9
  %10380 = sitofp i32 %10379 to double
  store double %10380, ptr %60, align 8, !tbaa !13
  %10381 = load double, ptr %60, align 8, !tbaa !13
  %10382 = call i64 @i64_reinterpret_f64(double noundef %10381)
  store i64 %10382, ptr %54, align 8, !tbaa !11
  %10383 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10383, ptr %40, align 8, !tbaa !11
  br label %10412

10384:                                            ; preds = %10310, %10302
  %10385 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10385, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %10386 = load i32, ptr %46, align 4, !tbaa !9
  %10387 = and i32 %10386, 31
  %10388 = load i32, ptr %45, align 4, !tbaa !9
  %10389 = lshr i32 %10388, %10387
  store i32 %10389, ptr %45, align 4, !tbaa !9
  %10390 = load i32, ptr %45, align 4, !tbaa !9
  %10391 = zext i32 %10390 to i64
  store i64 %10391, ptr %54, align 8, !tbaa !11
  store i64 -1266637395197952, ptr %55, align 8, !tbaa !11
  %10392 = load i64, ptr %55, align 8, !tbaa !11
  %10393 = load i64, ptr %54, align 8, !tbaa !11
  %10394 = or i64 %10393, %10392
  store i64 %10394, ptr %54, align 8, !tbaa !11
  %10395 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10395, ptr %40, align 8, !tbaa !11
  br label %10412

10396:                                            ; preds = %10303
  %10397 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10397, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %10398 = load i32, ptr %45, align 4, !tbaa !9
  %10399 = load i32, ptr %46, align 4, !tbaa !9
  %10400 = icmp ugt i32 %10398, %10399
  %10401 = zext i1 %10400 to i32
  store i32 %10401, ptr %45, align 4, !tbaa !9
  %10402 = load i32, ptr %45, align 4, !tbaa !9
  %10403 = zext i32 %10402 to i64
  store i64 %10403, ptr %54, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %55, align 8, !tbaa !11
  %10404 = load i64, ptr %55, align 8, !tbaa !11
  %10405 = load i64, ptr %54, align 8, !tbaa !11
  %10406 = or i64 %10405, %10404
  store i64 %10406, ptr %54, align 8, !tbaa !11
  %10407 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10407, ptr %40, align 8, !tbaa !11
  br label %10412

10408:                                            ; preds = %10304
  store i64 -1970324836974592, ptr %54, align 8, !tbaa !11
  %10409 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10409, ptr %40, align 8, !tbaa !11
  br label %10412

10410:                                            ; preds = %10312
  store i64 -1548112371908608, ptr %54, align 8, !tbaa !11
  %10411 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10411, ptr %40, align 8, !tbaa !11
  br label %10412

10412:                                            ; preds = %10410, %10408, %10396, %10384, %10373, %10370, %10333, %10322, %10314, %10311
  %10413 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10413, ptr %45, align 4, !tbaa !9
  %10414 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10414, ptr %46, align 4, !tbaa !9
  %10415 = load ptr, ptr %5, align 8, !tbaa !5
  %10416 = getelementptr inbounds %struct.w2c_hermes, ptr %10415, i32 0, i32 6
  %10417 = load i32, ptr %46, align 4, !tbaa !9
  %10418 = zext i32 %10417 to i64
  %10419 = add i64 %10418, 1
  %10420 = call i32 @i32_load8_u(ptr noundef %10416, i64 noundef %10419)
  store i32 %10420, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10421 = load i32, ptr %47, align 4, !tbaa !9
  %10422 = and i32 %10421, 31
  %10423 = load i32, ptr %46, align 4, !tbaa !9
  %10424 = shl i32 %10423, %10422
  store i32 %10424, ptr %46, align 4, !tbaa !9
  %10425 = load i32, ptr %46, align 4, !tbaa !9
  %10426 = load i32, ptr %45, align 4, !tbaa !9
  %10427 = add i32 %10426, %10425
  store i32 %10427, ptr %45, align 4, !tbaa !9
  %10428 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %10428, ptr %55, align 8, !tbaa !11
  %10429 = load ptr, ptr %5, align 8, !tbaa !5
  %10430 = getelementptr inbounds %struct.w2c_hermes, ptr %10429, i32 0, i32 6
  %10431 = load i32, ptr %45, align 4, !tbaa !9
  %10432 = zext i32 %10431 to i64
  %10433 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10430, i64 noundef %10432, i64 noundef %10433)
  %10434 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10434, ptr %45, align 4, !tbaa !9
  %10435 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10435, ptr %6, align 4, !tbaa !9
  br label %2945

10436:                                            ; preds = %10176
  %10437 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10437, ptr %45, 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 %45, align 4, !tbaa !9
  %10441 = zext i32 %10440 to i64
  %10442 = call i32 @i32_load(ptr noundef %10439, i64 noundef %10441)
  store i32 %10442, ptr %45, align 4, !tbaa !9
  %10443 = load ptr, ptr %5, align 8, !tbaa !5
  %10444 = getelementptr inbounds %struct.w2c_hermes, ptr %10443, i32 0, i32 6
  %10445 = load i32, ptr %45, align 4, !tbaa !9
  %10446 = zext i32 %10445 to i64
  %10447 = add i64 %10446, 12
  %10448 = call i32 @i32_load(ptr noundef %10444, i64 noundef %10447)
  store i32 %10448, ptr %45, align 4, !tbaa !9
  %10449 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10449, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %10450 = load i32, ptr %47, align 4, !tbaa !9
  %10451 = and i32 %10450, 31
  %10452 = load i32, ptr %46, align 4, !tbaa !9
  %10453 = shl i32 %10452, %10451
  store i32 %10453, ptr %46, align 4, !tbaa !9
  %10454 = load i32, ptr %46, align 4, !tbaa !9
  %10455 = load i32, ptr %45, align 4, !tbaa !9
  %10456 = add i32 %10455, %10454
  store i32 %10456, ptr %45, align 4, !tbaa !9
  %10457 = load ptr, ptr %5, align 8, !tbaa !5
  %10458 = getelementptr inbounds %struct.w2c_hermes, ptr %10457, i32 0, i32 6
  %10459 = load i32, ptr %45, align 4, !tbaa !9
  %10460 = zext i32 %10459 to i64
  %10461 = call i32 @i32_load(ptr noundef %10458, i64 noundef %10460)
  store i32 %10461, ptr %45, align 4, !tbaa !9
  %10462 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10462, ptr %8, align 4, !tbaa !9
  %10463 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10463, ptr %45, align 4, !tbaa !9
  store i64 -4294967296, ptr %55, align 8, !tbaa !11
  %10464 = load ptr, ptr %5, align 8, !tbaa !5
  %10465 = getelementptr inbounds %struct.w2c_hermes, ptr %10464, i32 0, i32 6
  %10466 = load i32, ptr %45, align 4, !tbaa !9
  %10467 = zext i32 %10466 to i64
  %10468 = add i64 %10467, 272
  %10469 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10465, i64 noundef %10468, i64 noundef %10469)
  %10470 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10470, ptr %45, align 4, !tbaa !9
  %10471 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10471, ptr %46, 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 %45, align 4, !tbaa !9
  %10475 = zext i32 %10474 to i64
  %10476 = add i64 %10475, 5808
  %10477 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10473, i64 noundef %10476, i32 noundef %10477)
  %10478 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10478, ptr %45, align 4, !tbaa !9
  %10479 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10479, ptr %46, align 4, !tbaa !9
  %10480 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10480, ptr %47, align 4, !tbaa !9
  store i32 272, ptr %48, align 4, !tbaa !9
  %10481 = load i32, ptr %48, align 4, !tbaa !9
  %10482 = load i32, ptr %47, align 4, !tbaa !9
  %10483 = add i32 %10482, %10481
  store i32 %10483, ptr %47, align 4, !tbaa !9
  %10484 = load ptr, ptr %5, align 8, !tbaa !5
  %10485 = load i32, ptr %45, align 4, !tbaa !9
  %10486 = load i32, ptr %46, align 4, !tbaa !9
  %10487 = load i32, ptr %47, align 4, !tbaa !9
  %10488 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AtryGetOwnNamedDescriptorFast0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %10484, i32 noundef %10485, i32 noundef %10486, i32 noundef %10487)
  store i32 %10488, ptr %45, align 4, !tbaa !9
  %10489 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10489, ptr %6, align 4, !tbaa !9
  %10490 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10490, ptr %45, align 4, !tbaa !9
  %10491 = load ptr, ptr %5, align 8, !tbaa !5
  %10492 = getelementptr inbounds %struct.w2c_hermes, ptr %10491, i32 0, i32 6
  %10493 = load i32, ptr %45, align 4, !tbaa !9
  %10494 = zext i32 %10493 to i64
  %10495 = add i64 %10494, 5808
  %10496 = call i32 @i32_load(ptr noundef %10492, i64 noundef %10495)
  store i32 %10496, ptr %45, align 4, !tbaa !9
  %10497 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10497, ptr %14, align 4, !tbaa !9
  %10498 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10498, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %10499 = load i32, ptr %45, align 4, !tbaa !9
  %10500 = load i32, ptr %46, align 4, !tbaa !9
  %10501 = icmp slt i32 %10499, %10500
  %10502 = zext i1 %10501 to i32
  store i32 %10502, ptr %45, align 4, !tbaa !9
  %10503 = load i32, ptr %45, align 4, !tbaa !9
  %10504 = icmp ne i32 %10503, 0
  br i1 %10504, label %10505, label %10506

10505:                                            ; preds = %10436
  br label %10827

10506:                                            ; preds = %10436
  %10507 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10507, ptr %45, align 4, !tbaa !9
  %10508 = load i32, ptr %45, align 4, !tbaa !9
  %10509 = icmp ne i32 %10508, 0
  br i1 %10509, label %10510, label %10668

10510:                                            ; preds = %10506
  %10511 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10511, ptr %45, align 4, !tbaa !9
  %10512 = load ptr, ptr %5, align 8, !tbaa !5
  %10513 = getelementptr inbounds %struct.w2c_hermes, ptr %10512, i32 0, i32 6
  %10514 = load i32, ptr %45, align 4, !tbaa !9
  %10515 = zext i32 %10514 to i64
  %10516 = add i64 %10515, 272
  %10517 = call i32 @i32_load8_u(ptr noundef %10513, i64 noundef %10516)
  store i32 %10517, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %10518 = load i32, ptr %46, align 4, !tbaa !9
  %10519 = load i32, ptr %45, align 4, !tbaa !9
  %10520 = and i32 %10519, %10518
  store i32 %10520, ptr %45, align 4, !tbaa !9
  %10521 = load i32, ptr %45, align 4, !tbaa !9
  %10522 = icmp ne i32 %10521, 0
  br i1 %10522, label %10523, label %10524

10523:                                            ; preds = %10510
  br label %10827

10524:                                            ; preds = %10510
  %10525 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %10525, ptr %45, align 4, !tbaa !9
  %10526 = load i32, ptr %45, align 4, !tbaa !9
  %10527 = icmp ne i32 %10526, 0
  %10528 = xor i1 %10527, true
  %10529 = zext i1 %10528 to i32
  store i32 %10529, ptr %45, align 4, !tbaa !9
  %10530 = load i32, ptr %45, align 4, !tbaa !9
  %10531 = icmp ne i32 %10530, 0
  br i1 %10531, label %10532, label %10533

10532:                                            ; preds = %10524
  br label %10577

10533:                                            ; preds = %10524
  %10534 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10534, ptr %45, align 4, !tbaa !9
  %10535 = load ptr, ptr %5, align 8, !tbaa !5
  %10536 = getelementptr inbounds %struct.w2c_hermes, ptr %10535, i32 0, i32 6
  %10537 = load i32, ptr %45, align 4, !tbaa !9
  %10538 = zext i32 %10537 to i64
  %10539 = add i64 %10538, 10
  %10540 = call i32 @i32_load8_u(ptr noundef %10536, i64 noundef %10539)
  store i32 %10540, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %10541 = load i32, ptr %46, align 4, !tbaa !9
  %10542 = load i32, ptr %45, align 4, !tbaa !9
  %10543 = and i32 %10542, %10541
  store i32 %10543, ptr %45, align 4, !tbaa !9
  %10544 = load i32, ptr %45, align 4, !tbaa !9
  %10545 = icmp ne i32 %10544, 0
  br i1 %10545, label %10546, label %10547

10546:                                            ; preds = %10533
  br label %10577

10547:                                            ; preds = %10533
  %10548 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10548, ptr %45, align 4, !tbaa !9
  %10549 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10549, ptr %46, align 4, !tbaa !9
  %10550 = load ptr, ptr %5, align 8, !tbaa !5
  %10551 = getelementptr inbounds %struct.w2c_hermes, ptr %10550, i32 0, i32 6
  %10552 = load i32, ptr %45, align 4, !tbaa !9
  %10553 = zext i32 %10552 to i64
  %10554 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10551, i64 noundef %10553, i32 noundef %10554)
  %10555 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10555, ptr %45, align 4, !tbaa !9
  %10556 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %10556, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10557 = load i32, ptr %47, align 4, !tbaa !9
  %10558 = and i32 %10557, 31
  %10559 = load i32, ptr %46, align 4, !tbaa !9
  %10560 = shl i32 %10559, %10558
  store i32 %10560, ptr %46, align 4, !tbaa !9
  %10561 = load i32, ptr %46, align 4, !tbaa !9
  %10562 = load i32, ptr %45, align 4, !tbaa !9
  %10563 = add i32 %10562, %10561
  store i32 %10563, ptr %45, align 4, !tbaa !9
  %10564 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10564, ptr %46, align 4, !tbaa !9
  %10565 = load ptr, ptr %5, align 8, !tbaa !5
  %10566 = getelementptr inbounds %struct.w2c_hermes, ptr %10565, i32 0, i32 6
  %10567 = load i32, ptr %46, align 4, !tbaa !9
  %10568 = zext i32 %10567 to i64
  %10569 = add i64 %10568, 276
  %10570 = call i32 @i32_load(ptr noundef %10566, i64 noundef %10569)
  store i32 %10570, ptr %46, align 4, !tbaa !9
  %10571 = load ptr, ptr %5, align 8, !tbaa !5
  %10572 = getelementptr inbounds %struct.w2c_hermes, ptr %10571, i32 0, i32 6
  %10573 = load i32, ptr %45, align 4, !tbaa !9
  %10574 = zext i32 %10573 to i64
  %10575 = add i64 %10574, 4
  %10576 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10572, i64 noundef %10575, i32 noundef %10576)
  br label %10577

10577:                                            ; preds = %10547, %10546, %10532
  %10578 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10578, ptr %45, align 4, !tbaa !9
  %10579 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10579, ptr %46, align 4, !tbaa !9
  %10580 = load ptr, ptr %5, align 8, !tbaa !5
  %10581 = getelementptr inbounds %struct.w2c_hermes, ptr %10580, i32 0, i32 6
  %10582 = load i32, ptr %46, align 4, !tbaa !9
  %10583 = zext i32 %10582 to i64
  %10584 = add i64 %10583, 276
  %10585 = call i32 @i32_load(ptr noundef %10581, i64 noundef %10584)
  store i32 %10585, ptr %46, align 4, !tbaa !9
  %10586 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %10586, ptr %6, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %10587 = load i32, ptr %46, align 4, !tbaa !9
  %10588 = load i32, ptr %47, align 4, !tbaa !9
  %10589 = icmp ule i32 %10587, %10588
  %10590 = zext i1 %10589 to i32
  store i32 %10590, ptr %46, align 4, !tbaa !9
  %10591 = load i32, ptr %46, align 4, !tbaa !9
  %10592 = icmp ne i32 %10591, 0
  br i1 %10592, label %10593, label %10606

10593:                                            ; preds = %10577
  %10594 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10594, ptr %46, align 4, !tbaa !9
  %10595 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10595, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %10596 = load i32, ptr %48, align 4, !tbaa !9
  %10597 = and i32 %10596, 31
  %10598 = load i32, ptr %47, align 4, !tbaa !9
  %10599 = shl i32 %10598, %10597
  store i32 %10599, ptr %47, align 4, !tbaa !9
  %10600 = load i32, ptr %47, align 4, !tbaa !9
  %10601 = load i32, ptr %46, align 4, !tbaa !9
  %10602 = add i32 %10601, %10600
  store i32 %10602, ptr %46, align 4, !tbaa !9
  store i32 20, ptr %47, align 4, !tbaa !9
  %10603 = load i32, ptr %47, align 4, !tbaa !9
  %10604 = load i32, ptr %46, align 4, !tbaa !9
  %10605 = add i32 %10604, %10603
  store i32 %10605, ptr %46, align 4, !tbaa !9
  br label %10625

10606:                                            ; preds = %10577
  %10607 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10607, ptr %46, align 4, !tbaa !9
  %10608 = load ptr, ptr %5, align 8, !tbaa !5
  %10609 = getelementptr inbounds %struct.w2c_hermes, ptr %10608, i32 0, i32 6
  %10610 = load i32, ptr %46, align 4, !tbaa !9
  %10611 = zext i32 %10610 to i64
  %10612 = add i64 %10611, 16
  %10613 = call i32 @i32_load(ptr noundef %10609, i64 noundef %10612)
  store i32 %10613, ptr %46, align 4, !tbaa !9
  %10614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10614, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %10615 = load i32, ptr %48, align 4, !tbaa !9
  %10616 = and i32 %10615, 31
  %10617 = load i32, ptr %47, align 4, !tbaa !9
  %10618 = shl i32 %10617, %10616
  store i32 %10618, ptr %47, align 4, !tbaa !9
  %10619 = load i32, ptr %47, align 4, !tbaa !9
  %10620 = load i32, ptr %46, align 4, !tbaa !9
  %10621 = add i32 %10620, %10619
  store i32 %10621, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %10622 = load i32, ptr %47, align 4, !tbaa !9
  %10623 = load i32, ptr %46, align 4, !tbaa !9
  %10624 = sub i32 %10623, %10622
  store i32 %10624, ptr %46, align 4, !tbaa !9
  br label %10625

10625:                                            ; preds = %10606, %10593
  %10626 = load ptr, ptr %5, align 8, !tbaa !5
  %10627 = getelementptr inbounds %struct.w2c_hermes, ptr %10626, i32 0, i32 6
  %10628 = load i32, ptr %46, align 4, !tbaa !9
  %10629 = zext i32 %10628 to i64
  %10630 = call i32 @i32_load(ptr noundef %10627, i64 noundef %10629)
  store i32 %10630, ptr %46, align 4, !tbaa !9
  %10631 = load ptr, ptr %5, align 8, !tbaa !5
  %10632 = getelementptr inbounds %struct.w2c_hermes, ptr %10631, i32 0, i32 6
  %10633 = load i32, ptr %45, align 4, !tbaa !9
  %10634 = zext i32 %10633 to i64
  %10635 = add i64 %10634, 304
  %10636 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10632, i64 noundef %10635, i32 noundef %10636)
  %10637 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10637, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %10638 = load i32, ptr %46, align 4, !tbaa !9
  %10639 = load i32, ptr %45, align 4, !tbaa !9
  %10640 = add i32 %10639, %10638
  store i32 %10640, ptr %45, align 4, !tbaa !9
  %10641 = load ptr, ptr %5, align 8, !tbaa !5
  %10642 = load i32, ptr %45, align 4, !tbaa !9
  %10643 = call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHermesValue320x3A0x3AunboxToHV0x28hermes0x3A0x3Avm0x3A0x3APointerBase0x260x290x20const(ptr noundef %10641, i32 noundef %10642)
  store i64 %10643, ptr %54, align 8, !tbaa !11
  %10644 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10644, ptr %39, align 8, !tbaa !11
  %10645 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10645, ptr %45, align 4, !tbaa !9
  %10646 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10646, ptr %46, align 4, !tbaa !9
  %10647 = load ptr, ptr %5, align 8, !tbaa !5
  %10648 = getelementptr inbounds %struct.w2c_hermes, ptr %10647, i32 0, i32 6
  %10649 = load i32, ptr %46, align 4, !tbaa !9
  %10650 = zext i32 %10649 to i64
  %10651 = add i64 %10650, 1
  %10652 = call i32 @i32_load8_u(ptr noundef %10648, i64 noundef %10651)
  store i32 %10652, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10653 = load i32, ptr %47, align 4, !tbaa !9
  %10654 = and i32 %10653, 31
  %10655 = load i32, ptr %46, align 4, !tbaa !9
  %10656 = shl i32 %10655, %10654
  store i32 %10656, ptr %46, align 4, !tbaa !9
  %10657 = load i32, ptr %46, align 4, !tbaa !9
  %10658 = load i32, ptr %45, align 4, !tbaa !9
  %10659 = add i32 %10658, %10657
  store i32 %10659, ptr %45, align 4, !tbaa !9
  %10660 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10660, ptr %55, align 8, !tbaa !11
  %10661 = load ptr, ptr %5, align 8, !tbaa !5
  %10662 = getelementptr inbounds %struct.w2c_hermes, ptr %10661, i32 0, i32 6
  %10663 = load i32, ptr %45, align 4, !tbaa !9
  %10664 = zext i32 %10663 to i64
  %10665 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10662, i64 noundef %10664, i64 noundef %10665)
  %10666 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10666, ptr %45, align 4, !tbaa !9
  %10667 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10667, ptr %6, align 4, !tbaa !9
  br label %2945

10668:                                            ; preds = %10506
  %10669 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10669, ptr %45, align 4, !tbaa !9
  %10670 = load ptr, ptr %5, align 8, !tbaa !5
  %10671 = getelementptr inbounds %struct.w2c_hermes, ptr %10670, i32 0, i32 6
  %10672 = load i32, ptr %45, align 4, !tbaa !9
  %10673 = zext i32 %10672 to i64
  %10674 = add i64 %10673, 4
  %10675 = call i32 @i32_load(ptr noundef %10671, i64 noundef %10674)
  store i32 %10675, ptr %45, align 4, !tbaa !9
  %10676 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10676, ptr %6, align 4, !tbaa !9
  store i32 128, ptr %46, align 4, !tbaa !9
  %10677 = load i32, ptr %46, align 4, !tbaa !9
  %10678 = load i32, ptr %45, align 4, !tbaa !9
  %10679 = and i32 %10678, %10677
  store i32 %10679, ptr %45, align 4, !tbaa !9
  %10680 = load i32, ptr %45, align 4, !tbaa !9
  %10681 = icmp ne i32 %10680, 0
  br i1 %10681, label %10682, label %10683

10682:                                            ; preds = %10668
  br label %10827

10683:                                            ; preds = %10668
  %10684 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10684, ptr %45, align 4, !tbaa !9
  %10685 = load ptr, ptr %5, align 8, !tbaa !5
  %10686 = getelementptr inbounds %struct.w2c_hermes, ptr %10685, i32 0, i32 6
  %10687 = load i32, ptr %45, align 4, !tbaa !9
  %10688 = zext i32 %10687 to i64
  %10689 = add i64 %10688, 8
  %10690 = call i32 @i32_load(ptr noundef %10686, i64 noundef %10689)
  store i32 %10690, ptr %45, align 4, !tbaa !9
  %10691 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10691, ptr %7, align 4, !tbaa !9
  %10692 = load i32, ptr %45, align 4, !tbaa !9
  %10693 = icmp ne i32 %10692, 0
  %10694 = xor i1 %10693, true
  %10695 = zext i1 %10694 to i32
  store i32 %10695, ptr %45, align 4, !tbaa !9
  %10696 = load i32, ptr %45, align 4, !tbaa !9
  %10697 = icmp ne i32 %10696, 0
  br i1 %10697, label %10698, label %10699

10698:                                            ; preds = %10683
  br label %10827

10699:                                            ; preds = %10683
  %10700 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10700, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %10701 = load i32, ptr %46, align 4, !tbaa !9
  %10702 = load i32, ptr %45, align 4, !tbaa !9
  %10703 = and i32 %10702, %10701
  store i32 %10703, ptr %45, align 4, !tbaa !9
  %10704 = load i32, ptr %45, align 4, !tbaa !9
  %10705 = icmp ne i32 %10704, 0
  br i1 %10705, label %10706, label %10707

10706:                                            ; preds = %10699
  br label %10827

10707:                                            ; preds = %10699
  %10708 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10708, ptr %45, align 4, !tbaa !9
  %10709 = load ptr, ptr %5, align 8, !tbaa !5
  %10710 = getelementptr inbounds %struct.w2c_hermes, ptr %10709, i32 0, i32 6
  %10711 = load i32, ptr %45, align 4, !tbaa !9
  %10712 = zext i32 %10711 to i64
  %10713 = call i32 @i32_load(ptr noundef %10710, i64 noundef %10712)
  store i32 %10713, ptr %45, align 4, !tbaa !9
  %10714 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10714, ptr %46, align 4, !tbaa !9
  %10715 = load ptr, ptr %5, align 8, !tbaa !5
  %10716 = getelementptr inbounds %struct.w2c_hermes, ptr %10715, i32 0, i32 6
  %10717 = load i32, ptr %46, align 4, !tbaa !9
  %10718 = zext i32 %10717 to i64
  %10719 = add i64 %10718, 12
  %10720 = call i32 @i32_load(ptr noundef %10716, i64 noundef %10719)
  store i32 %10720, ptr %46, align 4, !tbaa !9
  %10721 = load i32, ptr %45, align 4, !tbaa !9
  %10722 = load i32, ptr %46, align 4, !tbaa !9
  %10723 = icmp ne i32 %10721, %10722
  %10724 = zext i1 %10723 to i32
  store i32 %10724, ptr %45, align 4, !tbaa !9
  %10725 = load i32, ptr %45, align 4, !tbaa !9
  %10726 = icmp ne i32 %10725, 0
  br i1 %10726, label %10727, label %10728

10727:                                            ; preds = %10707
  br label %10827

10728:                                            ; preds = %10707
  %10729 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10729, ptr %45, align 4, !tbaa !9
  %10730 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10730, ptr %46, align 4, !tbaa !9
  %10731 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %10731, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %10732 = load i32, ptr %48, align 4, !tbaa !9
  %10733 = and i32 %10732, 31
  %10734 = load i32, ptr %47, align 4, !tbaa !9
  %10735 = shl i32 %10734, %10733
  store i32 %10735, ptr %47, align 4, !tbaa !9
  %10736 = load i32, ptr %47, align 4, !tbaa !9
  %10737 = load i32, ptr %46, align 4, !tbaa !9
  %10738 = add i32 %10737, %10736
  store i32 %10738, ptr %46, align 4, !tbaa !9
  %10739 = load ptr, ptr %5, align 8, !tbaa !5
  %10740 = getelementptr inbounds %struct.w2c_hermes, ptr %10739, i32 0, i32 6
  %10741 = load i32, ptr %46, align 4, !tbaa !9
  %10742 = zext i32 %10741 to i64
  %10743 = add i64 %10742, 4
  %10744 = call i32 @i32_load(ptr noundef %10740, i64 noundef %10743)
  store i32 %10744, ptr %46, align 4, !tbaa !9
  %10745 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %10745, ptr %6, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %10746 = load i32, ptr %46, align 4, !tbaa !9
  %10747 = load i32, ptr %47, align 4, !tbaa !9
  %10748 = icmp ule i32 %10746, %10747
  %10749 = zext i1 %10748 to i32
  store i32 %10749, ptr %46, align 4, !tbaa !9
  %10750 = load i32, ptr %46, align 4, !tbaa !9
  %10751 = icmp ne i32 %10750, 0
  br i1 %10751, label %10752, label %10765

10752:                                            ; preds = %10728
  %10753 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10753, ptr %46, align 4, !tbaa !9
  %10754 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10754, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %10755 = load i32, ptr %48, align 4, !tbaa !9
  %10756 = and i32 %10755, 31
  %10757 = load i32, ptr %47, align 4, !tbaa !9
  %10758 = shl i32 %10757, %10756
  store i32 %10758, ptr %47, align 4, !tbaa !9
  %10759 = load i32, ptr %47, align 4, !tbaa !9
  %10760 = load i32, ptr %46, align 4, !tbaa !9
  %10761 = add i32 %10760, %10759
  store i32 %10761, ptr %46, align 4, !tbaa !9
  store i32 20, ptr %47, align 4, !tbaa !9
  %10762 = load i32, ptr %47, align 4, !tbaa !9
  %10763 = load i32, ptr %46, align 4, !tbaa !9
  %10764 = add i32 %10763, %10762
  store i32 %10764, ptr %46, align 4, !tbaa !9
  br label %10784

10765:                                            ; preds = %10728
  %10766 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10766, ptr %46, align 4, !tbaa !9
  %10767 = load ptr, ptr %5, align 8, !tbaa !5
  %10768 = getelementptr inbounds %struct.w2c_hermes, ptr %10767, i32 0, i32 6
  %10769 = load i32, ptr %46, align 4, !tbaa !9
  %10770 = zext i32 %10769 to i64
  %10771 = add i64 %10770, 16
  %10772 = call i32 @i32_load(ptr noundef %10768, i64 noundef %10771)
  store i32 %10772, ptr %46, align 4, !tbaa !9
  %10773 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10773, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %10774 = load i32, ptr %48, align 4, !tbaa !9
  %10775 = and i32 %10774, 31
  %10776 = load i32, ptr %47, align 4, !tbaa !9
  %10777 = shl i32 %10776, %10775
  store i32 %10777, ptr %47, align 4, !tbaa !9
  %10778 = load i32, ptr %47, align 4, !tbaa !9
  %10779 = load i32, ptr %46, align 4, !tbaa !9
  %10780 = add i32 %10779, %10778
  store i32 %10780, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %10781 = load i32, ptr %47, align 4, !tbaa !9
  %10782 = load i32, ptr %46, align 4, !tbaa !9
  %10783 = sub i32 %10782, %10781
  store i32 %10783, ptr %46, align 4, !tbaa !9
  br label %10784

10784:                                            ; preds = %10765, %10752
  %10785 = load ptr, ptr %5, align 8, !tbaa !5
  %10786 = getelementptr inbounds %struct.w2c_hermes, ptr %10785, i32 0, i32 6
  %10787 = load i32, ptr %46, align 4, !tbaa !9
  %10788 = zext i32 %10787 to i64
  %10789 = call i32 @i32_load(ptr noundef %10786, i64 noundef %10788)
  store i32 %10789, ptr %46, align 4, !tbaa !9
  %10790 = load ptr, ptr %5, align 8, !tbaa !5
  %10791 = getelementptr inbounds %struct.w2c_hermes, ptr %10790, i32 0, i32 6
  %10792 = load i32, ptr %45, align 4, !tbaa !9
  %10793 = zext i32 %10792 to i64
  %10794 = add i64 %10793, 304
  %10795 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10791, i64 noundef %10794, i32 noundef %10795)
  %10796 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10796, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %10797 = load i32, ptr %46, align 4, !tbaa !9
  %10798 = load i32, ptr %45, align 4, !tbaa !9
  %10799 = add i32 %10798, %10797
  store i32 %10799, ptr %45, align 4, !tbaa !9
  %10800 = load ptr, ptr %5, align 8, !tbaa !5
  %10801 = load i32, ptr %45, align 4, !tbaa !9
  %10802 = call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHermesValue320x3A0x3AunboxToHV0x28hermes0x3A0x3Avm0x3A0x3APointerBase0x260x290x20const(ptr noundef %10800, i32 noundef %10801)
  store i64 %10802, ptr %54, align 8, !tbaa !11
  %10803 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10803, ptr %39, align 8, !tbaa !11
  %10804 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10804, ptr %45, align 4, !tbaa !9
  %10805 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10805, ptr %46, align 4, !tbaa !9
  %10806 = load ptr, ptr %5, align 8, !tbaa !5
  %10807 = getelementptr inbounds %struct.w2c_hermes, ptr %10806, i32 0, i32 6
  %10808 = load i32, ptr %46, align 4, !tbaa !9
  %10809 = zext i32 %10808 to i64
  %10810 = add i64 %10809, 1
  %10811 = call i32 @i32_load8_u(ptr noundef %10807, i64 noundef %10810)
  store i32 %10811, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10812 = load i32, ptr %47, align 4, !tbaa !9
  %10813 = and i32 %10812, 31
  %10814 = load i32, ptr %46, align 4, !tbaa !9
  %10815 = shl i32 %10814, %10813
  store i32 %10815, ptr %46, align 4, !tbaa !9
  %10816 = load i32, ptr %46, align 4, !tbaa !9
  %10817 = load i32, ptr %45, align 4, !tbaa !9
  %10818 = add i32 %10817, %10816
  store i32 %10818, ptr %45, align 4, !tbaa !9
  %10819 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %10819, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %10823 = zext i32 %10822 to i64
  %10824 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10821, i64 noundef %10823, i64 noundef %10824)
  %10825 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10825, ptr %45, align 4, !tbaa !9
  %10826 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10826, ptr %6, align 4, !tbaa !9
  br label %2945

10827:                                            ; preds = %10727, %10706, %10698, %10682, %10523, %10505
  %10828 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10828, ptr %45, align 4, !tbaa !9
  %10829 = load ptr, ptr %5, align 8, !tbaa !5
  %10830 = getelementptr inbounds %struct.w2c_hermes, ptr %10829, i32 0, i32 6
  %10831 = load i32, ptr %45, align 4, !tbaa !9
  %10832 = zext i32 %10831 to i64
  %10833 = add i64 %10832, 2
  %10834 = call i32 @i32_load8_u(ptr noundef %10830, i64 noundef %10833)
  store i32 %10834, ptr %45, align 4, !tbaa !9
  %10835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10835, ptr %7, align 4, !tbaa !9
  %10836 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10836, ptr %45, align 4, !tbaa !9
  %10837 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %10837, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %10838 = load i32, ptr %47, align 4, !tbaa !9
  %10839 = load i32, ptr %46, align 4, !tbaa !9
  %10840 = or i32 %10839, %10838
  store i32 %10840, ptr %46, align 4, !tbaa !9
  %10841 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %10841, ptr %47, align 4, !tbaa !9
  %10842 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10842, ptr %48, align 4, !tbaa !9
  %10843 = load i32, ptr %48, align 4, !tbaa !9
  %10844 = icmp ne i32 %10843, 0
  br i1 %10844, label %10845, label %10847

10845:                                            ; preds = %10827
  %10846 = load i32, ptr %46, align 4, !tbaa !9
  br label %10849

10847:                                            ; preds = %10827
  %10848 = load i32, ptr %47, align 4, !tbaa !9
  br label %10849

10849:                                            ; preds = %10847, %10845
  %10850 = phi i32 [ %10846, %10845 ], [ %10848, %10847 ]
  store i32 %10850, ptr %46, align 4, !tbaa !9
  %10851 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %10851, ptr %6, align 4, !tbaa !9
  %10852 = load ptr, ptr %5, align 8, !tbaa !5
  %10853 = getelementptr inbounds %struct.w2c_hermes, ptr %10852, i32 0, i32 6
  %10854 = load i32, ptr %45, align 4, !tbaa !9
  %10855 = zext i32 %10854 to i64
  %10856 = add i64 %10855, 32
  %10857 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10853, i64 noundef %10856, i32 noundef %10857)
  %10858 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10858, ptr %45, align 4, !tbaa !9
  %10859 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10859, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %10863 = zext i32 %10862 to i64
  %10864 = add i64 %10863, 524
  %10865 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10861, i64 noundef %10864, i32 noundef %10865)
  %10866 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10866, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %10867 = load i32, ptr %46, align 4, !tbaa !9
  %10868 = load i32, ptr %45, align 4, !tbaa !9
  %10869 = add i32 %10868, %10867
  store i32 %10869, ptr %45, align 4, !tbaa !9
  %10870 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10870, ptr %46, align 4, !tbaa !9
  %10871 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %10871, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %10872 = load i32, ptr %48, align 4, !tbaa !9
  %10873 = and i32 %10872, 31
  %10874 = load i32, ptr %47, align 4, !tbaa !9
  %10875 = shl i32 %10874, %10873
  store i32 %10875, ptr %47, align 4, !tbaa !9
  %10876 = load i32, ptr %47, align 4, !tbaa !9
  %10877 = load i32, ptr %46, align 4, !tbaa !9
  %10878 = add i32 %10877, %10876
  store i32 %10878, ptr %46, align 4, !tbaa !9
  %10879 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %10879, ptr %6, align 4, !tbaa !9
  %10880 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10880, ptr %47, align 4, !tbaa !9
  %10881 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10881, ptr %48, align 4, !tbaa !9
  %10882 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10882, ptr %49, align 4, !tbaa !9
  %10883 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10883, ptr %50, align 4, !tbaa !9
  store i32 32, ptr %51, align 4, !tbaa !9
  %10884 = load i32, ptr %51, align 4, !tbaa !9
  %10885 = load i32, ptr %50, align 4, !tbaa !9
  %10886 = add i32 %10885, %10884
  store i32 %10886, ptr %50, align 4, !tbaa !9
  %10887 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %10887, ptr %51, align 4, !tbaa !9
  store i32 0, ptr %52, align 4, !tbaa !9
  %10888 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %10888, ptr %53, align 4, !tbaa !9
  %10889 = load i32, ptr %53, align 4, !tbaa !9
  %10890 = icmp ne i32 %10889, 0
  br i1 %10890, label %10891, label %10893

10891:                                            ; preds = %10849
  %10892 = load i32, ptr %51, align 4, !tbaa !9
  br label %10895

10893:                                            ; preds = %10849
  %10894 = load i32, ptr %52, align 4, !tbaa !9
  br label %10895

10895:                                            ; preds = %10893, %10891
  %10896 = phi i32 [ %10892, %10891 ], [ %10894, %10893 ]
  store i32 %10896, ptr %51, align 4, !tbaa !9
  %10897 = load ptr, ptr %5, align 8, !tbaa !5
  %10898 = load i32, ptr %45, align 4, !tbaa !9
  %10899 = load i32, ptr %46, align 4, !tbaa !9
  %10900 = load i32, ptr %47, align 4, !tbaa !9
  %10901 = load i32, ptr %48, align 4, !tbaa !9
  %10902 = load i32, ptr %49, align 4, !tbaa !9
  %10903 = load i32, ptr %50, align 4, !tbaa !9
  %10904 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %10897, i32 noundef %10898, i32 noundef %10899, i32 noundef %10900, i32 noundef %10901, i32 noundef %10902, i32 noundef %10903, i32 noundef %10904)
  %10905 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10905, ptr %45, align 4, !tbaa !9
  %10906 = load ptr, ptr %5, align 8, !tbaa !5
  %10907 = getelementptr inbounds %struct.w2c_hermes, ptr %10906, i32 0, i32 6
  %10908 = load i32, ptr %45, align 4, !tbaa !9
  %10909 = zext i32 %10908 to i64
  %10910 = add i64 %10909, 5808
  %10911 = call i32 @i32_load(ptr noundef %10907, i64 noundef %10910)
  store i32 %10911, ptr %45, align 4, !tbaa !9
  %10912 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10912, ptr %6, align 4, !tbaa !9
  %10913 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10913, ptr %45, align 4, !tbaa !9
  %10914 = load ptr, ptr %5, align 8, !tbaa !5
  %10915 = getelementptr inbounds %struct.w2c_hermes, ptr %10914, i32 0, i32 6
  %10916 = load i32, ptr %45, align 4, !tbaa !9
  %10917 = zext i32 %10916 to i64
  %10918 = add i64 %10917, 304
  %10919 = call i32 @i32_load(ptr noundef %10915, i64 noundef %10918)
  store i32 %10919, ptr %45, align 4, !tbaa !9
  %10920 = load i32, ptr %45, align 4, !tbaa !9
  %10921 = icmp ne i32 %10920, 0
  br i1 %10921, label %10922, label %10923

10922:                                            ; preds = %10895
  br label %11340

10923:                                            ; preds = %10895
  br label %43136

10924:                                            ; preds = %10141
  %10925 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10925, ptr %45, align 4, !tbaa !9
  %10926 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10926, ptr %46, align 4, !tbaa !9
  %10927 = load ptr, ptr %5, align 8, !tbaa !5
  %10928 = getelementptr inbounds %struct.w2c_hermes, ptr %10927, i32 0, i32 6
  %10929 = load i32, ptr %45, align 4, !tbaa !9
  %10930 = zext i32 %10929 to i64
  %10931 = add i64 %10930, 5808
  %10932 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10928, i64 noundef %10931, i32 noundef %10932)
  %10933 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %10933, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %10934 = load i32, ptr %46, align 4, !tbaa !9
  %10935 = load i32, ptr %45, align 4, !tbaa !9
  %10936 = add i32 %10935, %10934
  store i32 %10936, ptr %45, align 4, !tbaa !9
  %10937 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10937, ptr %14, align 4, !tbaa !9
  %10938 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10938, ptr %45, align 4, !tbaa !9
  %10939 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %10939, ptr %46, align 4, !tbaa !9
  %10940 = load ptr, ptr %5, align 8, !tbaa !5
  %10941 = getelementptr inbounds %struct.w2c_hermes, ptr %10940, i32 0, i32 6
  %10942 = load i32, ptr %46, align 4, !tbaa !9
  %10943 = zext i32 %10942 to i64
  %10944 = add i64 %10943, 2
  %10945 = call i32 @i32_load8_u(ptr noundef %10941, i64 noundef %10944)
  store i32 %10945, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %10946 = load i32, ptr %47, align 4, !tbaa !9
  %10947 = and i32 %10946, 31
  %10948 = load i32, ptr %46, align 4, !tbaa !9
  %10949 = shl i32 %10948, %10947
  store i32 %10949, ptr %46, align 4, !tbaa !9
  %10950 = load i32, ptr %46, align 4, !tbaa !9
  %10951 = load i32, ptr %45, align 4, !tbaa !9
  %10952 = add i32 %10951, %10950
  store i32 %10952, ptr %45, align 4, !tbaa !9
  %10953 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10953, ptr %13, align 4, !tbaa !9
  %10954 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10954, ptr %45, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %10958 = zext i32 %10957 to i64
  %10959 = call i32 @i32_load(ptr noundef %10956, i64 noundef %10958)
  store i32 %10959, ptr %45, align 4, !tbaa !9
  %10960 = load ptr, ptr %5, align 8, !tbaa !5
  %10961 = getelementptr inbounds %struct.w2c_hermes, ptr %10960, i32 0, i32 6
  %10962 = load i32, ptr %45, align 4, !tbaa !9
  %10963 = zext i32 %10962 to i64
  %10964 = add i64 %10963, 12
  %10965 = call i32 @i32_load(ptr noundef %10961, i64 noundef %10964)
  store i32 %10965, ptr %45, align 4, !tbaa !9
  %10966 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %10966, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %10967 = load i32, ptr %47, align 4, !tbaa !9
  %10968 = and i32 %10967, 31
  %10969 = load i32, ptr %46, align 4, !tbaa !9
  %10970 = shl i32 %10969, %10968
  store i32 %10970, ptr %46, align 4, !tbaa !9
  %10971 = load i32, ptr %46, align 4, !tbaa !9
  %10972 = load i32, ptr %45, align 4, !tbaa !9
  %10973 = add i32 %10972, %10971
  store i32 %10973, ptr %45, align 4, !tbaa !9
  %10974 = load ptr, ptr %5, align 8, !tbaa !5
  %10975 = getelementptr inbounds %struct.w2c_hermes, ptr %10974, i32 0, i32 6
  %10976 = load i32, ptr %45, align 4, !tbaa !9
  %10977 = zext i32 %10976 to i64
  %10978 = call i32 @i32_load(ptr noundef %10975, i64 noundef %10977)
  store i32 %10978, ptr %45, align 4, !tbaa !9
  %10979 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10979, ptr %7, align 4, !tbaa !9
  %10980 = load ptr, ptr %5, align 8, !tbaa !5
  %10981 = getelementptr inbounds %struct.w2c_hermes, ptr %10980, i32 0, i32 3
  %10982 = load i32, ptr %10981, align 8, !tbaa !15
  store i32 %10982, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %10983 = load i32, ptr %46, align 4, !tbaa !9
  %10984 = load i32, ptr %45, align 4, !tbaa !9
  %10985 = sub i32 %10984, %10983
  store i32 %10985, ptr %45, align 4, !tbaa !9
  %10986 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %10986, ptr %8, align 4, !tbaa !9
  %10987 = load i32, ptr %45, align 4, !tbaa !9
  %10988 = load ptr, ptr %5, align 8, !tbaa !5
  %10989 = getelementptr inbounds %struct.w2c_hermes, ptr %10988, i32 0, i32 3
  store i32 %10987, ptr %10989, align 8, !tbaa !15
  %10990 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %10990, ptr %45, 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 %45, align 4, !tbaa !9
  %10994 = zext i32 %10993 to i64
  %10995 = call i64 @i64_load(ptr noundef %10992, i64 noundef %10994)
  store i64 %10995, ptr %54, align 8, !tbaa !11
  %10996 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %10996, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %10997 = load i64, ptr %54, align 8, !tbaa !11
  %10998 = load i64, ptr %55, align 8, !tbaa !11
  %10999 = and i64 %10998, 63
  %11000 = ashr i64 %10997, %10999
  store i64 %11000, ptr %54, align 8, !tbaa !11
  %11001 = load i64, ptr %54, align 8, !tbaa !11
  %11002 = trunc i64 %11001 to i32
  store i32 %11002, ptr %45, align 4, !tbaa !9
  store i32 -3, ptr %46, align 4, !tbaa !9
  %11003 = load i32, ptr %45, align 4, !tbaa !9
  %11004 = load i32, ptr %46, align 4, !tbaa !9
  %11005 = icmp ne i32 %11003, %11004
  %11006 = zext i1 %11005 to i32
  store i32 %11006, ptr %45, align 4, !tbaa !9
  %11007 = load i32, ptr %45, align 4, !tbaa !9
  %11008 = icmp ne i32 %11007, 0
  br i1 %11008, label %11009, label %11010

11009:                                            ; preds = %10924
  br label %11065

11010:                                            ; preds = %10924
  %11011 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11011, ptr %45, align 4, !tbaa !9
  store i32 85, ptr %46, align 4, !tbaa !9
  %11012 = load i32, ptr %45, align 4, !tbaa !9
  %11013 = load i32, ptr %46, align 4, !tbaa !9
  %11014 = icmp ne i32 %11012, %11013
  %11015 = zext i1 %11014 to i32
  store i32 %11015, ptr %45, align 4, !tbaa !9
  %11016 = load i32, ptr %45, align 4, !tbaa !9
  %11017 = icmp ne i32 %11016, 0
  br i1 %11017, label %11018, label %11019

11018:                                            ; preds = %11010
  br label %11065

11019:                                            ; preds = %11010
  %11020 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11020, ptr %54, align 8, !tbaa !11
  %11021 = load i64, ptr %54, align 8, !tbaa !11
  %11022 = trunc i64 %11021 to i32
  store i32 %11022, ptr %45, align 4, !tbaa !9
  %11023 = load ptr, ptr %5, align 8, !tbaa !5
  %11024 = getelementptr inbounds %struct.w2c_hermes, ptr %11023, i32 0, i32 6
  %11025 = load i32, ptr %45, align 4, !tbaa !9
  %11026 = zext i32 %11025 to i64
  %11027 = add i64 %11026, 4
  %11028 = call i32 @i32_load(ptr noundef %11024, i64 noundef %11027)
  store i32 %11028, ptr %45, align 4, !tbaa !9
  store i32 2147483647, ptr %46, align 4, !tbaa !9
  %11029 = load i32, ptr %46, align 4, !tbaa !9
  %11030 = load i32, ptr %45, align 4, !tbaa !9
  %11031 = and i32 %11030, %11029
  store i32 %11031, ptr %45, align 4, !tbaa !9
  %11032 = load i32, ptr %45, align 4, !tbaa !9
  %11033 = uitofp i32 %11032 to double
  store double %11033, ptr %60, align 8, !tbaa !13
  %11034 = load double, ptr %60, align 8, !tbaa !13
  store double %11034, ptr %43, align 8, !tbaa !13
  %11035 = load double, ptr %60, align 8, !tbaa !13
  %11036 = call i64 @i64_reinterpret_f64(double noundef %11035)
  store i64 %11036, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %11037 = load i64, ptr %54, align 8, !tbaa !11
  %11038 = load i64, ptr %55, align 8, !tbaa !11
  %11039 = and i64 %11038, 63
  %11040 = ashr i64 %11037, %11039
  store i64 %11040, ptr %54, align 8, !tbaa !11
  %11041 = load i64, ptr %54, align 8, !tbaa !11
  %11042 = trunc i64 %11041 to i32
  store i32 %11042, ptr %45, align 4, !tbaa !9
  store i32 -14, ptr %46, align 4, !tbaa !9
  %11043 = load i32, ptr %45, align 4, !tbaa !9
  %11044 = load i32, ptr %46, align 4, !tbaa !9
  %11045 = icmp eq i32 %11043, %11044
  %11046 = zext i1 %11045 to i32
  store i32 %11046, ptr %45, align 4, !tbaa !9
  %11047 = load i32, ptr %45, align 4, !tbaa !9
  %11048 = icmp ne i32 %11047, 0
  br i1 %11048, label %11049, label %11050

11049:                                            ; preds = %11019
  br label %11065

11050:                                            ; preds = %11019
  %11051 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11051, ptr %45, align 4, !tbaa !9
  %11052 = load double, ptr %43, align 8, !tbaa !13
  store double %11052, ptr %61, align 8, !tbaa !13
  %11053 = load ptr, ptr %5, align 8, !tbaa !5
  %11054 = getelementptr inbounds %struct.w2c_hermes, ptr %11053, i32 0, i32 6
  %11055 = load i32, ptr %45, align 4, !tbaa !9
  %11056 = zext i32 %11055 to i64
  %11057 = add i64 %11056, 8
  %11058 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %11054, i64 noundef %11057, double noundef %11058)
  %11059 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11059, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %11060 = load ptr, ptr %5, align 8, !tbaa !5
  %11061 = getelementptr inbounds %struct.w2c_hermes, ptr %11060, i32 0, i32 6
  %11062 = load i32, ptr %45, align 4, !tbaa !9
  %11063 = zext i32 %11062 to i64
  %11064 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11061, i64 noundef %11063, i32 noundef %11064)
  br label %11309

11065:                                            ; preds = %11049, %11018, %11009
  %11066 = load ptr, ptr %5, align 8, !tbaa !5
  %11067 = getelementptr inbounds %struct.w2c_hermes, ptr %11066, i32 0, i32 3
  %11068 = load i32, ptr %11067, align 8, !tbaa !15
  store i32 %11068, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %11069 = load i32, ptr %46, align 4, !tbaa !9
  %11070 = load i32, ptr %45, align 4, !tbaa !9
  %11071 = sub i32 %11070, %11069
  store i32 %11071, ptr %45, align 4, !tbaa !9
  %11072 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11072, ptr %15, align 4, !tbaa !9
  %11073 = load i32, ptr %45, align 4, !tbaa !9
  %11074 = load ptr, ptr %5, align 8, !tbaa !5
  %11075 = getelementptr inbounds %struct.w2c_hermes, ptr %11074, i32 0, i32 3
  store i32 %11073, ptr %11075, align 8, !tbaa !15
  %11076 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11076, ptr %45, align 4, !tbaa !9
  %11077 = load ptr, ptr %5, align 8, !tbaa !5
  %11078 = getelementptr inbounds %struct.w2c_hermes, ptr %11077, i32 0, i32 6
  %11079 = load i32, ptr %45, align 4, !tbaa !9
  %11080 = zext i32 %11079 to i64
  %11081 = call i64 @i64_load(ptr noundef %11078, i64 noundef %11080)
  store i64 %11081, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %11082 = load i64, ptr %54, align 8, !tbaa !11
  %11083 = load i64, ptr %55, align 8, !tbaa !11
  %11084 = and i64 %11083, 63
  %11085 = ashr i64 %11082, %11084
  store i64 %11085, ptr %54, align 8, !tbaa !11
  %11086 = load i64, ptr %54, align 8, !tbaa !11
  %11087 = trunc i64 %11086 to i32
  store i32 %11087, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %11088 = load i32, ptr %46, align 4, !tbaa !9
  %11089 = load i32, ptr %45, align 4, !tbaa !9
  %11090 = add i32 %11089, %11088
  store i32 %11090, ptr %45, align 4, !tbaa !9
  %11091 = load i32, ptr %45, align 4, !tbaa !9
  switch i32 %11091, label %11102 [
    i32 0, label %11092
    i32 1, label %11093
    i32 2, label %11094
    i32 3, label %11095
    i32 4, label %11096
    i32 5, label %11097
    i32 6, label %11098
    i32 7, label %11099
    i32 8, label %11100
    i32 9, label %11101
  ]

11092:                                            ; preds = %11065
  br label %11103

11093:                                            ; preds = %11065
  br label %11141

11094:                                            ; preds = %11065
  br label %11189

11095:                                            ; preds = %11065
  br label %11194

11096:                                            ; preds = %11065
  br label %11199

11097:                                            ; preds = %11065
  br label %11199

11098:                                            ; preds = %11065
  br label %11179

11099:                                            ; preds = %11065
  br label %11179

11100:                                            ; preds = %11065
  br label %11184

11101:                                            ; preds = %11065
  br label %11184

11102:                                            ; preds = %11065
  br label %11199

11103:                                            ; preds = %11092
  %11104 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11104, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %11105 = load ptr, ptr %5, align 8, !tbaa !5
  %11106 = getelementptr inbounds %struct.w2c_hermes, ptr %11105, i32 0, i32 6
  %11107 = load i32, ptr %45, align 4, !tbaa !9
  %11108 = zext i32 %11107 to i64
  %11109 = add i64 %11108, 40
  %11110 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11106, i64 noundef %11109, i32 noundef %11110)
  %11111 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11111, ptr %45, align 4, !tbaa !9
  store i64 171798691841, ptr %55, align 8, !tbaa !11
  %11112 = load ptr, ptr %5, align 8, !tbaa !5
  %11113 = getelementptr inbounds %struct.w2c_hermes, ptr %11112, i32 0, i32 6
  %11114 = load i32, ptr %45, align 4, !tbaa !9
  %11115 = zext i32 %11114 to i64
  %11116 = add i64 %11115, 32
  %11117 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11113, i64 noundef %11116, i64 noundef %11117)
  %11118 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11118, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %11119 = load ptr, ptr %5, align 8, !tbaa !5
  %11120 = getelementptr inbounds %struct.w2c_hermes, ptr %11119, i32 0, i32 6
  %11121 = load i32, ptr %45, align 4, !tbaa !9
  %11122 = zext i32 %11121 to i64
  %11123 = add i64 %11122, 16
  %11124 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11120, i64 noundef %11123, i32 noundef %11124)
  %11125 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11125, ptr %45, align 4, !tbaa !9
  store i32 31041, ptr %46, align 4, !tbaa !9
  %11126 = load ptr, ptr %5, align 8, !tbaa !5
  %11127 = getelementptr inbounds %struct.w2c_hermes, ptr %11126, i32 0, i32 6
  %11128 = load i32, ptr %45, align 4, !tbaa !9
  %11129 = zext i32 %11128 to i64
  %11130 = add i64 %11129, 8
  %11131 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11127, i64 noundef %11130, i32 noundef %11131)
  %11132 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11132, ptr %45, align 4, !tbaa !9
  %11133 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11133, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %11134 = load i32, ptr %47, align 4, !tbaa !9
  %11135 = load i32, ptr %46, align 4, !tbaa !9
  %11136 = add i32 %11135, %11134
  store i32 %11136, ptr %46, align 4, !tbaa !9
  %11137 = load ptr, ptr %5, align 8, !tbaa !5
  %11138 = load i32, ptr %45, align 4, !tbaa !9
  %11139 = load i32, ptr %46, align 4, !tbaa !9
  %11140 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %11137, i32 noundef %11138, i32 noundef %11139)
  store i32 %11140, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %45, align 4, !tbaa !9
  br label %11204

11141:                                            ; preds = %11093
  %11142 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11142, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %11143 = load ptr, ptr %5, align 8, !tbaa !5
  %11144 = getelementptr inbounds %struct.w2c_hermes, ptr %11143, i32 0, i32 6
  %11145 = load i32, ptr %45, align 4, !tbaa !9
  %11146 = zext i32 %11145 to i64
  %11147 = add i64 %11146, 40
  %11148 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11144, i64 noundef %11147, i32 noundef %11148)
  %11149 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11149, ptr %45, align 4, !tbaa !9
  store i64 150323855361, ptr %55, align 8, !tbaa !11
  %11150 = load ptr, ptr %5, align 8, !tbaa !5
  %11151 = getelementptr inbounds %struct.w2c_hermes, ptr %11150, i32 0, i32 6
  %11152 = load i32, ptr %45, align 4, !tbaa !9
  %11153 = zext i32 %11152 to i64
  %11154 = add i64 %11153, 32
  %11155 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11151, i64 noundef %11154, i64 noundef %11155)
  %11156 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11156, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %11157 = load ptr, ptr %5, align 8, !tbaa !5
  %11158 = getelementptr inbounds %struct.w2c_hermes, ptr %11157, i32 0, i32 6
  %11159 = load i32, ptr %45, align 4, !tbaa !9
  %11160 = zext i32 %11159 to i64
  %11161 = add i64 %11160, 16
  %11162 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11158, i64 noundef %11161, i32 noundef %11162)
  %11163 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11163, ptr %45, align 4, !tbaa !9
  store i32 31005, ptr %46, align 4, !tbaa !9
  %11164 = load ptr, ptr %5, align 8, !tbaa !5
  %11165 = getelementptr inbounds %struct.w2c_hermes, ptr %11164, i32 0, i32 6
  %11166 = load i32, ptr %45, align 4, !tbaa !9
  %11167 = zext i32 %11166 to i64
  %11168 = add i64 %11167, 8
  %11169 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11165, i64 noundef %11168, i32 noundef %11169)
  %11170 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11170, ptr %45, align 4, !tbaa !9
  %11171 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11171, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %11172 = load i32, ptr %47, align 4, !tbaa !9
  %11173 = load i32, ptr %46, align 4, !tbaa !9
  %11174 = add i32 %11173, %11172
  store i32 %11174, ptr %46, align 4, !tbaa !9
  %11175 = load ptr, ptr %5, align 8, !tbaa !5
  %11176 = load i32, ptr %45, align 4, !tbaa !9
  %11177 = load i32, ptr %46, align 4, !tbaa !9
  %11178 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %11175, i32 noundef %11176, i32 noundef %11177)
  store i32 %11178, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %45, align 4, !tbaa !9
  br label %11204

11179:                                            ; preds = %11099, %11098
  %11180 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11180, ptr %45, align 4, !tbaa !9
  store i32 208, ptr %46, align 4, !tbaa !9
  %11181 = load i32, ptr %46, align 4, !tbaa !9
  %11182 = load i32, ptr %45, align 4, !tbaa !9
  %11183 = add i32 %11182, %11181
  store i32 %11183, ptr %45, align 4, !tbaa !9
  br label %11204

11184:                                            ; preds = %11101, %11100
  %11185 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11185, ptr %45, align 4, !tbaa !9
  store i32 216, ptr %46, align 4, !tbaa !9
  %11186 = load i32, ptr %46, align 4, !tbaa !9
  %11187 = load i32, ptr %45, align 4, !tbaa !9
  %11188 = add i32 %11187, %11186
  store i32 %11188, ptr %45, align 4, !tbaa !9
  br label %11204

11189:                                            ; preds = %11094
  %11190 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11190, ptr %45, align 4, !tbaa !9
  store i32 232, ptr %46, align 4, !tbaa !9
  %11191 = load i32, ptr %46, align 4, !tbaa !9
  %11192 = load i32, ptr %45, align 4, !tbaa !9
  %11193 = add i32 %11192, %11191
  store i32 %11193, ptr %45, align 4, !tbaa !9
  br label %11204

11194:                                            ; preds = %11095
  %11195 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11195, ptr %45, align 4, !tbaa !9
  store i32 240, ptr %46, align 4, !tbaa !9
  %11196 = load i32, ptr %46, align 4, !tbaa !9
  %11197 = load i32, ptr %45, align 4, !tbaa !9
  %11198 = add i32 %11197, %11196
  store i32 %11198, ptr %45, align 4, !tbaa !9
  br label %11204

11199:                                            ; preds = %11102, %11097, %11096
  %11200 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11200, ptr %45, align 4, !tbaa !9
  store i32 224, ptr %46, align 4, !tbaa !9
  %11201 = load i32, ptr %46, align 4, !tbaa !9
  %11202 = load i32, ptr %45, align 4, !tbaa !9
  %11203 = add i32 %11202, %11201
  store i32 %11203, ptr %45, align 4, !tbaa !9
  br label %11204

11204:                                            ; preds = %11199, %11194, %11189, %11184, %11179, %11141, %11103
  %11205 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11205, ptr %6, align 4, !tbaa !9
  %11206 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %11206, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %11207 = load i32, ptr %46, align 4, !tbaa !9
  %11208 = load i32, ptr %45, align 4, !tbaa !9
  %11209 = add i32 %11208, %11207
  store i32 %11209, ptr %45, align 4, !tbaa !9
  %11210 = load i32, ptr %45, align 4, !tbaa !9
  %11211 = load ptr, ptr %5, align 8, !tbaa !5
  %11212 = getelementptr inbounds %struct.w2c_hermes, ptr %11211, i32 0, i32 3
  store i32 %11210, ptr %11212, align 8, !tbaa !15
  %11213 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11213, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %11214 = load i32, ptr %45, align 4, !tbaa !9
  %11215 = load i32, ptr %46, align 4, !tbaa !9
  %11216 = icmp eq i32 %11214, %11215
  %11217 = zext i1 %11216 to i32
  store i32 %11217, ptr %45, align 4, !tbaa !9
  %11218 = load i32, ptr %45, align 4, !tbaa !9
  %11219 = icmp ne i32 %11218, 0
  br i1 %11219, label %11220, label %11277

11220:                                            ; preds = %11204
  %11221 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11221, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %11222 = load ptr, ptr %5, align 8, !tbaa !5
  %11223 = getelementptr inbounds %struct.w2c_hermes, ptr %11222, i32 0, i32 6
  %11224 = load i32, ptr %45, align 4, !tbaa !9
  %11225 = zext i32 %11224 to i64
  %11226 = add i64 %11225, 28
  %11227 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11223, i64 noundef %11226, i32 noundef %11227)
  %11228 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11228, ptr %45, align 4, !tbaa !9
  store i32 55430, ptr %46, align 4, !tbaa !9
  %11229 = load ptr, ptr %5, align 8, !tbaa !5
  %11230 = getelementptr inbounds %struct.w2c_hermes, ptr %11229, i32 0, i32 6
  %11231 = load i32, ptr %45, align 4, !tbaa !9
  %11232 = zext i32 %11231 to i64
  %11233 = add i64 %11232, 24
  %11234 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11230, i64 noundef %11233, i32 noundef %11234)
  %11235 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11235, ptr %45, align 4, !tbaa !9
  %11236 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11236, ptr %46, align 4, !tbaa !9
  %11237 = load ptr, ptr %5, align 8, !tbaa !5
  %11238 = getelementptr inbounds %struct.w2c_hermes, ptr %11237, i32 0, i32 6
  %11239 = load i32, ptr %46, align 4, !tbaa !9
  %11240 = zext i32 %11239 to i64
  %11241 = add i64 %11240, 24
  %11242 = call i64 @i64_load(ptr noundef %11238, i64 noundef %11241)
  store i64 %11242, ptr %55, align 8, !tbaa !11
  %11243 = load ptr, ptr %5, align 8, !tbaa !5
  %11244 = getelementptr inbounds %struct.w2c_hermes, ptr %11243, i32 0, i32 6
  %11245 = load i32, ptr %45, align 4, !tbaa !9
  %11246 = zext i32 %11245 to i64
  %11247 = add i64 %11246, 8
  %11248 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11244, i64 noundef %11247, i64 noundef %11248)
  %11249 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11249, ptr %45, align 4, !tbaa !9
  %11250 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11250, ptr %46, align 4, !tbaa !9
  %11251 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11251, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %11252 = load i32, ptr %48, align 4, !tbaa !9
  %11253 = load i32, ptr %47, align 4, !tbaa !9
  %11254 = add i32 %11253, %11252
  store i32 %11254, ptr %47, align 4, !tbaa !9
  %11255 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11255, ptr %48, align 4, !tbaa !9
  %11256 = load ptr, ptr %5, align 8, !tbaa !5
  %11257 = load i32, ptr %45, align 4, !tbaa !9
  %11258 = load i32, ptr %46, align 4, !tbaa !9
  %11259 = load i32, ptr %47, align 4, !tbaa !9
  %11260 = load i32, ptr %48, align 4, !tbaa !9
  %11261 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AamendPropAccessErrorMsgWithPropName0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x29(ptr noundef %11256, i32 noundef %11257, i32 noundef %11258, i32 noundef %11259, i32 noundef %11260)
  store i32 %11261, ptr %45, align 4, !tbaa !9
  %11262 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11262, ptr %6, align 4, !tbaa !9
  %11263 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11263, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %11264 = load ptr, ptr %5, align 8, !tbaa !5
  %11265 = getelementptr inbounds %struct.w2c_hermes, ptr %11264, i32 0, i32 6
  %11266 = load i32, ptr %45, align 4, !tbaa !9
  %11267 = zext i32 %11266 to i64
  %11268 = add i64 %11267, 8
  %11269 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11265, i64 noundef %11268, i64 noundef %11269)
  %11270 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11270, ptr %45, align 4, !tbaa !9
  %11271 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11271, ptr %46, align 4, !tbaa !9
  %11272 = load ptr, ptr %5, align 8, !tbaa !5
  %11273 = getelementptr inbounds %struct.w2c_hermes, ptr %11272, i32 0, i32 6
  %11274 = load i32, ptr %45, align 4, !tbaa !9
  %11275 = zext i32 %11274 to i64
  %11276 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11273, i64 noundef %11275, i32 noundef %11276)
  br label %11309

11277:                                            ; preds = %11204
  %11278 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11278, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %11279 = load ptr, ptr %5, align 8, !tbaa !5
  %11280 = getelementptr inbounds %struct.w2c_hermes, ptr %11279, i32 0, i32 6
  %11281 = load i32, ptr %45, align 4, !tbaa !9
  %11282 = zext i32 %11281 to i64
  %11283 = add i64 %11282, 16
  %11284 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11280, i64 noundef %11283, i32 noundef %11284)
  %11285 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11285, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %11286 = load ptr, ptr %5, align 8, !tbaa !5
  %11287 = getelementptr inbounds %struct.w2c_hermes, ptr %11286, i32 0, i32 6
  %11288 = load i32, ptr %45, align 4, !tbaa !9
  %11289 = zext i32 %11288 to i64
  %11290 = add i64 %11289, 20
  %11291 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11287, i64 noundef %11290, i32 noundef %11291)
  %11292 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11292, ptr %45, align 4, !tbaa !9
  %11293 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11293, ptr %46, align 4, !tbaa !9
  %11294 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11294, ptr %47, align 4, !tbaa !9
  %11295 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11295, ptr %48, align 4, !tbaa !9
  %11296 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11296, ptr %49, align 4, !tbaa !9
  %11297 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11297, ptr %50, align 4, !tbaa !9
  store i32 16, ptr %51, align 4, !tbaa !9
  %11298 = load i32, ptr %51, align 4, !tbaa !9
  %11299 = load i32, ptr %50, align 4, !tbaa !9
  %11300 = add i32 %11299, %11298
  store i32 %11300, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %11301 = load ptr, ptr %5, align 8, !tbaa !5
  %11302 = load i32, ptr %45, align 4, !tbaa !9
  %11303 = load i32, ptr %46, align 4, !tbaa !9
  %11304 = load i32, ptr %47, align 4, !tbaa !9
  %11305 = load i32, ptr %48, align 4, !tbaa !9
  %11306 = load i32, ptr %49, align 4, !tbaa !9
  %11307 = load i32, ptr %50, align 4, !tbaa !9
  %11308 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %11301, i32 noundef %11302, i32 noundef %11303, i32 noundef %11304, i32 noundef %11305, i32 noundef %11306, i32 noundef %11307, i32 noundef %11308)
  br label %11309

11309:                                            ; preds = %11277, %11220, %11050
  %11310 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11310, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %11311 = load i32, ptr %46, align 4, !tbaa !9
  %11312 = load i32, ptr %45, align 4, !tbaa !9
  %11313 = add i32 %11312, %11311
  store i32 %11313, ptr %45, align 4, !tbaa !9
  %11314 = load i32, ptr %45, align 4, !tbaa !9
  %11315 = load ptr, ptr %5, align 8, !tbaa !5
  %11316 = getelementptr inbounds %struct.w2c_hermes, ptr %11315, i32 0, i32 3
  store i32 %11314, ptr %11316, align 8, !tbaa !15
  %11317 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11317, ptr %45, align 4, !tbaa !9
  %11318 = load ptr, ptr %5, align 8, !tbaa !5
  %11319 = getelementptr inbounds %struct.w2c_hermes, ptr %11318, i32 0, i32 6
  %11320 = load i32, ptr %45, align 4, !tbaa !9
  %11321 = zext i32 %11320 to i64
  %11322 = add i64 %11321, 5808
  %11323 = call i32 @i32_load(ptr noundef %11319, i64 noundef %11322)
  store i32 %11323, ptr %45, align 4, !tbaa !9
  %11324 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11324, ptr %6, align 4, !tbaa !9
  %11325 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11325, ptr %45, align 4, !tbaa !9
  %11326 = load ptr, ptr %5, align 8, !tbaa !5
  %11327 = getelementptr inbounds %struct.w2c_hermes, ptr %11326, i32 0, i32 6
  %11328 = load i32, ptr %45, align 4, !tbaa !9
  %11329 = zext i32 %11328 to i64
  %11330 = add i64 %11329, 304
  %11331 = call i32 @i32_load(ptr noundef %11327, i64 noundef %11330)
  store i32 %11331, ptr %45, align 4, !tbaa !9
  %11332 = load i32, ptr %45, align 4, !tbaa !9
  %11333 = icmp ne i32 %11332, 0
  %11334 = xor i1 %11333, true
  %11335 = zext i1 %11334 to i32
  store i32 %11335, ptr %45, align 4, !tbaa !9
  %11336 = load i32, ptr %45, align 4, !tbaa !9
  %11337 = icmp ne i32 %11336, 0
  br i1 %11337, label %11338, label %11339

11338:                                            ; preds = %11309
  br label %43136

11339:                                            ; preds = %11309
  br label %11340

11340:                                            ; preds = %11339, %10922
  %11341 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11341, ptr %45, align 4, !tbaa !9
  %11342 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11342, ptr %46, align 4, !tbaa !9
  %11343 = load ptr, ptr %5, align 8, !tbaa !5
  %11344 = getelementptr inbounds %struct.w2c_hermes, ptr %11343, i32 0, i32 6
  %11345 = load i32, ptr %46, align 4, !tbaa !9
  %11346 = zext i32 %11345 to i64
  %11347 = add i64 %11346, 1
  %11348 = call i32 @i32_load8_u(ptr noundef %11344, i64 noundef %11347)
  store i32 %11348, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %11349 = load i32, ptr %47, align 4, !tbaa !9
  %11350 = and i32 %11349, 31
  %11351 = load i32, ptr %46, align 4, !tbaa !9
  %11352 = shl i32 %11351, %11350
  store i32 %11352, ptr %46, align 4, !tbaa !9
  %11353 = load i32, ptr %46, align 4, !tbaa !9
  %11354 = load i32, ptr %45, align 4, !tbaa !9
  %11355 = add i32 %11354, %11353
  store i32 %11355, ptr %45, align 4, !tbaa !9
  %11356 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11356, ptr %46, align 4, !tbaa !9
  %11357 = load ptr, ptr %5, align 8, !tbaa !5
  %11358 = getelementptr inbounds %struct.w2c_hermes, ptr %11357, i32 0, i32 6
  %11359 = load i32, ptr %46, align 4, !tbaa !9
  %11360 = zext i32 %11359 to i64
  %11361 = add i64 %11360, 312
  %11362 = call i64 @i64_load(ptr noundef %11358, i64 noundef %11361)
  store i64 %11362, ptr %55, align 8, !tbaa !11
  %11363 = load ptr, ptr %5, align 8, !tbaa !5
  %11364 = getelementptr inbounds %struct.w2c_hermes, ptr %11363, i32 0, i32 6
  %11365 = load i32, ptr %45, align 4, !tbaa !9
  %11366 = zext i32 %11365 to i64
  %11367 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11364, i64 noundef %11366, i64 noundef %11367)
  %11368 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11368, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, 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 %45, align 4, !tbaa !9
  %11372 = zext i32 %11371 to i64
  %11373 = add i64 %11372, 516
  %11374 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11370, i64 noundef %11373, i32 noundef %11374)
  %11375 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11375, ptr %45, align 4, !tbaa !9
  %11376 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11376, ptr %46, align 4, !tbaa !9
  %11377 = load ptr, ptr %5, align 8, !tbaa !5
  %11378 = getelementptr inbounds %struct.w2c_hermes, ptr %11377, i32 0, i32 6
  %11379 = load i32, ptr %45, align 4, !tbaa !9
  %11380 = zext i32 %11379 to i64
  %11381 = add i64 %11380, 512
  %11382 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11378, i64 noundef %11381, i32 noundef %11382)
  %11383 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11383, ptr %45, align 4, !tbaa !9
  %11384 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %11384, ptr %46, align 4, !tbaa !9
  %11385 = load ptr, ptr %5, align 8, !tbaa !5
  %11386 = getelementptr inbounds %struct.w2c_hermes, ptr %11385, i32 0, i32 6
  %11387 = load i32, ptr %45, align 4, !tbaa !9
  %11388 = zext i32 %11387 to i64
  %11389 = add i64 %11388, 508
  %11390 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11386, i64 noundef %11389, i32 noundef %11390)
  %11391 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11391, ptr %45, align 4, !tbaa !9
  %11392 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11392, ptr %6, align 4, !tbaa !9
  br label %2945

11393:                                            ; preds = %3025
  %11394 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11394, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %11395 = load i32, ptr %46, align 4, !tbaa !9
  %11396 = load i32, ptr %45, align 4, !tbaa !9
  %11397 = add i32 %11396, %11395
  store i32 %11397, ptr %45, align 4, !tbaa !9
  %11398 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11398, ptr %7, align 4, !tbaa !9
  %11399 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11399, ptr %45, align 4, !tbaa !9
  %11400 = load ptr, ptr %5, align 8, !tbaa !5
  %11401 = getelementptr inbounds %struct.w2c_hermes, ptr %11400, i32 0, i32 6
  %11402 = load i32, ptr %45, align 4, !tbaa !9
  %11403 = zext i32 %11402 to i64
  %11404 = add i64 %11403, 4
  %11405 = call i32 @i32_load(ptr noundef %11401, i64 noundef %11404)
  store i32 %11405, ptr %45, align 4, !tbaa !9
  %11406 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11406, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %11449

11407:                                            ; preds = %3026
  %11408 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11408, ptr %45, align 4, !tbaa !9
  %11409 = load ptr, ptr %5, align 8, !tbaa !5
  %11410 = getelementptr inbounds %struct.w2c_hermes, ptr %11409, i32 0, i32 6
  %11411 = load i32, ptr %45, align 4, !tbaa !9
  %11412 = zext i32 %11411 to i64
  %11413 = add i64 %11412, 4
  %11414 = call i32 @i32_load(ptr noundef %11410, i64 noundef %11413)
  store i32 %11414, ptr %45, align 4, !tbaa !9
  %11415 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11415, ptr %8, align 4, !tbaa !9
  %11416 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11416, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %11417 = load i32, ptr %46, align 4, !tbaa !9
  %11418 = load i32, ptr %45, align 4, !tbaa !9
  %11419 = add i32 %11418, %11417
  store i32 %11419, ptr %45, align 4, !tbaa !9
  br label %11447

11420:                                            ; preds = %3027
  %11421 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11421, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %11422 = load i32, ptr %46, align 4, !tbaa !9
  %11423 = load i32, ptr %45, align 4, !tbaa !9
  %11424 = add i32 %11423, %11422
  store i32 %11424, ptr %45, align 4, !tbaa !9
  %11425 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11425, ptr %7, align 4, !tbaa !9
  %11426 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11426, ptr %45, align 4, !tbaa !9
  %11427 = load ptr, ptr %5, align 8, !tbaa !5
  %11428 = getelementptr inbounds %struct.w2c_hermes, ptr %11427, i32 0, i32 6
  %11429 = load i32, ptr %45, align 4, !tbaa !9
  %11430 = zext i32 %11429 to i64
  %11431 = add i64 %11430, 4
  %11432 = call i32 @i32_load16_u(ptr noundef %11428, i64 noundef %11431)
  store i32 %11432, ptr %45, align 4, !tbaa !9
  %11433 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11433, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %11449

11434:                                            ; preds = %3028
  %11435 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11435, ptr %45, align 4, !tbaa !9
  %11436 = load ptr, ptr %5, align 8, !tbaa !5
  %11437 = getelementptr inbounds %struct.w2c_hermes, ptr %11436, i32 0, i32 6
  %11438 = load i32, ptr %45, align 4, !tbaa !9
  %11439 = zext i32 %11438 to i64
  %11440 = add i64 %11439, 4
  %11441 = call i32 @i32_load16_u(ptr noundef %11437, i64 noundef %11440)
  store i32 %11441, ptr %45, align 4, !tbaa !9
  %11442 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11442, ptr %8, align 4, !tbaa !9
  %11443 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11443, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %11444 = load i32, ptr %46, align 4, !tbaa !9
  %11445 = load i32, ptr %45, align 4, !tbaa !9
  %11446 = add i32 %11445, %11444
  store i32 %11446, ptr %45, align 4, !tbaa !9
  br label %11447

11447:                                            ; preds = %11434, %11407
  %11448 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11448, ptr %7, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %11449

11449:                                            ; preds = %11447, %11420, %11393
  %11450 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11450, ptr %18, align 4, !tbaa !9
  %11451 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11451, ptr %45, align 4, !tbaa !9
  %11452 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11452, ptr %46, align 4, !tbaa !9
  %11453 = load ptr, ptr %5, align 8, !tbaa !5
  %11454 = getelementptr inbounds %struct.w2c_hermes, ptr %11453, i32 0, i32 6
  %11455 = load i32, ptr %46, align 4, !tbaa !9
  %11456 = zext i32 %11455 to i64
  %11457 = add i64 %11456, 1
  %11458 = call i32 @i32_load8_u(ptr noundef %11454, i64 noundef %11457)
  store i32 %11458, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %11459 = load i32, ptr %47, align 4, !tbaa !9
  %11460 = and i32 %11459, 31
  %11461 = load i32, ptr %46, align 4, !tbaa !9
  %11462 = shl i32 %11461, %11460
  store i32 %11462, ptr %46, align 4, !tbaa !9
  %11463 = load i32, ptr %46, align 4, !tbaa !9
  %11464 = load i32, ptr %45, align 4, !tbaa !9
  %11465 = add i32 %11464, %11463
  store i32 %11465, ptr %45, align 4, !tbaa !9
  %11466 = load ptr, ptr %5, align 8, !tbaa !5
  %11467 = getelementptr inbounds %struct.w2c_hermes, ptr %11466, i32 0, i32 6
  %11468 = load i32, ptr %45, align 4, !tbaa !9
  %11469 = zext i32 %11468 to i64
  %11470 = add i64 %11469, 6
  %11471 = call i32 @i32_load16_s(ptr noundef %11467, i64 noundef %11470)
  store i32 %11471, ptr %45, align 4, !tbaa !9
  %11472 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11472, ptr %12, align 4, !tbaa !9
  %11473 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11473, ptr %45, align 4, !tbaa !9
  %11474 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11474, ptr %46, align 4, !tbaa !9
  %11475 = load ptr, ptr %5, align 8, !tbaa !5
  %11476 = getelementptr inbounds %struct.w2c_hermes, ptr %11475, i32 0, i32 6
  %11477 = load i32, ptr %45, align 4, !tbaa !9
  %11478 = zext i32 %11477 to i64
  %11479 = add i64 %11478, 5808
  %11480 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11476, i64 noundef %11479, i32 noundef %11480)
  %11481 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11481, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %11482 = load i32, ptr %45, align 4, !tbaa !9
  %11483 = load i32, ptr %46, align 4, !tbaa !9
  %11484 = icmp eq i32 %11482, %11483
  %11485 = zext i1 %11484 to i32
  store i32 %11485, ptr %45, align 4, !tbaa !9
  %11486 = load i32, ptr %45, align 4, !tbaa !9
  %11487 = icmp ne i32 %11486, 0
  br i1 %11487, label %11488, label %12175

11488:                                            ; preds = %11449
  store i32 7, ptr %45, align 4, !tbaa !9
  %11489 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11489, ptr %12, align 4, !tbaa !9
  %11490 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11490, ptr %45, align 4, !tbaa !9
  %11491 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11491, ptr %46, align 4, !tbaa !9
  %11492 = load ptr, ptr %5, align 8, !tbaa !5
  %11493 = getelementptr inbounds %struct.w2c_hermes, ptr %11492, i32 0, i32 6
  %11494 = load i32, ptr %46, align 4, !tbaa !9
  %11495 = zext i32 %11494 to i64
  %11496 = add i64 %11495, 2
  %11497 = call i32 @i32_load8_u(ptr noundef %11493, i64 noundef %11496)
  store i32 %11497, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %11498 = load i32, ptr %47, align 4, !tbaa !9
  %11499 = and i32 %11498, 31
  %11500 = load i32, ptr %46, align 4, !tbaa !9
  %11501 = shl i32 %11500, %11499
  store i32 %11501, ptr %46, align 4, !tbaa !9
  %11502 = load i32, ptr %46, align 4, !tbaa !9
  %11503 = load i32, ptr %45, align 4, !tbaa !9
  %11504 = add i32 %11503, %11502
  store i32 %11504, ptr %45, align 4, !tbaa !9
  %11505 = load ptr, ptr %5, align 8, !tbaa !5
  %11506 = getelementptr inbounds %struct.w2c_hermes, ptr %11505, i32 0, i32 6
  %11507 = load i32, ptr %45, align 4, !tbaa !9
  %11508 = zext i32 %11507 to i64
  %11509 = call i64 @i64_load(ptr noundef %11506, i64 noundef %11508)
  store i64 %11509, ptr %54, align 8, !tbaa !11
  %11510 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %11510, ptr %39, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %11511 = load i64, ptr %54, align 8, !tbaa !11
  %11512 = load i64, ptr %55, align 8, !tbaa !11
  %11513 = and i64 %11512, 63
  %11514 = ashr i64 %11511, %11513
  store i64 %11514, ptr %54, align 8, !tbaa !11
  %11515 = load i64, ptr %54, align 8, !tbaa !11
  %11516 = trunc i64 %11515 to i32
  store i32 %11516, ptr %45, align 4, !tbaa !9
  store i32 14, ptr %46, align 4, !tbaa !9
  %11517 = load i32, ptr %46, align 4, !tbaa !9
  %11518 = load i32, ptr %45, align 4, !tbaa !9
  %11519 = add i32 %11518, %11517
  store i32 %11519, ptr %45, align 4, !tbaa !9
  %11520 = load i32, ptr %45, align 4, !tbaa !9
  switch i32 %11520, label %11535 [
    i32 0, label %11521
    i32 1, label %11522
    i32 2, label %11523
    i32 3, label %11524
    i32 4, label %11525
    i32 5, label %11526
    i32 6, label %11527
    i32 7, label %11528
    i32 8, label %11529
    i32 9, label %11530
    i32 10, label %11531
    i32 11, label %11532
    i32 12, label %11533
    i32 13, label %11534
  ]

11521:                                            ; preds = %11488
  br label %11741

11522:                                            ; preds = %11488
  br label %11591

11523:                                            ; preds = %11488
  br label %11536

11524:                                            ; preds = %11488
  br label %11538

11525:                                            ; preds = %11488
  br label %11540

11526:                                            ; preds = %11488
  br label %11558

11527:                                            ; preds = %11488
  br label %11591

11528:                                            ; preds = %11488
  br label %11591

11529:                                            ; preds = %11488
  br label %11570

11530:                                            ; preds = %11488
  br label %11570

11531:                                            ; preds = %11488
  br label %11578

11532:                                            ; preds = %11488
  br label %11578

11533:                                            ; preds = %11488
  br label %11586

11534:                                            ; preds = %11488
  br label %11586

11535:                                            ; preds = %11488
  br label %11591

11536:                                            ; preds = %11523
  store i32 14, ptr %45, align 4, !tbaa !9
  %11537 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11537, ptr %12, align 4, !tbaa !9
  br label %11741

11538:                                            ; preds = %11524
  store i32 15, ptr %45, align 4, !tbaa !9
  %11539 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11539, ptr %12, align 4, !tbaa !9
  br label %11741

11540:                                            ; preds = %11525
  store i32 6, ptr %45, align 4, !tbaa !9
  store i32 22, ptr %46, align 4, !tbaa !9
  %11541 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11541, ptr %56, align 8, !tbaa !11
  store i64 1, ptr %57, align 8, !tbaa !11
  %11542 = load i64, ptr %57, align 8, !tbaa !11
  %11543 = load i64, ptr %56, align 8, !tbaa !11
  %11544 = and i64 %11543, %11542
  store i64 %11544, ptr %56, align 8, !tbaa !11
  %11545 = load i64, ptr %56, align 8, !tbaa !11
  %11546 = icmp ne i64 %11545, 0
  %11547 = xor i1 %11546, true
  %11548 = zext i1 %11547 to i32
  store i32 %11548, ptr %47, align 4, !tbaa !9
  %11549 = load i32, ptr %47, align 4, !tbaa !9
  %11550 = icmp ne i32 %11549, 0
  br i1 %11550, label %11551, label %11553

11551:                                            ; preds = %11540
  %11552 = load i32, ptr %45, align 4, !tbaa !9
  br label %11555

11553:                                            ; preds = %11540
  %11554 = load i32, ptr %46, align 4, !tbaa !9
  br label %11555

11555:                                            ; preds = %11553, %11551
  %11556 = phi i32 [ %11552, %11551 ], [ %11554, %11553 ]
  store i32 %11556, ptr %45, align 4, !tbaa !9
  %11557 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11557, ptr %12, align 4, !tbaa !9
  br label %11741

11558:                                            ; preds = %11526
  %11559 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11559, ptr %54, align 8, !tbaa !11
  %11560 = load i64, ptr %54, align 8, !tbaa !11
  %11561 = trunc i64 %11560 to i32
  store i32 %11561, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %11562 = load i32, ptr %46, align 4, !tbaa !9
  %11563 = and i32 %11562, 31
  %11564 = load i32, ptr %45, align 4, !tbaa !9
  %11565 = shl i32 %11564, %11563
  store i32 %11565, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %11566 = load i32, ptr %46, align 4, !tbaa !9
  %11567 = load i32, ptr %45, align 4, !tbaa !9
  %11568 = or i32 %11567, %11566
  store i32 %11568, ptr %45, align 4, !tbaa !9
  %11569 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11569, ptr %12, align 4, !tbaa !9
  br label %11741

11570:                                            ; preds = %11530, %11529
  %11571 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11571, ptr %54, align 8, !tbaa !11
  %11572 = load i64, ptr %54, align 8, !tbaa !11
  %11573 = trunc i64 %11572 to i32
  store i32 %11573, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %11574 = load i32, ptr %46, align 4, !tbaa !9
  %11575 = load i32, ptr %45, align 4, !tbaa !9
  %11576 = or i32 %11575, %11574
  store i32 %11576, ptr %45, align 4, !tbaa !9
  %11577 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11577, ptr %12, align 4, !tbaa !9
  br label %11741

11578:                                            ; preds = %11532, %11531
  %11579 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11579, ptr %54, align 8, !tbaa !11
  %11580 = load i64, ptr %54, align 8, !tbaa !11
  %11581 = trunc i64 %11580 to i32
  store i32 %11581, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %11582 = load i32, ptr %46, align 4, !tbaa !9
  %11583 = load i32, ptr %45, align 4, !tbaa !9
  %11584 = or i32 %11583, %11582
  store i32 %11584, ptr %45, align 4, !tbaa !9
  %11585 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11585, ptr %12, align 4, !tbaa !9
  br label %11741

11586:                                            ; preds = %11534, %11533
  %11587 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11587, ptr %54, align 8, !tbaa !11
  %11588 = load i64, ptr %54, align 8, !tbaa !11
  %11589 = trunc i64 %11588 to i32
  store i32 %11589, ptr %45, align 4, !tbaa !9
  %11590 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11590, ptr %12, align 4, !tbaa !9
  br label %11741

11591:                                            ; preds = %11535, %11528, %11527, %11522
  %11592 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11592, ptr %54, align 8, !tbaa !11
  %11593 = load i64, ptr %54, align 8, !tbaa !11
  %11594 = call double @f64_reinterpret_i64(i64 noundef %11593)
  store double %11594, ptr %60, align 8, !tbaa !13
  %11595 = load double, ptr %60, align 8, !tbaa !13
  store double %11595, ptr %43, align 8, !tbaa !13
  %11596 = load double, ptr %60, align 8, !tbaa !13
  %11597 = call double @wasm_fabs(double noundef %11596)
  store double %11597, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %11598 = load double, ptr %60, align 8, !tbaa !13
  %11599 = load double, ptr %61, align 8, !tbaa !13
  %11600 = fcmp olt double %11598, %11599
  %11601 = zext i1 %11600 to i32
  store i32 %11601, ptr %45, align 4, !tbaa !9
  %11602 = load i32, ptr %45, align 4, !tbaa !9
  %11603 = icmp ne i32 %11602, 0
  br i1 %11603, label %11604, label %11641

11604:                                            ; preds = %11591
  %11605 = load double, ptr %43, align 8, !tbaa !13
  store double %11605, ptr %60, align 8, !tbaa !13
  %11606 = load double, ptr %60, align 8, !tbaa !13
  %11607 = load double, ptr %60, align 8, !tbaa !13
  %11608 = fcmp une double %11606, %11607
  %11609 = xor i1 %11608, true
  %11610 = xor i1 %11609, true
  %11611 = zext i1 %11610 to i32
  %11612 = sext i32 %11611 to i64
  %11613 = call i64 @llvm.expect.i64(i64 %11612, i64 0)
  %11614 = icmp ne i64 %11613, 0
  br i1 %11614, label %11615, label %11617

11615:                                            ; preds = %11604
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

11616:                                            ; No predecessors!
  br label %11639

11617:                                            ; preds = %11604
  %11618 = load double, ptr %60, align 8, !tbaa !13
  %11619 = fcmp ogt double %11618, 0xC1E0000000200000
  br i1 %11619, label %11620, label %11623

11620:                                            ; preds = %11617
  %11621 = load double, ptr %60, align 8, !tbaa !13
  %11622 = fcmp olt double %11621, 0x41E0000000000000
  br label %11623

11623:                                            ; preds = %11620, %11617
  %11624 = phi i1 [ false, %11617 ], [ %11622, %11620 ]
  %11625 = xor i1 %11624, true
  %11626 = xor i1 %11625, true
  %11627 = xor i1 %11626, true
  %11628 = zext i1 %11627 to i32
  %11629 = sext i32 %11628 to i64
  %11630 = call i64 @llvm.expect.i64(i64 %11629, i64 0)
  %11631 = icmp ne i64 %11630, 0
  br i1 %11631, label %11632, label %11634

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

11633:                                            ; No predecessors!
  br label %11637

11634:                                            ; preds = %11623
  %11635 = load double, ptr %60, align 8, !tbaa !13
  %11636 = fptosi double %11635 to i32
  br label %11637

11637:                                            ; preds = %11634, %11633
  %11638 = phi i32 [ 0, %11633 ], [ %11636, %11634 ]
  br label %11639

11639:                                            ; preds = %11637, %11616
  %11640 = phi i32 [ 0, %11616 ], [ %11638, %11637 ]
  store i32 %11640, ptr %45, align 4, !tbaa !9
  br label %11642

11641:                                            ; preds = %11591
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %11642

11642:                                            ; preds = %11641, %11639
  store i32 3, ptr %46, align 4, !tbaa !9
  %11643 = load i32, ptr %46, align 4, !tbaa !9
  %11644 = and i32 %11643, 31
  %11645 = load i32, ptr %45, align 4, !tbaa !9
  %11646 = shl i32 %11645, %11644
  store i32 %11646, ptr %45, align 4, !tbaa !9
  %11647 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11647, ptr %12, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %11648 = load i32, ptr %45, align 4, !tbaa !9
  %11649 = load i32, ptr %46, align 4, !tbaa !9
  %11650 = and i32 %11649, 31
  %11651 = ashr i32 %11648, %11650
  store i32 %11651, ptr %45, align 4, !tbaa !9
  %11652 = load i32, ptr %45, align 4, !tbaa !9
  %11653 = sitofp i32 %11652 to double
  store double %11653, ptr %60, align 8, !tbaa !13
  %11654 = load double, ptr %60, align 8, !tbaa !13
  %11655 = call i64 @i64_reinterpret_f64(double noundef %11654)
  store i64 %11655, ptr %54, align 8, !tbaa !11
  %11656 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11656, ptr %55, align 8, !tbaa !11
  %11657 = load i64, ptr %54, align 8, !tbaa !11
  %11658 = load i64, ptr %55, align 8, !tbaa !11
  %11659 = icmp eq i64 %11657, %11658
  %11660 = zext i1 %11659 to i32
  store i32 %11660, ptr %45, align 4, !tbaa !9
  %11661 = load i32, ptr %45, align 4, !tbaa !9
  %11662 = icmp ne i32 %11661, 0
  br i1 %11662, label %11663, label %11669

11663:                                            ; preds = %11642
  %11664 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11664, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %11665 = load i32, ptr %46, align 4, !tbaa !9
  %11666 = load i32, ptr %45, align 4, !tbaa !9
  %11667 = or i32 %11666, %11665
  store i32 %11667, ptr %45, align 4, !tbaa !9
  %11668 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11668, ptr %12, align 4, !tbaa !9
  br label %11741

11669:                                            ; preds = %11642
  %11670 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11670, ptr %45, align 4, !tbaa !9
  %11671 = load ptr, ptr %5, align 8, !tbaa !5
  %11672 = getelementptr inbounds %struct.w2c_hermes, ptr %11671, i32 0, i32 6
  %11673 = load i32, ptr %45, align 4, !tbaa !9
  %11674 = zext i32 %11673 to i64
  %11675 = add i64 %11674, 1368
  %11676 = call i32 @i32_load(ptr noundef %11672, i64 noundef %11675)
  store i32 %11676, ptr %45, align 4, !tbaa !9
  %11677 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11677, ptr %46, align 4, !tbaa !9
  %11678 = load ptr, ptr %5, align 8, !tbaa !5
  %11679 = getelementptr inbounds %struct.w2c_hermes, ptr %11678, i32 0, i32 6
  %11680 = load i32, ptr %46, align 4, !tbaa !9
  %11681 = zext i32 %11680 to i64
  %11682 = add i64 %11681, 1364
  %11683 = call i32 @i32_load(ptr noundef %11679, i64 noundef %11682)
  store i32 %11683, ptr %46, align 4, !tbaa !9
  %11684 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %11684, ptr %6, align 4, !tbaa !9
  %11685 = load i32, ptr %46, align 4, !tbaa !9
  %11686 = load i32, ptr %45, align 4, !tbaa !9
  %11687 = sub i32 %11686, %11685
  store i32 %11687, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %11688 = load i32, ptr %45, align 4, !tbaa !9
  %11689 = load i32, ptr %46, align 4, !tbaa !9
  %11690 = icmp ule i32 %11688, %11689
  %11691 = zext i1 %11690 to i32
  store i32 %11691, ptr %45, align 4, !tbaa !9
  %11692 = load i32, ptr %45, align 4, !tbaa !9
  %11693 = icmp ne i32 %11692, 0
  br i1 %11693, label %11694, label %11701

11694:                                            ; preds = %11669
  %11695 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %11695, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %11696 = load ptr, ptr %5, align 8, !tbaa !5
  %11697 = load i32, ptr %45, align 4, !tbaa !9
  %11698 = load i32, ptr %46, align 4, !tbaa !9
  %11699 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %11696, i32 noundef %11697, i32 noundef %11698)
  store i32 %11699, ptr %45, align 4, !tbaa !9
  %11700 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11700, ptr %6, align 4, !tbaa !9
  br label %11713

11701:                                            ; preds = %11669
  %11702 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11702, ptr %45, align 4, !tbaa !9
  %11703 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11703, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %11704 = load i32, ptr %47, align 4, !tbaa !9
  %11705 = load i32, ptr %46, align 4, !tbaa !9
  %11706 = add i32 %11705, %11704
  store i32 %11706, ptr %46, align 4, !tbaa !9
  %11707 = load ptr, ptr %5, align 8, !tbaa !5
  %11708 = getelementptr inbounds %struct.w2c_hermes, ptr %11707, i32 0, i32 6
  %11709 = load i32, ptr %45, align 4, !tbaa !9
  %11710 = zext i32 %11709 to i64
  %11711 = add i64 %11710, 1364
  %11712 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11708, i64 noundef %11711, i32 noundef %11712)
  br label %11713

11713:                                            ; preds = %11701, %11694
  %11714 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11714, ptr %45, align 4, !tbaa !9
  store i32 402653200, ptr %46, align 4, !tbaa !9
  %11715 = load ptr, ptr %5, align 8, !tbaa !5
  %11716 = getelementptr inbounds %struct.w2c_hermes, ptr %11715, i32 0, i32 6
  %11717 = load i32, ptr %45, align 4, !tbaa !9
  %11718 = zext i32 %11717 to i64
  %11719 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11716, i64 noundef %11718, i32 noundef %11719)
  %11720 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11720, ptr %45, align 4, !tbaa !9
  %11721 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %11721, ptr %55, align 8, !tbaa !11
  %11722 = load ptr, ptr %5, align 8, !tbaa !5
  %11723 = getelementptr inbounds %struct.w2c_hermes, ptr %11722, i32 0, i32 6
  %11724 = load i32, ptr %45, align 4, !tbaa !9
  %11725 = zext i32 %11724 to i64
  %11726 = add i64 %11725, 8
  %11727 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11723, i64 noundef %11726, i64 noundef %11727)
  %11728 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11728, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %11729 = load i32, ptr %46, align 4, !tbaa !9
  %11730 = load i32, ptr %45, align 4, !tbaa !9
  %11731 = or i32 %11730, %11729
  store i32 %11731, ptr %45, align 4, !tbaa !9
  %11732 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11732, ptr %12, align 4, !tbaa !9
  %11733 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11733, ptr %45, align 4, !tbaa !9
  %11734 = load ptr, ptr %5, align 8, !tbaa !5
  %11735 = getelementptr inbounds %struct.w2c_hermes, ptr %11734, i32 0, i32 6
  %11736 = load i32, ptr %45, align 4, !tbaa !9
  %11737 = zext i32 %11736 to i64
  %11738 = add i64 %11737, 5808
  %11739 = call i32 @i32_load(ptr noundef %11735, i64 noundef %11738)
  store i32 %11739, ptr %45, align 4, !tbaa !9
  %11740 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11740, ptr %6, align 4, !tbaa !9
  br label %11741

11741:                                            ; preds = %11713, %11663, %11586, %11578, %11570, %11558, %11555, %11538, %11536, %11521
  %11742 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %11742, ptr %45, align 4, !tbaa !9
  %11743 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11743, ptr %46, align 4, !tbaa !9
  %11744 = load ptr, ptr %5, align 8, !tbaa !5
  %11745 = getelementptr inbounds %struct.w2c_hermes, ptr %11744, i32 0, i32 6
  %11746 = load i32, ptr %46, align 4, !tbaa !9
  %11747 = zext i32 %11746 to i64
  %11748 = add i64 %11747, 1
  %11749 = call i32 @i32_load8_u(ptr noundef %11745, i64 noundef %11748)
  store i32 %11749, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %11750 = load i32, ptr %47, align 4, !tbaa !9
  %11751 = and i32 %11750, 31
  %11752 = load i32, ptr %46, align 4, !tbaa !9
  %11753 = shl i32 %11752, %11751
  store i32 %11753, ptr %46, align 4, !tbaa !9
  %11754 = load i32, ptr %46, align 4, !tbaa !9
  %11755 = load i32, ptr %45, align 4, !tbaa !9
  %11756 = add i32 %11755, %11754
  store i32 %11756, ptr %45, align 4, !tbaa !9
  %11757 = load ptr, ptr %5, align 8, !tbaa !5
  %11758 = getelementptr inbounds %struct.w2c_hermes, ptr %11757, i32 0, i32 6
  %11759 = load i32, ptr %45, align 4, !tbaa !9
  %11760 = zext i32 %11759 to i64
  %11761 = call i32 @i32_load(ptr noundef %11758, i64 noundef %11760)
  store i32 %11761, ptr %45, align 4, !tbaa !9
  %11762 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11762, ptr %17, align 4, !tbaa !9
  %11763 = load ptr, ptr %5, align 8, !tbaa !5
  %11764 = getelementptr inbounds %struct.w2c_hermes, ptr %11763, i32 0, i32 6
  %11765 = load i32, ptr %45, align 4, !tbaa !9
  %11766 = zext i32 %11765 to i64
  %11767 = add i64 %11766, 12
  %11768 = call i32 @i32_load(ptr noundef %11764, i64 noundef %11767)
  store i32 %11768, ptr %45, align 4, !tbaa !9
  %11769 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11769, ptr %23, align 4, !tbaa !9
  %11770 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11770, ptr %46, align 4, !tbaa !9
  store i32 24, ptr %47, align 4, !tbaa !9
  %11771 = load i32, ptr %47, align 4, !tbaa !9
  %11772 = load i32, ptr %46, align 4, !tbaa !9
  %11773 = add i32 %11772, %11771
  store i32 %11773, ptr %46, align 4, !tbaa !9
  %11774 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %11774, ptr %15, align 4, !tbaa !9
  %11775 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11775, ptr %47, align 4, !tbaa !9
  %11776 = load ptr, ptr %5, align 8, !tbaa !5
  %11777 = getelementptr inbounds %struct.w2c_hermes, ptr %11776, i32 0, i32 6
  %11778 = load i32, ptr %47, align 4, !tbaa !9
  %11779 = zext i32 %11778 to i64
  %11780 = add i64 %11779, 3
  %11781 = call i32 @i32_load8_u(ptr noundef %11777, i64 noundef %11780)
  store i32 %11781, ptr %47, align 4, !tbaa !9
  %11782 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %11782, ptr %14, align 4, !tbaa !9
  %11783 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11783, ptr %48, 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, 20
  %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
  %11791 = load i32, ptr %47, align 4, !tbaa !9
  %11792 = add i32 %11791, %11790
  store i32 %11792, ptr %47, align 4, !tbaa !9
  %11793 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %11793, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %11794 = load i32, ptr %48, align 4, !tbaa !9
  %11795 = and i32 %11794, 31
  %11796 = load i32, ptr %47, align 4, !tbaa !9
  %11797 = shl i32 %11796, %11795
  store i32 %11797, ptr %47, align 4, !tbaa !9
  %11798 = load i32, ptr %47, align 4, !tbaa !9
  %11799 = load i32, ptr %46, align 4, !tbaa !9
  %11800 = add i32 %11799, %11798
  store i32 %11800, ptr %46, align 4, !tbaa !9
  %11801 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %11801, ptr %25, align 4, !tbaa !9
  %11802 = load ptr, ptr %5, align 8, !tbaa !5
  %11803 = getelementptr inbounds %struct.w2c_hermes, ptr %11802, i32 0, i32 6
  %11804 = load i32, ptr %46, align 4, !tbaa !9
  %11805 = zext i32 %11804 to i64
  %11806 = call i32 @i32_load(ptr noundef %11803, i64 noundef %11805)
  store i32 %11806, ptr %46, align 4, !tbaa !9
  %11807 = load i32, ptr %45, align 4, !tbaa !9
  %11808 = load i32, ptr %46, align 4, !tbaa !9
  %11809 = icmp eq i32 %11807, %11808
  %11810 = zext i1 %11809 to i32
  store i32 %11810, ptr %45, align 4, !tbaa !9
  %11811 = load i32, ptr %45, align 4, !tbaa !9
  %11812 = icmp ne i32 %11811, 0
  br i1 %11812, label %11813, label %11916

11813:                                            ; preds = %11741
  %11814 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %11814, ptr %45, align 4, !tbaa !9
  %11815 = load ptr, ptr %5, align 8, !tbaa !5
  %11816 = getelementptr inbounds %struct.w2c_hermes, ptr %11815, i32 0, i32 6
  %11817 = load i32, ptr %45, align 4, !tbaa !9
  %11818 = zext i32 %11817 to i64
  %11819 = add i64 %11818, 4
  %11820 = call i32 @i32_load(ptr noundef %11816, i64 noundef %11819)
  store i32 %11820, ptr %45, align 4, !tbaa !9
  %11821 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11821, ptr %6, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %11822 = load i32, ptr %45, align 4, !tbaa !9
  %11823 = load i32, ptr %46, align 4, !tbaa !9
  %11824 = icmp ule i32 %11822, %11823
  %11825 = zext i1 %11824 to i32
  store i32 %11825, ptr %45, align 4, !tbaa !9
  %11826 = load i32, ptr %45, align 4, !tbaa !9
  %11827 = icmp ne i32 %11826, 0
  br i1 %11827, label %11828, label %11860

11828:                                            ; preds = %11813
  %11829 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11829, ptr %45, align 4, !tbaa !9
  %11830 = load ptr, ptr %5, align 8, !tbaa !5
  %11831 = getelementptr inbounds %struct.w2c_hermes, ptr %11830, i32 0, i32 6
  %11832 = load i32, ptr %45, align 4, !tbaa !9
  %11833 = zext i32 %11832 to i64
  %11834 = add i64 %11833, 1356
  %11835 = call i32 @i32_load(ptr noundef %11831, i64 noundef %11834)
  store i32 %11835, ptr %45, align 4, !tbaa !9
  %11836 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11836, ptr %46, align 4, !tbaa !9
  %11837 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11837, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %11838 = load i32, ptr %48, align 4, !tbaa !9
  %11839 = and i32 %11838, 31
  %11840 = load i32, ptr %47, align 4, !tbaa !9
  %11841 = shl i32 %11840, %11839
  store i32 %11841, ptr %47, align 4, !tbaa !9
  %11842 = load i32, ptr %47, align 4, !tbaa !9
  %11843 = load i32, ptr %46, align 4, !tbaa !9
  %11844 = add i32 %11843, %11842
  store i32 %11844, ptr %46, align 4, !tbaa !9
  store i32 20, ptr %47, align 4, !tbaa !9
  %11845 = load i32, ptr %47, align 4, !tbaa !9
  %11846 = load i32, ptr %46, align 4, !tbaa !9
  %11847 = add i32 %11846, %11845
  store i32 %11847, ptr %46, align 4, !tbaa !9
  %11848 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %11848, ptr %6, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %11849 = load i32, ptr %47, align 4, !tbaa !9
  %11850 = load i32, ptr %46, align 4, !tbaa !9
  %11851 = and i32 %11850, %11849
  store i32 %11851, ptr %46, align 4, !tbaa !9
  %11852 = load i32, ptr %45, align 4, !tbaa !9
  %11853 = load i32, ptr %46, align 4, !tbaa !9
  %11854 = icmp ne i32 %11852, %11853
  %11855 = zext i1 %11854 to i32
  store i32 %11855, ptr %45, align 4, !tbaa !9
  %11856 = load i32, ptr %45, align 4, !tbaa !9
  %11857 = icmp ne i32 %11856, 0
  br i1 %11857, label %11858, label %11859

11858:                                            ; preds = %11828
  br label %11898

11859:                                            ; preds = %11828
  br label %11906

11860:                                            ; preds = %11813
  %11861 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11861, ptr %45, align 4, !tbaa !9
  %11862 = load ptr, ptr %5, align 8, !tbaa !5
  %11863 = getelementptr inbounds %struct.w2c_hermes, ptr %11862, i32 0, i32 6
  %11864 = load i32, ptr %45, align 4, !tbaa !9
  %11865 = zext i32 %11864 to i64
  %11866 = add i64 %11865, 1356
  %11867 = call i32 @i32_load(ptr noundef %11863, i64 noundef %11866)
  store i32 %11867, ptr %45, align 4, !tbaa !9
  %11868 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11868, ptr %46, align 4, !tbaa !9
  %11869 = load ptr, ptr %5, align 8, !tbaa !5
  %11870 = getelementptr inbounds %struct.w2c_hermes, ptr %11869, i32 0, i32 6
  %11871 = load i32, ptr %46, align 4, !tbaa !9
  %11872 = zext i32 %11871 to i64
  %11873 = add i64 %11872, 16
  %11874 = call i32 @i32_load(ptr noundef %11870, i64 noundef %11873)
  store i32 %11874, ptr %46, align 4, !tbaa !9
  %11875 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11875, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %11876 = load i32, ptr %48, align 4, !tbaa !9
  %11877 = and i32 %11876, 31
  %11878 = load i32, ptr %47, align 4, !tbaa !9
  %11879 = shl i32 %11878, %11877
  store i32 %11879, ptr %47, align 4, !tbaa !9
  %11880 = load i32, ptr %47, align 4, !tbaa !9
  %11881 = load i32, ptr %46, align 4, !tbaa !9
  %11882 = add i32 %11881, %11880
  store i32 %11882, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %11883 = load i32, ptr %47, align 4, !tbaa !9
  %11884 = load i32, ptr %46, align 4, !tbaa !9
  %11885 = sub i32 %11884, %11883
  store i32 %11885, ptr %46, align 4, !tbaa !9
  %11886 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %11886, ptr %6, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %11887 = load i32, ptr %47, align 4, !tbaa !9
  %11888 = load i32, ptr %46, align 4, !tbaa !9
  %11889 = and i32 %11888, %11887
  store i32 %11889, ptr %46, align 4, !tbaa !9
  %11890 = load i32, ptr %45, align 4, !tbaa !9
  %11891 = load i32, ptr %46, align 4, !tbaa !9
  %11892 = icmp eq i32 %11890, %11891
  %11893 = zext i1 %11892 to i32
  store i32 %11893, ptr %45, align 4, !tbaa !9
  %11894 = load i32, ptr %45, align 4, !tbaa !9
  %11895 = icmp ne i32 %11894, 0
  br i1 %11895, label %11896, label %11897

11896:                                            ; preds = %11860
  br label %11906

11897:                                            ; preds = %11860
  br label %11898

11898:                                            ; preds = %11897, %11858
  %11899 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %11899, ptr %45, align 4, !tbaa !9
  %11900 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11900, ptr %46, align 4, !tbaa !9
  %11901 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11901, ptr %47, align 4, !tbaa !9
  %11902 = load ptr, ptr %5, align 8, !tbaa !5
  %11903 = load i32, ptr %45, align 4, !tbaa !9
  %11904 = load i32, ptr %46, align 4, !tbaa !9
  %11905 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef %11902, i32 noundef %11903, i32 noundef %11904, i32 noundef %11905)
  br label %11906

11906:                                            ; preds = %11898, %11896, %11859
  %11907 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11907, ptr %45, align 4, !tbaa !9
  %11908 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %11908, ptr %46, align 4, !tbaa !9
  %11909 = load ptr, ptr %5, align 8, !tbaa !5
  %11910 = getelementptr inbounds %struct.w2c_hermes, ptr %11909, i32 0, i32 6
  %11911 = load i32, ptr %45, align 4, !tbaa !9
  %11912 = zext i32 %11911 to i64
  %11913 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11910, i64 noundef %11912, i32 noundef %11913)
  %11914 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %11914, ptr %45, align 4, !tbaa !9
  %11915 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11915, ptr %6, align 4, !tbaa !9
  br label %2945

11916:                                            ; preds = %11741
  %11917 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11917, ptr %45, align 4, !tbaa !9
  %11918 = load ptr, ptr %5, align 8, !tbaa !5
  %11919 = getelementptr inbounds %struct.w2c_hermes, ptr %11918, i32 0, i32 6
  %11920 = load i32, ptr %45, align 4, !tbaa !9
  %11921 = zext i32 %11920 to i64
  %11922 = call i32 @i32_load(ptr noundef %11919, i64 noundef %11921)
  store i32 %11922, ptr %45, align 4, !tbaa !9
  %11923 = load ptr, ptr %5, align 8, !tbaa !5
  %11924 = getelementptr inbounds %struct.w2c_hermes, ptr %11923, i32 0, i32 6
  %11925 = load i32, ptr %45, align 4, !tbaa !9
  %11926 = zext i32 %11925 to i64
  %11927 = add i64 %11926, 12
  %11928 = call i32 @i32_load(ptr noundef %11924, i64 noundef %11927)
  store i32 %11928, ptr %45, align 4, !tbaa !9
  %11929 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %11929, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %11930 = load i32, ptr %47, align 4, !tbaa !9
  %11931 = and i32 %11930, 31
  %11932 = load i32, ptr %46, align 4, !tbaa !9
  %11933 = shl i32 %11932, %11931
  store i32 %11933, ptr %46, align 4, !tbaa !9
  %11934 = load i32, ptr %46, align 4, !tbaa !9
  %11935 = load i32, ptr %45, align 4, !tbaa !9
  %11936 = add i32 %11935, %11934
  store i32 %11936, ptr %45, align 4, !tbaa !9
  %11937 = load ptr, ptr %5, align 8, !tbaa !5
  %11938 = getelementptr inbounds %struct.w2c_hermes, ptr %11937, i32 0, i32 6
  %11939 = load i32, ptr %45, align 4, !tbaa !9
  %11940 = zext i32 %11939 to i64
  %11941 = call i32 @i32_load(ptr noundef %11938, i64 noundef %11940)
  store i32 %11941, ptr %45, align 4, !tbaa !9
  %11942 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11942, ptr %16, align 4, !tbaa !9
  %11943 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11943, ptr %45, align 4, !tbaa !9
  store i64 -4294967296, ptr %55, align 8, !tbaa !11
  %11944 = load ptr, ptr %5, align 8, !tbaa !5
  %11945 = getelementptr inbounds %struct.w2c_hermes, ptr %11944, i32 0, i32 6
  %11946 = load i32, ptr %45, align 4, !tbaa !9
  %11947 = zext i32 %11946 to i64
  %11948 = add i64 %11947, 264
  %11949 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11945, i64 noundef %11948, i64 noundef %11949)
  %11950 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11950, ptr %45, align 4, !tbaa !9
  %11951 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %11951, ptr %46, align 4, !tbaa !9
  %11952 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11952, ptr %47, align 4, !tbaa !9
  store i32 264, ptr %48, align 4, !tbaa !9
  %11953 = load i32, ptr %48, align 4, !tbaa !9
  %11954 = load i32, ptr %47, align 4, !tbaa !9
  %11955 = add i32 %11954, %11953
  store i32 %11955, ptr %47, align 4, !tbaa !9
  %11956 = load ptr, ptr %5, align 8, !tbaa !5
  %11957 = load i32, ptr %45, align 4, !tbaa !9
  %11958 = load i32, ptr %46, align 4, !tbaa !9
  %11959 = load i32, ptr %47, align 4, !tbaa !9
  %11960 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AtryGetOwnNamedDescriptorFast0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %11956, i32 noundef %11957, i32 noundef %11958, i32 noundef %11959)
  store i32 %11960, ptr %45, align 4, !tbaa !9
  %11961 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11961, ptr %6, align 4, !tbaa !9
  %11962 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11962, ptr %45, align 4, !tbaa !9
  %11963 = load ptr, ptr %5, align 8, !tbaa !5
  %11964 = getelementptr inbounds %struct.w2c_hermes, ptr %11963, i32 0, i32 6
  %11965 = load i32, ptr %45, align 4, !tbaa !9
  %11966 = zext i32 %11965 to i64
  %11967 = add i64 %11966, 5808
  %11968 = call i32 @i32_load(ptr noundef %11964, i64 noundef %11967)
  store i32 %11968, ptr %45, align 4, !tbaa !9
  %11969 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %11969, ptr %8, align 4, !tbaa !9
  %11970 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %11970, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %11971 = load i32, ptr %45, align 4, !tbaa !9
  %11972 = load i32, ptr %46, align 4, !tbaa !9
  %11973 = icmp sle i32 %11971, %11972
  %11974 = zext i1 %11973 to i32
  store i32 %11974, ptr %45, align 4, !tbaa !9
  %11975 = load i32, ptr %45, align 4, !tbaa !9
  %11976 = icmp ne i32 %11975, 0
  br i1 %11976, label %11977, label %11978

11977:                                            ; preds = %11916
  br label %12071

11978:                                            ; preds = %11916
  %11979 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %11979, ptr %45, align 4, !tbaa !9
  %11980 = load ptr, ptr %5, align 8, !tbaa !5
  %11981 = getelementptr inbounds %struct.w2c_hermes, ptr %11980, i32 0, i32 6
  %11982 = load i32, ptr %45, align 4, !tbaa !9
  %11983 = zext i32 %11982 to i64
  %11984 = add i64 %11983, 264
  %11985 = call i32 @i32_load16_u(ptr noundef %11981, i64 noundef %11984)
  store i32 %11985, ptr %45, align 4, !tbaa !9
  store i32 84, ptr %46, align 4, !tbaa !9
  %11986 = load i32, ptr %46, align 4, !tbaa !9
  %11987 = load i32, ptr %45, align 4, !tbaa !9
  %11988 = and i32 %11987, %11986
  store i32 %11988, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %11989 = load i32, ptr %45, align 4, !tbaa !9
  %11990 = load i32, ptr %46, align 4, !tbaa !9
  %11991 = icmp ne i32 %11989, %11990
  %11992 = zext i1 %11991 to i32
  store i32 %11992, ptr %45, align 4, !tbaa !9
  %11993 = load i32, ptr %45, align 4, !tbaa !9
  %11994 = icmp ne i32 %11993, 0
  br i1 %11994, label %11995, label %11996

11995:                                            ; preds = %11978
  br label %12071

11996:                                            ; preds = %11978
  %11997 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11997, ptr %45, align 4, !tbaa !9
  %11998 = load i32, ptr %45, align 4, !tbaa !9
  %11999 = icmp ne i32 %11998, 0
  br i1 %11999, label %12000, label %12019

12000:                                            ; preds = %11996
  %12001 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12001, ptr %45, align 4, !tbaa !9
  %12002 = load ptr, ptr %5, align 8, !tbaa !5
  %12003 = getelementptr inbounds %struct.w2c_hermes, ptr %12002, i32 0, i32 6
  %12004 = load i32, ptr %45, align 4, !tbaa !9
  %12005 = zext i32 %12004 to i64
  %12006 = add i64 %12005, 10
  %12007 = call i32 @i32_load8_u(ptr noundef %12003, i64 noundef %12006)
  store i32 %12007, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %12008 = load i32, ptr %46, align 4, !tbaa !9
  %12009 = load i32, ptr %45, align 4, !tbaa !9
  %12010 = and i32 %12009, %12008
  store i32 %12010, ptr %45, align 4, !tbaa !9
  %12011 = load i32, ptr %45, align 4, !tbaa !9
  %12012 = icmp ne i32 %12011, 0
  %12013 = xor i1 %12012, true
  %12014 = zext i1 %12013 to i32
  store i32 %12014, ptr %45, align 4, !tbaa !9
  %12015 = load i32, ptr %45, align 4, !tbaa !9
  %12016 = icmp ne i32 %12015, 0
  br i1 %12016, label %12017, label %12018

12017:                                            ; preds = %12000
  br label %12028

12018:                                            ; preds = %12000
  br label %12019

12019:                                            ; preds = %12018, %11996
  %12020 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12020, ptr %45, align 4, !tbaa !9
  %12021 = load ptr, ptr %5, align 8, !tbaa !5
  %12022 = getelementptr inbounds %struct.w2c_hermes, ptr %12021, i32 0, i32 6
  %12023 = load i32, ptr %45, align 4, !tbaa !9
  %12024 = zext i32 %12023 to i64
  %12025 = add i64 %12024, 268
  %12026 = call i32 @i32_load(ptr noundef %12022, i64 noundef %12025)
  store i32 %12026, ptr %45, align 4, !tbaa !9
  %12027 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12027, ptr %8, align 4, !tbaa !9
  br label %12059

12028:                                            ; preds = %12017
  %12029 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12029, ptr %45, align 4, !tbaa !9
  %12030 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12030, ptr %46, align 4, !tbaa !9
  %12031 = load ptr, ptr %5, align 8, !tbaa !5
  %12032 = getelementptr inbounds %struct.w2c_hermes, ptr %12031, i32 0, i32 6
  %12033 = load i32, ptr %45, align 4, !tbaa !9
  %12034 = zext i32 %12033 to i64
  %12035 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12032, i64 noundef %12034, i32 noundef %12035)
  %12036 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12036, ptr %45, align 4, !tbaa !9
  %12037 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12037, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %12038 = load i32, ptr %47, align 4, !tbaa !9
  %12039 = and i32 %12038, 31
  %12040 = load i32, ptr %46, align 4, !tbaa !9
  %12041 = shl i32 %12040, %12039
  store i32 %12041, ptr %46, align 4, !tbaa !9
  %12042 = load i32, ptr %46, align 4, !tbaa !9
  %12043 = load i32, ptr %45, align 4, !tbaa !9
  %12044 = add i32 %12043, %12042
  store i32 %12044, ptr %45, align 4, !tbaa !9
  %12045 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12045, ptr %46, align 4, !tbaa !9
  %12046 = load ptr, ptr %5, align 8, !tbaa !5
  %12047 = getelementptr inbounds %struct.w2c_hermes, ptr %12046, i32 0, i32 6
  %12048 = load i32, ptr %46, align 4, !tbaa !9
  %12049 = zext i32 %12048 to i64
  %12050 = add i64 %12049, 268
  %12051 = call i32 @i32_load(ptr noundef %12047, i64 noundef %12050)
  store i32 %12051, ptr %46, align 4, !tbaa !9
  %12052 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12052, ptr %8, align 4, !tbaa !9
  %12053 = load ptr, ptr %5, align 8, !tbaa !5
  %12054 = getelementptr inbounds %struct.w2c_hermes, ptr %12053, i32 0, i32 6
  %12055 = load i32, ptr %45, align 4, !tbaa !9
  %12056 = zext i32 %12055 to i64
  %12057 = add i64 %12056, 4
  %12058 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12054, i64 noundef %12057, i32 noundef %12058)
  br label %12059

12059:                                            ; preds = %12028, %12019
  %12060 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12060, ptr %45, align 4, !tbaa !9
  %12061 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12061, ptr %46, align 4, !tbaa !9
  %12062 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12062, ptr %47, align 4, !tbaa !9
  %12063 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12063, ptr %48, align 4, !tbaa !9
  %12064 = load ptr, ptr %5, align 8, !tbaa !5
  %12065 = load i32, ptr %45, align 4, !tbaa !9
  %12066 = load i32, ptr %46, align 4, !tbaa !9
  %12067 = load i32, ptr %47, align 4, !tbaa !9
  %12068 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_void0x20hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AsetNamedSlotValueUnsafe0x3C0x28hermes0x3A0x3Avm0x3A0x3AArrayStorageBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x3A0x3AInline0x2900x3E0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef %12064, i32 noundef %12065, i32 noundef %12066, i32 noundef %12067, i32 noundef %12068)
  %12069 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12069, ptr %45, align 4, !tbaa !9
  %12070 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12070, ptr %6, align 4, !tbaa !9
  br label %2945

12071:                                            ; preds = %11995, %11977
  %12072 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12072, ptr %45, align 4, !tbaa !9
  %12073 = load ptr, ptr %5, align 8, !tbaa !5
  %12074 = getelementptr inbounds %struct.w2c_hermes, ptr %12073, i32 0, i32 6
  %12075 = load i32, ptr %45, align 4, !tbaa !9
  %12076 = zext i32 %12075 to i64
  %12077 = add i64 %12076, 1
  %12078 = call i32 @i32_load8_u(ptr noundef %12074, i64 noundef %12077)
  store i32 %12078, ptr %45, align 4, !tbaa !9
  %12079 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12079, ptr %12, align 4, !tbaa !9
  %12080 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12080, ptr %45, align 4, !tbaa !9
  %12081 = load ptr, ptr %5, align 8, !tbaa !5
  %12082 = getelementptr inbounds %struct.w2c_hermes, ptr %12081, i32 0, i32 6
  %12083 = load i32, ptr %45, align 4, !tbaa !9
  %12084 = zext i32 %12083 to i64
  %12085 = add i64 %12084, 2
  %12086 = call i32 @i32_load8_u(ptr noundef %12082, i64 noundef %12085)
  store i32 %12086, ptr %45, align 4, !tbaa !9
  %12087 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12087, ptr %8, align 4, !tbaa !9
  %12088 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12088, ptr %45, align 4, !tbaa !9
  %12089 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %12089, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %12090 = load i32, ptr %47, align 4, !tbaa !9
  %12091 = load i32, ptr %46, align 4, !tbaa !9
  %12092 = or i32 %12091, %12090
  store i32 %12092, ptr %46, align 4, !tbaa !9
  %12093 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %12093, ptr %47, align 4, !tbaa !9
  %12094 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12094, ptr %48, align 4, !tbaa !9
  %12095 = load i32, ptr %48, align 4, !tbaa !9
  %12096 = icmp ne i32 %12095, 0
  br i1 %12096, label %12097, label %12099

12097:                                            ; preds = %12071
  %12098 = load i32, ptr %46, align 4, !tbaa !9
  br label %12101

12099:                                            ; preds = %12071
  %12100 = load i32, ptr %47, align 4, !tbaa !9
  br label %12101

12101:                                            ; preds = %12099, %12097
  %12102 = phi i32 [ %12098, %12097 ], [ %12100, %12099 ]
  store i32 %12102, ptr %46, align 4, !tbaa !9
  %12103 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12103, ptr %6, align 4, !tbaa !9
  %12104 = load ptr, ptr %5, align 8, !tbaa !5
  %12105 = getelementptr inbounds %struct.w2c_hermes, ptr %12104, i32 0, i32 6
  %12106 = load i32, ptr %45, align 4, !tbaa !9
  %12107 = zext i32 %12106 to i64
  %12108 = add i64 %12107, 36
  %12109 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12105, i64 noundef %12108, i32 noundef %12109)
  %12110 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12110, ptr %45, align 4, !tbaa !9
  %12111 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12111, ptr %46, align 4, !tbaa !9
  %12112 = load ptr, ptr %5, align 8, !tbaa !5
  %12113 = getelementptr inbounds %struct.w2c_hermes, ptr %12112, i32 0, i32 6
  %12114 = load i32, ptr %45, align 4, !tbaa !9
  %12115 = zext i32 %12114 to i64
  %12116 = add i64 %12115, 304
  %12117 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12113, i64 noundef %12116, i32 noundef %12117)
  %12118 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12118, ptr %45, align 4, !tbaa !9
  store i32 260, ptr %46, align 4, !tbaa !9
  %12119 = load i32, ptr %46, align 4, !tbaa !9
  %12120 = load i32, ptr %45, align 4, !tbaa !9
  %12121 = add i32 %12120, %12119
  store i32 %12121, ptr %45, align 4, !tbaa !9
  %12122 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12122, ptr %46, align 4, !tbaa !9
  %12123 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12123, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %12124 = load i32, ptr %48, align 4, !tbaa !9
  %12125 = and i32 %12124, 31
  %12126 = load i32, ptr %47, align 4, !tbaa !9
  %12127 = shl i32 %12126, %12125
  store i32 %12127, ptr %47, align 4, !tbaa !9
  %12128 = load i32, ptr %47, align 4, !tbaa !9
  %12129 = load i32, ptr %46, align 4, !tbaa !9
  %12130 = add i32 %12129, %12128
  store i32 %12130, ptr %46, align 4, !tbaa !9
  %12131 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12131, ptr %6, align 4, !tbaa !9
  %12132 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12132, ptr %47, align 4, !tbaa !9
  %12133 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12133, ptr %48, align 4, !tbaa !9
  %12134 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12134, ptr %49, align 4, !tbaa !9
  %12135 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12135, ptr %50, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %12136 = load i32, ptr %51, align 4, !tbaa !9
  %12137 = and i32 %12136, 31
  %12138 = load i32, ptr %50, align 4, !tbaa !9
  %12139 = shl i32 %12138, %12137
  store i32 %12139, ptr %50, align 4, !tbaa !9
  %12140 = load i32, ptr %50, align 4, !tbaa !9
  %12141 = load i32, ptr %49, align 4, !tbaa !9
  %12142 = add i32 %12141, %12140
  store i32 %12142, ptr %49, align 4, !tbaa !9
  %12143 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12143, ptr %50, align 4, !tbaa !9
  %12144 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12144, ptr %51, align 4, !tbaa !9
  store i32 36, ptr %52, align 4, !tbaa !9
  %12145 = load i32, ptr %52, align 4, !tbaa !9
  %12146 = load i32, ptr %51, align 4, !tbaa !9
  %12147 = add i32 %12146, %12145
  store i32 %12147, ptr %51, align 4, !tbaa !9
  %12148 = load ptr, ptr %5, align 8, !tbaa !5
  %12149 = load i32, ptr %45, align 4, !tbaa !9
  %12150 = load i32, ptr %46, align 4, !tbaa !9
  %12151 = load i32, ptr %47, align 4, !tbaa !9
  %12152 = load i32, ptr %48, align 4, !tbaa !9
  %12153 = load i32, ptr %49, align 4, !tbaa !9
  %12154 = load i32, ptr %50, align 4, !tbaa !9
  %12155 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %12148, i32 noundef %12149, i32 noundef %12150, i32 noundef %12151, i32 noundef %12152, i32 noundef %12153, i32 noundef %12154, i32 noundef %12155)
  %12156 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12156, ptr %45, align 4, !tbaa !9
  %12157 = load ptr, ptr %5, align 8, !tbaa !5
  %12158 = getelementptr inbounds %struct.w2c_hermes, ptr %12157, i32 0, i32 6
  %12159 = load i32, ptr %45, align 4, !tbaa !9
  %12160 = zext i32 %12159 to i64
  %12161 = add i64 %12160, 260
  %12162 = call i32 @i32_load8_u(ptr noundef %12158, i64 noundef %12161)
  store i32 %12162, ptr %45, align 4, !tbaa !9
  %12163 = load i32, ptr %45, align 4, !tbaa !9
  %12164 = icmp ne i32 %12163, 0
  br i1 %12164, label %12165, label %12166

12165:                                            ; preds = %12101
  br label %12252

12166:                                            ; preds = %12101
  %12167 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12167, ptr %45, align 4, !tbaa !9
  %12168 = load ptr, ptr %5, align 8, !tbaa !5
  %12169 = getelementptr inbounds %struct.w2c_hermes, ptr %12168, i32 0, i32 6
  %12170 = load i32, ptr %45, align 4, !tbaa !9
  %12171 = zext i32 %12170 to i64
  %12172 = add i64 %12171, 5808
  %12173 = call i32 @i32_load(ptr noundef %12169, i64 noundef %12172)
  store i32 %12173, ptr %45, align 4, !tbaa !9
  %12174 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12174, ptr %6, align 4, !tbaa !9
  br label %43136

12175:                                            ; preds = %11449
  %12176 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12176, ptr %45, align 4, !tbaa !9
  %12177 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12177, ptr %46, align 4, !tbaa !9
  %12178 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12178, ptr %47, align 4, !tbaa !9
  %12179 = load ptr, ptr %5, align 8, !tbaa !5
  %12180 = getelementptr inbounds %struct.w2c_hermes, ptr %12179, i32 0, i32 6
  %12181 = load i32, ptr %47, align 4, !tbaa !9
  %12182 = zext i32 %12181 to i64
  %12183 = add i64 %12182, 1
  %12184 = call i32 @i32_load8_u(ptr noundef %12180, i64 noundef %12183)
  store i32 %12184, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %12185 = load i32, ptr %48, align 4, !tbaa !9
  %12186 = and i32 %12185, 31
  %12187 = load i32, ptr %47, align 4, !tbaa !9
  %12188 = shl i32 %12187, %12186
  store i32 %12188, ptr %47, align 4, !tbaa !9
  %12189 = load i32, ptr %47, align 4, !tbaa !9
  %12190 = load i32, ptr %46, align 4, !tbaa !9
  %12191 = add i32 %12190, %12189
  store i32 %12191, ptr %46, align 4, !tbaa !9
  %12192 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %12192, ptr %47, align 4, !tbaa !9
  %12193 = load ptr, ptr %5, align 8, !tbaa !5
  %12194 = getelementptr inbounds %struct.w2c_hermes, ptr %12193, i32 0, i32 6
  %12195 = load i32, ptr %47, align 4, !tbaa !9
  %12196 = zext i32 %12195 to i64
  %12197 = call i32 @i32_load(ptr noundef %12194, i64 noundef %12196)
  store i32 %12197, ptr %47, align 4, !tbaa !9
  %12198 = load ptr, ptr %5, align 8, !tbaa !5
  %12199 = getelementptr inbounds %struct.w2c_hermes, ptr %12198, i32 0, i32 6
  %12200 = load i32, ptr %47, align 4, !tbaa !9
  %12201 = zext i32 %12200 to i64
  %12202 = add i64 %12201, 12
  %12203 = call i32 @i32_load(ptr noundef %12199, i64 noundef %12202)
  store i32 %12203, ptr %47, align 4, !tbaa !9
  %12204 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12204, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %12205 = load i32, ptr %49, align 4, !tbaa !9
  %12206 = and i32 %12205, 31
  %12207 = load i32, ptr %48, align 4, !tbaa !9
  %12208 = shl i32 %12207, %12206
  store i32 %12208, ptr %48, align 4, !tbaa !9
  %12209 = load i32, ptr %48, align 4, !tbaa !9
  %12210 = load i32, ptr %47, align 4, !tbaa !9
  %12211 = add i32 %12210, %12209
  store i32 %12211, ptr %47, align 4, !tbaa !9
  %12212 = load ptr, ptr %5, align 8, !tbaa !5
  %12213 = getelementptr inbounds %struct.w2c_hermes, ptr %12212, i32 0, i32 6
  %12214 = load i32, ptr %47, align 4, !tbaa !9
  %12215 = zext i32 %12214 to i64
  %12216 = call i32 @i32_load(ptr noundef %12213, i64 noundef %12215)
  store i32 %12216, ptr %47, align 4, !tbaa !9
  %12217 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12217, ptr %48, align 4, !tbaa !9
  %12218 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12218, ptr %49, align 4, !tbaa !9
  %12219 = load ptr, ptr %5, align 8, !tbaa !5
  %12220 = getelementptr inbounds %struct.w2c_hermes, ptr %12219, i32 0, i32 6
  %12221 = load i32, ptr %49, align 4, !tbaa !9
  %12222 = zext i32 %12221 to i64
  %12223 = add i64 %12222, 2
  %12224 = call i32 @i32_load8_u(ptr noundef %12220, i64 noundef %12223)
  store i32 %12224, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %12225 = load i32, ptr %50, align 4, !tbaa !9
  %12226 = and i32 %12225, 31
  %12227 = load i32, ptr %49, align 4, !tbaa !9
  %12228 = shl i32 %12227, %12226
  store i32 %12228, ptr %49, align 4, !tbaa !9
  %12229 = load i32, ptr %49, align 4, !tbaa !9
  %12230 = load i32, ptr %48, align 4, !tbaa !9
  %12231 = add i32 %12230, %12229
  store i32 %12231, ptr %48, align 4, !tbaa !9
  %12232 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %12232, ptr %49, align 4, !tbaa !9
  %12233 = load ptr, ptr %5, align 8, !tbaa !5
  %12234 = load i32, ptr %45, align 4, !tbaa !9
  %12235 = load i32, ptr %46, align 4, !tbaa !9
  %12236 = load i32, ptr %47, align 4, !tbaa !9
  %12237 = load i32, ptr %48, align 4, !tbaa !9
  %12238 = load i32, ptr %49, align 4, !tbaa !9
  %12239 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AputByIdTransient_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef %12233, i32 noundef %12234, i32 noundef %12235, i32 noundef %12236, i32 noundef %12237, i32 noundef %12238)
  store i32 %12239, ptr %45, align 4, !tbaa !9
  %12240 = load i32, ptr %45, align 4, !tbaa !9
  %12241 = icmp ne i32 %12240, 0
  br i1 %12241, label %12242, label %12243

12242:                                            ; preds = %12175
  br label %12252

12243:                                            ; preds = %12175
  %12244 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12244, ptr %45, align 4, !tbaa !9
  %12245 = load ptr, ptr %5, align 8, !tbaa !5
  %12246 = getelementptr inbounds %struct.w2c_hermes, ptr %12245, i32 0, i32 6
  %12247 = load i32, ptr %45, align 4, !tbaa !9
  %12248 = zext i32 %12247 to i64
  %12249 = add i64 %12248, 5808
  %12250 = call i32 @i32_load(ptr noundef %12246, i64 noundef %12249)
  store i32 %12250, ptr %45, align 4, !tbaa !9
  %12251 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12251, ptr %6, align 4, !tbaa !9
  br label %43136

12252:                                            ; preds = %12242, %12165
  %12253 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12253, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %12254 = load ptr, ptr %5, align 8, !tbaa !5
  %12255 = getelementptr inbounds %struct.w2c_hermes, ptr %12254, i32 0, i32 6
  %12256 = load i32, ptr %45, align 4, !tbaa !9
  %12257 = zext i32 %12256 to i64
  %12258 = add i64 %12257, 516
  %12259 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12255, i64 noundef %12258, i32 noundef %12259)
  %12260 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12260, ptr %45, align 4, !tbaa !9
  %12261 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12261, ptr %46, align 4, !tbaa !9
  %12262 = load ptr, ptr %5, align 8, !tbaa !5
  %12263 = getelementptr inbounds %struct.w2c_hermes, ptr %12262, i32 0, i32 6
  %12264 = load i32, ptr %45, align 4, !tbaa !9
  %12265 = zext i32 %12264 to i64
  %12266 = add i64 %12265, 512
  %12267 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12263, i64 noundef %12266, i32 noundef %12267)
  %12268 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12268, ptr %45, align 4, !tbaa !9
  %12269 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %12269, ptr %46, align 4, !tbaa !9
  %12270 = load ptr, ptr %5, align 8, !tbaa !5
  %12271 = getelementptr inbounds %struct.w2c_hermes, ptr %12270, i32 0, i32 6
  %12272 = load i32, ptr %45, align 4, !tbaa !9
  %12273 = zext i32 %12272 to i64
  %12274 = add i64 %12273, 508
  %12275 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12271, i64 noundef %12274, i32 noundef %12275)
  %12276 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12276, ptr %45, align 4, !tbaa !9
  %12277 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12277, ptr %6, align 4, !tbaa !9
  br label %2945

12278:                                            ; preds = %3029
  %12279 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12279, ptr %45, align 4, !tbaa !9
  %12280 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12280, ptr %46, align 4, !tbaa !9
  %12281 = load ptr, ptr %5, align 8, !tbaa !5
  %12282 = getelementptr inbounds %struct.w2c_hermes, ptr %12281, i32 0, i32 6
  %12283 = load i32, ptr %46, align 4, !tbaa !9
  %12284 = zext i32 %12283 to i64
  %12285 = add i64 %12284, 2
  %12286 = call i32 @i32_load8_u(ptr noundef %12282, i64 noundef %12285)
  store i32 %12286, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %12287 = load i32, ptr %47, align 4, !tbaa !9
  %12288 = and i32 %12287, 31
  %12289 = load i32, ptr %46, align 4, !tbaa !9
  %12290 = shl i32 %12289, %12288
  store i32 %12290, ptr %46, align 4, !tbaa !9
  %12291 = load i32, ptr %46, align 4, !tbaa !9
  %12292 = load i32, ptr %45, align 4, !tbaa !9
  %12293 = add i32 %12292, %12291
  store i32 %12293, ptr %45, align 4, !tbaa !9
  %12294 = load ptr, ptr %5, align 8, !tbaa !5
  %12295 = getelementptr inbounds %struct.w2c_hermes, ptr %12294, i32 0, i32 6
  %12296 = load i32, ptr %45, align 4, !tbaa !9
  %12297 = zext i32 %12296 to i64
  %12298 = add i64 %12297, 6
  %12299 = call i32 @i32_load16_s(ptr noundef %12295, i64 noundef %12298)
  store i32 %12299, ptr %45, align 4, !tbaa !9
  %12300 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12300, ptr %7, align 4, !tbaa !9
  %12301 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12301, ptr %45, align 4, !tbaa !9
  %12302 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12302, ptr %46, align 4, !tbaa !9
  %12303 = load ptr, ptr %5, align 8, !tbaa !5
  %12304 = getelementptr inbounds %struct.w2c_hermes, ptr %12303, i32 0, i32 6
  %12305 = load i32, ptr %45, align 4, !tbaa !9
  %12306 = zext i32 %12305 to i64
  %12307 = add i64 %12306, 5808
  %12308 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12304, i64 noundef %12307, i32 noundef %12308)
  %12309 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12309, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %12310 = load i32, ptr %45, align 4, !tbaa !9
  %12311 = load i32, ptr %46, align 4, !tbaa !9
  %12312 = icmp eq i32 %12310, %12311
  %12313 = zext i1 %12312 to i32
  store i32 %12313, ptr %45, align 4, !tbaa !9
  %12314 = load i32, ptr %45, align 4, !tbaa !9
  %12315 = icmp ne i32 %12314, 0
  br i1 %12315, label %12316, label %12379

12316:                                            ; preds = %12278
  %12317 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12317, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %12318 = load i32, ptr %46, align 4, !tbaa !9
  %12319 = load i32, ptr %45, align 4, !tbaa !9
  %12320 = add i32 %12319, %12318
  store i32 %12320, ptr %45, align 4, !tbaa !9
  %12321 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12321, ptr %46, align 4, !tbaa !9
  %12322 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12322, ptr %47, align 4, !tbaa !9
  %12323 = load ptr, ptr %5, align 8, !tbaa !5
  %12324 = getelementptr inbounds %struct.w2c_hermes, ptr %12323, i32 0, i32 6
  %12325 = load i32, ptr %47, align 4, !tbaa !9
  %12326 = zext i32 %12325 to i64
  %12327 = add i64 %12326, 2
  %12328 = call i32 @i32_load8_u(ptr noundef %12324, i64 noundef %12327)
  store i32 %12328, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %12329 = load i32, ptr %48, align 4, !tbaa !9
  %12330 = and i32 %12329, 31
  %12331 = load i32, ptr %47, align 4, !tbaa !9
  %12332 = shl i32 %12331, %12330
  store i32 %12332, ptr %47, align 4, !tbaa !9
  %12333 = load i32, ptr %47, align 4, !tbaa !9
  %12334 = load i32, ptr %46, align 4, !tbaa !9
  %12335 = add i32 %12334, %12333
  store i32 %12335, ptr %46, align 4, !tbaa !9
  %12336 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12336, ptr %7, align 4, !tbaa !9
  %12337 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12337, ptr %47, align 4, !tbaa !9
  %12338 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12338, ptr %48, align 4, !tbaa !9
  %12339 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12339, ptr %49, align 4, !tbaa !9
  %12340 = load ptr, ptr %5, align 8, !tbaa !5
  %12341 = getelementptr inbounds %struct.w2c_hermes, ptr %12340, i32 0, i32 6
  %12342 = load i32, ptr %49, align 4, !tbaa !9
  %12343 = zext i32 %12342 to i64
  %12344 = add i64 %12343, 3
  %12345 = call i32 @i32_load8_u(ptr noundef %12341, i64 noundef %12344)
  store i32 %12345, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %12346 = load i32, ptr %50, align 4, !tbaa !9
  %12347 = and i32 %12346, 31
  %12348 = load i32, ptr %49, align 4, !tbaa !9
  %12349 = shl i32 %12348, %12347
  store i32 %12349, ptr %49, align 4, !tbaa !9
  %12350 = load i32, ptr %49, align 4, !tbaa !9
  %12351 = load i32, ptr %48, align 4, !tbaa !9
  %12352 = add i32 %12351, %12350
  store i32 %12352, ptr %48, align 4, !tbaa !9
  %12353 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12353, ptr %49, align 4, !tbaa !9
  %12354 = load ptr, ptr %5, align 8, !tbaa !5
  %12355 = load i32, ptr %45, align 4, !tbaa !9
  %12356 = load i32, ptr %46, align 4, !tbaa !9
  %12357 = load i32, ptr %47, align 4, !tbaa !9
  %12358 = load i32, ptr %48, align 4, !tbaa !9
  %12359 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %12354, i32 noundef %12355, i32 noundef %12356, i32 noundef %12357, i32 noundef %12358, i32 noundef %12359)
  %12360 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12360, ptr %45, align 4, !tbaa !9
  %12361 = load ptr, ptr %5, align 8, !tbaa !5
  %12362 = getelementptr inbounds %struct.w2c_hermes, ptr %12361, i32 0, i32 6
  %12363 = load i32, ptr %45, align 4, !tbaa !9
  %12364 = zext i32 %12363 to i64
  %12365 = add i64 %12364, 5808
  %12366 = call i32 @i32_load(ptr noundef %12362, i64 noundef %12365)
  store i32 %12366, ptr %45, align 4, !tbaa !9
  %12367 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12367, ptr %6, align 4, !tbaa !9
  %12368 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12368, ptr %45, align 4, !tbaa !9
  %12369 = load ptr, ptr %5, align 8, !tbaa !5
  %12370 = getelementptr inbounds %struct.w2c_hermes, ptr %12369, i32 0, i32 6
  %12371 = load i32, ptr %45, align 4, !tbaa !9
  %12372 = zext i32 %12371 to i64
  %12373 = add i64 %12372, 304
  %12374 = call i32 @i32_load(ptr noundef %12370, i64 noundef %12373)
  store i32 %12374, ptr %45, align 4, !tbaa !9
  %12375 = load i32, ptr %45, align 4, !tbaa !9
  %12376 = icmp ne i32 %12375, 0
  br i1 %12376, label %12377, label %12378

12377:                                            ; preds = %12316
  br label %13022

12378:                                            ; preds = %12316
  br label %43136

12379:                                            ; preds = %12278
  %12380 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %12380, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %12381 = load i32, ptr %46, align 4, !tbaa !9
  %12382 = load i32, ptr %45, align 4, !tbaa !9
  %12383 = add i32 %12382, %12381
  store i32 %12383, ptr %45, align 4, !tbaa !9
  %12384 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12384, ptr %14, align 4, !tbaa !9
  %12385 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12385, ptr %45, align 4, !tbaa !9
  %12386 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12386, ptr %46, align 4, !tbaa !9
  %12387 = load ptr, ptr %5, align 8, !tbaa !5
  %12388 = getelementptr inbounds %struct.w2c_hermes, ptr %12387, i32 0, i32 6
  %12389 = load i32, ptr %46, align 4, !tbaa !9
  %12390 = zext i32 %12389 to i64
  %12391 = add i64 %12390, 2
  %12392 = call i32 @i32_load8_u(ptr noundef %12388, i64 noundef %12391)
  store i32 %12392, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %12393 = load i32, ptr %47, align 4, !tbaa !9
  %12394 = and i32 %12393, 31
  %12395 = load i32, ptr %46, align 4, !tbaa !9
  %12396 = shl i32 %12395, %12394
  store i32 %12396, ptr %46, align 4, !tbaa !9
  %12397 = load i32, ptr %46, align 4, !tbaa !9
  %12398 = load i32, ptr %45, align 4, !tbaa !9
  %12399 = add i32 %12398, %12397
  store i32 %12399, ptr %45, align 4, !tbaa !9
  %12400 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12400, ptr %12, align 4, !tbaa !9
  %12401 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %12401, ptr %45, align 4, !tbaa !9
  %12402 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12402, ptr %46, align 4, !tbaa !9
  %12403 = load ptr, ptr %5, align 8, !tbaa !5
  %12404 = getelementptr inbounds %struct.w2c_hermes, ptr %12403, i32 0, i32 6
  %12405 = load i32, ptr %46, align 4, !tbaa !9
  %12406 = zext i32 %12405 to i64
  %12407 = add i64 %12406, 3
  %12408 = call i32 @i32_load8_u(ptr noundef %12404, i64 noundef %12407)
  store i32 %12408, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %12409 = load i32, ptr %47, align 4, !tbaa !9
  %12410 = and i32 %12409, 31
  %12411 = load i32, ptr %46, align 4, !tbaa !9
  %12412 = shl i32 %12411, %12410
  store i32 %12412, ptr %46, align 4, !tbaa !9
  %12413 = load i32, ptr %46, align 4, !tbaa !9
  %12414 = load i32, ptr %45, align 4, !tbaa !9
  %12415 = add i32 %12414, %12413
  store i32 %12415, ptr %45, align 4, !tbaa !9
  %12416 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12416, ptr %8, align 4, !tbaa !9
  %12417 = load ptr, ptr %5, align 8, !tbaa !5
  %12418 = getelementptr inbounds %struct.w2c_hermes, ptr %12417, i32 0, i32 3
  %12419 = load i32, ptr %12418, align 8, !tbaa !15
  store i32 %12419, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %12420 = load i32, ptr %46, align 4, !tbaa !9
  %12421 = load i32, ptr %45, align 4, !tbaa !9
  %12422 = sub i32 %12421, %12420
  store i32 %12422, ptr %45, align 4, !tbaa !9
  %12423 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12423, ptr %13, align 4, !tbaa !9
  %12424 = load i32, ptr %45, align 4, !tbaa !9
  %12425 = load ptr, ptr %5, align 8, !tbaa !5
  %12426 = getelementptr inbounds %struct.w2c_hermes, ptr %12425, i32 0, i32 3
  store i32 %12424, ptr %12426, align 8, !tbaa !15
  store i64 -1970324836974592, ptr %54, align 8, !tbaa !11
  %12427 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %12427, ptr %40, align 8, !tbaa !11
  %12428 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12428, ptr %45, align 4, !tbaa !9
  %12429 = load ptr, ptr %5, align 8, !tbaa !5
  %12430 = getelementptr inbounds %struct.w2c_hermes, ptr %12429, i32 0, i32 6
  %12431 = load i32, ptr %45, align 4, !tbaa !9
  %12432 = zext i32 %12431 to i64
  %12433 = call i64 @i64_load(ptr noundef %12430, i64 noundef %12432)
  store i64 %12433, ptr %54, align 8, !tbaa !11
  %12434 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %12434, ptr %41, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %12435 = load i64, ptr %54, align 8, !tbaa !11
  %12436 = load i64, ptr %55, align 8, !tbaa !11
  %12437 = and i64 %12436, 63
  %12438 = ashr i64 %12435, %12437
  store i64 %12438, ptr %54, align 8, !tbaa !11
  %12439 = load i64, ptr %54, align 8, !tbaa !11
  %12440 = trunc i64 %12439 to i32
  store i32 %12440, ptr %45, align 4, !tbaa !9
  store i32 -3, ptr %46, align 4, !tbaa !9
  %12441 = load i32, ptr %45, align 4, !tbaa !9
  %12442 = load i32, ptr %46, align 4, !tbaa !9
  %12443 = icmp ne i32 %12441, %12442
  %12444 = zext i1 %12443 to i32
  store i32 %12444, ptr %45, align 4, !tbaa !9
  %12445 = load i32, ptr %45, align 4, !tbaa !9
  %12446 = icmp ne i32 %12445, 0
  br i1 %12446, label %12447, label %12448

12447:                                            ; preds = %12379
  br label %12849

12448:                                            ; preds = %12379
  %12449 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12449, ptr %45, align 4, !tbaa !9
  %12450 = load ptr, ptr %5, align 8, !tbaa !5
  %12451 = getelementptr inbounds %struct.w2c_hermes, ptr %12450, i32 0, i32 6
  %12452 = load i32, ptr %45, align 4, !tbaa !9
  %12453 = zext i32 %12452 to i64
  %12454 = call i64 @i64_load(ptr noundef %12451, i64 noundef %12453)
  store i64 %12454, ptr %54, align 8, !tbaa !11
  %12455 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %12455, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %12456 = load i64, ptr %54, align 8, !tbaa !11
  %12457 = load i64, ptr %55, align 8, !tbaa !11
  %12458 = icmp ugt i64 %12456, %12457
  %12459 = zext i1 %12458 to i32
  store i32 %12459, ptr %45, align 4, !tbaa !9
  %12460 = load i32, ptr %45, align 4, !tbaa !9
  %12461 = icmp ne i32 %12460, 0
  br i1 %12461, label %12462, label %12463

12462:                                            ; preds = %12448
  br label %12849

12463:                                            ; preds = %12448
  %12464 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %12464, ptr %54, align 8, !tbaa !11
  %12465 = load i64, ptr %54, align 8, !tbaa !11
  %12466 = call double @f64_reinterpret_i64(i64 noundef %12465)
  store double %12466, ptr %60, align 8, !tbaa !13
  %12467 = load double, ptr %60, align 8, !tbaa !13
  store double %12467, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %12468 = load double, ptr %60, align 8, !tbaa !13
  %12469 = load double, ptr %61, align 8, !tbaa !13
  %12470 = fcmp olt double %12468, %12469
  %12471 = zext i1 %12470 to i32
  store i32 %12471, ptr %45, align 4, !tbaa !9
  %12472 = load double, ptr %43, align 8, !tbaa !13
  store double %12472, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %12473 = load double, ptr %61, align 8, !tbaa !13
  %12474 = load double, ptr %62, align 8, !tbaa !13
  %12475 = fcmp oge double %12473, %12474
  %12476 = zext i1 %12475 to i32
  store i32 %12476, ptr %46, align 4, !tbaa !9
  %12477 = load i32, ptr %46, align 4, !tbaa !9
  %12478 = load i32, ptr %45, align 4, !tbaa !9
  %12479 = and i32 %12478, %12477
  store i32 %12479, ptr %45, align 4, !tbaa !9
  %12480 = load i32, ptr %45, align 4, !tbaa !9
  %12481 = icmp ne i32 %12480, 0
  br i1 %12481, label %12482, label %12519

12482:                                            ; preds = %12463
  %12483 = load double, ptr %43, align 8, !tbaa !13
  store double %12483, ptr %60, align 8, !tbaa !13
  %12484 = load double, ptr %60, align 8, !tbaa !13
  %12485 = load double, ptr %60, align 8, !tbaa !13
  %12486 = fcmp une double %12484, %12485
  %12487 = xor i1 %12486, true
  %12488 = xor i1 %12487, true
  %12489 = zext i1 %12488 to i32
  %12490 = sext i32 %12489 to i64
  %12491 = call i64 @llvm.expect.i64(i64 %12490, i64 0)
  %12492 = icmp ne i64 %12491, 0
  br i1 %12492, label %12493, label %12495

12493:                                            ; preds = %12482
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

12494:                                            ; No predecessors!
  br label %12517

12495:                                            ; preds = %12482
  %12496 = load double, ptr %60, align 8, !tbaa !13
  %12497 = fcmp ogt double %12496, -1.000000e+00
  br i1 %12497, label %12498, label %12501

12498:                                            ; preds = %12495
  %12499 = load double, ptr %60, align 8, !tbaa !13
  %12500 = fcmp olt double %12499, 0x41F0000000000000
  br label %12501

12501:                                            ; preds = %12498, %12495
  %12502 = phi i1 [ false, %12495 ], [ %12500, %12498 ]
  %12503 = xor i1 %12502, true
  %12504 = xor i1 %12503, true
  %12505 = xor i1 %12504, true
  %12506 = zext i1 %12505 to i32
  %12507 = sext i32 %12506 to i64
  %12508 = call i64 @llvm.expect.i64(i64 %12507, i64 0)
  %12509 = icmp ne i64 %12508, 0
  br i1 %12509, label %12510, label %12512

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

12511:                                            ; No predecessors!
  br label %12515

12512:                                            ; preds = %12501
  %12513 = load double, ptr %60, align 8, !tbaa !13
  %12514 = fptoui double %12513 to i32
  br label %12515

12515:                                            ; preds = %12512, %12511
  %12516 = phi i32 [ 0, %12511 ], [ %12514, %12512 ]
  br label %12517

12517:                                            ; preds = %12515, %12494
  %12518 = phi i32 [ 0, %12494 ], [ %12516, %12515 ]
  store i32 %12518, ptr %45, align 4, !tbaa !9
  br label %12520

12519:                                            ; preds = %12463
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %12520

12520:                                            ; preds = %12519, %12517
  %12521 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12521, ptr %7, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %12522 = load i32, ptr %45, align 4, !tbaa !9
  %12523 = load i32, ptr %46, align 4, !tbaa !9
  %12524 = icmp ne i32 %12522, %12523
  %12525 = zext i1 %12524 to i32
  store i32 %12525, ptr %45, align 4, !tbaa !9
  %12526 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12526, ptr %46, align 4, !tbaa !9
  %12527 = load i32, ptr %46, align 4, !tbaa !9
  %12528 = uitofp i32 %12527 to double
  store double %12528, ptr %61, align 8, !tbaa !13
  %12529 = load double, ptr %43, align 8, !tbaa !13
  store double %12529, ptr %62, align 8, !tbaa !13
  %12530 = load double, ptr %61, align 8, !tbaa !13
  %12531 = load double, ptr %62, align 8, !tbaa !13
  %12532 = fcmp oeq double %12530, %12531
  %12533 = zext i1 %12532 to i32
  store i32 %12533, ptr %46, align 4, !tbaa !9
  %12534 = load i32, ptr %46, align 4, !tbaa !9
  %12535 = load i32, ptr %45, align 4, !tbaa !9
  %12536 = and i32 %12535, %12534
  store i32 %12536, ptr %45, align 4, !tbaa !9
  %12537 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12537, ptr %6, align 4, !tbaa !9
  %12538 = load i32, ptr %45, align 4, !tbaa !9
  %12539 = icmp ne i32 %12538, 0
  %12540 = xor i1 %12539, true
  %12541 = zext i1 %12540 to i32
  store i32 %12541, ptr %45, align 4, !tbaa !9
  %12542 = load i32, ptr %45, align 4, !tbaa !9
  %12543 = icmp ne i32 %12542, 0
  br i1 %12543, label %12544, label %12545

12544:                                            ; preds = %12520
  br label %12849

12545:                                            ; preds = %12520
  %12546 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12546, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %12547 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12547, ptr %47, align 4, !tbaa !9
  %12548 = load i32, ptr %47, align 4, !tbaa !9
  %12549 = icmp ne i32 %12548, 0
  br i1 %12549, label %12550, label %12552

12550:                                            ; preds = %12545
  %12551 = load i32, ptr %45, align 4, !tbaa !9
  br label %12554

12552:                                            ; preds = %12545
  %12553 = load i32, ptr %46, align 4, !tbaa !9
  br label %12554

12554:                                            ; preds = %12552, %12550
  %12555 = phi i32 [ %12551, %12550 ], [ %12553, %12552 ]
  store i32 %12555, ptr %45, align 4, !tbaa !9
  %12556 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12556, ptr %7, align 4, !tbaa !9
  %12557 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %12557, ptr %55, align 8, !tbaa !11
  %12558 = load i64, ptr %55, align 8, !tbaa !11
  %12559 = trunc i64 %12558 to i32
  store i32 %12559, ptr %46, align 4, !tbaa !9
  %12560 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12560, ptr %15, align 4, !tbaa !9
  %12561 = load ptr, ptr %5, align 8, !tbaa !5
  %12562 = getelementptr inbounds %struct.w2c_hermes, ptr %12561, i32 0, i32 6
  %12563 = load i32, ptr %46, align 4, !tbaa !9
  %12564 = zext i32 %12563 to i64
  %12565 = add i64 %12564, 4
  %12566 = call i32 @i32_load(ptr noundef %12562, i64 noundef %12565)
  store i32 %12566, ptr %46, align 4, !tbaa !9
  store i32 2147483647, ptr %47, align 4, !tbaa !9
  %12567 = load i32, ptr %47, align 4, !tbaa !9
  %12568 = load i32, ptr %46, align 4, !tbaa !9
  %12569 = and i32 %12568, %12567
  store i32 %12569, ptr %46, align 4, !tbaa !9
  %12570 = load i32, ptr %45, align 4, !tbaa !9
  %12571 = load i32, ptr %46, align 4, !tbaa !9
  %12572 = icmp uge i32 %12570, %12571
  %12573 = zext i1 %12572 to i32
  store i32 %12573, ptr %45, align 4, !tbaa !9
  %12574 = load i32, ptr %45, align 4, !tbaa !9
  %12575 = icmp ne i32 %12574, 0
  br i1 %12575, label %12576, label %12577

12576:                                            ; preds = %12554
  br label %12849

12577:                                            ; preds = %12554
  %12578 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12578, ptr %45, align 4, !tbaa !9
  %12579 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12579, ptr %46, align 4, !tbaa !9
  %12580 = load ptr, ptr %5, align 8, !tbaa !5
  %12581 = getelementptr inbounds %struct.w2c_hermes, ptr %12580, i32 0, i32 6
  %12582 = load i32, ptr %46, align 4, !tbaa !9
  %12583 = zext i32 %12582 to i64
  %12584 = call i32 @i32_load(ptr noundef %12581, i64 noundef %12583)
  store i32 %12584, ptr %46, align 4, !tbaa !9
  %12585 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12585, ptr %6, align 4, !tbaa !9
  store i32 16777216, ptr %47, align 4, !tbaa !9
  %12586 = load i32, ptr %47, align 4, !tbaa !9
  %12587 = load i32, ptr %46, align 4, !tbaa !9
  %12588 = and i32 %12587, %12586
  store i32 %12588, ptr %46, align 4, !tbaa !9
  %12589 = load i32, ptr %46, align 4, !tbaa !9
  %12590 = icmp ne i32 %12589, 0
  %12591 = xor i1 %12590, true
  %12592 = zext i1 %12591 to i32
  store i32 %12592, ptr %46, align 4, !tbaa !9
  %12593 = load i32, ptr %46, align 4, !tbaa !9
  %12594 = icmp ne i32 %12593, 0
  br i1 %12594, label %12595, label %12713

12595:                                            ; preds = %12577
  %12596 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12596, ptr %46, align 4, !tbaa !9
  store i32 150994944, ptr %47, align 4, !tbaa !9
  %12597 = load i32, ptr %46, align 4, !tbaa !9
  %12598 = load i32, ptr %47, align 4, !tbaa !9
  %12599 = icmp uge i32 %12597, %12598
  %12600 = zext i1 %12599 to i32
  store i32 %12600, ptr %46, align 4, !tbaa !9
  %12601 = load i32, ptr %46, align 4, !tbaa !9
  %12602 = icmp ne i32 %12601, 0
  br i1 %12602, label %12603, label %12634

12603:                                            ; preds = %12595
  %12604 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12604, ptr %46, align 4, !tbaa !9
  %12605 = load ptr, ptr %5, align 8, !tbaa !5
  %12606 = getelementptr inbounds %struct.w2c_hermes, ptr %12605, i32 0, i32 6
  %12607 = load i32, ptr %46, align 4, !tbaa !9
  %12608 = zext i32 %12607 to i64
  %12609 = add i64 %12608, 12
  %12610 = call i32 @i32_load(ptr noundef %12606, i64 noundef %12609)
  store i32 %12610, ptr %46, align 4, !tbaa !9
  %12611 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12611, ptr %47, align 4, !tbaa !9
  store i32 12, ptr %48, align 4, !tbaa !9
  %12612 = load i32, ptr %48, align 4, !tbaa !9
  %12613 = load i32, ptr %47, align 4, !tbaa !9
  %12614 = add i32 %12613, %12612
  store i32 %12614, ptr %47, align 4, !tbaa !9
  %12615 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12615, ptr %48, align 4, !tbaa !9
  %12616 = load ptr, ptr %5, align 8, !tbaa !5
  %12617 = getelementptr inbounds %struct.w2c_hermes, ptr %12616, i32 0, i32 6
  %12618 = load i32, ptr %48, align 4, !tbaa !9
  %12619 = zext i32 %12618 to i64
  %12620 = add i64 %12619, 23
  %12621 = call i32 @i32_load8_s(ptr noundef %12617, i64 noundef %12620)
  store i32 %12621, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12622 = load i32, ptr %48, align 4, !tbaa !9
  %12623 = load i32, ptr %49, align 4, !tbaa !9
  %12624 = icmp slt i32 %12622, %12623
  %12625 = zext i1 %12624 to i32
  store i32 %12625, ptr %48, align 4, !tbaa !9
  %12626 = load i32, ptr %48, align 4, !tbaa !9
  %12627 = icmp ne i32 %12626, 0
  br i1 %12627, label %12628, label %12630

12628:                                            ; preds = %12603
  %12629 = load i32, ptr %46, align 4, !tbaa !9
  br label %12632

12630:                                            ; preds = %12603
  %12631 = load i32, ptr %47, align 4, !tbaa !9
  br label %12632

12632:                                            ; preds = %12630, %12628
  %12633 = phi i32 [ %12629, %12628 ], [ %12631, %12630 ]
  store i32 %12633, ptr %46, align 4, !tbaa !9
  br label %12703

12634:                                            ; preds = %12595
  %12635 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12635, ptr %46, align 4, !tbaa !9
  store i32 -16777216, ptr %47, align 4, !tbaa !9
  %12636 = load i32, ptr %47, align 4, !tbaa !9
  %12637 = load i32, ptr %46, align 4, !tbaa !9
  %12638 = and i32 %12637, %12636
  store i32 %12638, ptr %46, align 4, !tbaa !9
  %12639 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12639, ptr %6, align 4, !tbaa !9
  store i32 67108864, ptr %47, align 4, !tbaa !9
  %12640 = load i32, ptr %46, align 4, !tbaa !9
  %12641 = load i32, ptr %47, align 4, !tbaa !9
  %12642 = icmp ne i32 %12640, %12641
  %12643 = zext i1 %12642 to i32
  store i32 %12643, ptr %46, align 4, !tbaa !9
  %12644 = load i32, ptr %46, align 4, !tbaa !9
  %12645 = icmp ne i32 %12644, 0
  br i1 %12645, label %12646, label %12660

12646:                                            ; preds = %12634
  %12647 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12647, ptr %46, align 4, !tbaa !9
  store i32 134217728, ptr %47, align 4, !tbaa !9
  %12648 = load i32, ptr %46, align 4, !tbaa !9
  %12649 = load i32, ptr %47, align 4, !tbaa !9
  %12650 = icmp ne i32 %12648, %12649
  %12651 = zext i1 %12650 to i32
  store i32 %12651, ptr %46, align 4, !tbaa !9
  %12652 = load i32, ptr %46, align 4, !tbaa !9
  %12653 = icmp ne i32 %12652, 0
  br i1 %12653, label %12654, label %12655

12654:                                            ; preds = %12646
  br label %12665

12655:                                            ; preds = %12646
  %12656 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12656, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %12657 = load i32, ptr %47, align 4, !tbaa !9
  %12658 = load i32, ptr %46, align 4, !tbaa !9
  %12659 = add i32 %12658, %12657
  store i32 %12659, ptr %46, align 4, !tbaa !9
  br label %12703

12660:                                            ; preds = %12634
  %12661 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12661, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %12662 = load i32, ptr %47, align 4, !tbaa !9
  %12663 = load i32, ptr %46, align 4, !tbaa !9
  %12664 = add i32 %12663, %12662
  store i32 %12664, ptr %46, align 4, !tbaa !9
  br label %12703

12665:                                            ; preds = %12654
  %12666 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12666, ptr %46, 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 %46, align 4, !tbaa !9
  %12670 = zext i32 %12669 to i64
  %12671 = add i64 %12670, 8
  %12672 = call i32 @i32_load(ptr noundef %12668, i64 noundef %12671)
  store i32 %12672, ptr %46, align 4, !tbaa !9
  %12673 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12673, ptr %6, align 4, !tbaa !9
  %12674 = load ptr, ptr %5, align 8, !tbaa !5
  %12675 = getelementptr inbounds %struct.w2c_hermes, ptr %12674, i32 0, i32 6
  %12676 = load i32, ptr %46, align 4, !tbaa !9
  %12677 = zext i32 %12676 to i64
  %12678 = add i64 %12677, 12
  %12679 = call i32 @i32_load(ptr noundef %12675, i64 noundef %12678)
  store i32 %12679, ptr %46, align 4, !tbaa !9
  %12680 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12680, ptr %47, align 4, !tbaa !9
  store i32 12, ptr %48, align 4, !tbaa !9
  %12681 = load i32, ptr %48, align 4, !tbaa !9
  %12682 = load i32, ptr %47, align 4, !tbaa !9
  %12683 = add i32 %12682, %12681
  store i32 %12683, ptr %47, align 4, !tbaa !9
  %12684 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12684, ptr %48, align 4, !tbaa !9
  %12685 = load ptr, ptr %5, align 8, !tbaa !5
  %12686 = getelementptr inbounds %struct.w2c_hermes, ptr %12685, i32 0, i32 6
  %12687 = load i32, ptr %48, align 4, !tbaa !9
  %12688 = zext i32 %12687 to i64
  %12689 = add i64 %12688, 23
  %12690 = call i32 @i32_load8_s(ptr noundef %12686, i64 noundef %12689)
  store i32 %12690, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12691 = load i32, ptr %48, align 4, !tbaa !9
  %12692 = load i32, ptr %49, align 4, !tbaa !9
  %12693 = icmp slt i32 %12691, %12692
  %12694 = zext i1 %12693 to i32
  store i32 %12694, ptr %48, align 4, !tbaa !9
  %12695 = load i32, ptr %48, align 4, !tbaa !9
  %12696 = icmp ne i32 %12695, 0
  br i1 %12696, label %12697, label %12699

12697:                                            ; preds = %12665
  %12698 = load i32, ptr %46, align 4, !tbaa !9
  br label %12701

12699:                                            ; preds = %12665
  %12700 = load i32, ptr %47, align 4, !tbaa !9
  br label %12701

12701:                                            ; preds = %12699, %12697
  %12702 = phi i32 [ %12698, %12697 ], [ %12700, %12699 ]
  store i32 %12702, ptr %46, align 4, !tbaa !9
  br label %12703

12703:                                            ; preds = %12701, %12660, %12655, %12632
  %12704 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12704, ptr %47, align 4, !tbaa !9
  %12705 = load i32, ptr %47, align 4, !tbaa !9
  %12706 = load i32, ptr %46, align 4, !tbaa !9
  %12707 = add i32 %12706, %12705
  store i32 %12707, ptr %46, align 4, !tbaa !9
  %12708 = load ptr, ptr %5, align 8, !tbaa !5
  %12709 = getelementptr inbounds %struct.w2c_hermes, ptr %12708, i32 0, i32 6
  %12710 = load i32, ptr %46, align 4, !tbaa !9
  %12711 = zext i32 %12710 to i64
  %12712 = call i32 @i32_load8_s(ptr noundef %12709, i64 noundef %12711)
  store i32 %12712, ptr %46, align 4, !tbaa !9
  br label %12835

12713:                                            ; preds = %12577
  %12714 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12714, ptr %46, align 4, !tbaa !9
  store i32 150994944, ptr %47, align 4, !tbaa !9
  %12715 = load i32, ptr %46, align 4, !tbaa !9
  %12716 = load i32, ptr %47, align 4, !tbaa !9
  %12717 = icmp uge i32 %12715, %12716
  %12718 = zext i1 %12717 to i32
  store i32 %12718, ptr %46, align 4, !tbaa !9
  %12719 = load i32, ptr %46, align 4, !tbaa !9
  %12720 = icmp ne i32 %12719, 0
  br i1 %12720, label %12721, label %12752

12721:                                            ; preds = %12713
  %12722 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12722, ptr %46, align 4, !tbaa !9
  %12723 = load ptr, ptr %5, align 8, !tbaa !5
  %12724 = getelementptr inbounds %struct.w2c_hermes, ptr %12723, i32 0, i32 6
  %12725 = load i32, ptr %46, align 4, !tbaa !9
  %12726 = zext i32 %12725 to i64
  %12727 = add i64 %12726, 12
  %12728 = call i32 @i32_load(ptr noundef %12724, i64 noundef %12727)
  store i32 %12728, ptr %46, align 4, !tbaa !9
  %12729 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12729, ptr %47, align 4, !tbaa !9
  store i32 12, ptr %48, align 4, !tbaa !9
  %12730 = load i32, ptr %48, align 4, !tbaa !9
  %12731 = load i32, ptr %47, align 4, !tbaa !9
  %12732 = add i32 %12731, %12730
  store i32 %12732, ptr %47, align 4, !tbaa !9
  %12733 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12733, ptr %48, align 4, !tbaa !9
  %12734 = load ptr, ptr %5, align 8, !tbaa !5
  %12735 = getelementptr inbounds %struct.w2c_hermes, ptr %12734, i32 0, i32 6
  %12736 = load i32, ptr %48, align 4, !tbaa !9
  %12737 = zext i32 %12736 to i64
  %12738 = add i64 %12737, 23
  %12739 = call i32 @i32_load8_s(ptr noundef %12735, i64 noundef %12738)
  store i32 %12739, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12740 = load i32, ptr %48, align 4, !tbaa !9
  %12741 = load i32, ptr %49, align 4, !tbaa !9
  %12742 = icmp slt i32 %12740, %12741
  %12743 = zext i1 %12742 to i32
  store i32 %12743, ptr %48, align 4, !tbaa !9
  %12744 = load i32, ptr %48, align 4, !tbaa !9
  %12745 = icmp ne i32 %12744, 0
  br i1 %12745, label %12746, label %12748

12746:                                            ; preds = %12721
  %12747 = load i32, ptr %46, align 4, !tbaa !9
  br label %12750

12748:                                            ; preds = %12721
  %12749 = load i32, ptr %47, align 4, !tbaa !9
  br label %12750

12750:                                            ; preds = %12748, %12746
  %12751 = phi i32 [ %12747, %12746 ], [ %12749, %12748 ]
  store i32 %12751, ptr %46, align 4, !tbaa !9
  br label %12821

12752:                                            ; preds = %12713
  %12753 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12753, ptr %46, align 4, !tbaa !9
  store i32 -16777216, ptr %47, align 4, !tbaa !9
  %12754 = load i32, ptr %47, align 4, !tbaa !9
  %12755 = load i32, ptr %46, align 4, !tbaa !9
  %12756 = and i32 %12755, %12754
  store i32 %12756, ptr %46, align 4, !tbaa !9
  %12757 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12757, ptr %6, align 4, !tbaa !9
  store i32 50331648, ptr %47, align 4, !tbaa !9
  %12758 = load i32, ptr %46, align 4, !tbaa !9
  %12759 = load i32, ptr %47, align 4, !tbaa !9
  %12760 = icmp ne i32 %12758, %12759
  %12761 = zext i1 %12760 to i32
  store i32 %12761, ptr %46, align 4, !tbaa !9
  %12762 = load i32, ptr %46, align 4, !tbaa !9
  %12763 = icmp ne i32 %12762, 0
  br i1 %12763, label %12764, label %12778

12764:                                            ; preds = %12752
  %12765 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12765, ptr %46, align 4, !tbaa !9
  store i32 117440512, ptr %47, align 4, !tbaa !9
  %12766 = load i32, ptr %46, align 4, !tbaa !9
  %12767 = load i32, ptr %47, align 4, !tbaa !9
  %12768 = icmp ne i32 %12766, %12767
  %12769 = zext i1 %12768 to i32
  store i32 %12769, ptr %46, align 4, !tbaa !9
  %12770 = load i32, ptr %46, align 4, !tbaa !9
  %12771 = icmp ne i32 %12770, 0
  br i1 %12771, label %12772, label %12773

12772:                                            ; preds = %12764
  br label %12783

12773:                                            ; preds = %12764
  %12774 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12774, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %12775 = load i32, ptr %47, align 4, !tbaa !9
  %12776 = load i32, ptr %46, align 4, !tbaa !9
  %12777 = add i32 %12776, %12775
  store i32 %12777, ptr %46, align 4, !tbaa !9
  br label %12821

12778:                                            ; preds = %12752
  %12779 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12779, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %12780 = load i32, ptr %47, align 4, !tbaa !9
  %12781 = load i32, ptr %46, align 4, !tbaa !9
  %12782 = add i32 %12781, %12780
  store i32 %12782, ptr %46, align 4, !tbaa !9
  br label %12821

12783:                                            ; preds = %12772
  %12784 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12784, ptr %46, align 4, !tbaa !9
  %12785 = load ptr, ptr %5, align 8, !tbaa !5
  %12786 = getelementptr inbounds %struct.w2c_hermes, ptr %12785, i32 0, i32 6
  %12787 = load i32, ptr %46, align 4, !tbaa !9
  %12788 = zext i32 %12787 to i64
  %12789 = add i64 %12788, 8
  %12790 = call i32 @i32_load(ptr noundef %12786, i64 noundef %12789)
  store i32 %12790, ptr %46, align 4, !tbaa !9
  %12791 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %12791, ptr %6, align 4, !tbaa !9
  %12792 = load ptr, ptr %5, align 8, !tbaa !5
  %12793 = getelementptr inbounds %struct.w2c_hermes, ptr %12792, i32 0, i32 6
  %12794 = load i32, ptr %46, align 4, !tbaa !9
  %12795 = zext i32 %12794 to i64
  %12796 = add i64 %12795, 12
  %12797 = call i32 @i32_load(ptr noundef %12793, i64 noundef %12796)
  store i32 %12797, ptr %46, align 4, !tbaa !9
  %12798 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12798, ptr %47, align 4, !tbaa !9
  store i32 12, ptr %48, align 4, !tbaa !9
  %12799 = load i32, ptr %48, align 4, !tbaa !9
  %12800 = load i32, ptr %47, align 4, !tbaa !9
  %12801 = add i32 %12800, %12799
  store i32 %12801, ptr %47, align 4, !tbaa !9
  %12802 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12802, ptr %48, align 4, !tbaa !9
  %12803 = load ptr, ptr %5, align 8, !tbaa !5
  %12804 = getelementptr inbounds %struct.w2c_hermes, ptr %12803, i32 0, i32 6
  %12805 = load i32, ptr %48, align 4, !tbaa !9
  %12806 = zext i32 %12805 to i64
  %12807 = add i64 %12806, 23
  %12808 = call i32 @i32_load8_s(ptr noundef %12804, i64 noundef %12807)
  store i32 %12808, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %12809 = load i32, ptr %48, align 4, !tbaa !9
  %12810 = load i32, ptr %49, align 4, !tbaa !9
  %12811 = icmp slt i32 %12809, %12810
  %12812 = zext i1 %12811 to i32
  store i32 %12812, ptr %48, align 4, !tbaa !9
  %12813 = load i32, ptr %48, align 4, !tbaa !9
  %12814 = icmp ne i32 %12813, 0
  br i1 %12814, label %12815, label %12817

12815:                                            ; preds = %12783
  %12816 = load i32, ptr %46, align 4, !tbaa !9
  br label %12819

12817:                                            ; preds = %12783
  %12818 = load i32, ptr %47, align 4, !tbaa !9
  br label %12819

12819:                                            ; preds = %12817, %12815
  %12820 = phi i32 [ %12816, %12815 ], [ %12818, %12817 ]
  store i32 %12820, ptr %46, align 4, !tbaa !9
  br label %12821

12821:                                            ; preds = %12819, %12778, %12773, %12750
  %12822 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12822, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %12823 = load i32, ptr %48, align 4, !tbaa !9
  %12824 = and i32 %12823, 31
  %12825 = load i32, ptr %47, align 4, !tbaa !9
  %12826 = shl i32 %12825, %12824
  store i32 %12826, ptr %47, align 4, !tbaa !9
  %12827 = load i32, ptr %47, align 4, !tbaa !9
  %12828 = load i32, ptr %46, align 4, !tbaa !9
  %12829 = add i32 %12828, %12827
  store i32 %12829, ptr %46, align 4, !tbaa !9
  %12830 = load ptr, ptr %5, align 8, !tbaa !5
  %12831 = getelementptr inbounds %struct.w2c_hermes, ptr %12830, i32 0, i32 6
  %12832 = load i32, ptr %46, align 4, !tbaa !9
  %12833 = zext i32 %12832 to i64
  %12834 = call i32 @i32_load16_u(ptr noundef %12831, i64 noundef %12833)
  store i32 %12834, ptr %46, align 4, !tbaa !9
  br label %12835

12835:                                            ; preds = %12821, %12703
  store i32 65535, ptr %47, align 4, !tbaa !9
  %12836 = load i32, ptr %47, align 4, !tbaa !9
  %12837 = load i32, ptr %46, align 4, !tbaa !9
  %12838 = and i32 %12837, %12836
  store i32 %12838, ptr %46, align 4, !tbaa !9
  %12839 = load ptr, ptr %5, align 8, !tbaa !5
  %12840 = load i32, ptr %45, align 4, !tbaa !9
  %12841 = load i32, ptr %46, align 4, !tbaa !9
  %12842 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AgetCharacterString0x28char16_t0x29(ptr noundef %12839, i32 noundef %12840, i32 noundef %12841)
  store i32 %12842, ptr %45, align 4, !tbaa !9
  %12843 = load ptr, ptr %5, align 8, !tbaa !5
  %12844 = getelementptr inbounds %struct.w2c_hermes, ptr %12843, i32 0, i32 6
  %12845 = load i32, ptr %45, align 4, !tbaa !9
  %12846 = zext i32 %12845 to i64
  %12847 = call i64 @i64_load(ptr noundef %12844, i64 noundef %12846)
  store i64 %12847, ptr %54, align 8, !tbaa !11
  %12848 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %12848, ptr %40, align 8, !tbaa !11
  br label %12849

12849:                                            ; preds = %12835, %12576, %12544, %12462, %12447
  %12850 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %12850, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %12851 = load i64, ptr %54, align 8, !tbaa !11
  %12852 = load i64, ptr %55, align 8, !tbaa !11
  %12853 = and i64 %12852, 63
  %12854 = ashr i64 %12851, %12853
  store i64 %12854, ptr %54, align 8, !tbaa !11
  %12855 = load i64, ptr %54, align 8, !tbaa !11
  %12856 = trunc i64 %12855 to i32
  store i32 %12856, ptr %45, align 4, !tbaa !9
  store i32 -14, ptr %46, align 4, !tbaa !9
  %12857 = load i32, ptr %45, align 4, !tbaa !9
  %12858 = load i32, ptr %46, align 4, !tbaa !9
  %12859 = icmp ne i32 %12857, %12858
  %12860 = zext i1 %12859 to i32
  store i32 %12860, ptr %45, align 4, !tbaa !9
  %12861 = load i32, ptr %45, align 4, !tbaa !9
  %12862 = icmp ne i32 %12861, 0
  br i1 %12862, label %12863, label %12878

12863:                                            ; preds = %12849
  %12864 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12864, ptr %45, align 4, !tbaa !9
  %12865 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %12865, ptr %55, align 8, !tbaa !11
  %12866 = load ptr, ptr %5, align 8, !tbaa !5
  %12867 = getelementptr inbounds %struct.w2c_hermes, ptr %12866, i32 0, i32 6
  %12868 = load i32, ptr %45, align 4, !tbaa !9
  %12869 = zext i32 %12868 to i64
  %12870 = add i64 %12869, 8
  %12871 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12867, i64 noundef %12870, i64 noundef %12871)
  %12872 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12872, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %12873 = load ptr, ptr %5, align 8, !tbaa !5
  %12874 = getelementptr inbounds %struct.w2c_hermes, ptr %12873, i32 0, i32 6
  %12875 = load i32, ptr %45, align 4, !tbaa !9
  %12876 = zext i32 %12875 to i64
  %12877 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12874, i64 noundef %12876, i32 noundef %12877)
  br label %12991

12878:                                            ; preds = %12849
  %12879 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12879, ptr %45, align 4, !tbaa !9
  %12880 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12880, ptr %46, align 4, !tbaa !9
  %12881 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12881, ptr %47, align 4, !tbaa !9
  %12882 = load ptr, ptr %5, align 8, !tbaa !5
  %12883 = load i32, ptr %45, align 4, !tbaa !9
  %12884 = load i32, ptr %46, align 4, !tbaa !9
  %12885 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %12882, i32 noundef %12883, i32 noundef %12884, i32 noundef %12885)
  %12886 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12886, ptr %45, align 4, !tbaa !9
  %12887 = load ptr, ptr %5, align 8, !tbaa !5
  %12888 = getelementptr inbounds %struct.w2c_hermes, ptr %12887, i32 0, i32 6
  %12889 = load i32, ptr %45, align 4, !tbaa !9
  %12890 = zext i32 %12889 to i64
  %12891 = call i32 @i32_load(ptr noundef %12888, i64 noundef %12890)
  store i32 %12891, ptr %45, align 4, !tbaa !9
  %12892 = load i32, ptr %45, align 4, !tbaa !9
  %12893 = icmp ne i32 %12892, 0
  %12894 = xor i1 %12893, true
  %12895 = zext i1 %12894 to i32
  store i32 %12895, ptr %45, align 4, !tbaa !9
  %12896 = load i32, ptr %45, align 4, !tbaa !9
  %12897 = icmp ne i32 %12896, 0
  br i1 %12897, label %12898, label %12912

12898:                                            ; preds = %12878
  %12899 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12899, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %12900 = load ptr, ptr %5, align 8, !tbaa !5
  %12901 = getelementptr inbounds %struct.w2c_hermes, ptr %12900, i32 0, i32 6
  %12902 = load i32, ptr %45, align 4, !tbaa !9
  %12903 = zext i32 %12902 to i64
  %12904 = add i64 %12903, 8
  %12905 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12901, i64 noundef %12904, i64 noundef %12905)
  %12906 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12906, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %12907 = load ptr, ptr %5, align 8, !tbaa !5
  %12908 = getelementptr inbounds %struct.w2c_hermes, ptr %12907, i32 0, i32 6
  %12909 = load i32, ptr %45, align 4, !tbaa !9
  %12910 = zext i32 %12909 to i64
  %12911 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12908, i64 noundef %12910, i32 noundef %12911)
  br label %12991

12912:                                            ; preds = %12878
  %12913 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12913, ptr %45, align 4, !tbaa !9
  %12914 = load ptr, ptr %5, align 8, !tbaa !5
  %12915 = getelementptr inbounds %struct.w2c_hermes, ptr %12914, i32 0, i32 6
  %12916 = load i32, ptr %45, align 4, !tbaa !9
  %12917 = zext i32 %12916 to i64
  %12918 = add i64 %12917, 8
  %12919 = call i64 @i64_load32_u(ptr noundef %12915, i64 noundef %12918)
  store i64 %12919, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %12920 = load i64, ptr %55, align 8, !tbaa !11
  %12921 = load i64, ptr %54, align 8, !tbaa !11
  %12922 = or i64 %12921, %12920
  store i64 %12922, ptr %54, align 8, !tbaa !11
  %12923 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %12923, ptr %39, align 8, !tbaa !11
  %12924 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12924, ptr %45, align 4, !tbaa !9
  %12925 = load ptr, ptr %5, align 8, !tbaa !5
  %12926 = getelementptr inbounds %struct.w2c_hermes, ptr %12925, i32 0, i32 6
  %12927 = load i32, ptr %45, align 4, !tbaa !9
  %12928 = zext i32 %12927 to i64
  %12929 = add i64 %12928, 4
  %12930 = call i32 @i32_load(ptr noundef %12926, i64 noundef %12929)
  store i32 %12930, ptr %45, align 4, !tbaa !9
  %12931 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12931, ptr %7, align 4, !tbaa !9
  %12932 = load ptr, ptr %5, align 8, !tbaa !5
  %12933 = getelementptr inbounds %struct.w2c_hermes, ptr %12932, i32 0, i32 6
  %12934 = load i32, ptr %45, align 4, !tbaa !9
  %12935 = zext i32 %12934 to i64
  %12936 = add i64 %12935, 164
  %12937 = call i32 @i32_load(ptr noundef %12933, i64 noundef %12936)
  store i32 %12937, ptr %45, align 4, !tbaa !9
  %12938 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12938, ptr %6, align 4, !tbaa !9
  %12939 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12939, ptr %46, align 4, !tbaa !9
  %12940 = load ptr, ptr %5, align 8, !tbaa !5
  %12941 = getelementptr inbounds %struct.w2c_hermes, ptr %12940, i32 0, i32 6
  %12942 = load i32, ptr %46, align 4, !tbaa !9
  %12943 = zext i32 %12942 to i64
  %12944 = add i64 %12943, 168
  %12945 = call i32 @i32_load(ptr noundef %12941, i64 noundef %12944)
  store i32 %12945, ptr %46, align 4, !tbaa !9
  %12946 = load i32, ptr %45, align 4, !tbaa !9
  %12947 = load i32, ptr %46, align 4, !tbaa !9
  %12948 = icmp ult i32 %12946, %12947
  %12949 = zext i1 %12948 to i32
  store i32 %12949, ptr %45, align 4, !tbaa !9
  %12950 = load i32, ptr %45, align 4, !tbaa !9
  %12951 = icmp ne i32 %12950, 0
  br i1 %12951, label %12952, label %12971

12952:                                            ; preds = %12912
  %12953 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12953, ptr %45, align 4, !tbaa !9
  %12954 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12954, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %12955 = load i32, ptr %47, align 4, !tbaa !9
  %12956 = load i32, ptr %46, align 4, !tbaa !9
  %12957 = add i32 %12956, %12955
  store i32 %12957, ptr %46, align 4, !tbaa !9
  %12958 = load ptr, ptr %5, align 8, !tbaa !5
  %12959 = getelementptr inbounds %struct.w2c_hermes, ptr %12958, i32 0, i32 6
  %12960 = load i32, ptr %45, align 4, !tbaa !9
  %12961 = zext i32 %12960 to i64
  %12962 = add i64 %12961, 164
  %12963 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12959, i64 noundef %12962, i32 noundef %12963)
  %12964 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12964, ptr %45, align 4, !tbaa !9
  %12965 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %12965, ptr %55, align 8, !tbaa !11
  %12966 = load ptr, ptr %5, align 8, !tbaa !5
  %12967 = getelementptr inbounds %struct.w2c_hermes, ptr %12966, i32 0, i32 6
  %12968 = load i32, ptr %45, align 4, !tbaa !9
  %12969 = zext i32 %12968 to i64
  %12970 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12967, i64 noundef %12969, i64 noundef %12970)
  br label %12979

12971:                                            ; preds = %12912
  %12972 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %12972, ptr %45, align 4, !tbaa !9
  %12973 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %12973, ptr %55, align 8, !tbaa !11
  %12974 = load ptr, ptr %5, align 8, !tbaa !5
  %12975 = load i32, ptr %45, align 4, !tbaa !9
  %12976 = load i64, ptr %55, align 8, !tbaa !11
  %12977 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %12974, i32 noundef %12975, i64 noundef %12976)
  store i32 %12977, ptr %45, align 4, !tbaa !9
  %12978 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %12978, ptr %6, align 4, !tbaa !9
  br label %12979

12979:                                            ; preds = %12971, %12952
  %12980 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12980, ptr %45, align 4, !tbaa !9
  %12981 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %12981, ptr %46, align 4, !tbaa !9
  %12982 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12982, ptr %47, align 4, !tbaa !9
  %12983 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %12983, ptr %48, align 4, !tbaa !9
  %12984 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12984, ptr %49, align 4, !tbaa !9
  %12985 = load ptr, ptr %5, align 8, !tbaa !5
  %12986 = load i32, ptr %45, align 4, !tbaa !9
  %12987 = load i32, ptr %46, align 4, !tbaa !9
  %12988 = load i32, ptr %47, align 4, !tbaa !9
  %12989 = load i32, ptr %48, align 4, !tbaa !9
  %12990 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %12985, i32 noundef %12986, i32 noundef %12987, i32 noundef %12988, i32 noundef %12989, i32 noundef %12990)
  br label %12991

12991:                                            ; preds = %12979, %12898, %12863
  %12992 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12992, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %12993 = load i32, ptr %46, align 4, !tbaa !9
  %12994 = load i32, ptr %45, align 4, !tbaa !9
  %12995 = add i32 %12994, %12993
  store i32 %12995, ptr %45, align 4, !tbaa !9
  %12996 = load i32, ptr %45, align 4, !tbaa !9
  %12997 = load ptr, ptr %5, align 8, !tbaa !5
  %12998 = getelementptr inbounds %struct.w2c_hermes, ptr %12997, i32 0, i32 3
  store i32 %12996, ptr %12998, align 8, !tbaa !15
  %12999 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12999, ptr %45, align 4, !tbaa !9
  %13000 = load ptr, ptr %5, align 8, !tbaa !5
  %13001 = getelementptr inbounds %struct.w2c_hermes, ptr %13000, i32 0, i32 6
  %13002 = load i32, ptr %45, align 4, !tbaa !9
  %13003 = zext i32 %13002 to i64
  %13004 = add i64 %13003, 5808
  %13005 = call i32 @i32_load(ptr noundef %13001, i64 noundef %13004)
  store i32 %13005, ptr %45, align 4, !tbaa !9
  %13006 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13006, ptr %6, align 4, !tbaa !9
  %13007 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13007, ptr %45, 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 %45, align 4, !tbaa !9
  %13011 = zext i32 %13010 to i64
  %13012 = add i64 %13011, 304
  %13013 = call i32 @i32_load(ptr noundef %13009, i64 noundef %13012)
  store i32 %13013, ptr %45, align 4, !tbaa !9
  %13014 = load i32, ptr %45, align 4, !tbaa !9
  %13015 = icmp ne i32 %13014, 0
  %13016 = xor i1 %13015, true
  %13017 = zext i1 %13016 to i32
  store i32 %13017, ptr %45, align 4, !tbaa !9
  %13018 = load i32, ptr %45, align 4, !tbaa !9
  %13019 = icmp ne i32 %13018, 0
  br i1 %13019, label %13020, label %13021

13020:                                            ; preds = %12991
  br label %43136

13021:                                            ; preds = %12991
  br label %13022

13022:                                            ; preds = %13021, %12377
  %13023 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13023, ptr %45, 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 %45, align 4, !tbaa !9
  %13027 = zext i32 %13026 to i64
  %13028 = add i64 %13027, 312
  %13029 = call i64 @i64_load(ptr noundef %13025, i64 noundef %13028)
  store i64 %13029, ptr %54, align 8, !tbaa !11
  %13030 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %13030, ptr %39, align 8, !tbaa !11
  %13031 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13031, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, 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 %45, align 4, !tbaa !9
  %13035 = zext i32 %13034 to i64
  %13036 = add i64 %13035, 516
  %13037 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13033, i64 noundef %13036, i32 noundef %13037)
  %13038 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13038, ptr %45, align 4, !tbaa !9
  %13039 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13039, ptr %46, align 4, !tbaa !9
  %13040 = load ptr, ptr %5, align 8, !tbaa !5
  %13041 = getelementptr inbounds %struct.w2c_hermes, ptr %13040, i32 0, i32 6
  %13042 = load i32, ptr %45, align 4, !tbaa !9
  %13043 = zext i32 %13042 to i64
  %13044 = add i64 %13043, 512
  %13045 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13041, i64 noundef %13044, i32 noundef %13045)
  %13046 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13046, ptr %45, align 4, !tbaa !9
  %13047 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %13047, ptr %46, align 4, !tbaa !9
  %13048 = load ptr, ptr %5, align 8, !tbaa !5
  %13049 = getelementptr inbounds %struct.w2c_hermes, ptr %13048, i32 0, i32 6
  %13050 = load i32, ptr %45, align 4, !tbaa !9
  %13051 = zext i32 %13050 to i64
  %13052 = add i64 %13051, 508
  %13053 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13049, i64 noundef %13052, i32 noundef %13053)
  %13054 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13054, ptr %45, align 4, !tbaa !9
  %13055 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13055, ptr %46, align 4, !tbaa !9
  %13056 = load ptr, ptr %5, align 8, !tbaa !5
  %13057 = getelementptr inbounds %struct.w2c_hermes, ptr %13056, i32 0, i32 6
  %13058 = load i32, ptr %46, align 4, !tbaa !9
  %13059 = zext i32 %13058 to i64
  %13060 = add i64 %13059, 1
  %13061 = call i32 @i32_load8_u(ptr noundef %13057, i64 noundef %13060)
  store i32 %13061, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13062 = load i32, ptr %47, align 4, !tbaa !9
  %13063 = and i32 %13062, 31
  %13064 = load i32, ptr %46, align 4, !tbaa !9
  %13065 = shl i32 %13064, %13063
  store i32 %13065, ptr %46, align 4, !tbaa !9
  %13066 = load i32, ptr %46, align 4, !tbaa !9
  %13067 = load i32, ptr %45, align 4, !tbaa !9
  %13068 = add i32 %13067, %13066
  store i32 %13068, ptr %45, align 4, !tbaa !9
  %13069 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %13069, ptr %55, align 8, !tbaa !11
  %13070 = load ptr, ptr %5, align 8, !tbaa !5
  %13071 = getelementptr inbounds %struct.w2c_hermes, ptr %13070, i32 0, i32 6
  %13072 = load i32, ptr %45, align 4, !tbaa !9
  %13073 = zext i32 %13072 to i64
  %13074 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13071, i64 noundef %13073, i64 noundef %13074)
  %13075 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13075, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %13076 = load i32, ptr %46, align 4, !tbaa !9
  %13077 = load i32, ptr %45, align 4, !tbaa !9
  %13078 = add i32 %13077, %13076
  store i32 %13078, ptr %45, align 4, !tbaa !9
  %13079 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13079, ptr %6, align 4, !tbaa !9
  br label %2945

13080:                                            ; preds = %3030
  %13081 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13081, ptr %45, align 4, !tbaa !9
  %13082 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13082, ptr %46, align 4, !tbaa !9
  %13083 = load ptr, ptr %5, align 8, !tbaa !5
  %13084 = getelementptr inbounds %struct.w2c_hermes, ptr %13083, i32 0, i32 6
  %13085 = load i32, ptr %46, align 4, !tbaa !9
  %13086 = zext i32 %13085 to i64
  %13087 = add i64 %13086, 1
  %13088 = call i32 @i32_load8_u(ptr noundef %13084, i64 noundef %13087)
  store i32 %13088, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13089 = load i32, ptr %47, align 4, !tbaa !9
  %13090 = and i32 %13089, 31
  %13091 = load i32, ptr %46, align 4, !tbaa !9
  %13092 = shl i32 %13091, %13090
  store i32 %13092, ptr %46, align 4, !tbaa !9
  %13093 = load i32, ptr %46, align 4, !tbaa !9
  %13094 = load i32, ptr %45, align 4, !tbaa !9
  %13095 = add i32 %13094, %13093
  store i32 %13095, ptr %45, align 4, !tbaa !9
  %13096 = load ptr, ptr %5, align 8, !tbaa !5
  %13097 = getelementptr inbounds %struct.w2c_hermes, ptr %13096, i32 0, i32 6
  %13098 = load i32, ptr %45, align 4, !tbaa !9
  %13099 = zext i32 %13098 to i64
  %13100 = add i64 %13099, 6
  %13101 = call i32 @i32_load16_s(ptr noundef %13097, i64 noundef %13100)
  store i32 %13101, ptr %45, align 4, !tbaa !9
  %13102 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13102, ptr %7, align 4, !tbaa !9
  %13103 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13103, ptr %45, align 4, !tbaa !9
  %13104 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13104, ptr %46, align 4, !tbaa !9
  %13105 = load ptr, ptr %5, align 8, !tbaa !5
  %13106 = getelementptr inbounds %struct.w2c_hermes, ptr %13105, i32 0, i32 6
  %13107 = load i32, ptr %45, align 4, !tbaa !9
  %13108 = zext i32 %13107 to i64
  %13109 = add i64 %13108, 5808
  %13110 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13106, i64 noundef %13109, i32 noundef %13110)
  %13111 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13111, ptr %45, align 4, !tbaa !9
  %13112 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13112, ptr %46, align 4, !tbaa !9
  %13113 = load ptr, ptr %5, align 8, !tbaa !5
  %13114 = getelementptr inbounds %struct.w2c_hermes, ptr %13113, i32 0, i32 6
  %13115 = load i32, ptr %46, align 4, !tbaa !9
  %13116 = zext i32 %13115 to i64
  %13117 = add i64 %13116, 3
  %13118 = call i32 @i32_load8_u(ptr noundef %13114, i64 noundef %13117)
  store i32 %13118, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13119 = load i32, ptr %47, align 4, !tbaa !9
  %13120 = and i32 %13119, 31
  %13121 = load i32, ptr %46, align 4, !tbaa !9
  %13122 = shl i32 %13121, %13120
  store i32 %13122, ptr %46, align 4, !tbaa !9
  %13123 = load i32, ptr %46, align 4, !tbaa !9
  %13124 = load i32, ptr %45, align 4, !tbaa !9
  %13125 = add i32 %13124, %13123
  store i32 %13125, ptr %45, align 4, !tbaa !9
  %13126 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13126, ptr %12, align 4, !tbaa !9
  %13127 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13127, ptr %45, align 4, !tbaa !9
  %13128 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13128, ptr %46, align 4, !tbaa !9
  %13129 = load ptr, ptr %5, align 8, !tbaa !5
  %13130 = getelementptr inbounds %struct.w2c_hermes, ptr %13129, i32 0, i32 6
  %13131 = load i32, ptr %46, align 4, !tbaa !9
  %13132 = zext i32 %13131 to i64
  %13133 = add i64 %13132, 2
  %13134 = call i32 @i32_load8_u(ptr noundef %13130, i64 noundef %13133)
  store i32 %13134, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13135 = load i32, ptr %47, align 4, !tbaa !9
  %13136 = and i32 %13135, 31
  %13137 = load i32, ptr %46, align 4, !tbaa !9
  %13138 = shl i32 %13137, %13136
  store i32 %13138, ptr %46, align 4, !tbaa !9
  %13139 = load i32, ptr %46, align 4, !tbaa !9
  %13140 = load i32, ptr %45, align 4, !tbaa !9
  %13141 = add i32 %13140, %13139
  store i32 %13141, ptr %45, align 4, !tbaa !9
  %13142 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13142, ptr %8, align 4, !tbaa !9
  %13143 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13143, ptr %45, align 4, !tbaa !9
  %13144 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13144, ptr %46, align 4, !tbaa !9
  %13145 = load ptr, ptr %5, align 8, !tbaa !5
  %13146 = getelementptr inbounds %struct.w2c_hermes, ptr %13145, i32 0, i32 6
  %13147 = load i32, ptr %46, align 4, !tbaa !9
  %13148 = zext i32 %13147 to i64
  %13149 = add i64 %13148, 1
  %13150 = call i32 @i32_load8_u(ptr noundef %13146, i64 noundef %13149)
  store i32 %13150, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13151 = load i32, ptr %47, align 4, !tbaa !9
  %13152 = and i32 %13151, 31
  %13153 = load i32, ptr %46, align 4, !tbaa !9
  %13154 = shl i32 %13153, %13152
  store i32 %13154, ptr %46, align 4, !tbaa !9
  %13155 = load i32, ptr %46, align 4, !tbaa !9
  %13156 = load i32, ptr %45, align 4, !tbaa !9
  %13157 = add i32 %13156, %13155
  store i32 %13157, ptr %45, align 4, !tbaa !9
  %13158 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13158, ptr %13, align 4, !tbaa !9
  %13159 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13159, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %13160 = load i32, ptr %45, align 4, !tbaa !9
  %13161 = load i32, ptr %46, align 4, !tbaa !9
  %13162 = icmp eq i32 %13160, %13161
  %13163 = zext i1 %13162 to i32
  store i32 %13163, ptr %45, align 4, !tbaa !9
  %13164 = load i32, ptr %45, align 4, !tbaa !9
  %13165 = icmp ne i32 %13164, 0
  br i1 %13165, label %13166, label %13223

13166:                                            ; preds = %13080
  %13167 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13167, ptr %45, align 4, !tbaa !9
  %13168 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %13168, ptr %46, align 4, !tbaa !9
  %13169 = load ptr, ptr %5, align 8, !tbaa !5
  %13170 = getelementptr inbounds %struct.w2c_hermes, ptr %13169, i32 0, i32 6
  %13171 = load i32, ptr %45, align 4, !tbaa !9
  %13172 = zext i32 %13171 to i64
  %13173 = add i64 %13172, 40
  %13174 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13170, i64 noundef %13173, i32 noundef %13174)
  %13175 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13175, ptr %45, align 4, !tbaa !9
  %13176 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %13176, ptr %46, align 4, !tbaa !9
  %13177 = load ptr, ptr %5, align 8, !tbaa !5
  %13178 = getelementptr inbounds %struct.w2c_hermes, ptr %13177, i32 0, i32 6
  %13179 = load i32, ptr %45, align 4, !tbaa !9
  %13180 = zext i32 %13179 to i64
  %13181 = add i64 %13180, 304
  %13182 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13178, i64 noundef %13181, i32 noundef %13182)
  %13183 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13183, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %13184 = load i32, ptr %46, align 4, !tbaa !9
  %13185 = load i32, ptr %45, align 4, !tbaa !9
  %13186 = add i32 %13185, %13184
  store i32 %13186, ptr %45, align 4, !tbaa !9
  %13187 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13187, ptr %46, align 4, !tbaa !9
  %13188 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13188, ptr %47, align 4, !tbaa !9
  %13189 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13189, ptr %48, align 4, !tbaa !9
  %13190 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13190, ptr %49, align 4, !tbaa !9
  %13191 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13191, ptr %50, align 4, !tbaa !9
  %13192 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13192, ptr %51, align 4, !tbaa !9
  store i32 40, ptr %52, align 4, !tbaa !9
  %13193 = load i32, ptr %52, align 4, !tbaa !9
  %13194 = load i32, ptr %51, align 4, !tbaa !9
  %13195 = add i32 %13194, %13193
  store i32 %13195, ptr %51, align 4, !tbaa !9
  %13196 = load ptr, ptr %5, align 8, !tbaa !5
  %13197 = load i32, ptr %45, align 4, !tbaa !9
  %13198 = load i32, ptr %46, align 4, !tbaa !9
  %13199 = load i32, ptr %47, align 4, !tbaa !9
  %13200 = load i32, ptr %48, align 4, !tbaa !9
  %13201 = load i32, ptr %49, align 4, !tbaa !9
  %13202 = load i32, ptr %50, align 4, !tbaa !9
  %13203 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %13196, i32 noundef %13197, i32 noundef %13198, i32 noundef %13199, i32 noundef %13200, i32 noundef %13201, i32 noundef %13202, i32 noundef %13203)
  %13204 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13204, ptr %45, align 4, !tbaa !9
  %13205 = load ptr, ptr %5, align 8, !tbaa !5
  %13206 = getelementptr inbounds %struct.w2c_hermes, ptr %13205, i32 0, i32 6
  %13207 = load i32, ptr %45, align 4, !tbaa !9
  %13208 = zext i32 %13207 to i64
  %13209 = add i64 %13208, 5808
  %13210 = call i32 @i32_load(ptr noundef %13206, i64 noundef %13209)
  store i32 %13210, ptr %45, align 4, !tbaa !9
  %13211 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13211, ptr %6, align 4, !tbaa !9
  %13212 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13212, ptr %45, align 4, !tbaa !9
  %13213 = load ptr, ptr %5, align 8, !tbaa !5
  %13214 = getelementptr inbounds %struct.w2c_hermes, ptr %13213, i32 0, i32 6
  %13215 = load i32, ptr %45, align 4, !tbaa !9
  %13216 = zext i32 %13215 to i64
  %13217 = add i64 %13216, 256
  %13218 = call i32 @i32_load8_u(ptr noundef %13214, i64 noundef %13217)
  store i32 %13218, ptr %45, align 4, !tbaa !9
  %13219 = load i32, ptr %45, align 4, !tbaa !9
  %13220 = icmp ne i32 %13219, 0
  br i1 %13220, label %13221, label %13222

13221:                                            ; preds = %13166
  br label %13275

13222:                                            ; preds = %13166
  br label %43136

13223:                                            ; preds = %13080
  %13224 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13224, ptr %45, align 4, !tbaa !9
  %13225 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13225, ptr %46, align 4, !tbaa !9
  %13226 = load ptr, ptr %5, align 8, !tbaa !5
  %13227 = load i32, ptr %45, align 4, !tbaa !9
  %13228 = load i32, ptr %46, align 4, !tbaa !9
  %13229 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AvalueToSymbolID0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %13226, i32 noundef %13227, i32 noundef %13228)
  store i32 %13229, ptr %45, align 4, !tbaa !9
  %13230 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13230, ptr %6, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %13231 = load i32, ptr %45, align 4, !tbaa !9
  %13232 = load i32, ptr %46, align 4, !tbaa !9
  %13233 = icmp eq i32 %13231, %13232
  %13234 = zext i1 %13233 to i32
  store i32 %13234, ptr %45, align 4, !tbaa !9
  %13235 = load i32, ptr %45, align 4, !tbaa !9
  %13236 = icmp ne i32 %13235, 0
  br i1 %13236, label %13237, label %13238

13237:                                            ; preds = %13223
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %13256

13238:                                            ; preds = %13223
  %13239 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13239, ptr %45, align 4, !tbaa !9
  %13240 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %13240, ptr %46, align 4, !tbaa !9
  %13241 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13241, ptr %47, align 4, !tbaa !9
  %13242 = load ptr, ptr %5, align 8, !tbaa !5
  %13243 = getelementptr inbounds %struct.w2c_hermes, ptr %13242, i32 0, i32 6
  %13244 = load i32, ptr %47, align 4, !tbaa !9
  %13245 = zext i32 %13244 to i64
  %13246 = call i32 @i32_load(ptr noundef %13243, i64 noundef %13245)
  store i32 %13246, ptr %47, align 4, !tbaa !9
  %13247 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13247, ptr %48, align 4, !tbaa !9
  %13248 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %13248, ptr %49, align 4, !tbaa !9
  %13249 = load ptr, ptr %5, align 8, !tbaa !5
  %13250 = load i32, ptr %45, align 4, !tbaa !9
  %13251 = load i32, ptr %46, align 4, !tbaa !9
  %13252 = load i32, ptr %47, align 4, !tbaa !9
  %13253 = load i32, ptr %48, align 4, !tbaa !9
  %13254 = load i32, ptr %49, align 4, !tbaa !9
  %13255 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AputByIdTransient_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef %13249, i32 noundef %13250, i32 noundef %13251, i32 noundef %13252, i32 noundef %13253, i32 noundef %13254)
  store i32 %13255, ptr %45, align 4, !tbaa !9
  br label %13256

13256:                                            ; preds = %13238, %13237
  %13257 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13257, ptr %7, align 4, !tbaa !9
  %13258 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13258, ptr %45, align 4, !tbaa !9
  %13259 = load ptr, ptr %5, align 8, !tbaa !5
  %13260 = getelementptr inbounds %struct.w2c_hermes, ptr %13259, i32 0, i32 6
  %13261 = load i32, ptr %45, align 4, !tbaa !9
  %13262 = zext i32 %13261 to i64
  %13263 = add i64 %13262, 5808
  %13264 = call i32 @i32_load(ptr noundef %13260, i64 noundef %13263)
  store i32 %13264, ptr %45, align 4, !tbaa !9
  %13265 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13265, ptr %6, align 4, !tbaa !9
  %13266 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13266, ptr %45, align 4, !tbaa !9
  %13267 = load i32, ptr %45, align 4, !tbaa !9
  %13268 = icmp ne i32 %13267, 0
  %13269 = xor i1 %13268, true
  %13270 = zext i1 %13269 to i32
  store i32 %13270, ptr %45, align 4, !tbaa !9
  %13271 = load i32, ptr %45, align 4, !tbaa !9
  %13272 = icmp ne i32 %13271, 0
  br i1 %13272, label %13273, label %13274

13273:                                            ; preds = %13256
  br label %43136

13274:                                            ; preds = %13256
  br label %13275

13275:                                            ; preds = %13274, %13221
  %13276 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13276, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %13277 = load ptr, ptr %5, align 8, !tbaa !5
  %13278 = getelementptr inbounds %struct.w2c_hermes, ptr %13277, i32 0, i32 6
  %13279 = load i32, ptr %45, align 4, !tbaa !9
  %13280 = zext i32 %13279 to i64
  %13281 = add i64 %13280, 516
  %13282 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13278, i64 noundef %13281, i32 noundef %13282)
  %13283 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13283, ptr %45, align 4, !tbaa !9
  %13284 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13284, ptr %46, align 4, !tbaa !9
  %13285 = load ptr, ptr %5, align 8, !tbaa !5
  %13286 = getelementptr inbounds %struct.w2c_hermes, ptr %13285, i32 0, i32 6
  %13287 = load i32, ptr %45, align 4, !tbaa !9
  %13288 = zext i32 %13287 to i64
  %13289 = add i64 %13288, 512
  %13290 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13286, i64 noundef %13289, i32 noundef %13290)
  %13291 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13291, ptr %45, align 4, !tbaa !9
  %13292 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %13292, ptr %46, align 4, !tbaa !9
  %13293 = load ptr, ptr %5, align 8, !tbaa !5
  %13294 = getelementptr inbounds %struct.w2c_hermes, ptr %13293, i32 0, i32 6
  %13295 = load i32, ptr %45, align 4, !tbaa !9
  %13296 = zext i32 %13295 to i64
  %13297 = add i64 %13296, 508
  %13298 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13294, i64 noundef %13297, i32 noundef %13298)
  %13299 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13299, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %13300 = load i32, ptr %46, align 4, !tbaa !9
  %13301 = load i32, ptr %45, align 4, !tbaa !9
  %13302 = add i32 %13301, %13300
  store i32 %13302, ptr %45, align 4, !tbaa !9
  %13303 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13303, ptr %6, align 4, !tbaa !9
  br label %2945

13304:                                            ; preds = %3031
  %13305 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13305, ptr %45, align 4, !tbaa !9
  %13306 = load ptr, ptr %5, align 8, !tbaa !5
  %13307 = getelementptr inbounds %struct.w2c_hermes, ptr %13306, i32 0, i32 6
  %13308 = load i32, ptr %45, align 4, !tbaa !9
  %13309 = zext i32 %13308 to i64
  %13310 = add i64 %13309, 3
  %13311 = call i32 @i32_load(ptr noundef %13307, i64 noundef %13310)
  store i32 %13311, ptr %45, align 4, !tbaa !9
  %13312 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13312, ptr %12, align 4, !tbaa !9
  %13313 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13313, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %13314 = load i32, ptr %46, align 4, !tbaa !9
  %13315 = load i32, ptr %45, align 4, !tbaa !9
  %13316 = add i32 %13315, %13314
  store i32 %13316, ptr %45, align 4, !tbaa !9
  br label %13330

13317:                                            ; preds = %3032
  %13318 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13318, ptr %45, align 4, !tbaa !9
  %13319 = load ptr, ptr %5, align 8, !tbaa !5
  %13320 = getelementptr inbounds %struct.w2c_hermes, ptr %13319, i32 0, i32 6
  %13321 = load i32, ptr %45, align 4, !tbaa !9
  %13322 = zext i32 %13321 to i64
  %13323 = add i64 %13322, 3
  %13324 = call i32 @i32_load8_u(ptr noundef %13320, i64 noundef %13323)
  store i32 %13324, ptr %45, align 4, !tbaa !9
  %13325 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13325, ptr %12, align 4, !tbaa !9
  %13326 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13326, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %13327 = load i32, ptr %46, align 4, !tbaa !9
  %13328 = load i32, ptr %45, align 4, !tbaa !9
  %13329 = add i32 %13328, %13327
  store i32 %13329, ptr %45, align 4, !tbaa !9
  br label %13330

13330:                                            ; preds = %13317, %13304
  %13331 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13331, ptr %7, align 4, !tbaa !9
  %13332 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13332, ptr %45, align 4, !tbaa !9
  %13333 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13333, ptr %46, align 4, !tbaa !9
  %13334 = load i32, ptr %46, align 4, !tbaa !9
  %13335 = uitofp i32 %13334 to double
  store double %13335, ptr %61, align 8, !tbaa !13
  %13336 = load ptr, ptr %5, align 8, !tbaa !5
  %13337 = getelementptr inbounds %struct.w2c_hermes, ptr %13336, i32 0, i32 6
  %13338 = load i32, ptr %45, align 4, !tbaa !9
  %13339 = zext i32 %13338 to i64
  %13340 = add i64 %13339, 352
  %13341 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %13337, i64 noundef %13340, double noundef %13341)
  %13342 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13342, ptr %45, align 4, !tbaa !9
  %13343 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13343, ptr %46, align 4, !tbaa !9
  %13344 = load ptr, ptr %5, align 8, !tbaa !5
  %13345 = getelementptr inbounds %struct.w2c_hermes, ptr %13344, i32 0, i32 6
  %13346 = load i32, ptr %45, align 4, !tbaa !9
  %13347 = zext i32 %13346 to i64
  %13348 = add i64 %13347, 5808
  %13349 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13345, i64 noundef %13348, i32 noundef %13349)
  %13350 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13350, ptr %45, align 4, !tbaa !9
  %13351 = load ptr, ptr %5, align 8, !tbaa !5
  %13352 = getelementptr inbounds %struct.w2c_hermes, ptr %13351, i32 0, i32 6
  %13353 = load i32, ptr %45, align 4, !tbaa !9
  %13354 = zext i32 %13353 to i64
  %13355 = add i64 %13354, 1
  %13356 = call i32 @i32_load8_u(ptr noundef %13352, i64 noundef %13355)
  store i32 %13356, ptr %45, align 4, !tbaa !9
  %13357 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13357, ptr %8, align 4, !tbaa !9
  %13358 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13358, ptr %45, align 4, !tbaa !9
  store i32 319, ptr %46, align 4, !tbaa !9
  %13359 = load ptr, ptr %5, align 8, !tbaa !5
  %13360 = getelementptr inbounds %struct.w2c_hermes, ptr %13359, i32 0, i32 6
  %13361 = load i32, ptr %45, align 4, !tbaa !9
  %13362 = zext i32 %13361 to i64
  %13363 = add i64 %13362, 252
  %13364 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13360, i64 noundef %13363, i32 noundef %13364)
  %13365 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13365, ptr %45, align 4, !tbaa !9
  %13366 = load ptr, ptr %5, align 8, !tbaa !5
  %13367 = getelementptr inbounds %struct.w2c_hermes, ptr %13366, i32 0, i32 6
  %13368 = load i32, ptr %45, align 4, !tbaa !9
  %13369 = zext i32 %13368 to i64
  %13370 = add i64 %13369, 2
  %13371 = call i32 @i32_load8_u(ptr noundef %13367, i64 noundef %13370)
  store i32 %13371, ptr %45, align 4, !tbaa !9
  %13372 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13372, ptr %6, align 4, !tbaa !9
  %13373 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13373, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %13374 = load ptr, ptr %5, align 8, !tbaa !5
  %13375 = getelementptr inbounds %struct.w2c_hermes, ptr %13374, i32 0, i32 6
  %13376 = load i32, ptr %45, align 4, !tbaa !9
  %13377 = zext i32 %13376 to i64
  %13378 = add i64 %13377, 248
  %13379 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13375, i64 noundef %13378, i32 noundef %13379)
  %13380 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13380, ptr %45, align 4, !tbaa !9
  store i32 319, ptr %46, align 4, !tbaa !9
  %13381 = load ptr, ptr %5, align 8, !tbaa !5
  %13382 = getelementptr inbounds %struct.w2c_hermes, ptr %13381, i32 0, i32 6
  %13383 = load i32, ptr %45, align 4, !tbaa !9
  %13384 = zext i32 %13383 to i64
  %13385 = add i64 %13384, 48
  %13386 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13382, i64 noundef %13385, i32 noundef %13386)
  %13387 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13387, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %13388 = load ptr, ptr %5, align 8, !tbaa !5
  %13389 = getelementptr inbounds %struct.w2c_hermes, ptr %13388, i32 0, i32 6
  %13390 = load i32, ptr %45, align 4, !tbaa !9
  %13391 = zext i32 %13390 to i64
  %13392 = add i64 %13391, 44
  %13393 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13389, i64 noundef %13392, i32 noundef %13393)
  %13394 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13394, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %13395 = load i32, ptr %46, align 4, !tbaa !9
  %13396 = load i32, ptr %45, align 4, !tbaa !9
  %13397 = add i32 %13396, %13395
  store i32 %13397, ptr %45, align 4, !tbaa !9
  %13398 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13398, ptr %46, align 4, !tbaa !9
  %13399 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13399, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %13400 = load i32, ptr %48, align 4, !tbaa !9
  %13401 = and i32 %13400, 31
  %13402 = load i32, ptr %47, align 4, !tbaa !9
  %13403 = shl i32 %13402, %13401
  store i32 %13403, ptr %47, align 4, !tbaa !9
  %13404 = load i32, ptr %47, align 4, !tbaa !9
  %13405 = load i32, ptr %46, align 4, !tbaa !9
  %13406 = add i32 %13405, %13404
  store i32 %13406, ptr %46, align 4, !tbaa !9
  %13407 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13407, ptr %47, align 4, !tbaa !9
  %13408 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %13408, ptr %48, align 4, !tbaa !9
  %13409 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13409, ptr %49, align 4, !tbaa !9
  store i32 48, ptr %50, align 4, !tbaa !9
  %13410 = load i32, ptr %50, align 4, !tbaa !9
  %13411 = load i32, ptr %49, align 4, !tbaa !9
  %13412 = add i32 %13411, %13410
  store i32 %13412, ptr %49, align 4, !tbaa !9
  %13413 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13413, ptr %50, align 4, !tbaa !9
  %13414 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13414, ptr %51, align 4, !tbaa !9
  store i32 3, ptr %52, align 4, !tbaa !9
  %13415 = load i32, ptr %52, align 4, !tbaa !9
  %13416 = and i32 %13415, 31
  %13417 = load i32, ptr %51, align 4, !tbaa !9
  %13418 = shl i32 %13417, %13416
  store i32 %13418, ptr %51, align 4, !tbaa !9
  %13419 = load i32, ptr %51, align 4, !tbaa !9
  %13420 = load i32, ptr %50, align 4, !tbaa !9
  %13421 = add i32 %13420, %13419
  store i32 %13421, ptr %50, align 4, !tbaa !9
  %13422 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13422, ptr %51, align 4, !tbaa !9
  store i32 44, ptr %52, align 4, !tbaa !9
  %13423 = load i32, ptr %52, align 4, !tbaa !9
  %13424 = load i32, ptr %51, align 4, !tbaa !9
  %13425 = add i32 %13424, %13423
  store i32 %13425, ptr %51, align 4, !tbaa !9
  %13426 = load ptr, ptr %5, align 8, !tbaa !5
  %13427 = load i32, ptr %45, align 4, !tbaa !9
  %13428 = load i32, ptr %46, align 4, !tbaa !9
  %13429 = load i32, ptr %47, align 4, !tbaa !9
  %13430 = load i32, ptr %48, align 4, !tbaa !9
  %13431 = load i32, ptr %49, align 4, !tbaa !9
  %13432 = load i32, ptr %50, align 4, !tbaa !9
  %13433 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputedPrimitive0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %13426, i32 noundef %13427, i32 noundef %13428, i32 noundef %13429, i32 noundef %13430, i32 noundef %13431, i32 noundef %13432, i32 noundef %13433)
  %13434 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13434, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %13435 = load ptr, ptr %5, align 8, !tbaa !5
  %13436 = getelementptr inbounds %struct.w2c_hermes, ptr %13435, i32 0, i32 6
  %13437 = load i32, ptr %45, align 4, !tbaa !9
  %13438 = zext i32 %13437 to i64
  %13439 = add i64 %13438, 516
  %13440 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13436, i64 noundef %13439, i32 noundef %13440)
  %13441 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13441, ptr %45, align 4, !tbaa !9
  %13442 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13442, ptr %46, align 4, !tbaa !9
  %13443 = load ptr, ptr %5, align 8, !tbaa !5
  %13444 = getelementptr inbounds %struct.w2c_hermes, ptr %13443, i32 0, i32 6
  %13445 = load i32, ptr %45, align 4, !tbaa !9
  %13446 = zext i32 %13445 to i64
  %13447 = add i64 %13446, 512
  %13448 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13444, i64 noundef %13447, i32 noundef %13448)
  %13449 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13449, ptr %45, align 4, !tbaa !9
  %13450 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %13450, ptr %46, align 4, !tbaa !9
  %13451 = load ptr, ptr %5, align 8, !tbaa !5
  %13452 = getelementptr inbounds %struct.w2c_hermes, ptr %13451, i32 0, i32 6
  %13453 = load i32, ptr %45, align 4, !tbaa !9
  %13454 = zext i32 %13453 to i64
  %13455 = add i64 %13454, 508
  %13456 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13452, i64 noundef %13455, i32 noundef %13456)
  %13457 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13457, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %13458 = load ptr, ptr %5, align 8, !tbaa !5
  %13459 = getelementptr inbounds %struct.w2c_hermes, ptr %13458, i32 0, i32 6
  %13460 = load i32, ptr %45, align 4, !tbaa !9
  %13461 = zext i32 %13460 to i64
  %13462 = add i64 %13461, 352
  %13463 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13459, i64 noundef %13462, i64 noundef %13463)
  %13464 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13464, ptr %45, align 4, !tbaa !9
  %13465 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13465, ptr %6, align 4, !tbaa !9
  br label %2945

13466:                                            ; preds = %3033
  %13467 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13467, ptr %45, align 4, !tbaa !9
  %13468 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13468, ptr %46, align 4, !tbaa !9
  %13469 = load ptr, ptr %5, align 8, !tbaa !5
  %13470 = getelementptr inbounds %struct.w2c_hermes, ptr %13469, i32 0, i32 6
  %13471 = load i32, ptr %45, align 4, !tbaa !9
  %13472 = zext i32 %13471 to i64
  %13473 = add i64 %13472, 5808
  %13474 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13470, i64 noundef %13473, i32 noundef %13474)
  %13475 = load ptr, ptr %5, align 8, !tbaa !5
  %13476 = getelementptr inbounds %struct.w2c_hermes, ptr %13475, i32 0, i32 3
  %13477 = load i32, ptr %13476, align 8, !tbaa !15
  store i32 %13477, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %13478 = load i32, ptr %46, align 4, !tbaa !9
  %13479 = load i32, ptr %45, align 4, !tbaa !9
  %13480 = sub i32 %13479, %13478
  store i32 %13480, ptr %45, align 4, !tbaa !9
  %13481 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13481, ptr %12, align 4, !tbaa !9
  %13482 = load i32, ptr %45, align 4, !tbaa !9
  %13483 = load ptr, ptr %5, align 8, !tbaa !5
  %13484 = getelementptr inbounds %struct.w2c_hermes, ptr %13483, i32 0, i32 3
  store i32 %13482, ptr %13484, align 8, !tbaa !15
  %13485 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13485, ptr %45, align 4, !tbaa !9
  %13486 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13486, ptr %46, align 4, !tbaa !9
  %13487 = load ptr, ptr %5, align 8, !tbaa !5
  %13488 = getelementptr inbounds %struct.w2c_hermes, ptr %13487, i32 0, i32 6
  %13489 = load i32, ptr %46, align 4, !tbaa !9
  %13490 = zext i32 %13489 to i64
  %13491 = add i64 %13490, 2
  %13492 = call i32 @i32_load8_u(ptr noundef %13488, i64 noundef %13491)
  store i32 %13492, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13493 = load i32, ptr %47, align 4, !tbaa !9
  %13494 = and i32 %13493, 31
  %13495 = load i32, ptr %46, align 4, !tbaa !9
  %13496 = shl i32 %13495, %13494
  store i32 %13496, ptr %46, align 4, !tbaa !9
  %13497 = load i32, ptr %46, align 4, !tbaa !9
  %13498 = load i32, ptr %45, align 4, !tbaa !9
  %13499 = add i32 %13498, %13497
  store i32 %13499, ptr %45, align 4, !tbaa !9
  %13500 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13500, ptr %7, align 4, !tbaa !9
  %13501 = load ptr, ptr %5, align 8, !tbaa !5
  %13502 = getelementptr inbounds %struct.w2c_hermes, ptr %13501, i32 0, i32 6
  %13503 = load i32, ptr %45, align 4, !tbaa !9
  %13504 = zext i32 %13503 to i64
  %13505 = call i64 @i64_load(ptr noundef %13502, i64 noundef %13504)
  store i64 %13505, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %13506 = load i64, ptr %54, align 8, !tbaa !11
  %13507 = load i64, ptr %55, align 8, !tbaa !11
  %13508 = and i64 %13507, 63
  %13509 = ashr i64 %13506, %13508
  store i64 %13509, ptr %54, align 8, !tbaa !11
  store i64 4294967294, ptr %55, align 8, !tbaa !11
  %13510 = load i64, ptr %55, align 8, !tbaa !11
  %13511 = load i64, ptr %54, align 8, !tbaa !11
  %13512 = and i64 %13511, %13510
  store i64 %13512, ptr %54, align 8, !tbaa !11
  store i64 4294967284, ptr %55, align 8, !tbaa !11
  %13513 = load i64, ptr %54, align 8, !tbaa !11
  %13514 = load i64, ptr %55, align 8, !tbaa !11
  %13515 = icmp eq i64 %13513, %13514
  %13516 = zext i1 %13515 to i32
  store i32 %13516, ptr %45, align 4, !tbaa !9
  %13517 = load i32, ptr %45, align 4, !tbaa !9
  %13518 = icmp ne i32 %13517, 0
  br i1 %13518, label %13519, label %13540

13519:                                            ; preds = %13466
  %13520 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13520, ptr %45, align 4, !tbaa !9
  %13521 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13521, ptr %46, align 4, !tbaa !9
  %13522 = load ptr, ptr %5, align 8, !tbaa !5
  %13523 = getelementptr inbounds %struct.w2c_hermes, ptr %13522, i32 0, i32 6
  %13524 = load i32, ptr %46, align 4, !tbaa !9
  %13525 = zext i32 %13524 to i64
  %13526 = add i64 %13525, 1
  %13527 = call i32 @i32_load8_u(ptr noundef %13523, i64 noundef %13526)
  store i32 %13527, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13528 = load i32, ptr %47, align 4, !tbaa !9
  %13529 = and i32 %13528, 31
  %13530 = load i32, ptr %46, align 4, !tbaa !9
  %13531 = shl i32 %13530, %13529
  store i32 %13531, ptr %46, align 4, !tbaa !9
  %13532 = load i32, ptr %46, align 4, !tbaa !9
  %13533 = load i32, ptr %45, align 4, !tbaa !9
  %13534 = add i32 %13533, %13532
  store i32 %13534, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %13535 = load ptr, ptr %5, align 8, !tbaa !5
  %13536 = getelementptr inbounds %struct.w2c_hermes, ptr %13535, i32 0, i32 6
  %13537 = load i32, ptr %45, align 4, !tbaa !9
  %13538 = zext i32 %13537 to i64
  %13539 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13536, i64 noundef %13538, i64 noundef %13539)
  br label %13767

13540:                                            ; preds = %13466
  %13541 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13541, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %13542 = load i32, ptr %46, align 4, !tbaa !9
  %13543 = load i32, ptr %45, align 4, !tbaa !9
  %13544 = add i32 %13543, %13542
  store i32 %13544, ptr %45, align 4, !tbaa !9
  %13545 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13545, ptr %46, align 4, !tbaa !9
  %13546 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13546, ptr %47, align 4, !tbaa !9
  %13547 = load ptr, ptr %5, align 8, !tbaa !5
  %13548 = load i32, ptr %45, align 4, !tbaa !9
  %13549 = load i32, ptr %46, align 4, !tbaa !9
  %13550 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %13547, i32 noundef %13548, i32 noundef %13549, i32 noundef %13550)
  store i32 0, ptr %45, align 4, !tbaa !9
  %13551 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13551, ptr %46, align 4, !tbaa !9
  %13552 = load ptr, ptr %5, align 8, !tbaa !5
  %13553 = getelementptr inbounds %struct.w2c_hermes, ptr %13552, i32 0, i32 6
  %13554 = load i32, ptr %46, align 4, !tbaa !9
  %13555 = zext i32 %13554 to i64
  %13556 = add i64 %13555, 16
  %13557 = call i32 @i32_load(ptr noundef %13553, i64 noundef %13556)
  store i32 %13557, ptr %46, align 4, !tbaa !9
  %13558 = load i32, ptr %46, align 4, !tbaa !9
  %13559 = icmp ne i32 %13558, 0
  %13560 = xor i1 %13559, true
  %13561 = zext i1 %13560 to i32
  store i32 %13561, ptr %46, align 4, !tbaa !9
  %13562 = load i32, ptr %46, align 4, !tbaa !9
  %13563 = icmp ne i32 %13562, 0
  br i1 %13563, label %13564, label %13565

13564:                                            ; preds = %13540
  br label %13768

13565:                                            ; preds = %13540
  %13566 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13566, ptr %45, align 4, !tbaa !9
  %13567 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13567, ptr %46, align 4, !tbaa !9
  %13568 = load ptr, ptr %5, align 8, !tbaa !5
  %13569 = getelementptr inbounds %struct.w2c_hermes, ptr %13568, i32 0, i32 6
  %13570 = load i32, ptr %46, align 4, !tbaa !9
  %13571 = zext i32 %13570 to i64
  %13572 = add i64 %13571, 2
  %13573 = call i32 @i32_load8_u(ptr noundef %13569, i64 noundef %13572)
  store i32 %13573, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13574 = load i32, ptr %47, align 4, !tbaa !9
  %13575 = and i32 %13574, 31
  %13576 = load i32, ptr %46, align 4, !tbaa !9
  %13577 = shl i32 %13576, %13575
  store i32 %13577, ptr %46, align 4, !tbaa !9
  %13578 = load i32, ptr %46, align 4, !tbaa !9
  %13579 = load i32, ptr %45, align 4, !tbaa !9
  %13580 = add i32 %13579, %13578
  store i32 %13580, ptr %45, align 4, !tbaa !9
  %13581 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13581, ptr %46, align 4, !tbaa !9
  %13582 = load ptr, ptr %5, align 8, !tbaa !5
  %13583 = getelementptr inbounds %struct.w2c_hermes, ptr %13582, i32 0, i32 6
  %13584 = load i32, ptr %46, align 4, !tbaa !9
  %13585 = zext i32 %13584 to i64
  %13586 = add i64 %13585, 24
  %13587 = call i64 @i64_load(ptr noundef %13583, i64 noundef %13586)
  store i64 %13587, ptr %55, align 8, !tbaa !11
  %13588 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %13588, ptr %39, align 8, !tbaa !11
  %13589 = load ptr, ptr %5, align 8, !tbaa !5
  %13590 = getelementptr inbounds %struct.w2c_hermes, ptr %13589, i32 0, i32 6
  %13591 = load i32, ptr %45, align 4, !tbaa !9
  %13592 = zext i32 %13591 to i64
  %13593 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13590, i64 noundef %13592, i64 noundef %13593)
  %13594 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %13594, ptr %54, align 8, !tbaa !11
  store i64 4294967295, ptr %55, align 8, !tbaa !11
  %13595 = load i64, ptr %55, align 8, !tbaa !11
  %13596 = load i64, ptr %54, align 8, !tbaa !11
  %13597 = and i64 %13596, %13595
  store i64 %13597, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %13598 = load i64, ptr %55, align 8, !tbaa !11
  %13599 = load i64, ptr %54, align 8, !tbaa !11
  %13600 = or i64 %13599, %13598
  store i64 %13600, ptr %54, align 8, !tbaa !11
  %13601 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %13601, ptr %39, align 8, !tbaa !11
  %13602 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13602, ptr %45, align 4, !tbaa !9
  %13603 = load ptr, ptr %5, align 8, !tbaa !5
  %13604 = getelementptr inbounds %struct.w2c_hermes, ptr %13603, i32 0, i32 6
  %13605 = load i32, ptr %45, align 4, !tbaa !9
  %13606 = zext i32 %13605 to i64
  %13607 = add i64 %13606, 4
  %13608 = call i32 @i32_load(ptr noundef %13604, i64 noundef %13607)
  store i32 %13608, ptr %45, align 4, !tbaa !9
  %13609 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13609, ptr %8, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %13613 = zext i32 %13612 to i64
  %13614 = add i64 %13613, 164
  %13615 = call i32 @i32_load(ptr noundef %13611, i64 noundef %13614)
  store i32 %13615, ptr %45, align 4, !tbaa !9
  %13616 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13616, ptr %7, align 4, !tbaa !9
  %13617 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13617, ptr %46, align 4, !tbaa !9
  %13618 = load ptr, ptr %5, align 8, !tbaa !5
  %13619 = getelementptr inbounds %struct.w2c_hermes, ptr %13618, i32 0, i32 6
  %13620 = load i32, ptr %46, align 4, !tbaa !9
  %13621 = zext i32 %13620 to i64
  %13622 = add i64 %13621, 168
  %13623 = call i32 @i32_load(ptr noundef %13619, i64 noundef %13622)
  store i32 %13623, ptr %46, align 4, !tbaa !9
  %13624 = load i32, ptr %45, align 4, !tbaa !9
  %13625 = load i32, ptr %46, align 4, !tbaa !9
  %13626 = icmp ult i32 %13624, %13625
  %13627 = zext i1 %13626 to i32
  store i32 %13627, ptr %45, align 4, !tbaa !9
  %13628 = load i32, ptr %45, align 4, !tbaa !9
  %13629 = icmp ne i32 %13628, 0
  br i1 %13629, label %13630, label %13649

13630:                                            ; preds = %13565
  %13631 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13631, ptr %45, align 4, !tbaa !9
  %13632 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13632, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %13633 = load i32, ptr %47, align 4, !tbaa !9
  %13634 = load i32, ptr %46, align 4, !tbaa !9
  %13635 = add i32 %13634, %13633
  store i32 %13635, ptr %46, align 4, !tbaa !9
  %13636 = load ptr, ptr %5, align 8, !tbaa !5
  %13637 = getelementptr inbounds %struct.w2c_hermes, ptr %13636, i32 0, i32 6
  %13638 = load i32, ptr %45, align 4, !tbaa !9
  %13639 = zext i32 %13638 to i64
  %13640 = add i64 %13639, 164
  %13641 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13637, i64 noundef %13640, i32 noundef %13641)
  %13642 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13642, ptr %45, align 4, !tbaa !9
  %13643 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %13643, ptr %55, align 8, !tbaa !11
  %13644 = load ptr, ptr %5, align 8, !tbaa !5
  %13645 = getelementptr inbounds %struct.w2c_hermes, ptr %13644, i32 0, i32 6
  %13646 = load i32, ptr %45, align 4, !tbaa !9
  %13647 = zext i32 %13646 to i64
  %13648 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13645, i64 noundef %13647, i64 noundef %13648)
  br label %13657

13649:                                            ; preds = %13565
  %13650 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %13650, ptr %45, align 4, !tbaa !9
  %13651 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %13651, ptr %55, align 8, !tbaa !11
  %13652 = load ptr, ptr %5, align 8, !tbaa !5
  %13653 = load i32, ptr %45, align 4, !tbaa !9
  %13654 = load i64, ptr %55, align 8, !tbaa !11
  %13655 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %13652, i32 noundef %13653, i64 noundef %13654)
  store i32 %13655, ptr %45, align 4, !tbaa !9
  %13656 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13656, ptr %7, align 4, !tbaa !9
  br label %13657

13657:                                            ; preds = %13649, %13630
  store i32 0, ptr %45, align 4, !tbaa !9
  %13658 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13658, ptr %46, align 4, !tbaa !9
  %13659 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13659, ptr %47, align 4, !tbaa !9
  %13660 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13660, ptr %48, align 4, !tbaa !9
  store i32 12, ptr %49, align 4, !tbaa !9
  %13661 = load i32, ptr %49, align 4, !tbaa !9
  %13662 = load i32, ptr %48, align 4, !tbaa !9
  %13663 = add i32 %13662, %13661
  store i32 %13663, ptr %48, align 4, !tbaa !9
  %13664 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13664, ptr %49, align 4, !tbaa !9
  store i32 8, ptr %50, align 4, !tbaa !9
  %13665 = load i32, ptr %50, align 4, !tbaa !9
  %13666 = load i32, ptr %49, align 4, !tbaa !9
  %13667 = add i32 %13666, %13665
  store i32 %13667, ptr %49, align 4, !tbaa !9
  %13668 = load ptr, ptr %5, align 8, !tbaa !5
  %13669 = load i32, ptr %46, align 4, !tbaa !9
  %13670 = load i32, ptr %47, align 4, !tbaa !9
  %13671 = load i32, ptr %48, align 4, !tbaa !9
  %13672 = load i32, ptr %49, align 4, !tbaa !9
  %13673 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetForInPropertyNames0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20unsigned0x20int0x260x2C0x20unsigned0x20int0x260x29(ptr noundef %13668, i32 noundef %13669, i32 noundef %13670, i32 noundef %13671, i32 noundef %13672)
  store i32 %13673, ptr %46, align 4, !tbaa !9
  %13674 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %13674, ptr %7, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %13675 = load i32, ptr %46, align 4, !tbaa !9
  %13676 = load i32, ptr %47, align 4, !tbaa !9
  %13677 = icmp eq i32 %13675, %13676
  %13678 = zext i1 %13677 to i32
  store i32 %13678, ptr %46, align 4, !tbaa !9
  %13679 = load i32, ptr %46, align 4, !tbaa !9
  %13680 = icmp ne i32 %13679, 0
  br i1 %13680, label %13681, label %13682

13681:                                            ; preds = %13657
  br label %13768

13682:                                            ; preds = %13657
  %13683 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13683, ptr %45, align 4, !tbaa !9
  %13684 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13684, ptr %46, align 4, !tbaa !9
  %13685 = load ptr, ptr %5, align 8, !tbaa !5
  %13686 = getelementptr inbounds %struct.w2c_hermes, ptr %13685, i32 0, i32 6
  %13687 = load i32, ptr %46, align 4, !tbaa !9
  %13688 = zext i32 %13687 to i64
  %13689 = add i64 %13688, 3
  %13690 = call i32 @i32_load8_u(ptr noundef %13686, i64 noundef %13689)
  store i32 %13690, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13691 = load i32, ptr %47, align 4, !tbaa !9
  %13692 = and i32 %13691, 31
  %13693 = load i32, ptr %46, align 4, !tbaa !9
  %13694 = shl i32 %13693, %13692
  store i32 %13694, ptr %46, align 4, !tbaa !9
  %13695 = load i32, ptr %46, align 4, !tbaa !9
  %13696 = load i32, ptr %45, align 4, !tbaa !9
  %13697 = add i32 %13696, %13695
  store i32 %13697, ptr %45, align 4, !tbaa !9
  %13698 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13698, ptr %46, align 4, !tbaa !9
  %13699 = load ptr, ptr %5, align 8, !tbaa !5
  %13700 = getelementptr inbounds %struct.w2c_hermes, ptr %13699, i32 0, i32 6
  %13701 = load i32, ptr %46, align 4, !tbaa !9
  %13702 = zext i32 %13701 to i64
  %13703 = add i64 %13702, 12
  %13704 = call i32 @i32_load(ptr noundef %13700, i64 noundef %13703)
  store i32 %13704, ptr %46, align 4, !tbaa !9
  %13705 = load i32, ptr %46, align 4, !tbaa !9
  %13706 = uitofp i32 %13705 to double
  store double %13706, ptr %61, align 8, !tbaa !13
  %13707 = load ptr, ptr %5, align 8, !tbaa !5
  %13708 = getelementptr inbounds %struct.w2c_hermes, ptr %13707, i32 0, i32 6
  %13709 = load i32, ptr %45, align 4, !tbaa !9
  %13710 = zext i32 %13709 to i64
  %13711 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %13708, i64 noundef %13710, double noundef %13711)
  %13712 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13712, ptr %45, align 4, !tbaa !9
  %13713 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13713, ptr %46, align 4, !tbaa !9
  %13714 = load ptr, ptr %5, align 8, !tbaa !5
  %13715 = getelementptr inbounds %struct.w2c_hermes, ptr %13714, i32 0, i32 6
  %13716 = load i32, ptr %46, align 4, !tbaa !9
  %13717 = zext i32 %13716 to i64
  %13718 = add i64 %13717, 4
  %13719 = call i32 @i32_load8_u(ptr noundef %13715, i64 noundef %13718)
  store i32 %13719, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13720 = load i32, ptr %47, align 4, !tbaa !9
  %13721 = and i32 %13720, 31
  %13722 = load i32, ptr %46, align 4, !tbaa !9
  %13723 = shl i32 %13722, %13721
  store i32 %13723, ptr %46, align 4, !tbaa !9
  %13724 = load i32, ptr %46, align 4, !tbaa !9
  %13725 = load i32, ptr %45, align 4, !tbaa !9
  %13726 = add i32 %13725, %13724
  store i32 %13726, ptr %45, align 4, !tbaa !9
  %13727 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13727, ptr %46, align 4, !tbaa !9
  %13728 = load ptr, ptr %5, align 8, !tbaa !5
  %13729 = getelementptr inbounds %struct.w2c_hermes, ptr %13728, i32 0, i32 6
  %13730 = load i32, ptr %46, align 4, !tbaa !9
  %13731 = zext i32 %13730 to i64
  %13732 = add i64 %13731, 8
  %13733 = call i32 @i32_load(ptr noundef %13729, i64 noundef %13732)
  store i32 %13733, ptr %46, align 4, !tbaa !9
  %13734 = load i32, ptr %46, align 4, !tbaa !9
  %13735 = uitofp i32 %13734 to double
  store double %13735, ptr %61, align 8, !tbaa !13
  %13736 = load ptr, ptr %5, align 8, !tbaa !5
  %13737 = getelementptr inbounds %struct.w2c_hermes, ptr %13736, i32 0, i32 6
  %13738 = load i32, ptr %45, align 4, !tbaa !9
  %13739 = zext i32 %13738 to i64
  %13740 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %13737, i64 noundef %13739, double noundef %13740)
  %13741 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13741, ptr %45, align 4, !tbaa !9
  %13742 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13742, ptr %46, align 4, !tbaa !9
  %13743 = load ptr, ptr %5, align 8, !tbaa !5
  %13744 = getelementptr inbounds %struct.w2c_hermes, ptr %13743, i32 0, i32 6
  %13745 = load i32, ptr %46, align 4, !tbaa !9
  %13746 = zext i32 %13745 to i64
  %13747 = add i64 %13746, 1
  %13748 = call i32 @i32_load8_u(ptr noundef %13744, i64 noundef %13747)
  store i32 %13748, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13749 = load i32, ptr %47, align 4, !tbaa !9
  %13750 = and i32 %13749, 31
  %13751 = load i32, ptr %46, align 4, !tbaa !9
  %13752 = shl i32 %13751, %13750
  store i32 %13752, ptr %46, align 4, !tbaa !9
  %13753 = load i32, ptr %46, align 4, !tbaa !9
  %13754 = load i32, ptr %45, align 4, !tbaa !9
  %13755 = add i32 %13754, %13753
  store i32 %13755, ptr %45, align 4, !tbaa !9
  %13756 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13756, ptr %46, 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 %46, align 4, !tbaa !9
  %13760 = zext i32 %13759 to i64
  %13761 = call i64 @i64_load(ptr noundef %13758, i64 noundef %13760)
  store i64 %13761, ptr %55, align 8, !tbaa !11
  %13762 = load ptr, ptr %5, align 8, !tbaa !5
  %13763 = getelementptr inbounds %struct.w2c_hermes, ptr %13762, i32 0, i32 6
  %13764 = load i32, ptr %45, align 4, !tbaa !9
  %13765 = zext i32 %13764 to i64
  %13766 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %13763, i64 noundef %13765, i64 noundef %13766)
  br label %13767

13767:                                            ; preds = %13682, %13519
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %13768

13768:                                            ; preds = %13767, %13681, %13564
  %13769 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13769, ptr %7, align 4, !tbaa !9
  %13770 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13770, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %13771 = load i32, ptr %46, align 4, !tbaa !9
  %13772 = load i32, ptr %45, align 4, !tbaa !9
  %13773 = add i32 %13772, %13771
  store i32 %13773, ptr %45, align 4, !tbaa !9
  %13774 = load i32, ptr %45, align 4, !tbaa !9
  %13775 = load ptr, ptr %5, align 8, !tbaa !5
  %13776 = getelementptr inbounds %struct.w2c_hermes, ptr %13775, i32 0, i32 3
  store i32 %13774, ptr %13776, align 8, !tbaa !15
  %13777 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13777, ptr %45, align 4, !tbaa !9
  %13778 = load ptr, ptr %5, align 8, !tbaa !5
  %13779 = getelementptr inbounds %struct.w2c_hermes, ptr %13778, i32 0, i32 6
  %13780 = load i32, ptr %45, align 4, !tbaa !9
  %13781 = zext i32 %13780 to i64
  %13782 = add i64 %13781, 5808
  %13783 = call i32 @i32_load(ptr noundef %13779, i64 noundef %13782)
  store i32 %13783, ptr %45, align 4, !tbaa !9
  %13784 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13784, ptr %6, align 4, !tbaa !9
  %13785 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13785, ptr %45, align 4, !tbaa !9
  %13786 = load i32, ptr %45, align 4, !tbaa !9
  %13787 = icmp ne i32 %13786, 0
  %13788 = xor i1 %13787, true
  %13789 = zext i1 %13788 to i32
  store i32 %13789, ptr %45, align 4, !tbaa !9
  %13790 = load i32, ptr %45, align 4, !tbaa !9
  %13791 = icmp ne i32 %13790, 0
  br i1 %13791, label %13792, label %13793

13792:                                            ; preds = %13768
  br label %43136

13793:                                            ; preds = %13768
  %13794 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13794, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %13795 = load ptr, ptr %5, align 8, !tbaa !5
  %13796 = getelementptr inbounds %struct.w2c_hermes, ptr %13795, i32 0, i32 6
  %13797 = load i32, ptr %45, align 4, !tbaa !9
  %13798 = zext i32 %13797 to i64
  %13799 = add i64 %13798, 516
  %13800 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13796, i64 noundef %13799, i32 noundef %13800)
  %13801 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13801, ptr %45, align 4, !tbaa !9
  %13802 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %13802, ptr %46, align 4, !tbaa !9
  %13803 = load ptr, ptr %5, align 8, !tbaa !5
  %13804 = getelementptr inbounds %struct.w2c_hermes, ptr %13803, i32 0, i32 6
  %13805 = load i32, ptr %45, align 4, !tbaa !9
  %13806 = zext i32 %13805 to i64
  %13807 = add i64 %13806, 512
  %13808 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13804, i64 noundef %13807, i32 noundef %13808)
  %13809 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %13809, ptr %45, align 4, !tbaa !9
  %13810 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %13810, ptr %46, align 4, !tbaa !9
  %13811 = load ptr, ptr %5, align 8, !tbaa !5
  %13812 = getelementptr inbounds %struct.w2c_hermes, ptr %13811, i32 0, i32 6
  %13813 = load i32, ptr %45, align 4, !tbaa !9
  %13814 = zext i32 %13813 to i64
  %13815 = add i64 %13814, 508
  %13816 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %13812, i64 noundef %13815, i32 noundef %13816)
  %13817 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13817, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %13818 = load i32, ptr %46, align 4, !tbaa !9
  %13819 = load i32, ptr %45, align 4, !tbaa !9
  %13820 = add i32 %13819, %13818
  store i32 %13820, ptr %45, align 4, !tbaa !9
  %13821 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13821, ptr %6, align 4, !tbaa !9
  br label %2945

13822:                                            ; preds = %3034
  %13823 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13823, ptr %45, align 4, !tbaa !9
  %13824 = load ptr, ptr %5, align 8, !tbaa !5
  %13825 = getelementptr inbounds %struct.w2c_hermes, ptr %13824, i32 0, i32 6
  %13826 = load i32, ptr %45, align 4, !tbaa !9
  %13827 = zext i32 %13826 to i64
  %13828 = add i64 %13827, 2
  %13829 = call i32 @i32_load8_u(ptr noundef %13825, i64 noundef %13828)
  store i32 %13829, ptr %45, align 4, !tbaa !9
  %13830 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13830, ptr %13, align 4, !tbaa !9
  %13831 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13831, ptr %45, 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 %45, align 4, !tbaa !9
  %13835 = zext i32 %13834 to i64
  %13836 = add i64 %13835, 3
  %13837 = call i32 @i32_load8_u(ptr noundef %13833, i64 noundef %13836)
  store i32 %13837, ptr %45, align 4, !tbaa !9
  %13838 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13838, ptr %14, align 4, !tbaa !9
  %13839 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %13839, ptr %45, 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 %45, align 4, !tbaa !9
  %13843 = zext i32 %13842 to i64
  %13844 = add i64 %13843, 4
  %13845 = call i32 @i32_load(ptr noundef %13841, i64 noundef %13844)
  store i32 %13845, ptr %45, align 4, !tbaa !9
  %13846 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13846, ptr %18, align 4, !tbaa !9
  %13847 = load ptr, ptr %5, align 8, !tbaa !5
  %13848 = getelementptr inbounds %struct.w2c_hermes, ptr %13847, i32 0, i32 6
  %13849 = load i32, ptr %45, align 4, !tbaa !9
  %13850 = zext i32 %13849 to i64
  %13851 = add i64 %13850, 168
  %13852 = call i32 @i32_load(ptr noundef %13848, i64 noundef %13851)
  store i32 %13852, ptr %45, align 4, !tbaa !9
  %13853 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13853, ptr %7, align 4, !tbaa !9
  %13854 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %13854, ptr %45, align 4, !tbaa !9
  %13855 = load ptr, ptr %5, align 8, !tbaa !5
  %13856 = getelementptr inbounds %struct.w2c_hermes, ptr %13855, i32 0, i32 6
  %13857 = load i32, ptr %45, align 4, !tbaa !9
  %13858 = zext i32 %13857 to i64
  %13859 = add i64 %13858, 164
  %13860 = call i32 @i32_load(ptr noundef %13856, i64 noundef %13859)
  store i32 %13860, ptr %45, align 4, !tbaa !9
  %13861 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13861, ptr %12, align 4, !tbaa !9
  %13862 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13862, ptr %45, align 4, !tbaa !9
  %13863 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13863, ptr %46, align 4, !tbaa !9
  %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 %46, align 4, !tbaa !9
  %13867 = zext i32 %13866 to i64
  %13868 = add i64 %13867, 5
  %13869 = call i32 @i32_load8_u(ptr noundef %13865, i64 noundef %13868)
  store i32 %13869, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13870 = load i32, ptr %47, align 4, !tbaa !9
  %13871 = and i32 %13870, 31
  %13872 = load i32, ptr %46, align 4, !tbaa !9
  %13873 = shl i32 %13872, %13871
  store i32 %13873, ptr %46, align 4, !tbaa !9
  %13874 = load i32, ptr %46, align 4, !tbaa !9
  %13875 = load i32, ptr %45, align 4, !tbaa !9
  %13876 = add i32 %13875, %13874
  store i32 %13876, ptr %45, align 4, !tbaa !9
  %13877 = load ptr, ptr %5, align 8, !tbaa !5
  %13878 = getelementptr inbounds %struct.w2c_hermes, ptr %13877, i32 0, i32 6
  %13879 = load i32, ptr %45, align 4, !tbaa !9
  %13880 = zext i32 %13879 to i64
  %13881 = call double @f64_load(ptr noundef %13878, i64 noundef %13880)
  store double %13881, ptr %60, align 8, !tbaa !13
  %13882 = load double, ptr %60, align 8, !tbaa !13
  store double %13882, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %13883 = load double, ptr %60, align 8, !tbaa !13
  %13884 = load double, ptr %61, align 8, !tbaa !13
  %13885 = fcmp olt double %13883, %13884
  %13886 = zext i1 %13885 to i32
  store i32 %13886, ptr %45, align 4, !tbaa !9
  %13887 = load double, ptr %43, align 8, !tbaa !13
  store double %13887, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %13888 = load double, ptr %61, align 8, !tbaa !13
  %13889 = load double, ptr %62, align 8, !tbaa !13
  %13890 = fcmp oge double %13888, %13889
  %13891 = zext i1 %13890 to i32
  store i32 %13891, ptr %46, align 4, !tbaa !9
  %13892 = load i32, ptr %46, align 4, !tbaa !9
  %13893 = load i32, ptr %45, align 4, !tbaa !9
  %13894 = and i32 %13893, %13892
  store i32 %13894, ptr %45, align 4, !tbaa !9
  %13895 = load i32, ptr %45, align 4, !tbaa !9
  %13896 = icmp ne i32 %13895, 0
  br i1 %13896, label %13897, label %13934

13897:                                            ; preds = %13822
  %13898 = load double, ptr %43, align 8, !tbaa !13
  store double %13898, ptr %60, align 8, !tbaa !13
  %13899 = load double, ptr %60, align 8, !tbaa !13
  %13900 = load double, ptr %60, align 8, !tbaa !13
  %13901 = fcmp une double %13899, %13900
  %13902 = xor i1 %13901, true
  %13903 = xor i1 %13902, true
  %13904 = zext i1 %13903 to i32
  %13905 = sext i32 %13904 to i64
  %13906 = call i64 @llvm.expect.i64(i64 %13905, i64 0)
  %13907 = icmp ne i64 %13906, 0
  br i1 %13907, label %13908, label %13910

13908:                                            ; preds = %13897
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

13909:                                            ; No predecessors!
  br label %13932

13910:                                            ; preds = %13897
  %13911 = load double, ptr %60, align 8, !tbaa !13
  %13912 = fcmp ogt double %13911, -1.000000e+00
  br i1 %13912, label %13913, label %13916

13913:                                            ; preds = %13910
  %13914 = load double, ptr %60, align 8, !tbaa !13
  %13915 = fcmp olt double %13914, 0x41F0000000000000
  br label %13916

13916:                                            ; preds = %13913, %13910
  %13917 = phi i1 [ false, %13910 ], [ %13915, %13913 ]
  %13918 = xor i1 %13917, true
  %13919 = xor i1 %13918, true
  %13920 = xor i1 %13919, true
  %13921 = zext i1 %13920 to i32
  %13922 = sext i32 %13921 to i64
  %13923 = call i64 @llvm.expect.i64(i64 %13922, i64 0)
  %13924 = icmp ne i64 %13923, 0
  br i1 %13924, label %13925, label %13927

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

13926:                                            ; No predecessors!
  br label %13930

13927:                                            ; preds = %13916
  %13928 = load double, ptr %60, align 8, !tbaa !13
  %13929 = fptoui double %13928 to i32
  br label %13930

13930:                                            ; preds = %13927, %13926
  %13931 = phi i32 [ 0, %13926 ], [ %13929, %13927 ]
  br label %13932

13932:                                            ; preds = %13930, %13909
  %13933 = phi i32 [ 0, %13909 ], [ %13931, %13930 ]
  store i32 %13933, ptr %45, align 4, !tbaa !9
  br label %13935

13934:                                            ; preds = %13822
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %13935

13935:                                            ; preds = %13934, %13932
  %13936 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13936, ptr %15, align 4, !tbaa !9
  %13937 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %13937, ptr %45, align 4, !tbaa !9
  %13938 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %13938, ptr %46, align 4, !tbaa !9
  %13939 = load i32, ptr %45, align 4, !tbaa !9
  %13940 = load i32, ptr %46, align 4, !tbaa !9
  %13941 = icmp ule i32 %13939, %13940
  %13942 = zext i1 %13941 to i32
  store i32 %13942, ptr %45, align 4, !tbaa !9
  %13943 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %13943, ptr %8, align 4, !tbaa !9
  %13944 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %13944, ptr %45, align 4, !tbaa !9
  %13945 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %13945, ptr %46, align 4, !tbaa !9
  %13946 = load ptr, ptr %5, align 8, !tbaa !5
  %13947 = getelementptr inbounds %struct.w2c_hermes, ptr %13946, i32 0, i32 6
  %13948 = load i32, ptr %46, align 4, !tbaa !9
  %13949 = zext i32 %13948 to i64
  %13950 = add i64 %13949, 4
  %13951 = call i32 @i32_load8_u(ptr noundef %13947, i64 noundef %13950)
  store i32 %13951, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %13952 = load i32, ptr %47, align 4, !tbaa !9
  %13953 = and i32 %13952, 31
  %13954 = load i32, ptr %46, align 4, !tbaa !9
  %13955 = shl i32 %13954, %13953
  store i32 %13955, ptr %46, align 4, !tbaa !9
  %13956 = load i32, ptr %46, align 4, !tbaa !9
  %13957 = load i32, ptr %45, align 4, !tbaa !9
  %13958 = add i32 %13957, %13956
  store i32 %13958, ptr %45, align 4, !tbaa !9
  %13959 = load ptr, ptr %5, align 8, !tbaa !5
  %13960 = getelementptr inbounds %struct.w2c_hermes, ptr %13959, i32 0, i32 6
  %13961 = load i32, ptr %45, align 4, !tbaa !9
  %13962 = zext i32 %13961 to i64
  %13963 = call double @f64_load(ptr noundef %13960, i64 noundef %13962)
  store double %13963, ptr %60, align 8, !tbaa !13
  %13964 = load double, ptr %60, align 8, !tbaa !13
  store double %13964, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %13965 = load double, ptr %60, align 8, !tbaa !13
  %13966 = load double, ptr %61, align 8, !tbaa !13
  %13967 = fcmp olt double %13965, %13966
  %13968 = zext i1 %13967 to i32
  store i32 %13968, ptr %45, align 4, !tbaa !9
  %13969 = load double, ptr %43, align 8, !tbaa !13
  store double %13969, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %13970 = load double, ptr %61, align 8, !tbaa !13
  %13971 = load double, ptr %62, align 8, !tbaa !13
  %13972 = fcmp oge double %13970, %13971
  %13973 = zext i1 %13972 to i32
  store i32 %13973, ptr %46, align 4, !tbaa !9
  %13974 = load i32, ptr %46, align 4, !tbaa !9
  %13975 = load i32, ptr %45, align 4, !tbaa !9
  %13976 = and i32 %13975, %13974
  store i32 %13976, ptr %45, align 4, !tbaa !9
  %13977 = load i32, ptr %45, align 4, !tbaa !9
  %13978 = icmp ne i32 %13977, 0
  br i1 %13978, label %13979, label %14016

13979:                                            ; preds = %13935
  %13980 = load double, ptr %43, align 8, !tbaa !13
  store double %13980, ptr %60, align 8, !tbaa !13
  %13981 = load double, ptr %60, align 8, !tbaa !13
  %13982 = load double, ptr %60, align 8, !tbaa !13
  %13983 = fcmp une double %13981, %13982
  %13984 = xor i1 %13983, true
  %13985 = xor i1 %13984, true
  %13986 = zext i1 %13985 to i32
  %13987 = sext i32 %13986 to i64
  %13988 = call i64 @llvm.expect.i64(i64 %13987, i64 0)
  %13989 = icmp ne i64 %13988, 0
  br i1 %13989, label %13990, label %13992

13990:                                            ; preds = %13979
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

13991:                                            ; No predecessors!
  br label %14014

13992:                                            ; preds = %13979
  %13993 = load double, ptr %60, align 8, !tbaa !13
  %13994 = fcmp ogt double %13993, -1.000000e+00
  br i1 %13994, label %13995, label %13998

13995:                                            ; preds = %13992
  %13996 = load double, ptr %60, align 8, !tbaa !13
  %13997 = fcmp olt double %13996, 0x41F0000000000000
  br label %13998

13998:                                            ; preds = %13995, %13992
  %13999 = phi i1 [ false, %13992 ], [ %13997, %13995 ]
  %14000 = xor i1 %13999, true
  %14001 = xor i1 %14000, true
  %14002 = xor i1 %14001, true
  %14003 = zext i1 %14002 to i32
  %14004 = sext i32 %14003 to i64
  %14005 = call i64 @llvm.expect.i64(i64 %14004, i64 0)
  %14006 = icmp ne i64 %14005, 0
  br i1 %14006, label %14007, label %14009

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

14008:                                            ; No predecessors!
  br label %14012

14009:                                            ; preds = %13998
  %14010 = load double, ptr %60, align 8, !tbaa !13
  %14011 = fptoui double %14010 to i32
  br label %14012

14012:                                            ; preds = %14009, %14008
  %14013 = phi i32 [ 0, %14008 ], [ %14011, %14009 ]
  br label %14014

14014:                                            ; preds = %14012, %13991
  %14015 = phi i32 [ 0, %13991 ], [ %14013, %14012 ]
  store i32 %14015, ptr %45, align 4, !tbaa !9
  br label %14017

14016:                                            ; preds = %13935
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %14017

14017:                                            ; preds = %14016, %14014
  %14018 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14018, ptr %7, align 4, !tbaa !9
  %14019 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14019, ptr %45, align 4, !tbaa !9
  %14020 = load i32, ptr %45, align 4, !tbaa !9
  %14021 = icmp ne i32 %14020, 0
  %14022 = xor i1 %14021, true
  %14023 = zext i1 %14022 to i32
  store i32 %14023, ptr %45, align 4, !tbaa !9
  %14024 = load i32, ptr %45, align 4, !tbaa !9
  %14025 = icmp ne i32 %14024, 0
  br i1 %14025, label %14026, label %14044

14026:                                            ; preds = %14017
  %14027 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14027, ptr %45, align 4, !tbaa !9
  %14028 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14028, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %14029 = load i32, ptr %47, align 4, !tbaa !9
  %14030 = load i32, ptr %46, align 4, !tbaa !9
  %14031 = add i32 %14030, %14029
  store i32 %14031, ptr %46, align 4, !tbaa !9
  %14032 = load ptr, ptr %5, align 8, !tbaa !5
  %14033 = getelementptr inbounds %struct.w2c_hermes, ptr %14032, i32 0, i32 6
  %14034 = load i32, ptr %45, align 4, !tbaa !9
  %14035 = zext i32 %14034 to i64
  %14036 = add i64 %14035, 164
  %14037 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14033, i64 noundef %14036, i32 noundef %14037)
  %14038 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14038, ptr %45, align 4, !tbaa !9
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %14039 = load ptr, ptr %5, align 8, !tbaa !5
  %14040 = getelementptr inbounds %struct.w2c_hermes, ptr %14039, i32 0, i32 6
  %14041 = load i32, ptr %45, align 4, !tbaa !9
  %14042 = zext i32 %14041 to i64
  %14043 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14040, i64 noundef %14042, i64 noundef %14043)
  br label %14051

14044:                                            ; preds = %14017
  %14045 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %14045, ptr %45, align 4, !tbaa !9
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %14046 = load ptr, ptr %5, align 8, !tbaa !5
  %14047 = load i32, ptr %45, align 4, !tbaa !9
  %14048 = load i64, ptr %55, align 8, !tbaa !11
  %14049 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %14046, i32 noundef %14047, i64 noundef %14048)
  store i32 %14049, ptr %45, align 4, !tbaa !9
  %14050 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14050, ptr %12, align 4, !tbaa !9
  br label %14051

14051:                                            ; preds = %14044, %14026
  %14052 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14052, ptr %45, align 4, !tbaa !9
  %14053 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14053, ptr %46, align 4, !tbaa !9
  %14054 = load ptr, ptr %5, align 8, !tbaa !5
  %14055 = getelementptr inbounds %struct.w2c_hermes, ptr %14054, i32 0, i32 6
  %14056 = load i32, ptr %45, align 4, !tbaa !9
  %14057 = zext i32 %14056 to i64
  %14058 = add i64 %14057, 244
  %14059 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14055, i64 noundef %14058, i32 noundef %14059)
  %14060 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14060, ptr %45, align 4, !tbaa !9
  %14061 = load ptr, ptr %5, align 8, !tbaa !5
  %14062 = getelementptr inbounds %struct.w2c_hermes, ptr %14061, i32 0, i32 6
  %14063 = load i32, ptr %45, align 4, !tbaa !9
  %14064 = zext i32 %14063 to i64
  %14065 = add i64 %14064, 4
  %14066 = call i32 @i32_load(ptr noundef %14062, i64 noundef %14065)
  store i32 %14066, ptr %45, align 4, !tbaa !9
  %14067 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14067, ptr %8, align 4, !tbaa !9
  %14068 = load ptr, ptr %5, align 8, !tbaa !5
  %14069 = getelementptr inbounds %struct.w2c_hermes, ptr %14068, i32 0, i32 6
  %14070 = load i32, ptr %45, align 4, !tbaa !9
  %14071 = zext i32 %14070 to i64
  %14072 = add i64 %14071, 164
  %14073 = call i32 @i32_load(ptr noundef %14069, i64 noundef %14072)
  store i32 %14073, ptr %45, align 4, !tbaa !9
  %14074 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14074, ptr %12, align 4, !tbaa !9
  %14075 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14075, ptr %46, align 4, !tbaa !9
  %14076 = load ptr, ptr %5, align 8, !tbaa !5
  %14077 = getelementptr inbounds %struct.w2c_hermes, ptr %14076, i32 0, i32 6
  %14078 = load i32, ptr %46, align 4, !tbaa !9
  %14079 = zext i32 %14078 to i64
  %14080 = add i64 %14079, 168
  %14081 = call i32 @i32_load(ptr noundef %14077, i64 noundef %14080)
  store i32 %14081, ptr %46, align 4, !tbaa !9
  %14082 = load i32, ptr %45, align 4, !tbaa !9
  %14083 = load i32, ptr %46, align 4, !tbaa !9
  %14084 = icmp ult i32 %14082, %14083
  %14085 = zext i1 %14084 to i32
  store i32 %14085, ptr %45, align 4, !tbaa !9
  %14086 = load i32, ptr %45, align 4, !tbaa !9
  %14087 = icmp ne i32 %14086, 0
  br i1 %14087, label %14088, label %14106

14088:                                            ; preds = %14051
  %14089 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14089, ptr %45, align 4, !tbaa !9
  %14090 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14090, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %14091 = load i32, ptr %47, align 4, !tbaa !9
  %14092 = load i32, ptr %46, align 4, !tbaa !9
  %14093 = add i32 %14092, %14091
  store i32 %14093, ptr %46, align 4, !tbaa !9
  %14094 = load ptr, ptr %5, align 8, !tbaa !5
  %14095 = getelementptr inbounds %struct.w2c_hermes, ptr %14094, i32 0, i32 6
  %14096 = load i32, ptr %45, align 4, !tbaa !9
  %14097 = zext i32 %14096 to i64
  %14098 = add i64 %14097, 164
  %14099 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14095, i64 noundef %14098, i32 noundef %14099)
  %14100 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14100, ptr %45, align 4, !tbaa !9
  store i64 -1266636858327041, ptr %55, align 8, !tbaa !11
  %14101 = load ptr, ptr %5, align 8, !tbaa !5
  %14102 = getelementptr inbounds %struct.w2c_hermes, ptr %14101, i32 0, i32 6
  %14103 = load i32, ptr %45, align 4, !tbaa !9
  %14104 = zext i32 %14103 to i64
  %14105 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14102, i64 noundef %14104, i64 noundef %14105)
  br label %14113

14106:                                            ; preds = %14051
  %14107 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14107, ptr %45, align 4, !tbaa !9
  store i64 -1266636858327041, ptr %55, align 8, !tbaa !11
  %14108 = load ptr, ptr %5, align 8, !tbaa !5
  %14109 = load i32, ptr %45, align 4, !tbaa !9
  %14110 = load i64, ptr %55, align 8, !tbaa !11
  %14111 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %14108, i32 noundef %14109, i64 noundef %14110)
  store i32 %14111, ptr %45, align 4, !tbaa !9
  %14112 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14112, ptr %12, align 4, !tbaa !9
  br label %14113

14113:                                            ; preds = %14106, %14088
  %14114 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14114, ptr %45, align 4, !tbaa !9
  %14115 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14115, ptr %46, align 4, !tbaa !9
  %14116 = load ptr, ptr %5, align 8, !tbaa !5
  %14117 = getelementptr inbounds %struct.w2c_hermes, ptr %14116, i32 0, i32 6
  %14118 = load i32, ptr %45, align 4, !tbaa !9
  %14119 = zext i32 %14118 to i64
  %14120 = add i64 %14119, 240
  %14121 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14117, i64 noundef %14120, i32 noundef %14121)
  store i64 -1688849860263936, ptr %54, align 8, !tbaa !11
  %14122 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14122, ptr %46, align 4, !tbaa !9
  %14123 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %14123, ptr %47, align 4, !tbaa !9
  %14124 = load i32, ptr %46, align 4, !tbaa !9
  %14125 = load i32, ptr %47, align 4, !tbaa !9
  %14126 = icmp uge i32 %14124, %14125
  %14127 = zext i1 %14126 to i32
  store i32 %14127, ptr %46, align 4, !tbaa !9
  %14128 = load i32, ptr %46, align 4, !tbaa !9
  %14129 = icmp ne i32 %14128, 0
  br i1 %14129, label %14130, label %14131

14130:                                            ; preds = %14113
  br label %14412

14131:                                            ; preds = %14113
  %14132 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14132, ptr %45, align 4, !tbaa !9
  %14133 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %14133, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14134 = load i32, ptr %47, align 4, !tbaa !9
  %14135 = and i32 %14134, 31
  %14136 = load i32, ptr %46, align 4, !tbaa !9
  %14137 = shl i32 %14136, %14135
  store i32 %14137, ptr %46, align 4, !tbaa !9
  %14138 = load i32, ptr %46, align 4, !tbaa !9
  %14139 = load i32, ptr %45, align 4, !tbaa !9
  %14140 = add i32 %14139, %14138
  store i32 %14140, ptr %45, align 4, !tbaa !9
  %14141 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14141, ptr %13, align 4, !tbaa !9
  %14142 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14142, ptr %45, align 4, !tbaa !9
  %14143 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %14143, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14144 = load i32, ptr %47, align 4, !tbaa !9
  %14145 = and i32 %14144, 31
  %14146 = load i32, ptr %46, align 4, !tbaa !9
  %14147 = shl i32 %14146, %14145
  store i32 %14147, ptr %46, align 4, !tbaa !9
  %14148 = load i32, ptr %46, align 4, !tbaa !9
  %14149 = load i32, ptr %45, align 4, !tbaa !9
  %14150 = add i32 %14149, %14148
  store i32 %14150, ptr %45, align 4, !tbaa !9
  %14151 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14151, ptr %12, align 4, !tbaa !9
  br label %14152

14152:                                            ; preds = %14333, %14131
  %14153 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %14153, ptr %45, align 4, !tbaa !9
  %14154 = load ptr, ptr %5, align 8, !tbaa !5
  %14155 = getelementptr inbounds %struct.w2c_hermes, ptr %14154, i32 0, i32 6
  %14156 = load i32, ptr %45, align 4, !tbaa !9
  %14157 = zext i32 %14156 to i64
  %14158 = call i32 @i32_load(ptr noundef %14155, i64 noundef %14157)
  store i32 %14158, ptr %45, align 4, !tbaa !9
  %14159 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14159, ptr %8, align 4, !tbaa !9
  %14160 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14160, ptr %45, align 4, !tbaa !9
  store i32 4095, ptr %46, align 4, !tbaa !9
  %14161 = load i32, ptr %45, align 4, !tbaa !9
  %14162 = load i32, ptr %46, align 4, !tbaa !9
  %14163 = icmp ule i32 %14161, %14162
  %14164 = zext i1 %14163 to i32
  store i32 %14164, ptr %45, align 4, !tbaa !9
  %14165 = load i32, ptr %45, align 4, !tbaa !9
  %14166 = icmp ne i32 %14165, 0
  br i1 %14166, label %14167, label %14180

14167:                                            ; preds = %14152
  %14168 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14168, ptr %45, align 4, !tbaa !9
  %14169 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14169, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14170 = load i32, ptr %47, align 4, !tbaa !9
  %14171 = and i32 %14170, 31
  %14172 = load i32, ptr %46, align 4, !tbaa !9
  %14173 = shl i32 %14172, %14171
  store i32 %14173, ptr %46, align 4, !tbaa !9
  %14174 = load i32, ptr %46, align 4, !tbaa !9
  %14175 = load i32, ptr %45, align 4, !tbaa !9
  %14176 = add i32 %14175, %14174
  store i32 %14176, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %14177 = load i32, ptr %46, align 4, !tbaa !9
  %14178 = load i32, ptr %45, align 4, !tbaa !9
  %14179 = add i32 %14178, %14177
  store i32 %14179, ptr %45, align 4, !tbaa !9
  br label %14218

14180:                                            ; preds = %14152
  %14181 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14181, ptr %45, align 4, !tbaa !9
  %14182 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14182, ptr %46, align 4, !tbaa !9
  store i32 4096, ptr %47, align 4, !tbaa !9
  %14183 = load i32, ptr %47, align 4, !tbaa !9
  %14184 = load i32, ptr %46, align 4, !tbaa !9
  %14185 = sub i32 %14184, %14183
  store i32 %14185, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %14186 = load i32, ptr %47, align 4, !tbaa !9
  %14187 = and i32 %14186, 31
  %14188 = load i32, ptr %46, align 4, !tbaa !9
  %14189 = lshr i32 %14188, %14187
  store i32 %14189, ptr %46, align 4, !tbaa !9
  store i32 33554424, ptr %47, align 4, !tbaa !9
  %14190 = load i32, ptr %47, align 4, !tbaa !9
  %14191 = load i32, ptr %46, align 4, !tbaa !9
  %14192 = and i32 %14191, %14190
  store i32 %14192, ptr %46, align 4, !tbaa !9
  %14193 = load i32, ptr %46, align 4, !tbaa !9
  %14194 = load i32, ptr %45, align 4, !tbaa !9
  %14195 = add i32 %14194, %14193
  store i32 %14195, ptr %45, align 4, !tbaa !9
  store i32 32776, ptr %46, align 4, !tbaa !9
  %14196 = load i32, ptr %46, align 4, !tbaa !9
  %14197 = load i32, ptr %45, align 4, !tbaa !9
  %14198 = add i32 %14197, %14196
  store i32 %14198, ptr %45, align 4, !tbaa !9
  %14199 = load ptr, ptr %5, align 8, !tbaa !5
  %14200 = getelementptr inbounds %struct.w2c_hermes, ptr %14199, i32 0, i32 6
  %14201 = load i32, ptr %45, align 4, !tbaa !9
  %14202 = zext i32 %14201 to i64
  %14203 = call i32 @i32_load(ptr noundef %14200, i64 noundef %14202)
  store i32 %14203, ptr %45, align 4, !tbaa !9
  %14204 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14204, ptr %46, align 4, !tbaa !9
  store i32 1023, ptr %47, align 4, !tbaa !9
  %14205 = load i32, ptr %47, align 4, !tbaa !9
  %14206 = load i32, ptr %46, align 4, !tbaa !9
  %14207 = and i32 %14206, %14205
  store i32 %14207, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14208 = load i32, ptr %47, align 4, !tbaa !9
  %14209 = and i32 %14208, 31
  %14210 = load i32, ptr %46, align 4, !tbaa !9
  %14211 = shl i32 %14210, %14209
  store i32 %14211, ptr %46, align 4, !tbaa !9
  %14212 = load i32, ptr %46, align 4, !tbaa !9
  %14213 = load i32, ptr %45, align 4, !tbaa !9
  %14214 = add i32 %14213, %14212
  store i32 %14214, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %14215 = load i32, ptr %46, align 4, !tbaa !9
  %14216 = load i32, ptr %45, align 4, !tbaa !9
  %14217 = add i32 %14216, %14215
  store i32 %14217, ptr %45, align 4, !tbaa !9
  br label %14218

14218:                                            ; preds = %14180, %14167
  %14219 = load ptr, ptr %5, align 8, !tbaa !5
  %14220 = getelementptr inbounds %struct.w2c_hermes, ptr %14219, i32 0, i32 6
  %14221 = load i32, ptr %45, align 4, !tbaa !9
  %14222 = zext i32 %14221 to i64
  %14223 = call i64 @i64_load(ptr noundef %14220, i64 noundef %14222)
  store i64 %14223, ptr %54, align 8, !tbaa !11
  %14224 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14224, ptr %39, align 8, !tbaa !11
  %14225 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14225, ptr %45, align 4, !tbaa !9
  store i64 -4294967296, ptr %55, align 8, !tbaa !11
  %14226 = load ptr, ptr %5, align 8, !tbaa !5
  %14227 = getelementptr inbounds %struct.w2c_hermes, ptr %14226, i32 0, i32 6
  %14228 = load i32, ptr %45, align 4, !tbaa !9
  %14229 = zext i32 %14228 to i64
  %14230 = add i64 %14229, 232
  %14231 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14227, i64 noundef %14230, i64 noundef %14231)
  %14232 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14232, ptr %45, align 4, !tbaa !9
  %14233 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14233, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %14237 = zext i32 %14236 to i64
  %14238 = add i64 %14237, 352
  %14239 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14235, i64 noundef %14238, i64 noundef %14239)
  %14240 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14240, ptr %45, align 4, !tbaa !9
  %14241 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14241, ptr %46, 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 %45, align 4, !tbaa !9
  %14245 = zext i32 %14244 to i64
  %14246 = add i64 %14245, 5808
  %14247 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14243, i64 noundef %14246, i32 noundef %14247)
  %14248 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %14248, ptr %45, align 4, !tbaa !9
  %14249 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14249, ptr %46, align 4, !tbaa !9
  %14250 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %14250, ptr %47, align 4, !tbaa !9
  %14251 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14251, ptr %48, align 4, !tbaa !9
  store i32 244, ptr %49, align 4, !tbaa !9
  %14252 = load i32, ptr %49, align 4, !tbaa !9
  %14253 = load i32, ptr %48, align 4, !tbaa !9
  %14254 = add i32 %14253, %14252
  store i32 %14254, ptr %48, align 4, !tbaa !9
  %14255 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14255, ptr %49, align 4, !tbaa !9
  store i32 240, ptr %50, align 4, !tbaa !9
  %14256 = load i32, ptr %50, align 4, !tbaa !9
  %14257 = load i32, ptr %49, align 4, !tbaa !9
  %14258 = add i32 %14257, %14256
  store i32 %14258, ptr %49, align 4, !tbaa !9
  %14259 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14259, ptr %50, align 4, !tbaa !9
  store i32 232, ptr %51, align 4, !tbaa !9
  %14260 = load i32, ptr %51, align 4, !tbaa !9
  %14261 = load i32, ptr %50, align 4, !tbaa !9
  %14262 = add i32 %14261, %14260
  store i32 %14262, ptr %50, align 4, !tbaa !9
  %14263 = load ptr, ptr %5, align 8, !tbaa !5
  %14264 = load i32, ptr %45, align 4, !tbaa !9
  %14265 = load i32, ptr %46, align 4, !tbaa !9
  %14266 = load i32, ptr %47, align 4, !tbaa !9
  %14267 = load i32, ptr %48, align 4, !tbaa !9
  %14268 = load i32, ptr %49, align 4, !tbaa !9
  %14269 = load i32, ptr %50, align 4, !tbaa !9
  %14270 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedPrimitiveDescriptor0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AMutableHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AMutableHandle0x3Chermes0x3A0x3Avm0x3A0x3ASymbolID0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AComputedPropertyDescriptor0x260x29(ptr noundef %14263, i32 noundef %14264, i32 noundef %14265, i32 noundef %14266, i32 noundef %14267, i32 noundef %14268, i32 noundef %14269)
  store i32 %14270, ptr %45, align 4, !tbaa !9
  %14271 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14271, ptr %8, align 4, !tbaa !9
  %14272 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14272, ptr %45, align 4, !tbaa !9
  %14273 = load ptr, ptr %5, align 8, !tbaa !5
  %14274 = getelementptr inbounds %struct.w2c_hermes, ptr %14273, i32 0, i32 6
  %14275 = load i32, ptr %45, align 4, !tbaa !9
  %14276 = zext i32 %14275 to i64
  %14277 = add i64 %14276, 5808
  %14278 = call i32 @i32_load(ptr noundef %14274, i64 noundef %14277)
  store i32 %14278, ptr %45, align 4, !tbaa !9
  %14279 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14279, ptr %6, align 4, !tbaa !9
  %14280 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14280, ptr %45, align 4, !tbaa !9
  %14281 = load i32, ptr %45, align 4, !tbaa !9
  %14282 = icmp ne i32 %14281, 0
  %14283 = xor i1 %14282, true
  %14284 = zext i1 %14283 to i32
  store i32 %14284, ptr %45, align 4, !tbaa !9
  %14285 = load i32, ptr %45, align 4, !tbaa !9
  %14286 = icmp ne i32 %14285, 0
  br i1 %14286, label %14287, label %14288

14287:                                            ; preds = %14218
  br label %43136

14288:                                            ; preds = %14218
  %14289 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14289, ptr %45, align 4, !tbaa !9
  %14290 = load ptr, ptr %5, align 8, !tbaa !5
  %14291 = getelementptr inbounds %struct.w2c_hermes, ptr %14290, i32 0, i32 6
  %14292 = load i32, ptr %45, align 4, !tbaa !9
  %14293 = zext i32 %14292 to i64
  %14294 = add i64 %14293, 244
  %14295 = call i32 @i32_load(ptr noundef %14291, i64 noundef %14294)
  store i32 %14295, ptr %45, align 4, !tbaa !9
  %14296 = load ptr, ptr %5, align 8, !tbaa !5
  %14297 = getelementptr inbounds %struct.w2c_hermes, ptr %14296, i32 0, i32 6
  %14298 = load i32, ptr %45, align 4, !tbaa !9
  %14299 = zext i32 %14298 to i64
  %14300 = call i64 @i64_load(ptr noundef %14297, i64 noundef %14299)
  store i64 %14300, ptr %54, align 8, !tbaa !11
  %14301 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14301, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %14302 = load i64, ptr %54, align 8, !tbaa !11
  %14303 = load i64, ptr %55, align 8, !tbaa !11
  %14304 = icmp uge i64 %14302, %14303
  %14305 = zext i1 %14304 to i32
  store i32 %14305, ptr %45, align 4, !tbaa !9
  %14306 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14306, ptr %55, align 8, !tbaa !11
  store i64 4294967295, ptr %56, align 8, !tbaa !11
  %14307 = load i64, ptr %56, align 8, !tbaa !11
  %14308 = load i64, ptr %55, align 8, !tbaa !11
  %14309 = and i64 %14308, %14307
  store i64 %14309, ptr %55, align 8, !tbaa !11
  store i64 0, ptr %56, align 8, !tbaa !11
  %14310 = load i64, ptr %55, align 8, !tbaa !11
  %14311 = load i64, ptr %56, align 8, !tbaa !11
  %14312 = icmp ne i64 %14310, %14311
  %14313 = zext i1 %14312 to i32
  store i32 %14313, ptr %46, align 4, !tbaa !9
  %14314 = load i32, ptr %46, align 4, !tbaa !9
  %14315 = load i32, ptr %45, align 4, !tbaa !9
  %14316 = and i32 %14315, %14314
  store i32 %14316, ptr %45, align 4, !tbaa !9
  %14317 = load i32, ptr %45, align 4, !tbaa !9
  %14318 = icmp ne i32 %14317, 0
  br i1 %14318, label %14319, label %14320

14319:                                            ; preds = %14288
  br label %14335

14320:                                            ; preds = %14288
  %14321 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14321, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %14322 = load i32, ptr %46, align 4, !tbaa !9
  %14323 = load i32, ptr %45, align 4, !tbaa !9
  %14324 = add i32 %14323, %14322
  store i32 %14324, ptr %45, align 4, !tbaa !9
  %14325 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14325, ptr %7, align 4, !tbaa !9
  %14326 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %14326, ptr %46, align 4, !tbaa !9
  %14327 = load i32, ptr %45, align 4, !tbaa !9
  %14328 = load i32, ptr %46, align 4, !tbaa !9
  %14329 = icmp ne i32 %14327, %14328
  %14330 = zext i1 %14329 to i32
  store i32 %14330, ptr %45, align 4, !tbaa !9
  %14331 = load i32, ptr %45, align 4, !tbaa !9
  %14332 = icmp ne i32 %14331, 0
  br i1 %14332, label %14333, label %14334

14333:                                            ; preds = %14320
  br label %14152

14334:                                            ; preds = %14320
  store i64 -1688849860263936, ptr %54, align 8, !tbaa !11
  br label %14412

14335:                                            ; preds = %14319
  %14336 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14336, ptr %45, align 4, !tbaa !9
  %14337 = load ptr, ptr %5, align 8, !tbaa !5
  %14338 = getelementptr inbounds %struct.w2c_hermes, ptr %14337, i32 0, i32 6
  %14339 = load i32, ptr %45, align 4, !tbaa !9
  %14340 = zext i32 %14339 to i64
  %14341 = add i64 %14340, 352
  %14342 = call i64 @i64_load(ptr noundef %14338, i64 noundef %14341)
  store i64 %14342, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %14343 = load i64, ptr %54, align 8, !tbaa !11
  %14344 = load i64, ptr %55, align 8, !tbaa !11
  %14345 = icmp ule i64 %14343, %14344
  %14346 = zext i1 %14345 to i32
  store i32 %14346, ptr %45, align 4, !tbaa !9
  %14347 = load i32, ptr %45, align 4, !tbaa !9
  %14348 = icmp ne i32 %14347, 0
  br i1 %14348, label %14349, label %14378

14349:                                            ; preds = %14335
  %14350 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14350, ptr %45, align 4, !tbaa !9
  %14351 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %14351, ptr %46, align 4, !tbaa !9
  %14352 = load ptr, ptr %5, align 8, !tbaa !5
  %14353 = load i32, ptr %45, align 4, !tbaa !9
  %14354 = load i32, ptr %46, align 4, !tbaa !9
  %14355 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %14352, i32 noundef %14353, i32 noundef %14354)
  store i32 %14355, ptr %45, align 4, !tbaa !9
  %14356 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14356, ptr %8, align 4, !tbaa !9
  %14357 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14357, ptr %45, 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 %45, align 4, !tbaa !9
  %14361 = zext i32 %14360 to i64
  %14362 = add i64 %14361, 5808
  %14363 = call i32 @i32_load(ptr noundef %14359, i64 noundef %14362)
  store i32 %14363, ptr %45, align 4, !tbaa !9
  %14364 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14364, ptr %6, align 4, !tbaa !9
  %14365 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14365, ptr %45, align 4, !tbaa !9
  %14366 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %14366, ptr %46, align 4, !tbaa !9
  %14367 = load i32, ptr %46, align 4, !tbaa !9
  %14368 = zext i32 %14367 to i64
  store i64 %14368, ptr %55, align 8, !tbaa !11
  store i64 -844424930131968, ptr %56, align 8, !tbaa !11
  %14369 = load i64, ptr %56, align 8, !tbaa !11
  %14370 = load i64, ptr %55, align 8, !tbaa !11
  %14371 = or i64 %14370, %14369
  store i64 %14371, ptr %55, align 8, !tbaa !11
  %14372 = load ptr, ptr %5, align 8, !tbaa !5
  %14373 = getelementptr inbounds %struct.w2c_hermes, ptr %14372, i32 0, i32 6
  %14374 = load i32, ptr %45, align 4, !tbaa !9
  %14375 = zext i32 %14374 to i64
  %14376 = add i64 %14375, 352
  %14377 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14373, i64 noundef %14376, i64 noundef %14377)
  br label %14378

14378:                                            ; preds = %14349, %14335
  %14379 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14379, ptr %45, align 4, !tbaa !9
  %14380 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14380, ptr %46, align 4, !tbaa !9
  %14381 = load ptr, ptr %5, align 8, !tbaa !5
  %14382 = getelementptr inbounds %struct.w2c_hermes, ptr %14381, i32 0, i32 6
  %14383 = load i32, ptr %46, align 4, !tbaa !9
  %14384 = zext i32 %14383 to i64
  %14385 = add i64 %14384, 4
  %14386 = call i32 @i32_load8_u(ptr noundef %14382, i64 noundef %14385)
  store i32 %14386, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14387 = load i32, ptr %47, align 4, !tbaa !9
  %14388 = and i32 %14387, 31
  %14389 = load i32, ptr %46, align 4, !tbaa !9
  %14390 = shl i32 %14389, %14388
  store i32 %14390, ptr %46, align 4, !tbaa !9
  %14391 = load i32, ptr %46, align 4, !tbaa !9
  %14392 = load i32, ptr %45, align 4, !tbaa !9
  %14393 = add i32 %14392, %14391
  store i32 %14393, ptr %45, align 4, !tbaa !9
  %14394 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14394, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %14395 = load i32, ptr %47, align 4, !tbaa !9
  %14396 = load i32, ptr %46, align 4, !tbaa !9
  %14397 = add i32 %14396, %14395
  store i32 %14397, ptr %46, align 4, !tbaa !9
  %14398 = load i32, ptr %46, align 4, !tbaa !9
  %14399 = uitofp i32 %14398 to double
  store double %14399, ptr %61, align 8, !tbaa !13
  %14400 = load ptr, ptr %5, align 8, !tbaa !5
  %14401 = getelementptr inbounds %struct.w2c_hermes, ptr %14400, i32 0, i32 6
  %14402 = load i32, ptr %45, align 4, !tbaa !9
  %14403 = zext i32 %14402 to i64
  %14404 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %14401, i64 noundef %14403, double noundef %14404)
  %14405 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14405, ptr %45, align 4, !tbaa !9
  %14406 = load ptr, ptr %5, align 8, !tbaa !5
  %14407 = getelementptr inbounds %struct.w2c_hermes, ptr %14406, i32 0, i32 6
  %14408 = load i32, ptr %45, align 4, !tbaa !9
  %14409 = zext i32 %14408 to i64
  %14410 = add i64 %14409, 352
  %14411 = call i64 @i64_load(ptr noundef %14407, i64 noundef %14410)
  store i64 %14411, ptr %54, align 8, !tbaa !11
  br label %14412

14412:                                            ; preds = %14378, %14334, %14130
  %14413 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14413, ptr %39, align 8, !tbaa !11
  %14414 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14414, ptr %45, align 4, !tbaa !9
  %14415 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14415, ptr %46, align 4, !tbaa !9
  %14416 = load ptr, ptr %5, align 8, !tbaa !5
  %14417 = getelementptr inbounds %struct.w2c_hermes, ptr %14416, i32 0, i32 6
  %14418 = load i32, ptr %46, align 4, !tbaa !9
  %14419 = zext i32 %14418 to i64
  %14420 = add i64 %14419, 1
  %14421 = call i32 @i32_load8_u(ptr noundef %14417, i64 noundef %14420)
  store i32 %14421, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14422 = load i32, ptr %47, align 4, !tbaa !9
  %14423 = and i32 %14422, 31
  %14424 = load i32, ptr %46, align 4, !tbaa !9
  %14425 = shl i32 %14424, %14423
  store i32 %14425, ptr %46, align 4, !tbaa !9
  %14426 = load i32, ptr %46, align 4, !tbaa !9
  %14427 = load i32, ptr %45, align 4, !tbaa !9
  %14428 = add i32 %14427, %14426
  store i32 %14428, ptr %45, align 4, !tbaa !9
  %14429 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14429, ptr %55, align 8, !tbaa !11
  %14430 = load ptr, ptr %5, align 8, !tbaa !5
  %14431 = getelementptr inbounds %struct.w2c_hermes, ptr %14430, i32 0, i32 6
  %14432 = load i32, ptr %45, align 4, !tbaa !9
  %14433 = zext i32 %14432 to i64
  %14434 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14431, i64 noundef %14433, i64 noundef %14434)
  %14435 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14435, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %14436 = load ptr, ptr %5, align 8, !tbaa !5
  %14437 = getelementptr inbounds %struct.w2c_hermes, ptr %14436, i32 0, i32 6
  %14438 = load i32, ptr %45, align 4, !tbaa !9
  %14439 = zext i32 %14438 to i64
  %14440 = add i64 %14439, 516
  %14441 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14437, i64 noundef %14440, i32 noundef %14441)
  %14442 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14442, ptr %45, align 4, !tbaa !9
  %14443 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %14443, ptr %46, align 4, !tbaa !9
  %14444 = load ptr, ptr %5, align 8, !tbaa !5
  %14445 = getelementptr inbounds %struct.w2c_hermes, ptr %14444, i32 0, i32 6
  %14446 = load i32, ptr %45, align 4, !tbaa !9
  %14447 = zext i32 %14446 to i64
  %14448 = add i64 %14447, 512
  %14449 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14445, i64 noundef %14448, i32 noundef %14449)
  %14450 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14450, ptr %45, align 4, !tbaa !9
  %14451 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %14451, ptr %46, align 4, !tbaa !9
  %14452 = load ptr, ptr %5, align 8, !tbaa !5
  %14453 = getelementptr inbounds %struct.w2c_hermes, ptr %14452, i32 0, i32 6
  %14454 = load i32, ptr %45, align 4, !tbaa !9
  %14455 = zext i32 %14454 to i64
  %14456 = add i64 %14455, 508
  %14457 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14453, i64 noundef %14456, i32 noundef %14457)
  %14458 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14458, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %14459 = load ptr, ptr %5, align 8, !tbaa !5
  %14460 = getelementptr inbounds %struct.w2c_hermes, ptr %14459, i32 0, i32 6
  %14461 = load i32, ptr %45, align 4, !tbaa !9
  %14462 = zext i32 %14461 to i64
  %14463 = add i64 %14462, 352
  %14464 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14460, i64 noundef %14463, i64 noundef %14464)
  %14465 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14465, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %14466 = load i32, ptr %46, align 4, !tbaa !9
  %14467 = load i32, ptr %45, align 4, !tbaa !9
  %14468 = add i32 %14467, %14466
  store i32 %14468, ptr %45, align 4, !tbaa !9
  %14469 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14469, ptr %6, align 4, !tbaa !9
  br label %2945

14470:                                            ; preds = %3035
  %14471 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14471, ptr %45, align 4, !tbaa !9
  %14472 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14472, ptr %46, align 4, !tbaa !9
  %14473 = load ptr, ptr %5, align 8, !tbaa !5
  %14474 = getelementptr inbounds %struct.w2c_hermes, ptr %14473, i32 0, i32 6
  %14475 = load i32, ptr %46, align 4, !tbaa !9
  %14476 = zext i32 %14475 to i64
  %14477 = add i64 %14476, 2
  %14478 = call i32 @i32_load8_u(ptr noundef %14474, i64 noundef %14477)
  store i32 %14478, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14479 = load i32, ptr %47, align 4, !tbaa !9
  %14480 = and i32 %14479, 31
  %14481 = load i32, ptr %46, align 4, !tbaa !9
  %14482 = shl i32 %14481, %14480
  store i32 %14482, ptr %46, align 4, !tbaa !9
  %14483 = load i32, ptr %46, align 4, !tbaa !9
  %14484 = load i32, ptr %45, align 4, !tbaa !9
  %14485 = add i32 %14484, %14483
  store i32 %14485, ptr %45, align 4, !tbaa !9
  %14486 = load ptr, ptr %5, align 8, !tbaa !5
  %14487 = getelementptr inbounds %struct.w2c_hermes, ptr %14486, i32 0, i32 6
  %14488 = load i32, ptr %45, align 4, !tbaa !9
  %14489 = zext i32 %14488 to i64
  %14490 = call i64 @i64_load(ptr noundef %14487, i64 noundef %14489)
  store i64 %14490, ptr %54, align 8, !tbaa !11
  %14491 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14491, ptr %40, align 8, !tbaa !11
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %14492 = load i64, ptr %54, align 8, !tbaa !11
  %14493 = load i64, ptr %55, align 8, !tbaa !11
  %14494 = icmp uge i64 %14492, %14493
  %14495 = zext i1 %14494 to i32
  store i32 %14495, ptr %45, align 4, !tbaa !9
  %14496 = load i32, ptr %45, align 4, !tbaa !9
  %14497 = icmp ne i32 %14496, 0
  br i1 %14497, label %14498, label %14585

14498:                                            ; preds = %14470
  %14499 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14499, ptr %45, align 4, !tbaa !9
  %14500 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14500, ptr %46, align 4, !tbaa !9
  %14501 = load ptr, ptr %5, align 8, !tbaa !5
  %14502 = getelementptr inbounds %struct.w2c_hermes, ptr %14501, i32 0, i32 6
  %14503 = load i32, ptr %45, align 4, !tbaa !9
  %14504 = zext i32 %14503 to i64
  %14505 = add i64 %14504, 5808
  %14506 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14502, i64 noundef %14505, i32 noundef %14506)
  %14507 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14507, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %14508 = load i32, ptr %46, align 4, !tbaa !9
  %14509 = load i32, ptr %45, align 4, !tbaa !9
  %14510 = add i32 %14509, %14508
  store i32 %14510, ptr %45, align 4, !tbaa !9
  %14511 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14511, ptr %46, align 4, !tbaa !9
  %14512 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14512, ptr %47, align 4, !tbaa !9
  %14513 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14513, ptr %48, align 4, !tbaa !9
  %14514 = load ptr, ptr %5, align 8, !tbaa !5
  %14515 = getelementptr inbounds %struct.w2c_hermes, ptr %14514, i32 0, i32 6
  %14516 = load i32, ptr %48, align 4, !tbaa !9
  %14517 = zext i32 %14516 to i64
  %14518 = add i64 %14517, 2
  %14519 = call i32 @i32_load8_u(ptr noundef %14515, i64 noundef %14518)
  store i32 %14519, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %14520 = load i32, ptr %49, align 4, !tbaa !9
  %14521 = and i32 %14520, 31
  %14522 = load i32, ptr %48, align 4, !tbaa !9
  %14523 = shl i32 %14522, %14521
  store i32 %14523, ptr %48, align 4, !tbaa !9
  %14524 = load i32, ptr %48, align 4, !tbaa !9
  %14525 = load i32, ptr %47, align 4, !tbaa !9
  %14526 = add i32 %14525, %14524
  store i32 %14526, ptr %47, align 4, !tbaa !9
  %14527 = load ptr, ptr %5, align 8, !tbaa !5
  %14528 = load i32, ptr %45, align 4, !tbaa !9
  %14529 = load i32, ptr %46, align 4, !tbaa !9
  %14530 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %14527, i32 noundef %14528, i32 noundef %14529, i32 noundef %14530)
  %14531 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14531, ptr %45, align 4, !tbaa !9
  %14532 = load ptr, ptr %5, align 8, !tbaa !5
  %14533 = getelementptr inbounds %struct.w2c_hermes, ptr %14532, i32 0, i32 6
  %14534 = load i32, ptr %45, align 4, !tbaa !9
  %14535 = zext i32 %14534 to i64
  %14536 = add i64 %14535, 5808
  %14537 = call i32 @i32_load(ptr noundef %14533, i64 noundef %14536)
  store i32 %14537, ptr %45, align 4, !tbaa !9
  %14538 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14538, ptr %6, align 4, !tbaa !9
  %14539 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14539, ptr %45, align 4, !tbaa !9
  %14540 = load ptr, ptr %5, align 8, !tbaa !5
  %14541 = getelementptr inbounds %struct.w2c_hermes, ptr %14540, i32 0, i32 6
  %14542 = load i32, ptr %45, align 4, !tbaa !9
  %14543 = zext i32 %14542 to i64
  %14544 = add i64 %14543, 304
  %14545 = call i32 @i32_load(ptr noundef %14541, i64 noundef %14544)
  store i32 %14545, ptr %45, align 4, !tbaa !9
  %14546 = load i32, ptr %45, align 4, !tbaa !9
  %14547 = icmp ne i32 %14546, 0
  %14548 = xor i1 %14547, true
  %14549 = zext i1 %14548 to i32
  store i32 %14549, ptr %45, align 4, !tbaa !9
  %14550 = load i32, ptr %45, align 4, !tbaa !9
  %14551 = icmp ne i32 %14550, 0
  br i1 %14551, label %14552, label %14553

14552:                                            ; preds = %14498
  br label %43136

14553:                                            ; preds = %14498
  %14554 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14554, ptr %45, align 4, !tbaa !9
  %14555 = load ptr, ptr %5, align 8, !tbaa !5
  %14556 = getelementptr inbounds %struct.w2c_hermes, ptr %14555, i32 0, i32 6
  %14557 = load i32, ptr %45, align 4, !tbaa !9
  %14558 = zext i32 %14557 to i64
  %14559 = add i64 %14558, 312
  %14560 = call i64 @i64_load(ptr noundef %14556, i64 noundef %14559)
  store i64 %14560, ptr %54, align 8, !tbaa !11
  %14561 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14561, ptr %40, align 8, !tbaa !11
  %14562 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14562, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %14563 = load ptr, ptr %5, align 8, !tbaa !5
  %14564 = getelementptr inbounds %struct.w2c_hermes, ptr %14563, i32 0, i32 6
  %14565 = load i32, ptr %45, align 4, !tbaa !9
  %14566 = zext i32 %14565 to i64
  %14567 = add i64 %14566, 516
  %14568 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14564, i64 noundef %14567, i32 noundef %14568)
  %14569 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14569, ptr %45, align 4, !tbaa !9
  %14570 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %14570, ptr %46, align 4, !tbaa !9
  %14571 = load ptr, ptr %5, align 8, !tbaa !5
  %14572 = getelementptr inbounds %struct.w2c_hermes, ptr %14571, i32 0, i32 6
  %14573 = load i32, ptr %45, align 4, !tbaa !9
  %14574 = zext i32 %14573 to i64
  %14575 = add i64 %14574, 512
  %14576 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14572, i64 noundef %14575, i32 noundef %14576)
  %14577 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14577, ptr %45, align 4, !tbaa !9
  %14578 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %14578, ptr %46, align 4, !tbaa !9
  %14579 = load ptr, ptr %5, align 8, !tbaa !5
  %14580 = getelementptr inbounds %struct.w2c_hermes, ptr %14579, i32 0, i32 6
  %14581 = load i32, ptr %45, align 4, !tbaa !9
  %14582 = zext i32 %14581 to i64
  %14583 = add i64 %14582, 508
  %14584 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14580, i64 noundef %14583, i32 noundef %14584)
  br label %14585

14585:                                            ; preds = %14553, %14470
  %14586 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14586, ptr %45, align 4, !tbaa !9
  %14587 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14587, ptr %46, align 4, !tbaa !9
  %14588 = load ptr, ptr %5, align 8, !tbaa !5
  %14589 = getelementptr inbounds %struct.w2c_hermes, ptr %14588, i32 0, i32 6
  %14590 = load i32, ptr %46, align 4, !tbaa !9
  %14591 = zext i32 %14590 to i64
  %14592 = add i64 %14591, 1
  %14593 = call i32 @i32_load8_u(ptr noundef %14589, i64 noundef %14592)
  store i32 %14593, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14594 = load i32, ptr %47, align 4, !tbaa !9
  %14595 = and i32 %14594, 31
  %14596 = load i32, ptr %46, align 4, !tbaa !9
  %14597 = shl i32 %14596, %14595
  store i32 %14597, ptr %46, align 4, !tbaa !9
  %14598 = load i32, ptr %46, align 4, !tbaa !9
  %14599 = load i32, ptr %45, align 4, !tbaa !9
  %14600 = add i32 %14599, %14598
  store i32 %14600, ptr %45, align 4, !tbaa !9
  %14601 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %14601, ptr %55, align 8, !tbaa !11
  %14602 = load ptr, ptr %5, align 8, !tbaa !5
  %14603 = getelementptr inbounds %struct.w2c_hermes, ptr %14602, i32 0, i32 6
  %14604 = load i32, ptr %45, align 4, !tbaa !9
  %14605 = zext i32 %14604 to i64
  %14606 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14603, i64 noundef %14605, i64 noundef %14606)
  %14607 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14607, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %14608 = load i32, ptr %46, align 4, !tbaa !9
  %14609 = load i32, ptr %45, align 4, !tbaa !9
  %14610 = add i32 %14609, %14608
  store i32 %14610, ptr %45, align 4, !tbaa !9
  %14611 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14611, ptr %6, align 4, !tbaa !9
  br label %2945

14612:                                            ; preds = %3036
  %14613 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14613, ptr %45, align 4, !tbaa !9
  %14614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14614, ptr %46, align 4, !tbaa !9
  %14615 = load ptr, ptr %5, align 8, !tbaa !5
  %14616 = getelementptr inbounds %struct.w2c_hermes, ptr %14615, i32 0, i32 6
  %14617 = load i32, ptr %46, align 4, !tbaa !9
  %14618 = zext i32 %14617 to i64
  %14619 = add i64 %14618, 2
  %14620 = call i32 @i32_load8_u(ptr noundef %14616, i64 noundef %14619)
  store i32 %14620, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14621 = load i32, ptr %47, align 4, !tbaa !9
  %14622 = and i32 %14621, 31
  %14623 = load i32, ptr %46, align 4, !tbaa !9
  %14624 = shl i32 %14623, %14622
  store i32 %14624, ptr %46, align 4, !tbaa !9
  %14625 = load i32, ptr %46, align 4, !tbaa !9
  %14626 = load i32, ptr %45, align 4, !tbaa !9
  %14627 = add i32 %14626, %14625
  store i32 %14627, ptr %45, align 4, !tbaa !9
  %14628 = load ptr, ptr %5, align 8, !tbaa !5
  %14629 = getelementptr inbounds %struct.w2c_hermes, ptr %14628, i32 0, i32 6
  %14630 = load i32, ptr %45, align 4, !tbaa !9
  %14631 = zext i32 %14630 to i64
  %14632 = call i64 @i64_load(ptr noundef %14629, i64 noundef %14631)
  store i64 %14632, ptr %54, align 8, !tbaa !11
  %14633 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14633, ptr %40, align 8, !tbaa !11
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %14634 = load i64, ptr %54, align 8, !tbaa !11
  %14635 = load i64, ptr %55, align 8, !tbaa !11
  %14636 = icmp uge i64 %14634, %14635
  %14637 = zext i1 %14636 to i32
  store i32 %14637, ptr %45, align 4, !tbaa !9
  %14638 = load i32, ptr %45, align 4, !tbaa !9
  %14639 = icmp ne i32 %14638, 0
  br i1 %14639, label %14640, label %14727

14640:                                            ; preds = %14612
  %14641 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14641, ptr %45, align 4, !tbaa !9
  %14642 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14642, ptr %46, align 4, !tbaa !9
  %14643 = load ptr, ptr %5, align 8, !tbaa !5
  %14644 = getelementptr inbounds %struct.w2c_hermes, ptr %14643, i32 0, i32 6
  %14645 = load i32, ptr %45, align 4, !tbaa !9
  %14646 = zext i32 %14645 to i64
  %14647 = add i64 %14646, 5808
  %14648 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14644, i64 noundef %14647, i32 noundef %14648)
  %14649 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14649, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %14650 = load i32, ptr %46, align 4, !tbaa !9
  %14651 = load i32, ptr %45, align 4, !tbaa !9
  %14652 = add i32 %14651, %14650
  store i32 %14652, ptr %45, align 4, !tbaa !9
  %14653 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14653, ptr %46, align 4, !tbaa !9
  %14654 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14654, ptr %47, align 4, !tbaa !9
  %14655 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14655, ptr %48, align 4, !tbaa !9
  %14656 = load ptr, ptr %5, align 8, !tbaa !5
  %14657 = getelementptr inbounds %struct.w2c_hermes, ptr %14656, i32 0, i32 6
  %14658 = load i32, ptr %48, align 4, !tbaa !9
  %14659 = zext i32 %14658 to i64
  %14660 = add i64 %14659, 2
  %14661 = call i32 @i32_load8_u(ptr noundef %14657, i64 noundef %14660)
  store i32 %14661, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %14662 = load i32, ptr %49, align 4, !tbaa !9
  %14663 = and i32 %14662, 31
  %14664 = load i32, ptr %48, align 4, !tbaa !9
  %14665 = shl i32 %14664, %14663
  store i32 %14665, ptr %48, align 4, !tbaa !9
  %14666 = load i32, ptr %48, align 4, !tbaa !9
  %14667 = load i32, ptr %47, align 4, !tbaa !9
  %14668 = add i32 %14667, %14666
  store i32 %14668, ptr %47, align 4, !tbaa !9
  %14669 = load ptr, ptr %5, align 8, !tbaa !5
  %14670 = load i32, ptr %45, align 4, !tbaa !9
  %14671 = load i32, ptr %46, align 4, !tbaa !9
  %14672 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %14669, i32 noundef %14670, i32 noundef %14671, i32 noundef %14672)
  %14673 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14673, ptr %45, align 4, !tbaa !9
  %14674 = load ptr, ptr %5, align 8, !tbaa !5
  %14675 = getelementptr inbounds %struct.w2c_hermes, ptr %14674, i32 0, i32 6
  %14676 = load i32, ptr %45, align 4, !tbaa !9
  %14677 = zext i32 %14676 to i64
  %14678 = add i64 %14677, 5808
  %14679 = call i32 @i32_load(ptr noundef %14675, i64 noundef %14678)
  store i32 %14679, ptr %45, align 4, !tbaa !9
  %14680 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14680, ptr %6, align 4, !tbaa !9
  %14681 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14681, ptr %45, align 4, !tbaa !9
  %14682 = load ptr, ptr %5, align 8, !tbaa !5
  %14683 = getelementptr inbounds %struct.w2c_hermes, ptr %14682, i32 0, i32 6
  %14684 = load i32, ptr %45, align 4, !tbaa !9
  %14685 = zext i32 %14684 to i64
  %14686 = add i64 %14685, 304
  %14687 = call i32 @i32_load(ptr noundef %14683, i64 noundef %14686)
  store i32 %14687, ptr %45, align 4, !tbaa !9
  %14688 = load i32, ptr %45, align 4, !tbaa !9
  %14689 = icmp ne i32 %14688, 0
  %14690 = xor i1 %14689, true
  %14691 = zext i1 %14690 to i32
  store i32 %14691, ptr %45, align 4, !tbaa !9
  %14692 = load i32, ptr %45, align 4, !tbaa !9
  %14693 = icmp ne i32 %14692, 0
  br i1 %14693, label %14694, label %14695

14694:                                            ; preds = %14640
  br label %43136

14695:                                            ; preds = %14640
  %14696 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14696, ptr %45, align 4, !tbaa !9
  %14697 = load ptr, ptr %5, align 8, !tbaa !5
  %14698 = getelementptr inbounds %struct.w2c_hermes, ptr %14697, i32 0, i32 6
  %14699 = load i32, ptr %45, align 4, !tbaa !9
  %14700 = zext i32 %14699 to i64
  %14701 = add i64 %14700, 312
  %14702 = call i64 @i64_load(ptr noundef %14698, i64 noundef %14701)
  store i64 %14702, ptr %54, align 8, !tbaa !11
  %14703 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14703, ptr %40, align 8, !tbaa !11
  %14704 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14704, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %14705 = load ptr, ptr %5, align 8, !tbaa !5
  %14706 = getelementptr inbounds %struct.w2c_hermes, ptr %14705, i32 0, i32 6
  %14707 = load i32, ptr %45, align 4, !tbaa !9
  %14708 = zext i32 %14707 to i64
  %14709 = add i64 %14708, 516
  %14710 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14706, i64 noundef %14709, i32 noundef %14710)
  %14711 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14711, ptr %45, align 4, !tbaa !9
  %14712 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %14712, ptr %46, align 4, !tbaa !9
  %14713 = load ptr, ptr %5, align 8, !tbaa !5
  %14714 = getelementptr inbounds %struct.w2c_hermes, ptr %14713, i32 0, i32 6
  %14715 = load i32, ptr %45, align 4, !tbaa !9
  %14716 = zext i32 %14715 to i64
  %14717 = add i64 %14716, 512
  %14718 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14714, i64 noundef %14717, i32 noundef %14718)
  %14719 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14719, ptr %45, align 4, !tbaa !9
  %14720 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %14720, ptr %46, align 4, !tbaa !9
  %14721 = load ptr, ptr %5, align 8, !tbaa !5
  %14722 = getelementptr inbounds %struct.w2c_hermes, ptr %14721, i32 0, i32 6
  %14723 = load i32, ptr %45, align 4, !tbaa !9
  %14724 = zext i32 %14723 to i64
  %14725 = add i64 %14724, 508
  %14726 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14722, i64 noundef %14725, i32 noundef %14726)
  br label %14727

14727:                                            ; preds = %14695, %14612
  %14728 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14728, ptr %45, align 4, !tbaa !9
  %14729 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14729, ptr %46, align 4, !tbaa !9
  %14730 = load ptr, ptr %5, align 8, !tbaa !5
  %14731 = getelementptr inbounds %struct.w2c_hermes, ptr %14730, i32 0, i32 6
  %14732 = load i32, ptr %46, align 4, !tbaa !9
  %14733 = zext i32 %14732 to i64
  %14734 = add i64 %14733, 1
  %14735 = call i32 @i32_load8_u(ptr noundef %14731, i64 noundef %14734)
  store i32 %14735, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14736 = load i32, ptr %47, align 4, !tbaa !9
  %14737 = and i32 %14736, 31
  %14738 = load i32, ptr %46, align 4, !tbaa !9
  %14739 = shl i32 %14738, %14737
  store i32 %14739, ptr %46, align 4, !tbaa !9
  %14740 = load i32, ptr %46, align 4, !tbaa !9
  %14741 = load i32, ptr %45, align 4, !tbaa !9
  %14742 = add i32 %14741, %14740
  store i32 %14742, ptr %45, align 4, !tbaa !9
  %14743 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %14743, ptr %55, align 8, !tbaa !11
  %14744 = load ptr, ptr %5, align 8, !tbaa !5
  %14745 = getelementptr inbounds %struct.w2c_hermes, ptr %14744, i32 0, i32 6
  %14746 = load i32, ptr %45, align 4, !tbaa !9
  %14747 = zext i32 %14746 to i64
  %14748 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14745, i64 noundef %14747, i64 noundef %14748)
  %14749 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14749, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %14750 = load i32, ptr %46, align 4, !tbaa !9
  %14751 = load i32, ptr %45, align 4, !tbaa !9
  %14752 = add i32 %14751, %14750
  store i32 %14752, ptr %45, align 4, !tbaa !9
  %14753 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14753, ptr %6, align 4, !tbaa !9
  br label %2945

14754:                                            ; preds = %3037
  %14755 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14755, ptr %45, align 4, !tbaa !9
  %14756 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14756, ptr %46, 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 %45, align 4, !tbaa !9
  %14760 = zext i32 %14759 to i64
  %14761 = add i64 %14760, 5808
  %14762 = load i32, ptr %46, 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 %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %14764 = load i32, ptr %46, align 4, !tbaa !9
  %14765 = load i32, ptr %45, align 4, !tbaa !9
  %14766 = add i32 %14765, %14764
  store i32 %14766, ptr %45, align 4, !tbaa !9
  %14767 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14767, ptr %46, align 4, !tbaa !9
  %14768 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14768, ptr %47, align 4, !tbaa !9
  %14769 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14769, ptr %48, align 4, !tbaa !9
  %14770 = load ptr, ptr %5, align 8, !tbaa !5
  %14771 = getelementptr inbounds %struct.w2c_hermes, ptr %14770, i32 0, i32 6
  %14772 = load i32, ptr %48, align 4, !tbaa !9
  %14773 = zext i32 %14772 to i64
  %14774 = add i64 %14773, 2
  %14775 = call i32 @i32_load8_u(ptr noundef %14771, i64 noundef %14774)
  store i32 %14775, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %14776 = load i32, ptr %49, align 4, !tbaa !9
  %14777 = and i32 %14776, 31
  %14778 = load i32, ptr %48, align 4, !tbaa !9
  %14779 = shl i32 %14778, %14777
  store i32 %14779, ptr %48, align 4, !tbaa !9
  %14780 = load i32, ptr %48, align 4, !tbaa !9
  %14781 = load i32, ptr %47, align 4, !tbaa !9
  %14782 = add i32 %14781, %14780
  store i32 %14782, ptr %47, align 4, !tbaa !9
  %14783 = load ptr, ptr %5, align 8, !tbaa !5
  %14784 = load i32, ptr %45, align 4, !tbaa !9
  %14785 = load i32, ptr %46, align 4, !tbaa !9
  %14786 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %14783, i32 noundef %14784, i32 noundef %14785, i32 noundef %14786)
  %14787 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14787, ptr %45, align 4, !tbaa !9
  %14788 = load ptr, ptr %5, align 8, !tbaa !5
  %14789 = getelementptr inbounds %struct.w2c_hermes, ptr %14788, i32 0, i32 6
  %14790 = load i32, ptr %45, align 4, !tbaa !9
  %14791 = zext i32 %14790 to i64
  %14792 = add i64 %14791, 5808
  %14793 = call i32 @i32_load(ptr noundef %14789, i64 noundef %14792)
  store i32 %14793, ptr %45, align 4, !tbaa !9
  %14794 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14794, ptr %6, align 4, !tbaa !9
  %14795 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14795, ptr %45, align 4, !tbaa !9
  %14796 = load ptr, ptr %5, align 8, !tbaa !5
  %14797 = getelementptr inbounds %struct.w2c_hermes, ptr %14796, i32 0, i32 6
  %14798 = load i32, ptr %45, align 4, !tbaa !9
  %14799 = zext i32 %14798 to i64
  %14800 = add i64 %14799, 304
  %14801 = call i32 @i32_load(ptr noundef %14797, i64 noundef %14800)
  store i32 %14801, ptr %45, align 4, !tbaa !9
  %14802 = load i32, ptr %45, align 4, !tbaa !9
  %14803 = icmp ne i32 %14802, 0
  %14804 = xor i1 %14803, true
  %14805 = zext i1 %14804 to i32
  store i32 %14805, ptr %45, align 4, !tbaa !9
  %14806 = load i32, ptr %45, align 4, !tbaa !9
  %14807 = icmp ne i32 %14806, 0
  br i1 %14807, label %14808, label %14809

14808:                                            ; preds = %14754
  br label %43136

14809:                                            ; preds = %14754
  %14810 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14810, ptr %45, align 4, !tbaa !9
  %14811 = load ptr, ptr %5, align 8, !tbaa !5
  %14812 = getelementptr inbounds %struct.w2c_hermes, ptr %14811, i32 0, i32 6
  %14813 = load i32, ptr %45, align 4, !tbaa !9
  %14814 = zext i32 %14813 to i64
  %14815 = add i64 %14814, 312
  %14816 = call i64 @i64_load(ptr noundef %14812, i64 noundef %14815)
  store i64 %14816, ptr %54, align 8, !tbaa !11
  %14817 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14817, ptr %39, align 8, !tbaa !11
  %14818 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14818, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %14819 = load ptr, ptr %5, align 8, !tbaa !5
  %14820 = getelementptr inbounds %struct.w2c_hermes, ptr %14819, i32 0, i32 6
  %14821 = load i32, ptr %45, align 4, !tbaa !9
  %14822 = zext i32 %14821 to i64
  %14823 = add i64 %14822, 516
  %14824 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14820, i64 noundef %14823, i32 noundef %14824)
  %14825 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14825, ptr %45, align 4, !tbaa !9
  %14826 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %14826, ptr %46, align 4, !tbaa !9
  %14827 = load ptr, ptr %5, align 8, !tbaa !5
  %14828 = getelementptr inbounds %struct.w2c_hermes, ptr %14827, i32 0, i32 6
  %14829 = load i32, ptr %45, align 4, !tbaa !9
  %14830 = zext i32 %14829 to i64
  %14831 = add i64 %14830, 512
  %14832 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14828, i64 noundef %14831, i32 noundef %14832)
  %14833 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14833, ptr %45, align 4, !tbaa !9
  %14834 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %14834, ptr %46, align 4, !tbaa !9
  %14835 = load ptr, ptr %5, align 8, !tbaa !5
  %14836 = getelementptr inbounds %struct.w2c_hermes, ptr %14835, i32 0, i32 6
  %14837 = load i32, ptr %45, align 4, !tbaa !9
  %14838 = zext i32 %14837 to i64
  %14839 = add i64 %14838, 508
  %14840 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14836, i64 noundef %14839, i32 noundef %14840)
  %14841 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14841, ptr %45, align 4, !tbaa !9
  %14842 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14842, ptr %46, align 4, !tbaa !9
  %14843 = load ptr, ptr %5, align 8, !tbaa !5
  %14844 = getelementptr inbounds %struct.w2c_hermes, ptr %14843, i32 0, i32 6
  %14845 = load i32, ptr %46, align 4, !tbaa !9
  %14846 = zext i32 %14845 to i64
  %14847 = add i64 %14846, 1
  %14848 = call i32 @i32_load8_u(ptr noundef %14844, i64 noundef %14847)
  store i32 %14848, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14849 = load i32, ptr %47, align 4, !tbaa !9
  %14850 = and i32 %14849, 31
  %14851 = load i32, ptr %46, align 4, !tbaa !9
  %14852 = shl i32 %14851, %14850
  store i32 %14852, ptr %46, align 4, !tbaa !9
  %14853 = load i32, ptr %46, align 4, !tbaa !9
  %14854 = load i32, ptr %45, align 4, !tbaa !9
  %14855 = add i32 %14854, %14853
  store i32 %14855, ptr %45, align 4, !tbaa !9
  %14856 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %14856, ptr %55, align 8, !tbaa !11
  %14857 = load ptr, ptr %5, align 8, !tbaa !5
  %14858 = getelementptr inbounds %struct.w2c_hermes, ptr %14857, i32 0, i32 6
  %14859 = load i32, ptr %45, align 4, !tbaa !9
  %14860 = zext i32 %14859 to i64
  %14861 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14858, i64 noundef %14860, i64 noundef %14861)
  %14862 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14862, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %14863 = load i32, ptr %46, align 4, !tbaa !9
  %14864 = load i32, ptr %45, align 4, !tbaa !9
  %14865 = add i32 %14864, %14863
  store i32 %14865, ptr %45, align 4, !tbaa !9
  %14866 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14866, ptr %6, align 4, !tbaa !9
  br label %2945

14867:                                            ; preds = %3038
  %14868 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14868, ptr %45, align 4, !tbaa !9
  %14869 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14869, ptr %46, 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 %46, align 4, !tbaa !9
  %14873 = zext i32 %14872 to i64
  %14874 = add i64 %14873, 2
  %14875 = call i32 @i32_load8_u(ptr noundef %14871, i64 noundef %14874)
  store i32 %14875, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %14876 = load i32, ptr %47, align 4, !tbaa !9
  %14877 = and i32 %14876, 31
  %14878 = load i32, ptr %46, align 4, !tbaa !9
  %14879 = shl i32 %14878, %14877
  store i32 %14879, ptr %46, align 4, !tbaa !9
  %14880 = load i32, ptr %46, align 4, !tbaa !9
  %14881 = load i32, ptr %45, align 4, !tbaa !9
  %14882 = add i32 %14881, %14880
  store i32 %14882, ptr %45, align 4, !tbaa !9
  %14883 = load ptr, ptr %5, align 8, !tbaa !5
  %14884 = getelementptr inbounds %struct.w2c_hermes, ptr %14883, i32 0, i32 6
  %14885 = load i32, ptr %45, align 4, !tbaa !9
  %14886 = zext i32 %14885 to i64
  %14887 = call i64 @i64_load(ptr noundef %14884, i64 noundef %14886)
  store i64 %14887, ptr %54, align 8, !tbaa !11
  %14888 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %14888, ptr %40, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %14889 = load i64, ptr %54, align 8, !tbaa !11
  %14890 = load i64, ptr %55, align 8, !tbaa !11
  %14891 = and i64 %14890, 63
  %14892 = ashr i64 %14889, %14891
  store i64 %14892, ptr %54, align 8, !tbaa !11
  %14893 = load i64, ptr %54, align 8, !tbaa !11
  %14894 = trunc i64 %14893 to i32
  store i32 %14894, ptr %45, align 4, !tbaa !9
  store i32 -3, ptr %46, align 4, !tbaa !9
  %14895 = load i32, ptr %45, align 4, !tbaa !9
  %14896 = load i32, ptr %46, align 4, !tbaa !9
  %14897 = icmp ne i32 %14895, %14896
  %14898 = zext i1 %14897 to i32
  store i32 %14898, ptr %45, align 4, !tbaa !9
  %14899 = load i32, ptr %45, align 4, !tbaa !9
  %14900 = icmp ne i32 %14899, 0
  br i1 %14900, label %14901, label %15033

14901:                                            ; preds = %14867
  %14902 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14902, ptr %45, align 4, !tbaa !9
  %14903 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %14903, ptr %46, align 4, !tbaa !9
  %14904 = load ptr, ptr %5, align 8, !tbaa !5
  %14905 = getelementptr inbounds %struct.w2c_hermes, ptr %14904, i32 0, i32 6
  %14906 = load i32, ptr %45, align 4, !tbaa !9
  %14907 = zext i32 %14906 to i64
  %14908 = add i64 %14907, 5808
  %14909 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14905, i64 noundef %14908, i32 noundef %14909)
  %14910 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14910, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %14911 = load i32, ptr %46, align 4, !tbaa !9
  %14912 = load i32, ptr %45, align 4, !tbaa !9
  %14913 = add i32 %14912, %14911
  store i32 %14913, ptr %45, align 4, !tbaa !9
  %14914 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14914, ptr %46, align 4, !tbaa !9
  %14915 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %14915, ptr %47, align 4, !tbaa !9
  %14916 = load i32, ptr %6, 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, 2
  %14922 = call i32 @i32_load8_u(ptr noundef %14918, i64 noundef %14921)
  store i32 %14922, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %14923 = load i32, ptr %49, align 4, !tbaa !9
  %14924 = and i32 %14923, 31
  %14925 = load i32, ptr %48, align 4, !tbaa !9
  %14926 = shl i32 %14925, %14924
  store i32 %14926, ptr %48, align 4, !tbaa !9
  %14927 = load i32, ptr %48, align 4, !tbaa !9
  %14928 = load i32, ptr %47, align 4, !tbaa !9
  %14929 = add i32 %14928, %14927
  store i32 %14929, ptr %47, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %14930 = load ptr, ptr %5, align 8, !tbaa !5
  %14931 = load i32, ptr %45, align 4, !tbaa !9
  %14932 = load i32, ptr %46, align 4, !tbaa !9
  %14933 = load i32, ptr %47, align 4, !tbaa !9
  %14934 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %14930, i32 noundef %14931, i32 noundef %14932, i32 noundef %14933, i32 noundef %14934)
  %14935 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14935, ptr %45, align 4, !tbaa !9
  %14936 = load ptr, ptr %5, align 8, !tbaa !5
  %14937 = getelementptr inbounds %struct.w2c_hermes, ptr %14936, i32 0, i32 6
  %14938 = load i32, ptr %45, align 4, !tbaa !9
  %14939 = zext i32 %14938 to i64
  %14940 = add i64 %14939, 304
  %14941 = call i32 @i32_load(ptr noundef %14937, i64 noundef %14940)
  store i32 %14941, ptr %45, align 4, !tbaa !9
  %14942 = load i32, ptr %45, align 4, !tbaa !9
  %14943 = icmp ne i32 %14942, 0
  %14944 = xor i1 %14943, true
  %14945 = zext i1 %14944 to i32
  store i32 %14945, ptr %45, align 4, !tbaa !9
  %14946 = load i32, ptr %45, align 4, !tbaa !9
  %14947 = icmp ne i32 %14946, 0
  br i1 %14947, label %14948, label %14957

14948:                                            ; preds = %14901
  %14949 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14949, ptr %45, align 4, !tbaa !9
  %14950 = load ptr, ptr %5, align 8, !tbaa !5
  %14951 = getelementptr inbounds %struct.w2c_hermes, ptr %14950, i32 0, i32 6
  %14952 = load i32, ptr %45, align 4, !tbaa !9
  %14953 = zext i32 %14952 to i64
  %14954 = add i64 %14953, 5808
  %14955 = call i32 @i32_load(ptr noundef %14951, i64 noundef %14954)
  store i32 %14955, ptr %45, align 4, !tbaa !9
  %14956 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14956, ptr %6, align 4, !tbaa !9
  br label %43136

14957:                                            ; preds = %14901
  %14958 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14958, ptr %45, align 4, !tbaa !9
  %14959 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14959, ptr %46, align 4, !tbaa !9
  %14960 = load ptr, ptr %5, align 8, !tbaa !5
  %14961 = getelementptr inbounds %struct.w2c_hermes, ptr %14960, i32 0, i32 6
  %14962 = load i32, ptr %46, align 4, !tbaa !9
  %14963 = zext i32 %14962 to i64
  %14964 = add i64 %14963, 312
  %14965 = call i64 @i64_load(ptr noundef %14961, i64 noundef %14964)
  store i64 %14965, ptr %55, align 8, !tbaa !11
  %14966 = load ptr, ptr %5, align 8, !tbaa !5
  %14967 = getelementptr inbounds %struct.w2c_hermes, ptr %14966, i32 0, i32 6
  %14968 = load i32, ptr %45, align 4, !tbaa !9
  %14969 = zext i32 %14968 to i64
  %14970 = add i64 %14969, 352
  %14971 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %14967, i64 noundef %14970, i64 noundef %14971)
  %14972 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14972, ptr %45, align 4, !tbaa !9
  %14973 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %14973, ptr %46, align 4, !tbaa !9
  %14974 = load ptr, ptr %5, align 8, !tbaa !5
  %14975 = load i32, ptr %45, align 4, !tbaa !9
  %14976 = load i32, ptr %46, align 4, !tbaa !9
  %14977 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %14974, i32 noundef %14975, i32 noundef %14976)
  store i32 %14977, ptr %45, align 4, !tbaa !9
  %14978 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14978, ptr %7, align 4, !tbaa !9
  %14979 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %14979, ptr %45, align 4, !tbaa !9
  %14980 = load ptr, ptr %5, align 8, !tbaa !5
  %14981 = getelementptr inbounds %struct.w2c_hermes, ptr %14980, i32 0, i32 6
  %14982 = load i32, ptr %45, align 4, !tbaa !9
  %14983 = zext i32 %14982 to i64
  %14984 = add i64 %14983, 5808
  %14985 = call i32 @i32_load(ptr noundef %14981, i64 noundef %14984)
  store i32 %14985, ptr %45, align 4, !tbaa !9
  %14986 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %14986, ptr %6, align 4, !tbaa !9
  %14987 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %14987, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %14988 = load i32, ptr %45, align 4, !tbaa !9
  %14989 = load i32, ptr %46, align 4, !tbaa !9
  %14990 = icmp eq i32 %14988, %14989
  %14991 = zext i1 %14990 to i32
  store i32 %14991, ptr %45, align 4, !tbaa !9
  %14992 = load i32, ptr %45, align 4, !tbaa !9
  %14993 = icmp ne i32 %14992, 0
  br i1 %14993, label %14994, label %14995

14994:                                            ; preds = %14957
  br label %43136

14995:                                            ; preds = %14957
  %14996 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %14996, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %14997 = load ptr, ptr %5, align 8, !tbaa !5
  %14998 = getelementptr inbounds %struct.w2c_hermes, ptr %14997, i32 0, i32 6
  %14999 = load i32, ptr %45, align 4, !tbaa !9
  %15000 = zext i32 %14999 to i64
  %15001 = add i64 %15000, 516
  %15002 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %14998, i64 noundef %15001, i32 noundef %15002)
  %15003 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15003, ptr %45, align 4, !tbaa !9
  %15004 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %15004, ptr %46, align 4, !tbaa !9
  %15005 = load ptr, ptr %5, align 8, !tbaa !5
  %15006 = getelementptr inbounds %struct.w2c_hermes, ptr %15005, i32 0, i32 6
  %15007 = load i32, ptr %45, align 4, !tbaa !9
  %15008 = zext i32 %15007 to i64
  %15009 = add i64 %15008, 512
  %15010 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15006, i64 noundef %15009, i32 noundef %15010)
  %15011 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15011, ptr %45, align 4, !tbaa !9
  %15012 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %15012, ptr %46, align 4, !tbaa !9
  %15013 = load ptr, ptr %5, align 8, !tbaa !5
  %15014 = getelementptr inbounds %struct.w2c_hermes, ptr %15013, i32 0, i32 6
  %15015 = load i32, ptr %45, align 4, !tbaa !9
  %15016 = zext i32 %15015 to i64
  %15017 = add i64 %15016, 508
  %15018 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15014, i64 noundef %15017, i32 noundef %15018)
  %15019 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15019, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %15023 = zext i32 %15022 to i64
  %15024 = add i64 %15023, 352
  %15025 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15021, i64 noundef %15024, i64 noundef %15025)
  %15026 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15026, ptr %45, align 4, !tbaa !9
  %15027 = load i32, ptr %45, align 4, !tbaa !9
  %15028 = zext i32 %15027 to i64
  store i64 %15028, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %15029 = load i64, ptr %55, align 8, !tbaa !11
  %15030 = load i64, ptr %54, align 8, !tbaa !11
  %15031 = or i64 %15030, %15029
  store i64 %15031, ptr %54, align 8, !tbaa !11
  %15032 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %15032, ptr %40, align 8, !tbaa !11
  br label %15033

15033:                                            ; preds = %14995, %14867
  %15034 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15034, ptr %45, align 4, !tbaa !9
  %15035 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15035, ptr %46, align 4, !tbaa !9
  %15036 = load ptr, ptr %5, align 8, !tbaa !5
  %15037 = getelementptr inbounds %struct.w2c_hermes, ptr %15036, i32 0, i32 6
  %15038 = load i32, ptr %46, align 4, !tbaa !9
  %15039 = zext i32 %15038 to i64
  %15040 = add i64 %15039, 1
  %15041 = call i32 @i32_load8_u(ptr noundef %15037, i64 noundef %15040)
  store i32 %15041, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15042 = load i32, ptr %47, align 4, !tbaa !9
  %15043 = and i32 %15042, 31
  %15044 = load i32, ptr %46, align 4, !tbaa !9
  %15045 = shl i32 %15044, %15043
  store i32 %15045, ptr %46, align 4, !tbaa !9
  %15046 = load i32, ptr %46, align 4, !tbaa !9
  %15047 = load i32, ptr %45, align 4, !tbaa !9
  %15048 = add i32 %15047, %15046
  store i32 %15048, ptr %45, align 4, !tbaa !9
  %15049 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %15049, ptr %55, align 8, !tbaa !11
  %15050 = load ptr, ptr %5, align 8, !tbaa !5
  %15051 = getelementptr inbounds %struct.w2c_hermes, ptr %15050, i32 0, i32 6
  %15052 = load i32, ptr %45, align 4, !tbaa !9
  %15053 = zext i32 %15052 to i64
  %15054 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15051, i64 noundef %15053, i64 noundef %15054)
  %15055 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15055, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15056 = load i32, ptr %46, align 4, !tbaa !9
  %15057 = load i32, ptr %45, align 4, !tbaa !9
  %15058 = add i32 %15057, %15056
  store i32 %15058, ptr %45, align 4, !tbaa !9
  %15059 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15059, ptr %6, align 4, !tbaa !9
  br label %2945

15060:                                            ; preds = %3039
  %15061 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15061, ptr %45, align 4, !tbaa !9
  %15062 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15062, ptr %46, align 4, !tbaa !9
  %15063 = load ptr, ptr %5, align 8, !tbaa !5
  %15064 = getelementptr inbounds %struct.w2c_hermes, ptr %15063, i32 0, i32 6
  %15065 = load i32, ptr %46, align 4, !tbaa !9
  %15066 = zext i32 %15065 to i64
  %15067 = add i64 %15066, 1
  %15068 = call i32 @i32_load8_s(ptr noundef %15064, i64 noundef %15067)
  store i32 %15068, ptr %46, align 4, !tbaa !9
  %15069 = load i32, ptr %46, align 4, !tbaa !9
  %15070 = load i32, ptr %45, align 4, !tbaa !9
  %15071 = add i32 %15070, %15069
  store i32 %15071, ptr %45, align 4, !tbaa !9
  %15072 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15072, ptr %6, align 4, !tbaa !9
  br label %2945

15073:                                            ; preds = %3040
  %15074 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15074, ptr %45, align 4, !tbaa !9
  %15075 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15075, ptr %46, align 4, !tbaa !9
  %15076 = load ptr, ptr %5, align 8, !tbaa !5
  %15077 = getelementptr inbounds %struct.w2c_hermes, ptr %15076, i32 0, i32 6
  %15078 = load i32, ptr %46, align 4, !tbaa !9
  %15079 = zext i32 %15078 to i64
  %15080 = add i64 %15079, 1
  %15081 = call i32 @i32_load(ptr noundef %15077, i64 noundef %15080)
  store i32 %15081, ptr %46, align 4, !tbaa !9
  %15082 = load i32, ptr %46, align 4, !tbaa !9
  %15083 = load i32, ptr %45, align 4, !tbaa !9
  %15084 = add i32 %15083, %15082
  store i32 %15084, ptr %45, align 4, !tbaa !9
  %15085 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15085, ptr %6, align 4, !tbaa !9
  br label %2945

15086:                                            ; preds = %3041
  %15087 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15087, ptr %45, align 4, !tbaa !9
  %15088 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15088, ptr %46, align 4, !tbaa !9
  %15089 = load ptr, ptr %5, align 8, !tbaa !5
  %15090 = getelementptr inbounds %struct.w2c_hermes, ptr %15089, i32 0, i32 6
  %15091 = load i32, ptr %46, align 4, !tbaa !9
  %15092 = zext i32 %15091 to i64
  %15093 = add i64 %15092, 2
  %15094 = call i32 @i32_load8_u(ptr noundef %15090, i64 noundef %15093)
  store i32 %15094, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15095 = load i32, ptr %47, align 4, !tbaa !9
  %15096 = and i32 %15095, 31
  %15097 = load i32, ptr %46, align 4, !tbaa !9
  %15098 = shl i32 %15097, %15096
  store i32 %15098, ptr %46, align 4, !tbaa !9
  %15099 = load i32, ptr %46, align 4, !tbaa !9
  %15100 = load i32, ptr %45, align 4, !tbaa !9
  %15101 = add i32 %15100, %15099
  store i32 %15101, ptr %45, align 4, !tbaa !9
  %15102 = load ptr, ptr %5, align 8, !tbaa !5
  %15103 = getelementptr inbounds %struct.w2c_hermes, ptr %15102, i32 0, i32 6
  %15104 = load i32, ptr %45, align 4, !tbaa !9
  %15105 = zext i32 %15104 to i64
  %15106 = call i64 @i64_load(ptr noundef %15103, i64 noundef %15105)
  store i64 %15106, ptr %54, align 8, !tbaa !11
  %15107 = load ptr, ptr %5, align 8, !tbaa !5
  %15108 = load i64, ptr %54, align 8, !tbaa !11
  %15109 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %15107, i64 noundef %15108)
  store i32 %15109, ptr %45, align 4, !tbaa !9
  %15110 = load i32, ptr %45, align 4, !tbaa !9
  %15111 = icmp ne i32 %15110, 0
  br i1 %15111, label %15112, label %15125

15112:                                            ; preds = %15086
  %15113 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15113, ptr %45, align 4, !tbaa !9
  %15114 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15114, ptr %46, align 4, !tbaa !9
  %15115 = load ptr, ptr %5, align 8, !tbaa !5
  %15116 = getelementptr inbounds %struct.w2c_hermes, ptr %15115, i32 0, i32 6
  %15117 = load i32, ptr %46, align 4, !tbaa !9
  %15118 = zext i32 %15117 to i64
  %15119 = add i64 %15118, 1
  %15120 = call i32 @i32_load8_s(ptr noundef %15116, i64 noundef %15119)
  store i32 %15120, ptr %46, align 4, !tbaa !9
  %15121 = load i32, ptr %46, align 4, !tbaa !9
  %15122 = load i32, ptr %45, align 4, !tbaa !9
  %15123 = add i32 %15122, %15121
  store i32 %15123, ptr %45, align 4, !tbaa !9
  %15124 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15124, ptr %6, align 4, !tbaa !9
  br label %2945

15125:                                            ; preds = %15086
  %15126 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15126, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15127 = load i32, ptr %46, align 4, !tbaa !9
  %15128 = load i32, ptr %45, align 4, !tbaa !9
  %15129 = add i32 %15128, %15127
  store i32 %15129, ptr %45, align 4, !tbaa !9
  %15130 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15130, ptr %6, align 4, !tbaa !9
  br label %2945

15131:                                            ; preds = %3042
  %15132 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15132, ptr %45, align 4, !tbaa !9
  %15133 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15133, ptr %46, align 4, !tbaa !9
  %15134 = load ptr, ptr %5, align 8, !tbaa !5
  %15135 = getelementptr inbounds %struct.w2c_hermes, ptr %15134, i32 0, i32 6
  %15136 = load i32, ptr %46, align 4, !tbaa !9
  %15137 = zext i32 %15136 to i64
  %15138 = add i64 %15137, 5
  %15139 = call i32 @i32_load8_u(ptr noundef %15135, i64 noundef %15138)
  store i32 %15139, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15140 = load i32, ptr %47, align 4, !tbaa !9
  %15141 = and i32 %15140, 31
  %15142 = load i32, ptr %46, align 4, !tbaa !9
  %15143 = shl i32 %15142, %15141
  store i32 %15143, ptr %46, align 4, !tbaa !9
  %15144 = load i32, ptr %46, align 4, !tbaa !9
  %15145 = load i32, ptr %45, align 4, !tbaa !9
  %15146 = add i32 %15145, %15144
  store i32 %15146, ptr %45, align 4, !tbaa !9
  %15147 = load ptr, ptr %5, align 8, !tbaa !5
  %15148 = getelementptr inbounds %struct.w2c_hermes, ptr %15147, i32 0, i32 6
  %15149 = load i32, ptr %45, align 4, !tbaa !9
  %15150 = zext i32 %15149 to i64
  %15151 = call i64 @i64_load(ptr noundef %15148, i64 noundef %15150)
  store i64 %15151, ptr %54, align 8, !tbaa !11
  %15152 = load ptr, ptr %5, align 8, !tbaa !5
  %15153 = load i64, ptr %54, align 8, !tbaa !11
  %15154 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %15152, i64 noundef %15153)
  store i32 %15154, ptr %45, align 4, !tbaa !9
  %15155 = load i32, ptr %45, align 4, !tbaa !9
  %15156 = icmp ne i32 %15155, 0
  br i1 %15156, label %15157, label %15170

15157:                                            ; preds = %15131
  %15158 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15158, ptr %45, align 4, !tbaa !9
  %15159 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15159, ptr %46, align 4, !tbaa !9
  %15160 = load ptr, ptr %5, align 8, !tbaa !5
  %15161 = getelementptr inbounds %struct.w2c_hermes, ptr %15160, i32 0, i32 6
  %15162 = load i32, ptr %46, align 4, !tbaa !9
  %15163 = zext i32 %15162 to i64
  %15164 = add i64 %15163, 1
  %15165 = call i32 @i32_load(ptr noundef %15161, i64 noundef %15164)
  store i32 %15165, ptr %46, align 4, !tbaa !9
  %15166 = load i32, ptr %46, align 4, !tbaa !9
  %15167 = load i32, ptr %45, align 4, !tbaa !9
  %15168 = add i32 %15167, %15166
  store i32 %15168, ptr %45, align 4, !tbaa !9
  %15169 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15169, ptr %6, align 4, !tbaa !9
  br label %2945

15170:                                            ; preds = %15131
  %15171 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15171, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %15172 = load i32, ptr %46, align 4, !tbaa !9
  %15173 = load i32, ptr %45, align 4, !tbaa !9
  %15174 = add i32 %15173, %15172
  store i32 %15174, ptr %45, align 4, !tbaa !9
  %15175 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15175, ptr %6, align 4, !tbaa !9
  br label %2945

15176:                                            ; preds = %3043
  %15177 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15177, ptr %45, align 4, !tbaa !9
  %15178 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15178, ptr %46, align 4, !tbaa !9
  %15179 = load ptr, ptr %5, align 8, !tbaa !5
  %15180 = getelementptr inbounds %struct.w2c_hermes, ptr %15179, i32 0, i32 6
  %15181 = load i32, ptr %46, align 4, !tbaa !9
  %15182 = zext i32 %15181 to i64
  %15183 = add i64 %15182, 2
  %15184 = call i32 @i32_load8_u(ptr noundef %15180, i64 noundef %15183)
  store i32 %15184, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15185 = load i32, ptr %47, align 4, !tbaa !9
  %15186 = and i32 %15185, 31
  %15187 = load i32, ptr %46, align 4, !tbaa !9
  %15188 = shl i32 %15187, %15186
  store i32 %15188, ptr %46, align 4, !tbaa !9
  %15189 = load i32, ptr %46, align 4, !tbaa !9
  %15190 = load i32, ptr %45, align 4, !tbaa !9
  %15191 = add i32 %15190, %15189
  store i32 %15191, ptr %45, align 4, !tbaa !9
  %15192 = load ptr, ptr %5, align 8, !tbaa !5
  %15193 = getelementptr inbounds %struct.w2c_hermes, ptr %15192, i32 0, i32 6
  %15194 = load i32, ptr %45, align 4, !tbaa !9
  %15195 = zext i32 %15194 to i64
  %15196 = call i64 @i64_load(ptr noundef %15193, i64 noundef %15195)
  store i64 %15196, ptr %54, align 8, !tbaa !11
  %15197 = load ptr, ptr %5, align 8, !tbaa !5
  %15198 = load i64, ptr %54, align 8, !tbaa !11
  %15199 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %15197, i64 noundef %15198)
  store i32 %15199, ptr %45, align 4, !tbaa !9
  %15200 = load i32, ptr %45, align 4, !tbaa !9
  %15201 = icmp ne i32 %15200, 0
  %15202 = xor i1 %15201, true
  %15203 = zext i1 %15202 to i32
  store i32 %15203, ptr %45, align 4, !tbaa !9
  %15204 = load i32, ptr %45, align 4, !tbaa !9
  %15205 = icmp ne i32 %15204, 0
  br i1 %15205, label %15206, label %15219

15206:                                            ; preds = %15176
  %15207 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15207, ptr %45, align 4, !tbaa !9
  %15208 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15208, ptr %46, align 4, !tbaa !9
  %15209 = load ptr, ptr %5, align 8, !tbaa !5
  %15210 = getelementptr inbounds %struct.w2c_hermes, ptr %15209, i32 0, i32 6
  %15211 = load i32, ptr %46, align 4, !tbaa !9
  %15212 = zext i32 %15211 to i64
  %15213 = add i64 %15212, 1
  %15214 = call i32 @i32_load8_s(ptr noundef %15210, i64 noundef %15213)
  store i32 %15214, ptr %46, align 4, !tbaa !9
  %15215 = load i32, ptr %46, align 4, !tbaa !9
  %15216 = load i32, ptr %45, align 4, !tbaa !9
  %15217 = add i32 %15216, %15215
  store i32 %15217, ptr %45, align 4, !tbaa !9
  %15218 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15218, ptr %6, align 4, !tbaa !9
  br label %2945

15219:                                            ; preds = %15176
  %15220 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15220, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15221 = load i32, ptr %46, align 4, !tbaa !9
  %15222 = load i32, ptr %45, align 4, !tbaa !9
  %15223 = add i32 %15222, %15221
  store i32 %15223, ptr %45, align 4, !tbaa !9
  %15224 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15224, ptr %6, align 4, !tbaa !9
  br label %2945

15225:                                            ; preds = %3044
  %15226 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15226, ptr %45, align 4, !tbaa !9
  %15227 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15227, ptr %46, 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 %46, align 4, !tbaa !9
  %15231 = zext i32 %15230 to i64
  %15232 = add i64 %15231, 5
  %15233 = call i32 @i32_load8_u(ptr noundef %15229, i64 noundef %15232)
  store i32 %15233, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15234 = load i32, ptr %47, align 4, !tbaa !9
  %15235 = and i32 %15234, 31
  %15236 = load i32, ptr %46, align 4, !tbaa !9
  %15237 = shl i32 %15236, %15235
  store i32 %15237, ptr %46, align 4, !tbaa !9
  %15238 = load i32, ptr %46, align 4, !tbaa !9
  %15239 = load i32, ptr %45, align 4, !tbaa !9
  %15240 = add i32 %15239, %15238
  store i32 %15240, ptr %45, align 4, !tbaa !9
  %15241 = load ptr, ptr %5, align 8, !tbaa !5
  %15242 = getelementptr inbounds %struct.w2c_hermes, ptr %15241, i32 0, i32 6
  %15243 = load i32, ptr %45, align 4, !tbaa !9
  %15244 = zext i32 %15243 to i64
  %15245 = call i64 @i64_load(ptr noundef %15242, i64 noundef %15244)
  store i64 %15245, ptr %54, align 8, !tbaa !11
  %15246 = load ptr, ptr %5, align 8, !tbaa !5
  %15247 = load i64, ptr %54, align 8, !tbaa !11
  %15248 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %15246, i64 noundef %15247)
  store i32 %15248, ptr %45, align 4, !tbaa !9
  %15249 = load i32, ptr %45, align 4, !tbaa !9
  %15250 = icmp ne i32 %15249, 0
  %15251 = xor i1 %15250, true
  %15252 = zext i1 %15251 to i32
  store i32 %15252, ptr %45, align 4, !tbaa !9
  %15253 = load i32, ptr %45, align 4, !tbaa !9
  %15254 = icmp ne i32 %15253, 0
  br i1 %15254, label %15255, label %15268

15255:                                            ; preds = %15225
  %15256 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15256, ptr %45, align 4, !tbaa !9
  %15257 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15257, ptr %46, align 4, !tbaa !9
  %15258 = load ptr, ptr %5, align 8, !tbaa !5
  %15259 = getelementptr inbounds %struct.w2c_hermes, ptr %15258, i32 0, i32 6
  %15260 = load i32, ptr %46, align 4, !tbaa !9
  %15261 = zext i32 %15260 to i64
  %15262 = add i64 %15261, 1
  %15263 = call i32 @i32_load(ptr noundef %15259, i64 noundef %15262)
  store i32 %15263, ptr %46, align 4, !tbaa !9
  %15264 = load i32, ptr %46, align 4, !tbaa !9
  %15265 = load i32, ptr %45, align 4, !tbaa !9
  %15266 = add i32 %15265, %15264
  store i32 %15266, ptr %45, align 4, !tbaa !9
  %15267 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15267, ptr %6, align 4, !tbaa !9
  br label %2945

15268:                                            ; preds = %15225
  %15269 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15269, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %15270 = load i32, ptr %46, align 4, !tbaa !9
  %15271 = load i32, ptr %45, align 4, !tbaa !9
  %15272 = add i32 %15271, %15270
  store i32 %15272, ptr %45, align 4, !tbaa !9
  %15273 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15273, ptr %6, align 4, !tbaa !9
  br label %2945

15274:                                            ; preds = %3045
  %15275 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15275, ptr %45, align 4, !tbaa !9
  %15276 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15276, ptr %46, align 4, !tbaa !9
  %15277 = load ptr, ptr %5, align 8, !tbaa !5
  %15278 = getelementptr inbounds %struct.w2c_hermes, ptr %15277, i32 0, i32 6
  %15279 = load i32, ptr %46, align 4, !tbaa !9
  %15280 = zext i32 %15279 to i64
  %15281 = add i64 %15280, 2
  %15282 = call i32 @i32_load8_u(ptr noundef %15278, i64 noundef %15281)
  store i32 %15282, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15283 = load i32, ptr %47, align 4, !tbaa !9
  %15284 = and i32 %15283, 31
  %15285 = load i32, ptr %46, align 4, !tbaa !9
  %15286 = shl i32 %15285, %15284
  store i32 %15286, ptr %46, align 4, !tbaa !9
  %15287 = load i32, ptr %46, align 4, !tbaa !9
  %15288 = load i32, ptr %45, align 4, !tbaa !9
  %15289 = add i32 %15288, %15287
  store i32 %15289, ptr %45, align 4, !tbaa !9
  %15290 = load ptr, ptr %5, align 8, !tbaa !5
  %15291 = getelementptr inbounds %struct.w2c_hermes, ptr %15290, i32 0, i32 6
  %15292 = load i32, ptr %45, align 4, !tbaa !9
  %15293 = zext i32 %15292 to i64
  %15294 = call i64 @i64_load(ptr noundef %15291, i64 noundef %15293)
  store i64 %15294, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %15295 = load i64, ptr %54, align 8, !tbaa !11
  %15296 = load i64, ptr %55, align 8, !tbaa !11
  %15297 = and i64 %15296, 63
  %15298 = ashr i64 %15295, %15297
  store i64 %15298, ptr %54, align 8, !tbaa !11
  %15299 = load i64, ptr %54, align 8, !tbaa !11
  %15300 = trunc i64 %15299 to i32
  store i32 %15300, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %15301 = load i32, ptr %45, align 4, !tbaa !9
  %15302 = load i32, ptr %46, align 4, !tbaa !9
  %15303 = icmp eq i32 %15301, %15302
  %15304 = zext i1 %15303 to i32
  store i32 %15304, ptr %45, align 4, !tbaa !9
  %15305 = load i32, ptr %45, align 4, !tbaa !9
  %15306 = icmp ne i32 %15305, 0
  br i1 %15306, label %15307, label %15320

15307:                                            ; preds = %15274
  %15308 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15308, ptr %45, align 4, !tbaa !9
  %15309 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15309, ptr %46, align 4, !tbaa !9
  %15310 = load ptr, ptr %5, align 8, !tbaa !5
  %15311 = getelementptr inbounds %struct.w2c_hermes, ptr %15310, i32 0, i32 6
  %15312 = load i32, ptr %46, align 4, !tbaa !9
  %15313 = zext i32 %15312 to i64
  %15314 = add i64 %15313, 1
  %15315 = call i32 @i32_load8_s(ptr noundef %15311, i64 noundef %15314)
  store i32 %15315, ptr %46, align 4, !tbaa !9
  %15316 = load i32, ptr %46, align 4, !tbaa !9
  %15317 = load i32, ptr %45, align 4, !tbaa !9
  %15318 = add i32 %15317, %15316
  store i32 %15318, ptr %45, align 4, !tbaa !9
  %15319 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15319, ptr %6, align 4, !tbaa !9
  br label %2945

15320:                                            ; preds = %15274
  %15321 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15321, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15322 = load i32, ptr %46, align 4, !tbaa !9
  %15323 = load i32, ptr %45, align 4, !tbaa !9
  %15324 = add i32 %15323, %15322
  store i32 %15324, ptr %45, align 4, !tbaa !9
  %15325 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15325, ptr %6, align 4, !tbaa !9
  br label %2945

15326:                                            ; preds = %3046
  %15327 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15327, ptr %45, align 4, !tbaa !9
  %15328 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15328, ptr %46, align 4, !tbaa !9
  %15329 = load ptr, ptr %5, align 8, !tbaa !5
  %15330 = getelementptr inbounds %struct.w2c_hermes, ptr %15329, i32 0, i32 6
  %15331 = load i32, ptr %46, align 4, !tbaa !9
  %15332 = zext i32 %15331 to i64
  %15333 = add i64 %15332, 5
  %15334 = call i32 @i32_load8_u(ptr noundef %15330, i64 noundef %15333)
  store i32 %15334, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15335 = load i32, ptr %47, align 4, !tbaa !9
  %15336 = and i32 %15335, 31
  %15337 = load i32, ptr %46, align 4, !tbaa !9
  %15338 = shl i32 %15337, %15336
  store i32 %15338, ptr %46, align 4, !tbaa !9
  %15339 = load i32, ptr %46, align 4, !tbaa !9
  %15340 = load i32, ptr %45, align 4, !tbaa !9
  %15341 = add i32 %15340, %15339
  store i32 %15341, ptr %45, align 4, !tbaa !9
  %15342 = load ptr, ptr %5, align 8, !tbaa !5
  %15343 = getelementptr inbounds %struct.w2c_hermes, ptr %15342, i32 0, i32 6
  %15344 = load i32, ptr %45, align 4, !tbaa !9
  %15345 = zext i32 %15344 to i64
  %15346 = call i64 @i64_load(ptr noundef %15343, i64 noundef %15345)
  store i64 %15346, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %15347 = load i64, ptr %54, align 8, !tbaa !11
  %15348 = load i64, ptr %55, align 8, !tbaa !11
  %15349 = and i64 %15348, 63
  %15350 = ashr i64 %15347, %15349
  store i64 %15350, ptr %54, align 8, !tbaa !11
  %15351 = load i64, ptr %54, align 8, !tbaa !11
  %15352 = trunc i64 %15351 to i32
  store i32 %15352, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %15353 = load i32, ptr %45, align 4, !tbaa !9
  %15354 = load i32, ptr %46, align 4, !tbaa !9
  %15355 = icmp eq i32 %15353, %15354
  %15356 = zext i1 %15355 to i32
  store i32 %15356, ptr %45, align 4, !tbaa !9
  %15357 = load i32, ptr %45, align 4, !tbaa !9
  %15358 = icmp ne i32 %15357, 0
  br i1 %15358, label %15359, label %15372

15359:                                            ; preds = %15326
  %15360 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15360, ptr %45, align 4, !tbaa !9
  %15361 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15361, ptr %46, align 4, !tbaa !9
  %15362 = load ptr, ptr %5, align 8, !tbaa !5
  %15363 = getelementptr inbounds %struct.w2c_hermes, ptr %15362, i32 0, i32 6
  %15364 = load i32, ptr %46, align 4, !tbaa !9
  %15365 = zext i32 %15364 to i64
  %15366 = add i64 %15365, 1
  %15367 = call i32 @i32_load(ptr noundef %15363, i64 noundef %15366)
  store i32 %15367, ptr %46, align 4, !tbaa !9
  %15368 = load i32, ptr %46, align 4, !tbaa !9
  %15369 = load i32, ptr %45, align 4, !tbaa !9
  %15370 = add i32 %15369, %15368
  store i32 %15370, ptr %45, align 4, !tbaa !9
  %15371 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15371, ptr %6, align 4, !tbaa !9
  br label %2945

15372:                                            ; preds = %15326
  %15373 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15373, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %15374 = load i32, ptr %46, align 4, !tbaa !9
  %15375 = load i32, ptr %45, align 4, !tbaa !9
  %15376 = add i32 %15375, %15374
  store i32 %15376, ptr %45, align 4, !tbaa !9
  %15377 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15377, ptr %6, align 4, !tbaa !9
  br label %2945

15378:                                            ; preds = %3047
  %15379 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15379, ptr %45, align 4, !tbaa !9
  %15380 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15380, ptr %46, align 4, !tbaa !9
  %15381 = load ptr, ptr %5, align 8, !tbaa !5
  %15382 = getelementptr inbounds %struct.w2c_hermes, ptr %15381, i32 0, i32 6
  %15383 = load i32, ptr %46, align 4, !tbaa !9
  %15384 = zext i32 %15383 to i64
  %15385 = add i64 %15384, 2
  %15386 = call i32 @i32_load8_u(ptr noundef %15382, i64 noundef %15385)
  store i32 %15386, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15387 = load i32, ptr %47, align 4, !tbaa !9
  %15388 = and i32 %15387, 31
  %15389 = load i32, ptr %46, align 4, !tbaa !9
  %15390 = shl i32 %15389, %15388
  store i32 %15390, ptr %46, align 4, !tbaa !9
  %15391 = load i32, ptr %46, align 4, !tbaa !9
  %15392 = load i32, ptr %45, align 4, !tbaa !9
  %15393 = add i32 %15392, %15391
  store i32 %15393, ptr %45, align 4, !tbaa !9
  %15394 = load ptr, ptr %5, align 8, !tbaa !5
  %15395 = getelementptr inbounds %struct.w2c_hermes, ptr %15394, i32 0, i32 6
  %15396 = load i32, ptr %45, align 4, !tbaa !9
  %15397 = zext i32 %15396 to i64
  %15398 = call i64 @i64_load(ptr noundef %15395, i64 noundef %15397)
  store i64 %15398, ptr %54, align 8, !tbaa !11
  %15399 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %15399, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %15400 = load i64, ptr %54, align 8, !tbaa !11
  %15401 = load i64, ptr %55, align 8, !tbaa !11
  %15402 = icmp ule i64 %15400, %15401
  %15403 = zext i1 %15402 to i32
  store i32 %15403, ptr %45, align 4, !tbaa !9
  %15404 = load i32, ptr %45, align 4, !tbaa !9
  %15405 = icmp ne i32 %15404, 0
  br i1 %15405, label %15406, label %15438

15406:                                            ; preds = %15378
  %15407 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15407, ptr %45, align 4, !tbaa !9
  %15408 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15408, ptr %46, align 4, !tbaa !9
  %15409 = load ptr, ptr %5, align 8, !tbaa !5
  %15410 = getelementptr inbounds %struct.w2c_hermes, ptr %15409, i32 0, i32 6
  %15411 = load i32, ptr %46, align 4, !tbaa !9
  %15412 = zext i32 %15411 to i64
  %15413 = add i64 %15412, 1
  %15414 = call i32 @i32_load8_u(ptr noundef %15410, i64 noundef %15413)
  store i32 %15414, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15415 = load i32, ptr %47, align 4, !tbaa !9
  %15416 = and i32 %15415, 31
  %15417 = load i32, ptr %46, align 4, !tbaa !9
  %15418 = shl i32 %15417, %15416
  store i32 %15418, ptr %46, align 4, !tbaa !9
  %15419 = load i32, ptr %46, align 4, !tbaa !9
  %15420 = load i32, ptr %45, align 4, !tbaa !9
  %15421 = add i32 %15420, %15419
  store i32 %15421, ptr %45, align 4, !tbaa !9
  %15422 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %15422, ptr %55, align 8, !tbaa !11
  %15423 = load i64, ptr %55, align 8, !tbaa !11
  %15424 = call double @f64_reinterpret_i64(i64 noundef %15423)
  store double %15424, ptr %61, align 8, !tbaa !13
  store double 1.000000e+00, ptr %62, align 8, !tbaa !13
  %15425 = load double, ptr %62, align 8, !tbaa !13
  %15426 = load double, ptr %61, align 8, !tbaa !13
  %15427 = fadd double %15426, %15425
  store double %15427, ptr %61, align 8, !tbaa !13
  %15428 = load ptr, ptr %5, align 8, !tbaa !5
  %15429 = getelementptr inbounds %struct.w2c_hermes, ptr %15428, i32 0, i32 6
  %15430 = load i32, ptr %45, align 4, !tbaa !9
  %15431 = zext i32 %15430 to i64
  %15432 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %15429, i64 noundef %15431, double noundef %15432)
  %15433 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15433, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15434 = load i32, ptr %46, align 4, !tbaa !9
  %15435 = load i32, ptr %45, align 4, !tbaa !9
  %15436 = add i32 %15435, %15434
  store i32 %15436, ptr %45, align 4, !tbaa !9
  %15437 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15437, ptr %6, align 4, !tbaa !9
  br label %2945

15438:                                            ; preds = %15378
  %15439 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15439, ptr %45, align 4, !tbaa !9
  %15440 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15440, ptr %46, align 4, !tbaa !9
  %15441 = load ptr, ptr %5, align 8, !tbaa !5
  %15442 = getelementptr inbounds %struct.w2c_hermes, ptr %15441, i32 0, i32 6
  %15443 = load i32, ptr %45, align 4, !tbaa !9
  %15444 = zext i32 %15443 to i64
  %15445 = add i64 %15444, 5808
  %15446 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15442, i64 noundef %15445, i32 noundef %15446)
  %15447 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %15447, ptr %45, align 4, !tbaa !9
  %15448 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15448, ptr %46, align 4, !tbaa !9
  %15449 = load ptr, ptr %5, align 8, !tbaa !5
  %15450 = getelementptr inbounds %struct.w2c_hermes, ptr %15449, i32 0, i32 6
  %15451 = load i32, ptr %46, align 4, !tbaa !9
  %15452 = zext i32 %15451 to i64
  %15453 = add i64 %15452, 2
  %15454 = call i32 @i32_load8_u(ptr noundef %15450, i64 noundef %15453)
  store i32 %15454, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %15455 = load i32, ptr %47, align 4, !tbaa !9
  %15456 = and i32 %15455, 31
  %15457 = load i32, ptr %46, align 4, !tbaa !9
  %15458 = shl i32 %15457, %15456
  store i32 %15458, ptr %46, align 4, !tbaa !9
  %15459 = load i32, ptr %46, align 4, !tbaa !9
  %15460 = load i32, ptr %45, align 4, !tbaa !9
  %15461 = add i32 %15460, %15459
  store i32 %15461, ptr %45, align 4, !tbaa !9
  %15462 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15462, ptr %6, align 4, !tbaa !9
  %15463 = load ptr, ptr %5, align 8, !tbaa !5
  %15464 = getelementptr inbounds %struct.w2c_hermes, ptr %15463, i32 0, i32 3
  %15465 = load i32, ptr %15464, align 8, !tbaa !15
  store i32 %15465, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %15466 = load i32, ptr %46, align 4, !tbaa !9
  %15467 = load i32, ptr %45, align 4, !tbaa !9
  %15468 = sub i32 %15467, %15466
  store i32 %15468, ptr %45, align 4, !tbaa !9
  %15469 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15469, ptr %13, align 4, !tbaa !9
  %15470 = load i32, ptr %45, align 4, !tbaa !9
  %15471 = load ptr, ptr %5, align 8, !tbaa !5
  %15472 = getelementptr inbounds %struct.w2c_hermes, ptr %15471, i32 0, i32 3
  store i32 %15470, ptr %15472, align 8, !tbaa !15
  %15473 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15473, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %15474 = load i32, ptr %46, align 4, !tbaa !9
  %15475 = load i32, ptr %45, align 4, !tbaa !9
  %15476 = add i32 %15475, %15474
  store i32 %15476, ptr %45, align 4, !tbaa !9
  %15477 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15477, ptr %46, align 4, !tbaa !9
  %15478 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15478, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %15479 = load ptr, ptr %5, align 8, !tbaa !5
  %15480 = load i32, ptr %45, align 4, !tbaa !9
  %15481 = load i32, ptr %46, align 4, !tbaa !9
  %15482 = load i32, ptr %47, align 4, !tbaa !9
  %15483 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %15479, i32 noundef %15480, i32 noundef %15481, i32 noundef %15482, i32 noundef %15483)
  %15484 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15484, ptr %45, align 4, !tbaa !9
  %15485 = load ptr, ptr %5, align 8, !tbaa !5
  %15486 = getelementptr inbounds %struct.w2c_hermes, ptr %15485, i32 0, i32 6
  %15487 = load i32, ptr %45, align 4, !tbaa !9
  %15488 = zext i32 %15487 to i64
  %15489 = add i64 %15488, 16
  %15490 = call i32 @i32_load(ptr noundef %15486, i64 noundef %15489)
  store i32 %15490, ptr %45, align 4, !tbaa !9
  %15491 = load i32, ptr %45, align 4, !tbaa !9
  %15492 = icmp ne i32 %15491, 0
  %15493 = xor i1 %15492, true
  %15494 = zext i1 %15493 to i32
  store i32 %15494, ptr %45, align 4, !tbaa !9
  %15495 = load i32, ptr %45, align 4, !tbaa !9
  %15496 = icmp ne i32 %15495, 0
  br i1 %15496, label %15497, label %15505

15497:                                            ; preds = %15438
  %15498 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15498, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %15499 = load ptr, ptr %5, align 8, !tbaa !5
  %15500 = getelementptr inbounds %struct.w2c_hermes, ptr %15499, i32 0, i32 6
  %15501 = load i32, ptr %45, align 4, !tbaa !9
  %15502 = zext i32 %15501 to i64
  %15503 = add i64 %15502, 304
  %15504 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15500, i64 noundef %15503, i32 noundef %15504)
  br label %16120

15505:                                            ; preds = %15438
  %15506 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15506, ptr %45, align 4, !tbaa !9
  %15507 = load ptr, ptr %5, align 8, !tbaa !5
  %15508 = getelementptr inbounds %struct.w2c_hermes, ptr %15507, i32 0, i32 6
  %15509 = load i32, ptr %45, align 4, !tbaa !9
  %15510 = zext i32 %15509 to i64
  %15511 = add i64 %15510, 24
  %15512 = call i64 @i64_load(ptr noundef %15508, i64 noundef %15511)
  store i64 %15512, ptr %54, align 8, !tbaa !11
  %15513 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %15513, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %15514 = load i64, ptr %54, align 8, !tbaa !11
  %15515 = load i64, ptr %55, align 8, !tbaa !11
  %15516 = and i64 %15515, 63
  %15517 = ashr i64 %15514, %15516
  store i64 %15517, ptr %54, align 8, !tbaa !11
  %15518 = load i64, ptr %54, align 8, !tbaa !11
  %15519 = trunc i64 %15518 to i32
  store i32 %15519, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %15520 = load i32, ptr %45, align 4, !tbaa !9
  %15521 = load i32, ptr %46, align 4, !tbaa !9
  %15522 = icmp ne i32 %15520, %15521
  %15523 = zext i1 %15522 to i32
  store i32 %15523, ptr %45, align 4, !tbaa !9
  %15524 = load i32, ptr %45, align 4, !tbaa !9
  %15525 = icmp ne i32 %15524, 0
  br i1 %15525, label %15526, label %15654

15526:                                            ; preds = %15505
  %15527 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15527, ptr %45, align 4, !tbaa !9
  %15528 = load ptr, ptr %5, align 8, !tbaa !5
  %15529 = getelementptr inbounds %struct.w2c_hermes, ptr %15528, i32 0, i32 6
  %15530 = load i32, ptr %45, align 4, !tbaa !9
  %15531 = zext i32 %15530 to i64
  %15532 = add i64 %15531, 4
  %15533 = call i32 @i32_load(ptr noundef %15529, i64 noundef %15532)
  store i32 %15533, ptr %45, align 4, !tbaa !9
  %15534 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15534, ptr %6, 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 %45, align 4, !tbaa !9
  %15538 = zext i32 %15537 to i64
  %15539 = add i64 %15538, 164
  %15540 = call i32 @i32_load(ptr noundef %15536, i64 noundef %15539)
  store i32 %15540, ptr %45, align 4, !tbaa !9
  %15541 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15541, ptr %7, align 4, !tbaa !9
  %15542 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15542, ptr %46, align 4, !tbaa !9
  %15543 = load ptr, ptr %5, align 8, !tbaa !5
  %15544 = getelementptr inbounds %struct.w2c_hermes, ptr %15543, i32 0, i32 6
  %15545 = load i32, ptr %46, align 4, !tbaa !9
  %15546 = zext i32 %15545 to i64
  %15547 = add i64 %15546, 168
  %15548 = call i32 @i32_load(ptr noundef %15544, i64 noundef %15547)
  store i32 %15548, ptr %46, align 4, !tbaa !9
  %15549 = load i32, ptr %45, align 4, !tbaa !9
  %15550 = load i32, ptr %46, align 4, !tbaa !9
  %15551 = icmp ult i32 %15549, %15550
  %15552 = zext i1 %15551 to i32
  store i32 %15552, ptr %45, align 4, !tbaa !9
  %15553 = load i32, ptr %45, align 4, !tbaa !9
  %15554 = icmp ne i32 %15553, 0
  br i1 %15554, label %15555, label %15574

15555:                                            ; preds = %15526
  %15556 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15556, ptr %45, align 4, !tbaa !9
  %15557 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15557, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %15558 = load i32, ptr %47, align 4, !tbaa !9
  %15559 = load i32, ptr %46, align 4, !tbaa !9
  %15560 = add i32 %15559, %15558
  store i32 %15560, ptr %46, align 4, !tbaa !9
  %15561 = load ptr, ptr %5, align 8, !tbaa !5
  %15562 = getelementptr inbounds %struct.w2c_hermes, ptr %15561, i32 0, i32 6
  %15563 = load i32, ptr %45, align 4, !tbaa !9
  %15564 = zext i32 %15563 to i64
  %15565 = add i64 %15564, 164
  %15566 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15562, i64 noundef %15565, i32 noundef %15566)
  %15567 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15567, ptr %45, align 4, !tbaa !9
  %15568 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %15568, ptr %55, align 8, !tbaa !11
  %15569 = load ptr, ptr %5, align 8, !tbaa !5
  %15570 = getelementptr inbounds %struct.w2c_hermes, ptr %15569, i32 0, i32 6
  %15571 = load i32, ptr %45, align 4, !tbaa !9
  %15572 = zext i32 %15571 to i64
  %15573 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15570, i64 noundef %15572, i64 noundef %15573)
  br label %15582

15574:                                            ; preds = %15526
  %15575 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15575, ptr %45, align 4, !tbaa !9
  %15576 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %15576, ptr %55, align 8, !tbaa !11
  %15577 = load ptr, ptr %5, align 8, !tbaa !5
  %15578 = load i32, ptr %45, align 4, !tbaa !9
  %15579 = load i64, ptr %55, align 8, !tbaa !11
  %15580 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %15577, i32 noundef %15578, i64 noundef %15579)
  store i32 %15580, ptr %45, align 4, !tbaa !9
  %15581 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15581, ptr %7, align 4, !tbaa !9
  br label %15582

15582:                                            ; preds = %15574, %15555
  %15583 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15583, ptr %45, align 4, !tbaa !9
  %15584 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15584, ptr %46, align 4, !tbaa !9
  %15585 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15585, ptr %47, align 4, !tbaa !9
  %15586 = load ptr, ptr %5, align 8, !tbaa !5
  %15587 = load i32, ptr %45, align 4, !tbaa !9
  %15588 = load i32, ptr %46, align 4, !tbaa !9
  %15589 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %15586, i32 noundef %15587, i32 noundef %15588, i32 noundef %15589)
  %15590 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15590, ptr %45, align 4, !tbaa !9
  %15591 = load ptr, ptr %5, align 8, !tbaa !5
  %15592 = getelementptr inbounds %struct.w2c_hermes, ptr %15591, i32 0, i32 6
  %15593 = load i32, ptr %45, align 4, !tbaa !9
  %15594 = zext i32 %15593 to i64
  %15595 = call i32 @i32_load(ptr noundef %15592, i64 noundef %15594)
  store i32 %15595, ptr %45, align 4, !tbaa !9
  %15596 = load i32, ptr %45, align 4, !tbaa !9
  %15597 = icmp ne i32 %15596, 0
  %15598 = xor i1 %15597, true
  %15599 = zext i1 %15598 to i32
  store i32 %15599, ptr %45, align 4, !tbaa !9
  %15600 = load i32, ptr %45, align 4, !tbaa !9
  %15601 = icmp ne i32 %15600, 0
  br i1 %15601, label %15602, label %15610

15602:                                            ; preds = %15582
  %15603 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15603, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %15607 = zext i32 %15606 to i64
  %15608 = add i64 %15607, 304
  %15609 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15605, i64 noundef %15608, i32 noundef %15609)
  br label %16120

15610:                                            ; preds = %15582
  %15611 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %15611, ptr %45, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %15615 = zext i32 %15614 to i64
  %15616 = add i64 %15615, 8
  %15617 = call double @f64_load(ptr noundef %15613, i64 noundef %15616)
  store double %15617, ptr %60, align 8, !tbaa !13
  %15618 = load double, ptr %60, align 8, !tbaa !13
  store double %15618, ptr %43, align 8, !tbaa !13
  %15619 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15619, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %15620 = load ptr, ptr %5, align 8, !tbaa !5
  %15621 = getelementptr inbounds %struct.w2c_hermes, ptr %15620, i32 0, i32 6
  %15622 = load i32, ptr %45, align 4, !tbaa !9
  %15623 = zext i32 %15622 to i64
  %15624 = add i64 %15623, 304
  %15625 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15621, i64 noundef %15624, i32 noundef %15625)
  %15626 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15626, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %15627 = load double, ptr %43, align 8, !tbaa !13
  store double %15627, ptr %62, align 8, !tbaa !13
  store double 1.000000e+00, ptr %63, align 8, !tbaa !13
  %15628 = load double, ptr %63, align 8, !tbaa !13
  %15629 = load double, ptr %62, align 8, !tbaa !13
  %15630 = fadd double %15629, %15628
  store double %15630, ptr %62, align 8, !tbaa !13
  %15631 = load double, ptr %62, align 8, !tbaa !13
  store double %15631, ptr %43, align 8, !tbaa !13
  %15632 = load double, ptr %62, align 8, !tbaa !13
  %15633 = call i64 @i64_reinterpret_f64(double noundef %15632)
  store i64 %15633, ptr %56, align 8, !tbaa !11
  %15634 = load double, ptr %43, align 8, !tbaa !13
  store double %15634, ptr %63, align 8, !tbaa !13
  %15635 = load double, ptr %43, align 8, !tbaa !13
  store double %15635, ptr %64, align 8, !tbaa !13
  %15636 = load double, ptr %63, align 8, !tbaa !13
  %15637 = load double, ptr %64, align 8, !tbaa !13
  %15638 = fcmp une double %15636, %15637
  %15639 = zext i1 %15638 to i32
  store i32 %15639, ptr %48, align 4, !tbaa !9
  %15640 = load i32, ptr %48, align 4, !tbaa !9
  %15641 = icmp ne i32 %15640, 0
  br i1 %15641, label %15642, label %15644

15642:                                            ; preds = %15610
  %15643 = load i64, ptr %55, align 8, !tbaa !11
  br label %15646

15644:                                            ; preds = %15610
  %15645 = load i64, ptr %56, align 8, !tbaa !11
  br label %15646

15646:                                            ; preds = %15644, %15642
  %15647 = phi i64 [ %15643, %15642 ], [ %15645, %15644 ]
  store i64 %15647, ptr %55, align 8, !tbaa !11
  %15648 = load ptr, ptr %5, align 8, !tbaa !5
  %15649 = getelementptr inbounds %struct.w2c_hermes, ptr %15648, i32 0, i32 6
  %15650 = load i32, ptr %45, align 4, !tbaa !9
  %15651 = zext i32 %15650 to i64
  %15652 = add i64 %15651, 312
  %15653 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15649, i64 noundef %15652, i64 noundef %15653)
  br label %16120

15654:                                            ; preds = %15505
  %15655 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15655, ptr %45, align 4, !tbaa !9
  %15656 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %15656, ptr %55, align 8, !tbaa !11
  %15657 = load i64, ptr %55, align 8, !tbaa !11
  %15658 = trunc i64 %15657 to i32
  store i32 %15658, ptr %46, align 4, !tbaa !9
  %15659 = load ptr, ptr %5, align 8, !tbaa !5
  %15660 = load i32, ptr %45, align 4, !tbaa !9
  %15661 = load i32, ptr %46, align 4, !tbaa !9
  %15662 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %15659, i32 noundef %15660, i32 noundef %15661)
  store i32 %15662, ptr %45, align 4, !tbaa !9
  %15663 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15663, ptr %12, align 4, !tbaa !9
  %15664 = load ptr, ptr %5, align 8, !tbaa !5
  %15665 = getelementptr inbounds %struct.w2c_hermes, ptr %15664, i32 0, i32 3
  %15666 = load i32, ptr %15665, align 8, !tbaa !15
  store i32 %15666, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %15667 = load i32, ptr %46, align 4, !tbaa !9
  %15668 = load i32, ptr %45, align 4, !tbaa !9
  %15669 = sub i32 %15668, %15667
  store i32 %15669, ptr %45, align 4, !tbaa !9
  %15670 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15670, ptr %14, align 4, !tbaa !9
  %15671 = load i32, ptr %45, align 4, !tbaa !9
  %15672 = load ptr, ptr %5, align 8, !tbaa !5
  %15673 = getelementptr inbounds %struct.w2c_hermes, ptr %15672, i32 0, i32 3
  store i32 %15671, ptr %15673, align 8, !tbaa !15
  %15674 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15674, ptr %45, align 4, !tbaa !9
  %15675 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15675, ptr %46, align 4, !tbaa !9
  %15676 = load ptr, ptr %5, align 8, !tbaa !5
  %15677 = getelementptr inbounds %struct.w2c_hermes, ptr %15676, i32 0, i32 6
  %15678 = load i32, ptr %46, align 4, !tbaa !9
  %15679 = zext i32 %15678 to i64
  %15680 = call i32 @i32_load(ptr noundef %15677, i64 noundef %15679)
  store i32 %15680, ptr %46, align 4, !tbaa !9
  %15681 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %15681, ptr %6, align 4, !tbaa !9
  %15682 = load ptr, ptr %5, align 8, !tbaa !5
  %15683 = getelementptr inbounds %struct.w2c_hermes, ptr %15682, i32 0, i32 6
  %15684 = load i32, ptr %46, align 4, !tbaa !9
  %15685 = zext i32 %15684 to i64
  %15686 = add i64 %15685, 4
  %15687 = call i32 @i32_load(ptr noundef %15683, i64 noundef %15686)
  store i32 %15687, ptr %46, align 4, !tbaa !9
  %15688 = load ptr, ptr %5, align 8, !tbaa !5
  %15689 = getelementptr inbounds %struct.w2c_hermes, ptr %15688, i32 0, i32 6
  %15690 = load i32, ptr %45, align 4, !tbaa !9
  %15691 = zext i32 %15690 to i64
  %15692 = add i64 %15691, 28
  %15693 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15689, i64 noundef %15692, i32 noundef %15693)
  %15694 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15694, ptr %45, align 4, !tbaa !9
  %15695 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15695, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %15696 = load i32, ptr %47, align 4, !tbaa !9
  %15697 = load i32, ptr %46, align 4, !tbaa !9
  %15698 = add i32 %15697, %15696
  store i32 %15698, ptr %46, align 4, !tbaa !9
  %15699 = load ptr, ptr %5, align 8, !tbaa !5
  %15700 = getelementptr inbounds %struct.w2c_hermes, ptr %15699, i32 0, i32 6
  %15701 = load i32, ptr %45, align 4, !tbaa !9
  %15702 = zext i32 %15701 to i64
  %15703 = add i64 %15702, 24
  %15704 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15700, i64 noundef %15703, i32 noundef %15704)
  %15705 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15705, ptr %45, align 4, !tbaa !9
  %15706 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15706, ptr %46, align 4, !tbaa !9
  %15707 = load ptr, ptr %5, align 8, !tbaa !5
  %15708 = getelementptr inbounds %struct.w2c_hermes, ptr %15707, i32 0, i32 6
  %15709 = load i32, ptr %46, align 4, !tbaa !9
  %15710 = zext i32 %15709 to i64
  %15711 = add i64 %15710, 24
  %15712 = call i64 @i64_load(ptr noundef %15708, i64 noundef %15711)
  store i64 %15712, ptr %55, align 8, !tbaa !11
  %15713 = load ptr, ptr %5, align 8, !tbaa !5
  %15714 = getelementptr inbounds %struct.w2c_hermes, ptr %15713, i32 0, i32 6
  %15715 = load i32, ptr %45, align 4, !tbaa !9
  %15716 = zext i32 %15715 to i64
  %15717 = add i64 %15716, 16
  %15718 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15714, i64 noundef %15717, i64 noundef %15718)
  %15719 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15719, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %15720 = load i32, ptr %46, align 4, !tbaa !9
  %15721 = load i32, ptr %45, align 4, !tbaa !9
  %15722 = add i32 %15721, %15720
  store i32 %15722, ptr %45, align 4, !tbaa !9
  %15723 = load ptr, ptr %5, align 8, !tbaa !5
  %15724 = load i32, ptr %45, align 4, !tbaa !9
  %15725 = call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3AaddSignedResultSize0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef %15723, i32 noundef %15724)
  store i32 %15725, ptr %45, align 4, !tbaa !9
  %15726 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15726, ptr %8, align 4, !tbaa !9
  store i32 1024, ptr %46, align 4, !tbaa !9
  %15727 = load i32, ptr %45, align 4, !tbaa !9
  %15728 = load i32, ptr %46, align 4, !tbaa !9
  %15729 = icmp ule i32 %15727, %15728
  %15730 = zext i1 %15729 to i32
  store i32 %15730, ptr %45, align 4, !tbaa !9
  %15731 = load i32, ptr %45, align 4, !tbaa !9
  %15732 = icmp ne i32 %15731, 0
  br i1 %15732, label %15733, label %15787

15733:                                            ; preds = %15654
  %15734 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15734, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15735 = load i32, ptr %46, align 4, !tbaa !9
  %15736 = and i32 %15735, 31
  %15737 = load i32, ptr %45, align 4, !tbaa !9
  %15738 = shl i32 %15737, %15736
  store i32 %15738, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %15739 = load i32, ptr %46, align 4, !tbaa !9
  %15740 = load i32, ptr %45, align 4, !tbaa !9
  %15741 = add i32 %15740, %15739
  store i32 %15741, ptr %45, align 4, !tbaa !9
  %15742 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15742, ptr %6, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %15743 = load i32, ptr %46, align 4, !tbaa !9
  %15744 = load i32, ptr %45, align 4, !tbaa !9
  %15745 = and i32 %15744, %15743
  store i32 %15745, ptr %45, align 4, !tbaa !9
  %15746 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15746, ptr %7, align 4, !tbaa !9
  %15747 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15747, ptr %46, align 4, !tbaa !9
  store i32 1368, ptr %47, align 4, !tbaa !9
  %15748 = load i32, ptr %47, align 4, !tbaa !9
  %15749 = load i32, ptr %46, align 4, !tbaa !9
  %15750 = add i32 %15749, %15748
  store i32 %15750, ptr %46, align 4, !tbaa !9
  %15751 = load ptr, ptr %5, align 8, !tbaa !5
  %15752 = getelementptr inbounds %struct.w2c_hermes, ptr %15751, i32 0, i32 6
  %15753 = load i32, ptr %46, align 4, !tbaa !9
  %15754 = zext i32 %15753 to i64
  %15755 = call i32 @i32_load(ptr noundef %15752, i64 noundef %15754)
  store i32 %15755, ptr %46, align 4, !tbaa !9
  %15756 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15756, ptr %47, align 4, !tbaa !9
  store i32 1364, ptr %48, align 4, !tbaa !9
  %15757 = load i32, ptr %48, align 4, !tbaa !9
  %15758 = load i32, ptr %47, align 4, !tbaa !9
  %15759 = add i32 %15758, %15757
  store i32 %15759, ptr %47, align 4, !tbaa !9
  %15760 = load ptr, ptr %5, align 8, !tbaa !5
  %15761 = getelementptr inbounds %struct.w2c_hermes, ptr %15760, i32 0, i32 6
  %15762 = load i32, ptr %47, align 4, !tbaa !9
  %15763 = zext i32 %15762 to i64
  %15764 = call i32 @i32_load(ptr noundef %15761, i64 noundef %15763)
  store i32 %15764, ptr %47, align 4, !tbaa !9
  %15765 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %15765, ptr %22, align 4, !tbaa !9
  %15766 = load i32, ptr %47, align 4, !tbaa !9
  %15767 = load i32, ptr %46, align 4, !tbaa !9
  %15768 = sub i32 %15767, %15766
  store i32 %15768, ptr %46, align 4, !tbaa !9
  %15769 = load i32, ptr %45, align 4, !tbaa !9
  %15770 = load i32, ptr %46, align 4, !tbaa !9
  %15771 = icmp ule i32 %15769, %15770
  %15772 = zext i1 %15771 to i32
  store i32 %15772, ptr %45, align 4, !tbaa !9
  %15773 = load i32, ptr %45, align 4, !tbaa !9
  %15774 = icmp ne i32 %15773, 0
  br i1 %15774, label %15775, label %15776

15775:                                            ; preds = %15733
  br label %15832

15776:                                            ; preds = %15733
  %15777 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15777, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %15778 = load i32, ptr %46, align 4, !tbaa !9
  %15779 = load i32, ptr %45, align 4, !tbaa !9
  %15780 = add i32 %15779, %15778
  store i32 %15780, ptr %45, align 4, !tbaa !9
  %15781 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15781, ptr %46, align 4, !tbaa !9
  %15782 = load ptr, ptr %5, align 8, !tbaa !5
  %15783 = load i32, ptr %45, align 4, !tbaa !9
  %15784 = load i32, ptr %46, align 4, !tbaa !9
  %15785 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %15782, i32 noundef %15783, i32 noundef %15784)
  store i32 %15785, ptr %45, align 4, !tbaa !9
  %15786 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15786, ptr %22, align 4, !tbaa !9
  br label %15845

15787:                                            ; preds = %15654
  %15788 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15788, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %15792 = zext i32 %15791 to i64
  %15793 = add i64 %15792, 64
  %15794 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15790, i64 noundef %15793, i32 noundef %15794)
  %15795 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15795, ptr %45, align 4, !tbaa !9
  store i64 120259084289, ptr %55, align 8, !tbaa !11
  %15796 = load ptr, ptr %5, align 8, !tbaa !5
  %15797 = getelementptr inbounds %struct.w2c_hermes, ptr %15796, i32 0, i32 6
  %15798 = load i32, ptr %45, align 4, !tbaa !9
  %15799 = zext i32 %15798 to i64
  %15800 = add i64 %15799, 56
  %15801 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15797, i64 noundef %15800, i64 noundef %15801)
  %15802 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15802, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %15803 = load ptr, ptr %5, align 8, !tbaa !5
  %15804 = getelementptr inbounds %struct.w2c_hermes, ptr %15803, i32 0, i32 6
  %15805 = load i32, ptr %45, align 4, !tbaa !9
  %15806 = zext i32 %15805 to i64
  %15807 = add i64 %15806, 40
  %15808 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15804, i64 noundef %15807, i32 noundef %15808)
  %15809 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15809, ptr %45, align 4, !tbaa !9
  store i32 55293, ptr %46, align 4, !tbaa !9
  %15810 = load ptr, ptr %5, align 8, !tbaa !5
  %15811 = getelementptr inbounds %struct.w2c_hermes, ptr %15810, i32 0, i32 6
  %15812 = load i32, ptr %45, align 4, !tbaa !9
  %15813 = zext i32 %15812 to i64
  %15814 = add i64 %15813, 32
  %15815 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15811, i64 noundef %15814, i32 noundef %15815)
  %15816 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15816, ptr %45, align 4, !tbaa !9
  %15817 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15817, ptr %46, align 4, !tbaa !9
  store i32 32, ptr %47, align 4, !tbaa !9
  %15818 = load i32, ptr %47, align 4, !tbaa !9
  %15819 = load i32, ptr %46, align 4, !tbaa !9
  %15820 = add i32 %15819, %15818
  store i32 %15820, ptr %46, align 4, !tbaa !9
  %15821 = load ptr, ptr %5, align 8, !tbaa !5
  %15822 = load i32, ptr %45, align 4, !tbaa !9
  %15823 = load i32, ptr %46, align 4, !tbaa !9
  %15824 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %15821, i32 noundef %15822, i32 noundef %15823)
  store i32 %15824, ptr %45, align 4, !tbaa !9
  %15825 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %15825, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %15826 = load ptr, ptr %5, align 8, !tbaa !5
  %15827 = getelementptr inbounds %struct.w2c_hermes, ptr %15826, i32 0, i32 6
  %15828 = load i32, ptr %45, align 4, !tbaa !9
  %15829 = zext i32 %15828 to i64
  %15830 = add i64 %15829, 304
  %15831 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15827, i64 noundef %15830, i32 noundef %15831)
  br label %16112

15832:                                            ; preds = %15775
  %15833 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %15833, ptr %45, align 4, !tbaa !9
  %15834 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15834, ptr %46, align 4, !tbaa !9
  %15835 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15835, ptr %47, align 4, !tbaa !9
  %15836 = load i32, ptr %47, align 4, !tbaa !9
  %15837 = load i32, ptr %46, align 4, !tbaa !9
  %15838 = add i32 %15837, %15836
  store i32 %15838, ptr %46, align 4, !tbaa !9
  %15839 = load ptr, ptr %5, align 8, !tbaa !5
  %15840 = getelementptr inbounds %struct.w2c_hermes, ptr %15839, i32 0, i32 6
  %15841 = load i32, ptr %45, align 4, !tbaa !9
  %15842 = zext i32 %15841 to i64
  %15843 = add i64 %15842, 1364
  %15844 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15840, i64 noundef %15843, i32 noundef %15844)
  br label %15845

15845:                                            ; preds = %15832, %15776
  %15846 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15846, ptr %45, align 4, !tbaa !9
  %15847 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %15847, ptr %46, align 4, !tbaa !9
  %15848 = load ptr, ptr %5, align 8, !tbaa !5
  %15849 = getelementptr inbounds %struct.w2c_hermes, ptr %15848, i32 0, i32 6
  %15850 = load i32, ptr %45, align 4, !tbaa !9
  %15851 = zext i32 %15850 to i64
  %15852 = add i64 %15851, 4
  %15853 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15849, i64 noundef %15852, i32 noundef %15853)
  %15854 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15854, ptr %45, align 4, !tbaa !9
  %15855 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15855, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %15856 = load i32, ptr %47, align 4, !tbaa !9
  %15857 = load i32, ptr %46, align 4, !tbaa !9
  %15858 = and i32 %15857, %15856
  store i32 %15858, ptr %46, align 4, !tbaa !9
  store i32 1291845632, ptr %47, align 4, !tbaa !9
  %15859 = load i32, ptr %47, align 4, !tbaa !9
  %15860 = load i32, ptr %46, align 4, !tbaa !9
  %15861 = or i32 %15860, %15859
  store i32 %15861, ptr %46, align 4, !tbaa !9
  %15862 = load ptr, ptr %5, align 8, !tbaa !5
  %15863 = getelementptr inbounds %struct.w2c_hermes, ptr %15862, i32 0, i32 6
  %15864 = load i32, ptr %45, align 4, !tbaa !9
  %15865 = zext i32 %15864 to i64
  %15866 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15863, i64 noundef %15865, i32 noundef %15866)
  %15867 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %15867, ptr %45, align 4, !tbaa !9
  %15868 = load ptr, ptr %5, align 8, !tbaa !5
  %15869 = getelementptr inbounds %struct.w2c_hermes, ptr %15868, i32 0, i32 6
  %15870 = load i32, ptr %45, align 4, !tbaa !9
  %15871 = zext i32 %15870 to i64
  %15872 = call i32 @i32_load(ptr noundef %15869, i64 noundef %15871)
  store i32 %15872, ptr %45, align 4, !tbaa !9
  %15873 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15873, ptr %6, align 4, !tbaa !9
  %15874 = load ptr, ptr %5, align 8, !tbaa !5
  %15875 = getelementptr inbounds %struct.w2c_hermes, ptr %15874, i32 0, i32 6
  %15876 = load i32, ptr %45, align 4, !tbaa !9
  %15877 = zext i32 %15876 to i64
  %15878 = add i64 %15877, 4
  %15879 = call i64 @i64_load32_u(ptr noundef %15875, i64 noundef %15878)
  store i64 %15879, ptr %54, align 8, !tbaa !11
  %15880 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %15880, ptr %41, align 8, !tbaa !11
  %15881 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15881, ptr %45, align 4, !tbaa !9
  %15882 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15882, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %15883 = load i32, ptr %47, align 4, !tbaa !9
  %15884 = load i32, ptr %46, align 4, !tbaa !9
  %15885 = add i32 %15884, %15883
  store i32 %15885, ptr %46, align 4, !tbaa !9
  %15886 = load i32, ptr %46, align 4, !tbaa !9
  %15887 = zext i32 %15886 to i64
  store i64 %15887, ptr %55, align 8, !tbaa !11
  %15888 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %15888, ptr %47, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %15889 = load i32, ptr %48, align 4, !tbaa !9
  %15890 = load i32, ptr %47, align 4, !tbaa !9
  %15891 = add i32 %15890, %15889
  store i32 %15891, ptr %47, align 4, !tbaa !9
  %15892 = load i32, ptr %47, align 4, !tbaa !9
  %15893 = zext i32 %15892 to i64
  store i64 %15893, ptr %56, align 8, !tbaa !11
  store i64 32, ptr %57, align 8, !tbaa !11
  %15894 = load i64, ptr %57, align 8, !tbaa !11
  %15895 = and i64 %15894, 63
  %15896 = load i64, ptr %56, align 8, !tbaa !11
  %15897 = shl i64 %15896, %15895
  store i64 %15897, ptr %56, align 8, !tbaa !11
  %15898 = load i64, ptr %56, align 8, !tbaa !11
  %15899 = load i64, ptr %55, align 8, !tbaa !11
  %15900 = or i64 %15899, %15898
  store i64 %15900, ptr %55, align 8, !tbaa !11
  %15901 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %15901, ptr %39, align 8, !tbaa !11
  %15902 = load ptr, ptr %5, align 8, !tbaa !5
  %15903 = getelementptr inbounds %struct.w2c_hermes, ptr %15902, i32 0, i32 6
  %15904 = load i32, ptr %45, align 4, !tbaa !9
  %15905 = zext i32 %15904 to i64
  %15906 = add i64 %15905, 8
  %15907 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15903, i64 noundef %15906, i64 noundef %15907)
  %15908 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15908, ptr %45, align 4, !tbaa !9
  %15909 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %15909, ptr %55, 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 %45, align 4, !tbaa !9
  %15913 = zext i32 %15912 to i64
  %15914 = add i64 %15913, 32
  %15915 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15911, i64 noundef %15914, i64 noundef %15915)
  %15916 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15916, ptr %45, align 4, !tbaa !9
  %15917 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %15917, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %15918 = load i32, ptr %47, align 4, !tbaa !9
  %15919 = load i32, ptr %46, align 4, !tbaa !9
  %15920 = add i32 %15919, %15918
  store i32 %15920, ptr %46, align 4, !tbaa !9
  %15921 = load i32, ptr %46, align 4, !tbaa !9
  %15922 = zext i32 %15921 to i64
  store i64 %15922, ptr %55, align 8, !tbaa !11
  %15923 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %15923, ptr %56, align 8, !tbaa !11
  store i64 32, ptr %57, align 8, !tbaa !11
  %15924 = load i64, ptr %57, align 8, !tbaa !11
  %15925 = and i64 %15924, 63
  %15926 = load i64, ptr %56, align 8, !tbaa !11
  %15927 = shl i64 %15926, %15925
  store i64 %15927, ptr %56, align 8, !tbaa !11
  %15928 = load i64, ptr %56, align 8, !tbaa !11
  %15929 = load i64, ptr %55, align 8, !tbaa !11
  %15930 = or i64 %15929, %15928
  store i64 %15930, ptr %55, align 8, !tbaa !11
  %15931 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %15931, ptr %39, align 8, !tbaa !11
  %15932 = load ptr, ptr %5, align 8, !tbaa !5
  %15933 = getelementptr inbounds %struct.w2c_hermes, ptr %15932, i32 0, i32 6
  %15934 = load i32, ptr %45, align 4, !tbaa !9
  %15935 = zext i32 %15934 to i64
  %15936 = add i64 %15935, 72
  %15937 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15933, i64 noundef %15936, i64 noundef %15937)
  %15938 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15938, ptr %45, align 4, !tbaa !9
  %15939 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %15939, ptr %55, align 8, !tbaa !11
  %15940 = load ptr, ptr %5, align 8, !tbaa !5
  %15941 = getelementptr inbounds %struct.w2c_hermes, ptr %15940, i32 0, i32 6
  %15942 = load i32, ptr %45, align 4, !tbaa !9
  %15943 = zext i32 %15942 to i64
  %15944 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15941, i64 noundef %15943, i64 noundef %15944)
  %15945 = load ptr, ptr %5, align 8, !tbaa !5
  %15946 = getelementptr inbounds %struct.w2c_hermes, ptr %15945, i32 0, i32 3
  %15947 = load i32, ptr %15946, align 8, !tbaa !15
  store i32 %15947, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %15948 = load i32, ptr %46, align 4, !tbaa !9
  %15949 = load i32, ptr %45, align 4, !tbaa !9
  %15950 = add i32 %15949, %15948
  store i32 %15950, ptr %45, align 4, !tbaa !9
  %15951 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %15951, ptr %7, align 4, !tbaa !9
  %15952 = load i32, ptr %45, align 4, !tbaa !9
  %15953 = load ptr, ptr %5, align 8, !tbaa !5
  %15954 = getelementptr inbounds %struct.w2c_hermes, ptr %15953, i32 0, i32 3
  store i32 %15952, ptr %15954, align 8, !tbaa !15
  %15955 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15955, ptr %45, align 4, !tbaa !9
  store i64 1, ptr %55, align 8, !tbaa !11
  %15956 = load ptr, ptr %5, align 8, !tbaa !5
  %15957 = getelementptr inbounds %struct.w2c_hermes, ptr %15956, i32 0, i32 6
  %15958 = load i32, ptr %45, align 4, !tbaa !9
  %15959 = zext i32 %15958 to i64
  %15960 = add i64 %15959, 56
  %15961 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15957, i64 noundef %15960, i64 noundef %15961)
  %15962 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15962, ptr %45, align 4, !tbaa !9
  %15963 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15963, ptr %46, align 4, !tbaa !9
  %15964 = load ptr, ptr %5, align 8, !tbaa !5
  %15965 = getelementptr inbounds %struct.w2c_hermes, ptr %15964, i32 0, i32 6
  %15966 = load i32, ptr %46, align 4, !tbaa !9
  %15967 = zext i32 %15966 to i64
  %15968 = add i64 %15967, 8
  %15969 = call i64 @i64_load(ptr noundef %15965, i64 noundef %15968)
  store i64 %15969, ptr %55, align 8, !tbaa !11
  %15970 = load ptr, ptr %5, align 8, !tbaa !5
  %15971 = getelementptr inbounds %struct.w2c_hermes, ptr %15970, i32 0, i32 6
  %15972 = load i32, ptr %45, align 4, !tbaa !9
  %15973 = zext i32 %15972 to i64
  %15974 = add i64 %15973, 48
  %15975 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15971, i64 noundef %15974, i64 noundef %15975)
  %15976 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15976, ptr %45, align 4, !tbaa !9
  %15977 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %15977, ptr %46, align 4, !tbaa !9
  %15978 = load ptr, ptr %5, align 8, !tbaa !5
  %15979 = getelementptr inbounds %struct.w2c_hermes, ptr %15978, i32 0, i32 6
  %15980 = load i32, ptr %46, align 4, !tbaa !9
  %15981 = zext i32 %15980 to i64
  %15982 = call i64 @i64_load(ptr noundef %15979, i64 noundef %15981)
  store i64 %15982, ptr %55, align 8, !tbaa !11
  %15983 = load ptr, ptr %5, align 8, !tbaa !5
  %15984 = getelementptr inbounds %struct.w2c_hermes, ptr %15983, i32 0, i32 6
  %15985 = load i32, ptr %45, align 4, !tbaa !9
  %15986 = zext i32 %15985 to i64
  %15987 = add i64 %15986, 40
  %15988 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %15984, i64 noundef %15987, i64 noundef %15988)
  %15989 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15989, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %15990 = load ptr, ptr %5, align 8, !tbaa !5
  %15991 = getelementptr inbounds %struct.w2c_hermes, ptr %15990, i32 0, i32 6
  %15992 = load i32, ptr %45, align 4, !tbaa !9
  %15993 = zext i32 %15992 to i64
  %15994 = add i64 %15993, 36
  %15995 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %15991, i64 noundef %15994, i32 noundef %15995)
  %15996 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15996, ptr %45, align 4, !tbaa !9
  %15997 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %15997, ptr %46, align 4, !tbaa !9
  %15998 = load ptr, ptr %5, align 8, !tbaa !5
  %15999 = getelementptr inbounds %struct.w2c_hermes, ptr %15998, i32 0, i32 6
  %16000 = load i32, ptr %46, align 4, !tbaa !9
  %16001 = zext i32 %16000 to i64
  %16002 = add i64 %16001, 48
  %16003 = call i64 @i64_load(ptr noundef %15999, i64 noundef %16002)
  store i64 %16003, ptr %55, align 8, !tbaa !11
  %16004 = load ptr, ptr %5, align 8, !tbaa !5
  %16005 = getelementptr inbounds %struct.w2c_hermes, ptr %16004, i32 0, i32 6
  %16006 = load i32, ptr %45, align 4, !tbaa !9
  %16007 = zext i32 %16006 to i64
  %16008 = add i64 %16007, 24
  %16009 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16005, i64 noundef %16008, i64 noundef %16009)
  %16010 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16010, ptr %45, align 4, !tbaa !9
  %16011 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16011, ptr %46, align 4, !tbaa !9
  %16012 = load ptr, ptr %5, align 8, !tbaa !5
  %16013 = getelementptr inbounds %struct.w2c_hermes, ptr %16012, i32 0, i32 6
  %16014 = load i32, ptr %46, align 4, !tbaa !9
  %16015 = zext i32 %16014 to i64
  %16016 = add i64 %16015, 40
  %16017 = call i64 @i64_load(ptr noundef %16013, i64 noundef %16016)
  store i64 %16017, ptr %55, align 8, !tbaa !11
  %16018 = load ptr, ptr %5, align 8, !tbaa !5
  %16019 = getelementptr inbounds %struct.w2c_hermes, ptr %16018, i32 0, i32 6
  %16020 = load i32, ptr %45, align 4, !tbaa !9
  %16021 = zext i32 %16020 to i64
  %16022 = add i64 %16021, 16
  %16023 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16019, i64 noundef %16022, i64 noundef %16023)
  %16024 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16024, ptr %45, align 4, !tbaa !9
  %16025 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16025, ptr %46, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %16026 = load i32, ptr %47, align 4, !tbaa !9
  %16027 = load i32, ptr %46, align 4, !tbaa !9
  %16028 = add i32 %16027, %16026
  store i32 %16028, ptr %46, align 4, !tbaa !9
  %16029 = load ptr, ptr %5, align 8, !tbaa !5
  %16030 = getelementptr inbounds %struct.w2c_hermes, ptr %16029, i32 0, i32 6
  %16031 = load i32, ptr %45, align 4, !tbaa !9
  %16032 = zext i32 %16031 to i64
  %16033 = add i64 %16032, 32
  %16034 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16030, i64 noundef %16033, i32 noundef %16034)
  %16035 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16035, ptr %45, align 4, !tbaa !9
  %16036 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16036, ptr %46, align 4, !tbaa !9
  %16037 = load ptr, ptr %5, align 8, !tbaa !5
  %16038 = getelementptr inbounds %struct.w2c_hermes, ptr %16037, i32 0, i32 6
  %16039 = load i32, ptr %46, align 4, !tbaa !9
  %16040 = zext i32 %16039 to i64
  %16041 = add i64 %16040, 32
  %16042 = call i64 @i64_load(ptr noundef %16038, i64 noundef %16041)
  store i64 %16042, ptr %55, align 8, !tbaa !11
  %16043 = load ptr, ptr %5, align 8, !tbaa !5
  %16044 = getelementptr inbounds %struct.w2c_hermes, ptr %16043, i32 0, i32 6
  %16045 = load i32, ptr %45, align 4, !tbaa !9
  %16046 = zext i32 %16045 to i64
  %16047 = add i64 %16046, 8
  %16048 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16044, i64 noundef %16047, i64 noundef %16048)
  %16049 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16049, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %16050 = load i32, ptr %46, align 4, !tbaa !9
  %16051 = load i32, ptr %45, align 4, !tbaa !9
  %16052 = add i32 %16051, %16050
  store i32 %16052, ptr %45, align 4, !tbaa !9
  %16053 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16053, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %16054 = load i32, ptr %47, align 4, !tbaa !9
  %16055 = load i32, ptr %46, align 4, !tbaa !9
  %16056 = add i32 %16055, %16054
  store i32 %16056, ptr %46, align 4, !tbaa !9
  %16057 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16057, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %16058 = load i32, ptr %48, align 4, !tbaa !9
  %16059 = load i32, ptr %47, align 4, !tbaa !9
  %16060 = add i32 %16059, %16058
  store i32 %16060, ptr %47, align 4, !tbaa !9
  %16061 = load ptr, ptr %5, align 8, !tbaa !5
  %16062 = load i32, ptr %45, align 4, !tbaa !9
  %16063 = load i32, ptr %46, align 4, !tbaa !9
  %16064 = load i32, ptr %47, align 4, !tbaa !9
  %16065 = call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Aadd0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef %16061, i32 noundef %16062, i32 noundef %16063, i32 noundef %16064)
  store i32 %16065, ptr %45, align 4, !tbaa !9
  %16066 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16066, ptr %6, align 4, !tbaa !9
  %16067 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16067, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %16068 = load i32, ptr %46, align 4, !tbaa !9
  %16069 = load i32, ptr %45, align 4, !tbaa !9
  %16070 = sub i32 %16069, %16068
  store i32 %16070, ptr %45, align 4, !tbaa !9
  %16071 = load i32, ptr %45, align 4, !tbaa !9
  %16072 = load ptr, ptr %5, align 8, !tbaa !5
  %16073 = getelementptr inbounds %struct.w2c_hermes, ptr %16072, i32 0, i32 3
  store i32 %16071, ptr %16073, align 8, !tbaa !15
  %16074 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16074, ptr %45, align 4, !tbaa !9
  %16075 = load i32, ptr %45, align 4, !tbaa !9
  %16076 = icmp ne i32 %16075, 0
  br i1 %16076, label %16077, label %16091

16077:                                            ; preds = %15845
  %16078 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16078, ptr %45, align 4, !tbaa !9
  %16079 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16079, ptr %46, align 4, !tbaa !9
  %16080 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16080, ptr %47, align 4, !tbaa !9
  %16081 = load ptr, ptr %5, align 8, !tbaa !5
  %16082 = load i32, ptr %46, align 4, !tbaa !9
  %16083 = load i32, ptr %47, align 4, !tbaa !9
  %16084 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef %16081, i32 noundef %16082, i32 noundef %16083)
  store i32 %16084, ptr %46, align 4, !tbaa !9
  %16085 = load ptr, ptr %5, align 8, !tbaa !5
  %16086 = getelementptr inbounds %struct.w2c_hermes, ptr %16085, i32 0, i32 6
  %16087 = load i32, ptr %45, align 4, !tbaa !9
  %16088 = zext i32 %16087 to i64
  %16089 = add i64 %16088, 304
  %16090 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16086, i64 noundef %16089, i32 noundef %16090)
  br label %16112

16091:                                            ; preds = %15845
  %16092 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16092, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %16093 = load ptr, ptr %5, align 8, !tbaa !5
  %16094 = getelementptr inbounds %struct.w2c_hermes, ptr %16093, i32 0, i32 6
  %16095 = load i32, ptr %45, align 4, !tbaa !9
  %16096 = zext i32 %16095 to i64
  %16097 = add i64 %16096, 304
  %16098 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16094, i64 noundef %16097, i32 noundef %16098)
  %16099 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16099, ptr %45, align 4, !tbaa !9
  %16100 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16100, ptr %46, align 4, !tbaa !9
  %16101 = load i32, ptr %46, align 4, !tbaa !9
  %16102 = zext i32 %16101 to i64
  store i64 %16102, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %16103 = load i64, ptr %56, align 8, !tbaa !11
  %16104 = load i64, ptr %55, align 8, !tbaa !11
  %16105 = or i64 %16104, %16103
  store i64 %16105, ptr %55, align 8, !tbaa !11
  %16106 = load ptr, ptr %5, align 8, !tbaa !5
  %16107 = getelementptr inbounds %struct.w2c_hermes, ptr %16106, i32 0, i32 6
  %16108 = load i32, ptr %45, align 4, !tbaa !9
  %16109 = zext i32 %16108 to i64
  %16110 = add i64 %16109, 312
  %16111 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16107, i64 noundef %16110, i64 noundef %16111)
  br label %16112

16112:                                            ; preds = %16091, %16077, %15787
  %16113 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16113, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %16114 = load i32, ptr %46, align 4, !tbaa !9
  %16115 = load i32, ptr %45, align 4, !tbaa !9
  %16116 = add i32 %16115, %16114
  store i32 %16116, ptr %45, align 4, !tbaa !9
  %16117 = load i32, ptr %45, align 4, !tbaa !9
  %16118 = load ptr, ptr %5, align 8, !tbaa !5
  %16119 = getelementptr inbounds %struct.w2c_hermes, ptr %16118, i32 0, i32 3
  store i32 %16117, ptr %16119, align 8, !tbaa !15
  br label %16120

16120:                                            ; preds = %16112, %15646, %15602, %15497
  %16121 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16121, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %16122 = load i32, ptr %46, align 4, !tbaa !9
  %16123 = load i32, ptr %45, align 4, !tbaa !9
  %16124 = add i32 %16123, %16122
  store i32 %16124, ptr %45, align 4, !tbaa !9
  %16125 = load i32, ptr %45, align 4, !tbaa !9
  %16126 = load ptr, ptr %5, align 8, !tbaa !5
  %16127 = getelementptr inbounds %struct.w2c_hermes, ptr %16126, i32 0, i32 3
  store i32 %16125, ptr %16127, align 8, !tbaa !15
  %16128 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16128, ptr %45, align 4, !tbaa !9
  %16129 = load ptr, ptr %5, align 8, !tbaa !5
  %16130 = getelementptr inbounds %struct.w2c_hermes, ptr %16129, i32 0, i32 6
  %16131 = load i32, ptr %45, align 4, !tbaa !9
  %16132 = zext i32 %16131 to i64
  %16133 = add i64 %16132, 5808
  %16134 = call i32 @i32_load(ptr noundef %16130, i64 noundef %16133)
  store i32 %16134, ptr %45, align 4, !tbaa !9
  %16135 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16135, ptr %6, align 4, !tbaa !9
  %16136 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16136, ptr %45, align 4, !tbaa !9
  %16137 = load ptr, ptr %5, align 8, !tbaa !5
  %16138 = getelementptr inbounds %struct.w2c_hermes, ptr %16137, i32 0, i32 6
  %16139 = load i32, ptr %45, align 4, !tbaa !9
  %16140 = zext i32 %16139 to i64
  %16141 = add i64 %16140, 304
  %16142 = call i32 @i32_load(ptr noundef %16138, i64 noundef %16141)
  store i32 %16142, ptr %45, align 4, !tbaa !9
  %16143 = load i32, ptr %45, align 4, !tbaa !9
  %16144 = icmp ne i32 %16143, 0
  %16145 = xor i1 %16144, true
  %16146 = zext i1 %16145 to i32
  store i32 %16146, ptr %45, align 4, !tbaa !9
  %16147 = load i32, ptr %45, align 4, !tbaa !9
  %16148 = icmp ne i32 %16147, 0
  br i1 %16148, label %16149, label %16150

16149:                                            ; preds = %16120
  br label %43136

16150:                                            ; preds = %16120
  %16151 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16151, ptr %45, align 4, !tbaa !9
  %16152 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16152, ptr %46, align 4, !tbaa !9
  %16153 = load ptr, ptr %5, align 8, !tbaa !5
  %16154 = getelementptr inbounds %struct.w2c_hermes, ptr %16153, i32 0, i32 6
  %16155 = load i32, ptr %46, align 4, !tbaa !9
  %16156 = zext i32 %16155 to i64
  %16157 = add i64 %16156, 1
  %16158 = call i32 @i32_load8_u(ptr noundef %16154, i64 noundef %16157)
  store i32 %16158, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %16159 = load i32, ptr %47, align 4, !tbaa !9
  %16160 = and i32 %16159, 31
  %16161 = load i32, ptr %46, align 4, !tbaa !9
  %16162 = shl i32 %16161, %16160
  store i32 %16162, ptr %46, align 4, !tbaa !9
  %16163 = load i32, ptr %46, align 4, !tbaa !9
  %16164 = load i32, ptr %45, align 4, !tbaa !9
  %16165 = add i32 %16164, %16163
  store i32 %16165, ptr %45, align 4, !tbaa !9
  %16166 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16166, ptr %46, align 4, !tbaa !9
  %16167 = load ptr, ptr %5, align 8, !tbaa !5
  %16168 = getelementptr inbounds %struct.w2c_hermes, ptr %16167, i32 0, i32 6
  %16169 = load i32, ptr %46, align 4, !tbaa !9
  %16170 = zext i32 %16169 to i64
  %16171 = add i64 %16170, 312
  %16172 = call i64 @i64_load(ptr noundef %16168, i64 noundef %16171)
  store i64 %16172, ptr %55, align 8, !tbaa !11
  %16173 = load ptr, ptr %5, align 8, !tbaa !5
  %16174 = getelementptr inbounds %struct.w2c_hermes, ptr %16173, i32 0, i32 6
  %16175 = load i32, ptr %45, align 4, !tbaa !9
  %16176 = zext i32 %16175 to i64
  %16177 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16174, i64 noundef %16176, i64 noundef %16177)
  %16178 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16178, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %16179 = load ptr, ptr %5, align 8, !tbaa !5
  %16180 = getelementptr inbounds %struct.w2c_hermes, ptr %16179, i32 0, i32 6
  %16181 = load i32, ptr %45, align 4, !tbaa !9
  %16182 = zext i32 %16181 to i64
  %16183 = add i64 %16182, 516
  %16184 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16180, i64 noundef %16183, i32 noundef %16184)
  %16185 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16185, ptr %45, align 4, !tbaa !9
  %16186 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %16186, ptr %46, align 4, !tbaa !9
  %16187 = load ptr, ptr %5, align 8, !tbaa !5
  %16188 = getelementptr inbounds %struct.w2c_hermes, ptr %16187, i32 0, i32 6
  %16189 = load i32, ptr %45, align 4, !tbaa !9
  %16190 = zext i32 %16189 to i64
  %16191 = add i64 %16190, 512
  %16192 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16188, i64 noundef %16191, i32 noundef %16192)
  %16193 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16193, ptr %45, align 4, !tbaa !9
  %16194 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %16194, ptr %46, align 4, !tbaa !9
  %16195 = load ptr, ptr %5, align 8, !tbaa !5
  %16196 = getelementptr inbounds %struct.w2c_hermes, ptr %16195, i32 0, i32 6
  %16197 = load i32, ptr %45, align 4, !tbaa !9
  %16198 = zext i32 %16197 to i64
  %16199 = add i64 %16198, 508
  %16200 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16196, i64 noundef %16199, i32 noundef %16200)
  %16201 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16201, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %16202 = load i32, ptr %46, align 4, !tbaa !9
  %16203 = load i32, ptr %45, align 4, !tbaa !9
  %16204 = add i32 %16203, %16202
  store i32 %16204, ptr %45, align 4, !tbaa !9
  %16205 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16205, ptr %6, align 4, !tbaa !9
  br label %2945

16206:                                            ; preds = %3048
  %16207 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16207, ptr %45, align 4, !tbaa !9
  %16208 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16208, ptr %46, align 4, !tbaa !9
  %16209 = load ptr, ptr %5, align 8, !tbaa !5
  %16210 = getelementptr inbounds %struct.w2c_hermes, ptr %16209, i32 0, i32 6
  %16211 = load i32, ptr %46, align 4, !tbaa !9
  %16212 = zext i32 %16211 to i64
  %16213 = add i64 %16212, 2
  %16214 = call i32 @i32_load8_u(ptr noundef %16210, i64 noundef %16213)
  store i32 %16214, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %16215 = load i32, ptr %47, align 4, !tbaa !9
  %16216 = and i32 %16215, 31
  %16217 = load i32, ptr %46, align 4, !tbaa !9
  %16218 = shl i32 %16217, %16216
  store i32 %16218, ptr %46, align 4, !tbaa !9
  %16219 = load i32, ptr %46, align 4, !tbaa !9
  %16220 = load i32, ptr %45, align 4, !tbaa !9
  %16221 = add i32 %16220, %16219
  store i32 %16221, ptr %45, align 4, !tbaa !9
  %16222 = load ptr, ptr %5, align 8, !tbaa !5
  %16223 = getelementptr inbounds %struct.w2c_hermes, ptr %16222, i32 0, i32 6
  %16224 = load i32, ptr %45, align 4, !tbaa !9
  %16225 = zext i32 %16224 to i64
  %16226 = call i64 @i64_load(ptr noundef %16223, i64 noundef %16225)
  store i64 %16226, ptr %54, align 8, !tbaa !11
  %16227 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %16227, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %16228 = load i64, ptr %54, align 8, !tbaa !11
  %16229 = load i64, ptr %55, align 8, !tbaa !11
  %16230 = icmp ule i64 %16228, %16229
  %16231 = zext i1 %16230 to i32
  store i32 %16231, ptr %45, align 4, !tbaa !9
  %16232 = load i32, ptr %45, align 4, !tbaa !9
  %16233 = icmp ne i32 %16232, 0
  br i1 %16233, label %16234, label %16266

16234:                                            ; preds = %16206
  %16235 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16235, ptr %45, align 4, !tbaa !9
  %16236 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16236, ptr %46, align 4, !tbaa !9
  %16237 = load ptr, ptr %5, align 8, !tbaa !5
  %16238 = getelementptr inbounds %struct.w2c_hermes, ptr %16237, i32 0, i32 6
  %16239 = load i32, ptr %46, align 4, !tbaa !9
  %16240 = zext i32 %16239 to i64
  %16241 = add i64 %16240, 1
  %16242 = call i32 @i32_load8_u(ptr noundef %16238, i64 noundef %16241)
  store i32 %16242, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %16243 = load i32, ptr %47, align 4, !tbaa !9
  %16244 = and i32 %16243, 31
  %16245 = load i32, ptr %46, align 4, !tbaa !9
  %16246 = shl i32 %16245, %16244
  store i32 %16246, ptr %46, align 4, !tbaa !9
  %16247 = load i32, ptr %46, align 4, !tbaa !9
  %16248 = load i32, ptr %45, align 4, !tbaa !9
  %16249 = add i32 %16248, %16247
  store i32 %16249, ptr %45, align 4, !tbaa !9
  %16250 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16250, ptr %55, align 8, !tbaa !11
  %16251 = load i64, ptr %55, align 8, !tbaa !11
  %16252 = call double @f64_reinterpret_i64(i64 noundef %16251)
  store double %16252, ptr %61, align 8, !tbaa !13
  store double -1.000000e+00, ptr %62, align 8, !tbaa !13
  %16253 = load double, ptr %62, align 8, !tbaa !13
  %16254 = load double, ptr %61, align 8, !tbaa !13
  %16255 = fadd double %16254, %16253
  store double %16255, ptr %61, align 8, !tbaa !13
  %16256 = load ptr, ptr %5, align 8, !tbaa !5
  %16257 = getelementptr inbounds %struct.w2c_hermes, ptr %16256, i32 0, i32 6
  %16258 = load i32, ptr %45, align 4, !tbaa !9
  %16259 = zext i32 %16258 to i64
  %16260 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %16257, i64 noundef %16259, double noundef %16260)
  %16261 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16261, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %16262 = load i32, ptr %46, align 4, !tbaa !9
  %16263 = load i32, ptr %45, align 4, !tbaa !9
  %16264 = add i32 %16263, %16262
  store i32 %16264, ptr %45, align 4, !tbaa !9
  %16265 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16265, ptr %6, align 4, !tbaa !9
  br label %2945

16266:                                            ; preds = %16206
  %16267 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16267, ptr %45, align 4, !tbaa !9
  %16268 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16268, ptr %46, align 4, !tbaa !9
  %16269 = load ptr, ptr %5, align 8, !tbaa !5
  %16270 = getelementptr inbounds %struct.w2c_hermes, ptr %16269, i32 0, i32 6
  %16271 = load i32, ptr %45, align 4, !tbaa !9
  %16272 = zext i32 %16271 to i64
  %16273 = add i64 %16272, 5808
  %16274 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16270, i64 noundef %16273, i32 noundef %16274)
  %16275 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16275, ptr %45, align 4, !tbaa !9
  %16276 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16276, ptr %46, align 4, !tbaa !9
  %16277 = load ptr, ptr %5, align 8, !tbaa !5
  %16278 = getelementptr inbounds %struct.w2c_hermes, ptr %16277, i32 0, i32 6
  %16279 = load i32, ptr %46, align 4, !tbaa !9
  %16280 = zext i32 %16279 to i64
  %16281 = add i64 %16280, 2
  %16282 = call i32 @i32_load8_u(ptr noundef %16278, i64 noundef %16281)
  store i32 %16282, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %16283 = load i32, ptr %47, align 4, !tbaa !9
  %16284 = and i32 %16283, 31
  %16285 = load i32, ptr %46, align 4, !tbaa !9
  %16286 = shl i32 %16285, %16284
  store i32 %16286, ptr %46, align 4, !tbaa !9
  %16287 = load i32, ptr %46, align 4, !tbaa !9
  %16288 = load i32, ptr %45, align 4, !tbaa !9
  %16289 = add i32 %16288, %16287
  store i32 %16289, ptr %45, align 4, !tbaa !9
  %16290 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16290, ptr %6, align 4, !tbaa !9
  %16291 = load ptr, ptr %5, align 8, !tbaa !5
  %16292 = getelementptr inbounds %struct.w2c_hermes, ptr %16291, i32 0, i32 3
  %16293 = load i32, ptr %16292, align 8, !tbaa !15
  store i32 %16293, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %16294 = load i32, ptr %46, align 4, !tbaa !9
  %16295 = load i32, ptr %45, align 4, !tbaa !9
  %16296 = sub i32 %16295, %16294
  store i32 %16296, ptr %45, align 4, !tbaa !9
  %16297 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16297, ptr %13, align 4, !tbaa !9
  %16298 = load i32, ptr %45, align 4, !tbaa !9
  %16299 = load ptr, ptr %5, align 8, !tbaa !5
  %16300 = getelementptr inbounds %struct.w2c_hermes, ptr %16299, i32 0, i32 3
  store i32 %16298, ptr %16300, align 8, !tbaa !15
  %16301 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16301, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %16302 = load i32, ptr %46, align 4, !tbaa !9
  %16303 = load i32, ptr %45, align 4, !tbaa !9
  %16304 = add i32 %16303, %16302
  store i32 %16304, ptr %45, align 4, !tbaa !9
  %16305 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16305, ptr %46, align 4, !tbaa !9
  %16306 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16306, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %16307 = load ptr, ptr %5, align 8, !tbaa !5
  %16308 = load i32, ptr %45, align 4, !tbaa !9
  %16309 = load i32, ptr %46, align 4, !tbaa !9
  %16310 = load i32, ptr %47, align 4, !tbaa !9
  %16311 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %16307, i32 noundef %16308, i32 noundef %16309, i32 noundef %16310, i32 noundef %16311)
  %16312 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16312, ptr %45, align 4, !tbaa !9
  %16313 = load ptr, ptr %5, align 8, !tbaa !5
  %16314 = getelementptr inbounds %struct.w2c_hermes, ptr %16313, i32 0, i32 6
  %16315 = load i32, ptr %45, align 4, !tbaa !9
  %16316 = zext i32 %16315 to i64
  %16317 = add i64 %16316, 16
  %16318 = call i32 @i32_load(ptr noundef %16314, i64 noundef %16317)
  store i32 %16318, ptr %45, align 4, !tbaa !9
  %16319 = load i32, ptr %45, 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 %45, align 4, !tbaa !9
  %16323 = load i32, ptr %45, align 4, !tbaa !9
  %16324 = icmp ne i32 %16323, 0
  br i1 %16324, label %16325, label %16333

16325:                                            ; preds = %16266
  %16326 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16326, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %16327 = load ptr, ptr %5, align 8, !tbaa !5
  %16328 = getelementptr inbounds %struct.w2c_hermes, ptr %16327, i32 0, i32 6
  %16329 = load i32, ptr %45, align 4, !tbaa !9
  %16330 = zext i32 %16329 to i64
  %16331 = add i64 %16330, 304
  %16332 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16328, i64 noundef %16331, i32 noundef %16332)
  br label %16948

16333:                                            ; preds = %16266
  %16334 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16334, ptr %45, align 4, !tbaa !9
  %16335 = load ptr, ptr %5, align 8, !tbaa !5
  %16336 = getelementptr inbounds %struct.w2c_hermes, ptr %16335, i32 0, i32 6
  %16337 = load i32, ptr %45, align 4, !tbaa !9
  %16338 = zext i32 %16337 to i64
  %16339 = add i64 %16338, 24
  %16340 = call i64 @i64_load(ptr noundef %16336, i64 noundef %16339)
  store i64 %16340, ptr %54, align 8, !tbaa !11
  %16341 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %16341, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %16342 = load i64, ptr %54, align 8, !tbaa !11
  %16343 = load i64, ptr %55, align 8, !tbaa !11
  %16344 = and i64 %16343, 63
  %16345 = ashr i64 %16342, %16344
  store i64 %16345, ptr %54, align 8, !tbaa !11
  %16346 = load i64, ptr %54, align 8, !tbaa !11
  %16347 = trunc i64 %16346 to i32
  store i32 %16347, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %16348 = load i32, ptr %45, align 4, !tbaa !9
  %16349 = load i32, ptr %46, align 4, !tbaa !9
  %16350 = icmp ne i32 %16348, %16349
  %16351 = zext i1 %16350 to i32
  store i32 %16351, ptr %45, align 4, !tbaa !9
  %16352 = load i32, ptr %45, align 4, !tbaa !9
  %16353 = icmp ne i32 %16352, 0
  br i1 %16353, label %16354, label %16482

16354:                                            ; preds = %16333
  %16355 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16355, ptr %45, align 4, !tbaa !9
  %16356 = load ptr, ptr %5, align 8, !tbaa !5
  %16357 = getelementptr inbounds %struct.w2c_hermes, ptr %16356, i32 0, i32 6
  %16358 = load i32, ptr %45, align 4, !tbaa !9
  %16359 = zext i32 %16358 to i64
  %16360 = add i64 %16359, 4
  %16361 = call i32 @i32_load(ptr noundef %16357, i64 noundef %16360)
  store i32 %16361, ptr %45, align 4, !tbaa !9
  %16362 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16362, ptr %6, align 4, !tbaa !9
  %16363 = load ptr, ptr %5, align 8, !tbaa !5
  %16364 = getelementptr inbounds %struct.w2c_hermes, ptr %16363, i32 0, i32 6
  %16365 = load i32, ptr %45, align 4, !tbaa !9
  %16366 = zext i32 %16365 to i64
  %16367 = add i64 %16366, 164
  %16368 = call i32 @i32_load(ptr noundef %16364, i64 noundef %16367)
  store i32 %16368, ptr %45, align 4, !tbaa !9
  %16369 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16369, ptr %7, align 4, !tbaa !9
  %16370 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16370, ptr %46, align 4, !tbaa !9
  %16371 = load ptr, ptr %5, align 8, !tbaa !5
  %16372 = getelementptr inbounds %struct.w2c_hermes, ptr %16371, i32 0, i32 6
  %16373 = load i32, ptr %46, align 4, !tbaa !9
  %16374 = zext i32 %16373 to i64
  %16375 = add i64 %16374, 168
  %16376 = call i32 @i32_load(ptr noundef %16372, i64 noundef %16375)
  store i32 %16376, ptr %46, align 4, !tbaa !9
  %16377 = load i32, ptr %45, align 4, !tbaa !9
  %16378 = load i32, ptr %46, align 4, !tbaa !9
  %16379 = icmp ult i32 %16377, %16378
  %16380 = zext i1 %16379 to i32
  store i32 %16380, ptr %45, align 4, !tbaa !9
  %16381 = load i32, ptr %45, align 4, !tbaa !9
  %16382 = icmp ne i32 %16381, 0
  br i1 %16382, label %16383, label %16402

16383:                                            ; preds = %16354
  %16384 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16384, ptr %45, align 4, !tbaa !9
  %16385 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16385, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %16386 = load i32, ptr %47, align 4, !tbaa !9
  %16387 = load i32, ptr %46, align 4, !tbaa !9
  %16388 = add i32 %16387, %16386
  store i32 %16388, ptr %46, align 4, !tbaa !9
  %16389 = load ptr, ptr %5, align 8, !tbaa !5
  %16390 = getelementptr inbounds %struct.w2c_hermes, ptr %16389, i32 0, i32 6
  %16391 = load i32, ptr %45, align 4, !tbaa !9
  %16392 = zext i32 %16391 to i64
  %16393 = add i64 %16392, 164
  %16394 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16390, i64 noundef %16393, i32 noundef %16394)
  %16395 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16395, ptr %45, align 4, !tbaa !9
  %16396 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16396, ptr %55, align 8, !tbaa !11
  %16397 = load ptr, ptr %5, align 8, !tbaa !5
  %16398 = getelementptr inbounds %struct.w2c_hermes, ptr %16397, i32 0, i32 6
  %16399 = load i32, ptr %45, align 4, !tbaa !9
  %16400 = zext i32 %16399 to i64
  %16401 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16398, i64 noundef %16400, i64 noundef %16401)
  br label %16410

16402:                                            ; preds = %16354
  %16403 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16403, ptr %45, align 4, !tbaa !9
  %16404 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16404, ptr %55, align 8, !tbaa !11
  %16405 = load ptr, ptr %5, align 8, !tbaa !5
  %16406 = load i32, ptr %45, align 4, !tbaa !9
  %16407 = load i64, ptr %55, align 8, !tbaa !11
  %16408 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %16405, i32 noundef %16406, i64 noundef %16407)
  store i32 %16408, ptr %45, align 4, !tbaa !9
  %16409 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16409, ptr %7, align 4, !tbaa !9
  br label %16410

16410:                                            ; preds = %16402, %16383
  %16411 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16411, ptr %45, align 4, !tbaa !9
  %16412 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16412, ptr %46, align 4, !tbaa !9
  %16413 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16413, ptr %47, align 4, !tbaa !9
  %16414 = load ptr, ptr %5, align 8, !tbaa !5
  %16415 = load i32, ptr %45, align 4, !tbaa !9
  %16416 = load i32, ptr %46, align 4, !tbaa !9
  %16417 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %16414, i32 noundef %16415, i32 noundef %16416, i32 noundef %16417)
  %16418 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16418, ptr %45, align 4, !tbaa !9
  %16419 = load ptr, ptr %5, align 8, !tbaa !5
  %16420 = getelementptr inbounds %struct.w2c_hermes, ptr %16419, i32 0, i32 6
  %16421 = load i32, ptr %45, align 4, !tbaa !9
  %16422 = zext i32 %16421 to i64
  %16423 = call i32 @i32_load(ptr noundef %16420, i64 noundef %16422)
  store i32 %16423, ptr %45, align 4, !tbaa !9
  %16424 = load i32, ptr %45, align 4, !tbaa !9
  %16425 = icmp ne i32 %16424, 0
  %16426 = xor i1 %16425, true
  %16427 = zext i1 %16426 to i32
  store i32 %16427, ptr %45, align 4, !tbaa !9
  %16428 = load i32, ptr %45, align 4, !tbaa !9
  %16429 = icmp ne i32 %16428, 0
  br i1 %16429, label %16430, label %16438

16430:                                            ; preds = %16410
  %16431 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16431, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %16432 = load ptr, ptr %5, align 8, !tbaa !5
  %16433 = getelementptr inbounds %struct.w2c_hermes, ptr %16432, i32 0, i32 6
  %16434 = load i32, ptr %45, align 4, !tbaa !9
  %16435 = zext i32 %16434 to i64
  %16436 = add i64 %16435, 304
  %16437 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16433, i64 noundef %16436, i32 noundef %16437)
  br label %16948

16438:                                            ; preds = %16410
  %16439 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16439, ptr %45, align 4, !tbaa !9
  %16440 = load ptr, ptr %5, align 8, !tbaa !5
  %16441 = getelementptr inbounds %struct.w2c_hermes, ptr %16440, i32 0, i32 6
  %16442 = load i32, ptr %45, align 4, !tbaa !9
  %16443 = zext i32 %16442 to i64
  %16444 = add i64 %16443, 8
  %16445 = call double @f64_load(ptr noundef %16441, i64 noundef %16444)
  store double %16445, ptr %60, align 8, !tbaa !13
  %16446 = load double, ptr %60, align 8, !tbaa !13
  store double %16446, ptr %43, align 8, !tbaa !13
  %16447 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16447, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %16448 = load ptr, ptr %5, align 8, !tbaa !5
  %16449 = getelementptr inbounds %struct.w2c_hermes, ptr %16448, i32 0, i32 6
  %16450 = load i32, ptr %45, align 4, !tbaa !9
  %16451 = zext i32 %16450 to i64
  %16452 = add i64 %16451, 304
  %16453 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16449, i64 noundef %16452, i32 noundef %16453)
  %16454 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16454, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %16455 = load double, ptr %43, align 8, !tbaa !13
  store double %16455, ptr %62, align 8, !tbaa !13
  store double -1.000000e+00, ptr %63, align 8, !tbaa !13
  %16456 = load double, ptr %63, align 8, !tbaa !13
  %16457 = load double, ptr %62, align 8, !tbaa !13
  %16458 = fadd double %16457, %16456
  store double %16458, ptr %62, align 8, !tbaa !13
  %16459 = load double, ptr %62, align 8, !tbaa !13
  store double %16459, ptr %43, align 8, !tbaa !13
  %16460 = load double, ptr %62, align 8, !tbaa !13
  %16461 = call i64 @i64_reinterpret_f64(double noundef %16460)
  store i64 %16461, ptr %56, align 8, !tbaa !11
  %16462 = load double, ptr %43, align 8, !tbaa !13
  store double %16462, ptr %63, align 8, !tbaa !13
  %16463 = load double, ptr %43, align 8, !tbaa !13
  store double %16463, ptr %64, align 8, !tbaa !13
  %16464 = load double, ptr %63, align 8, !tbaa !13
  %16465 = load double, ptr %64, align 8, !tbaa !13
  %16466 = fcmp une double %16464, %16465
  %16467 = zext i1 %16466 to i32
  store i32 %16467, ptr %48, align 4, !tbaa !9
  %16468 = load i32, ptr %48, align 4, !tbaa !9
  %16469 = icmp ne i32 %16468, 0
  br i1 %16469, label %16470, label %16472

16470:                                            ; preds = %16438
  %16471 = load i64, ptr %55, align 8, !tbaa !11
  br label %16474

16472:                                            ; preds = %16438
  %16473 = load i64, ptr %56, align 8, !tbaa !11
  br label %16474

16474:                                            ; preds = %16472, %16470
  %16475 = phi i64 [ %16471, %16470 ], [ %16473, %16472 ]
  store i64 %16475, ptr %55, align 8, !tbaa !11
  %16476 = load ptr, ptr %5, align 8, !tbaa !5
  %16477 = getelementptr inbounds %struct.w2c_hermes, ptr %16476, i32 0, i32 6
  %16478 = load i32, ptr %45, align 4, !tbaa !9
  %16479 = zext i32 %16478 to i64
  %16480 = add i64 %16479, 312
  %16481 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16477, i64 noundef %16480, i64 noundef %16481)
  br label %16948

16482:                                            ; preds = %16333
  %16483 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16483, ptr %45, align 4, !tbaa !9
  %16484 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16484, ptr %55, align 8, !tbaa !11
  %16485 = load i64, ptr %55, align 8, !tbaa !11
  %16486 = trunc i64 %16485 to i32
  store i32 %16486, ptr %46, align 4, !tbaa !9
  %16487 = load ptr, ptr %5, align 8, !tbaa !5
  %16488 = load i32, ptr %45, align 4, !tbaa !9
  %16489 = load i32, ptr %46, align 4, !tbaa !9
  %16490 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %16487, i32 noundef %16488, i32 noundef %16489)
  store i32 %16490, ptr %45, align 4, !tbaa !9
  %16491 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16491, ptr %12, align 4, !tbaa !9
  %16492 = load ptr, ptr %5, align 8, !tbaa !5
  %16493 = getelementptr inbounds %struct.w2c_hermes, ptr %16492, i32 0, i32 3
  %16494 = load i32, ptr %16493, align 8, !tbaa !15
  store i32 %16494, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %16495 = load i32, ptr %46, align 4, !tbaa !9
  %16496 = load i32, ptr %45, align 4, !tbaa !9
  %16497 = sub i32 %16496, %16495
  store i32 %16497, ptr %45, align 4, !tbaa !9
  %16498 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16498, ptr %14, align 4, !tbaa !9
  %16499 = load i32, ptr %45, align 4, !tbaa !9
  %16500 = load ptr, ptr %5, align 8, !tbaa !5
  %16501 = getelementptr inbounds %struct.w2c_hermes, ptr %16500, i32 0, i32 3
  store i32 %16499, ptr %16501, align 8, !tbaa !15
  %16502 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16502, ptr %45, align 4, !tbaa !9
  %16503 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %16503, ptr %46, align 4, !tbaa !9
  %16504 = load ptr, ptr %5, align 8, !tbaa !5
  %16505 = getelementptr inbounds %struct.w2c_hermes, ptr %16504, i32 0, i32 6
  %16506 = load i32, ptr %46, align 4, !tbaa !9
  %16507 = zext i32 %16506 to i64
  %16508 = call i32 @i32_load(ptr noundef %16505, i64 noundef %16507)
  store i32 %16508, ptr %46, align 4, !tbaa !9
  %16509 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %16509, ptr %6, align 4, !tbaa !9
  %16510 = load ptr, ptr %5, align 8, !tbaa !5
  %16511 = getelementptr inbounds %struct.w2c_hermes, ptr %16510, i32 0, i32 6
  %16512 = load i32, ptr %46, align 4, !tbaa !9
  %16513 = zext i32 %16512 to i64
  %16514 = add i64 %16513, 4
  %16515 = call i32 @i32_load(ptr noundef %16511, i64 noundef %16514)
  store i32 %16515, ptr %46, align 4, !tbaa !9
  %16516 = load ptr, ptr %5, align 8, !tbaa !5
  %16517 = getelementptr inbounds %struct.w2c_hermes, ptr %16516, i32 0, i32 6
  %16518 = load i32, ptr %45, align 4, !tbaa !9
  %16519 = zext i32 %16518 to i64
  %16520 = add i64 %16519, 28
  %16521 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16517, i64 noundef %16520, i32 noundef %16521)
  %16522 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16522, ptr %45, align 4, !tbaa !9
  %16523 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16523, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %16524 = load i32, ptr %47, align 4, !tbaa !9
  %16525 = load i32, ptr %46, align 4, !tbaa !9
  %16526 = add i32 %16525, %16524
  store i32 %16526, ptr %46, align 4, !tbaa !9
  %16527 = load ptr, ptr %5, align 8, !tbaa !5
  %16528 = getelementptr inbounds %struct.w2c_hermes, ptr %16527, i32 0, i32 6
  %16529 = load i32, ptr %45, align 4, !tbaa !9
  %16530 = zext i32 %16529 to i64
  %16531 = add i64 %16530, 24
  %16532 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16528, i64 noundef %16531, i32 noundef %16532)
  %16533 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16533, ptr %45, align 4, !tbaa !9
  %16534 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16534, ptr %46, align 4, !tbaa !9
  %16535 = load ptr, ptr %5, align 8, !tbaa !5
  %16536 = getelementptr inbounds %struct.w2c_hermes, ptr %16535, i32 0, i32 6
  %16537 = load i32, ptr %46, align 4, !tbaa !9
  %16538 = zext i32 %16537 to i64
  %16539 = add i64 %16538, 24
  %16540 = call i64 @i64_load(ptr noundef %16536, i64 noundef %16539)
  store i64 %16540, ptr %55, align 8, !tbaa !11
  %16541 = load ptr, ptr %5, align 8, !tbaa !5
  %16542 = getelementptr inbounds %struct.w2c_hermes, ptr %16541, i32 0, i32 6
  %16543 = load i32, ptr %45, align 4, !tbaa !9
  %16544 = zext i32 %16543 to i64
  %16545 = add i64 %16544, 16
  %16546 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16542, i64 noundef %16545, i64 noundef %16546)
  %16547 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16547, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %16548 = load i32, ptr %46, align 4, !tbaa !9
  %16549 = load i32, ptr %45, align 4, !tbaa !9
  %16550 = add i32 %16549, %16548
  store i32 %16550, ptr %45, align 4, !tbaa !9
  %16551 = load ptr, ptr %5, align 8, !tbaa !5
  %16552 = load i32, ptr %45, align 4, !tbaa !9
  %16553 = call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3AaddSignedResultSize0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef %16551, i32 noundef %16552)
  store i32 %16553, ptr %45, align 4, !tbaa !9
  %16554 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16554, ptr %8, align 4, !tbaa !9
  store i32 1024, ptr %46, align 4, !tbaa !9
  %16555 = load i32, ptr %45, align 4, !tbaa !9
  %16556 = load i32, ptr %46, align 4, !tbaa !9
  %16557 = icmp ule i32 %16555, %16556
  %16558 = zext i1 %16557 to i32
  store i32 %16558, ptr %45, align 4, !tbaa !9
  %16559 = load i32, ptr %45, align 4, !tbaa !9
  %16560 = icmp ne i32 %16559, 0
  br i1 %16560, label %16561, label %16615

16561:                                            ; preds = %16482
  %16562 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16562, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %16563 = load i32, ptr %46, align 4, !tbaa !9
  %16564 = and i32 %16563, 31
  %16565 = load i32, ptr %45, align 4, !tbaa !9
  %16566 = shl i32 %16565, %16564
  store i32 %16566, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %16567 = load i32, ptr %46, align 4, !tbaa !9
  %16568 = load i32, ptr %45, align 4, !tbaa !9
  %16569 = add i32 %16568, %16567
  store i32 %16569, ptr %45, align 4, !tbaa !9
  %16570 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16570, ptr %6, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %16571 = load i32, ptr %46, align 4, !tbaa !9
  %16572 = load i32, ptr %45, align 4, !tbaa !9
  %16573 = and i32 %16572, %16571
  store i32 %16573, ptr %45, align 4, !tbaa !9
  %16574 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16574, ptr %7, align 4, !tbaa !9
  %16575 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16575, ptr %46, align 4, !tbaa !9
  store i32 1368, ptr %47, align 4, !tbaa !9
  %16576 = load i32, ptr %47, align 4, !tbaa !9
  %16577 = load i32, ptr %46, align 4, !tbaa !9
  %16578 = add i32 %16577, %16576
  store i32 %16578, ptr %46, align 4, !tbaa !9
  %16579 = load ptr, ptr %5, align 8, !tbaa !5
  %16580 = getelementptr inbounds %struct.w2c_hermes, ptr %16579, i32 0, i32 6
  %16581 = load i32, ptr %46, align 4, !tbaa !9
  %16582 = zext i32 %16581 to i64
  %16583 = call i32 @i32_load(ptr noundef %16580, i64 noundef %16582)
  store i32 %16583, ptr %46, align 4, !tbaa !9
  %16584 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16584, ptr %47, align 4, !tbaa !9
  store i32 1364, ptr %48, align 4, !tbaa !9
  %16585 = load i32, ptr %48, align 4, !tbaa !9
  %16586 = load i32, ptr %47, align 4, !tbaa !9
  %16587 = add i32 %16586, %16585
  store i32 %16587, ptr %47, align 4, !tbaa !9
  %16588 = load ptr, ptr %5, align 8, !tbaa !5
  %16589 = getelementptr inbounds %struct.w2c_hermes, ptr %16588, i32 0, i32 6
  %16590 = load i32, ptr %47, align 4, !tbaa !9
  %16591 = zext i32 %16590 to i64
  %16592 = call i32 @i32_load(ptr noundef %16589, i64 noundef %16591)
  store i32 %16592, ptr %47, align 4, !tbaa !9
  %16593 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %16593, ptr %22, align 4, !tbaa !9
  %16594 = load i32, ptr %47, align 4, !tbaa !9
  %16595 = load i32, ptr %46, align 4, !tbaa !9
  %16596 = sub i32 %16595, %16594
  store i32 %16596, ptr %46, align 4, !tbaa !9
  %16597 = load i32, ptr %45, align 4, !tbaa !9
  %16598 = load i32, ptr %46, align 4, !tbaa !9
  %16599 = icmp ule i32 %16597, %16598
  %16600 = zext i1 %16599 to i32
  store i32 %16600, ptr %45, align 4, !tbaa !9
  %16601 = load i32, ptr %45, align 4, !tbaa !9
  %16602 = icmp ne i32 %16601, 0
  br i1 %16602, label %16603, label %16604

16603:                                            ; preds = %16561
  br label %16660

16604:                                            ; preds = %16561
  %16605 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16605, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %16606 = load i32, ptr %46, align 4, !tbaa !9
  %16607 = load i32, ptr %45, align 4, !tbaa !9
  %16608 = add i32 %16607, %16606
  store i32 %16608, ptr %45, align 4, !tbaa !9
  %16609 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16609, ptr %46, align 4, !tbaa !9
  %16610 = load ptr, ptr %5, align 8, !tbaa !5
  %16611 = load i32, ptr %45, align 4, !tbaa !9
  %16612 = load i32, ptr %46, align 4, !tbaa !9
  %16613 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %16610, i32 noundef %16611, i32 noundef %16612)
  store i32 %16613, ptr %45, align 4, !tbaa !9
  %16614 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16614, ptr %22, align 4, !tbaa !9
  br label %16673

16615:                                            ; preds = %16482
  %16616 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16616, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %16617 = load ptr, ptr %5, align 8, !tbaa !5
  %16618 = getelementptr inbounds %struct.w2c_hermes, ptr %16617, i32 0, i32 6
  %16619 = load i32, ptr %45, align 4, !tbaa !9
  %16620 = zext i32 %16619 to i64
  %16621 = add i64 %16620, 64
  %16622 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16618, i64 noundef %16621, i32 noundef %16622)
  %16623 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16623, ptr %45, align 4, !tbaa !9
  store i64 120259084289, ptr %55, align 8, !tbaa !11
  %16624 = load ptr, ptr %5, align 8, !tbaa !5
  %16625 = getelementptr inbounds %struct.w2c_hermes, ptr %16624, i32 0, i32 6
  %16626 = load i32, ptr %45, align 4, !tbaa !9
  %16627 = zext i32 %16626 to i64
  %16628 = add i64 %16627, 56
  %16629 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16625, i64 noundef %16628, i64 noundef %16629)
  %16630 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16630, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %16631 = load ptr, ptr %5, align 8, !tbaa !5
  %16632 = getelementptr inbounds %struct.w2c_hermes, ptr %16631, i32 0, i32 6
  %16633 = load i32, ptr %45, align 4, !tbaa !9
  %16634 = zext i32 %16633 to i64
  %16635 = add i64 %16634, 40
  %16636 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16632, i64 noundef %16635, i32 noundef %16636)
  %16637 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16637, ptr %45, align 4, !tbaa !9
  store i32 55293, ptr %46, align 4, !tbaa !9
  %16638 = load ptr, ptr %5, align 8, !tbaa !5
  %16639 = getelementptr inbounds %struct.w2c_hermes, ptr %16638, i32 0, i32 6
  %16640 = load i32, ptr %45, align 4, !tbaa !9
  %16641 = zext i32 %16640 to i64
  %16642 = add i64 %16641, 32
  %16643 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16639, i64 noundef %16642, i32 noundef %16643)
  %16644 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16644, ptr %45, align 4, !tbaa !9
  %16645 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16645, ptr %46, align 4, !tbaa !9
  store i32 32, ptr %47, align 4, !tbaa !9
  %16646 = load i32, ptr %47, align 4, !tbaa !9
  %16647 = load i32, ptr %46, align 4, !tbaa !9
  %16648 = add i32 %16647, %16646
  store i32 %16648, ptr %46, align 4, !tbaa !9
  %16649 = load ptr, ptr %5, align 8, !tbaa !5
  %16650 = load i32, ptr %45, align 4, !tbaa !9
  %16651 = load i32, ptr %46, align 4, !tbaa !9
  %16652 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %16649, i32 noundef %16650, i32 noundef %16651)
  store i32 %16652, ptr %45, align 4, !tbaa !9
  %16653 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16653, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %16654 = load ptr, ptr %5, align 8, !tbaa !5
  %16655 = getelementptr inbounds %struct.w2c_hermes, ptr %16654, i32 0, i32 6
  %16656 = load i32, ptr %45, align 4, !tbaa !9
  %16657 = zext i32 %16656 to i64
  %16658 = add i64 %16657, 304
  %16659 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16655, i64 noundef %16658, i32 noundef %16659)
  br label %16940

16660:                                            ; preds = %16603
  %16661 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16661, ptr %45, align 4, !tbaa !9
  %16662 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16662, ptr %46, align 4, !tbaa !9
  %16663 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16663, ptr %47, align 4, !tbaa !9
  %16664 = load i32, ptr %47, align 4, !tbaa !9
  %16665 = load i32, ptr %46, align 4, !tbaa !9
  %16666 = add i32 %16665, %16664
  store i32 %16666, ptr %46, align 4, !tbaa !9
  %16667 = load ptr, ptr %5, align 8, !tbaa !5
  %16668 = getelementptr inbounds %struct.w2c_hermes, ptr %16667, i32 0, i32 6
  %16669 = load i32, ptr %45, align 4, !tbaa !9
  %16670 = zext i32 %16669 to i64
  %16671 = add i64 %16670, 1364
  %16672 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16668, i64 noundef %16671, i32 noundef %16672)
  br label %16673

16673:                                            ; preds = %16660, %16604
  %16674 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16674, ptr %45, align 4, !tbaa !9
  %16675 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %16675, ptr %46, align 4, !tbaa !9
  %16676 = load ptr, ptr %5, align 8, !tbaa !5
  %16677 = getelementptr inbounds %struct.w2c_hermes, ptr %16676, i32 0, i32 6
  %16678 = load i32, ptr %45, align 4, !tbaa !9
  %16679 = zext i32 %16678 to i64
  %16680 = add i64 %16679, 4
  %16681 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16677, i64 noundef %16680, i32 noundef %16681)
  %16682 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16682, ptr %45, align 4, !tbaa !9
  %16683 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16683, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %16684 = load i32, ptr %47, align 4, !tbaa !9
  %16685 = load i32, ptr %46, align 4, !tbaa !9
  %16686 = and i32 %16685, %16684
  store i32 %16686, ptr %46, align 4, !tbaa !9
  store i32 1291845632, ptr %47, align 4, !tbaa !9
  %16687 = load i32, ptr %47, align 4, !tbaa !9
  %16688 = load i32, ptr %46, align 4, !tbaa !9
  %16689 = or i32 %16688, %16687
  store i32 %16689, ptr %46, align 4, !tbaa !9
  %16690 = load ptr, ptr %5, align 8, !tbaa !5
  %16691 = getelementptr inbounds %struct.w2c_hermes, ptr %16690, i32 0, i32 6
  %16692 = load i32, ptr %45, align 4, !tbaa !9
  %16693 = zext i32 %16692 to i64
  %16694 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16691, i64 noundef %16693, i32 noundef %16694)
  %16695 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %16695, ptr %45, align 4, !tbaa !9
  %16696 = load ptr, ptr %5, align 8, !tbaa !5
  %16697 = getelementptr inbounds %struct.w2c_hermes, ptr %16696, i32 0, i32 6
  %16698 = load i32, ptr %45, align 4, !tbaa !9
  %16699 = zext i32 %16698 to i64
  %16700 = call i32 @i32_load(ptr noundef %16697, i64 noundef %16699)
  store i32 %16700, ptr %45, align 4, !tbaa !9
  %16701 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16701, ptr %6, align 4, !tbaa !9
  %16702 = load ptr, ptr %5, align 8, !tbaa !5
  %16703 = getelementptr inbounds %struct.w2c_hermes, ptr %16702, i32 0, i32 6
  %16704 = load i32, ptr %45, align 4, !tbaa !9
  %16705 = zext i32 %16704 to i64
  %16706 = add i64 %16705, 4
  %16707 = call i64 @i64_load32_u(ptr noundef %16703, i64 noundef %16706)
  store i64 %16707, ptr %54, align 8, !tbaa !11
  %16708 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %16708, ptr %41, align 8, !tbaa !11
  %16709 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16709, ptr %45, align 4, !tbaa !9
  %16710 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16710, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %16711 = load i32, ptr %47, align 4, !tbaa !9
  %16712 = load i32, ptr %46, align 4, !tbaa !9
  %16713 = add i32 %16712, %16711
  store i32 %16713, ptr %46, align 4, !tbaa !9
  %16714 = load i32, ptr %46, align 4, !tbaa !9
  %16715 = zext i32 %16714 to i64
  store i64 %16715, ptr %55, align 8, !tbaa !11
  %16716 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16716, ptr %47, align 4, !tbaa !9
  store i32 4, ptr %48, align 4, !tbaa !9
  %16717 = load i32, ptr %48, align 4, !tbaa !9
  %16718 = load i32, ptr %47, align 4, !tbaa !9
  %16719 = add i32 %16718, %16717
  store i32 %16719, ptr %47, align 4, !tbaa !9
  %16720 = load i32, ptr %47, align 4, !tbaa !9
  %16721 = zext i32 %16720 to i64
  store i64 %16721, ptr %56, align 8, !tbaa !11
  store i64 32, ptr %57, align 8, !tbaa !11
  %16722 = load i64, ptr %57, align 8, !tbaa !11
  %16723 = and i64 %16722, 63
  %16724 = load i64, ptr %56, align 8, !tbaa !11
  %16725 = shl i64 %16724, %16723
  store i64 %16725, ptr %56, align 8, !tbaa !11
  %16726 = load i64, ptr %56, align 8, !tbaa !11
  %16727 = load i64, ptr %55, align 8, !tbaa !11
  %16728 = or i64 %16727, %16726
  store i64 %16728, ptr %55, align 8, !tbaa !11
  %16729 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %16729, ptr %39, align 8, !tbaa !11
  %16730 = load ptr, ptr %5, align 8, !tbaa !5
  %16731 = getelementptr inbounds %struct.w2c_hermes, ptr %16730, i32 0, i32 6
  %16732 = load i32, ptr %45, align 4, !tbaa !9
  %16733 = zext i32 %16732 to i64
  %16734 = add i64 %16733, 8
  %16735 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16731, i64 noundef %16734, i64 noundef %16735)
  %16736 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16736, ptr %45, align 4, !tbaa !9
  %16737 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16737, ptr %55, align 8, !tbaa !11
  %16738 = load ptr, ptr %5, align 8, !tbaa !5
  %16739 = getelementptr inbounds %struct.w2c_hermes, ptr %16738, i32 0, i32 6
  %16740 = load i32, ptr %45, align 4, !tbaa !9
  %16741 = zext i32 %16740 to i64
  %16742 = add i64 %16741, 32
  %16743 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16739, i64 noundef %16742, i64 noundef %16743)
  %16744 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16744, ptr %45, align 4, !tbaa !9
  %16745 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16745, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %16746 = load i32, ptr %47, align 4, !tbaa !9
  %16747 = load i32, ptr %46, align 4, !tbaa !9
  %16748 = add i32 %16747, %16746
  store i32 %16748, ptr %46, align 4, !tbaa !9
  %16749 = load i32, ptr %46, align 4, !tbaa !9
  %16750 = zext i32 %16749 to i64
  store i64 %16750, ptr %55, align 8, !tbaa !11
  %16751 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %16751, ptr %56, align 8, !tbaa !11
  store i64 32, ptr %57, align 8, !tbaa !11
  %16752 = load i64, ptr %57, align 8, !tbaa !11
  %16753 = and i64 %16752, 63
  %16754 = load i64, ptr %56, align 8, !tbaa !11
  %16755 = shl i64 %16754, %16753
  store i64 %16755, ptr %56, align 8, !tbaa !11
  %16756 = load i64, ptr %56, align 8, !tbaa !11
  %16757 = load i64, ptr %55, align 8, !tbaa !11
  %16758 = or i64 %16757, %16756
  store i64 %16758, ptr %55, align 8, !tbaa !11
  %16759 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %16759, ptr %39, align 8, !tbaa !11
  %16760 = load ptr, ptr %5, align 8, !tbaa !5
  %16761 = getelementptr inbounds %struct.w2c_hermes, ptr %16760, i32 0, i32 6
  %16762 = load i32, ptr %45, align 4, !tbaa !9
  %16763 = zext i32 %16762 to i64
  %16764 = add i64 %16763, 72
  %16765 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16761, i64 noundef %16764, i64 noundef %16765)
  %16766 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16766, ptr %45, align 4, !tbaa !9
  %16767 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %16767, ptr %55, align 8, !tbaa !11
  %16768 = load ptr, ptr %5, align 8, !tbaa !5
  %16769 = getelementptr inbounds %struct.w2c_hermes, ptr %16768, i32 0, i32 6
  %16770 = load i32, ptr %45, align 4, !tbaa !9
  %16771 = zext i32 %16770 to i64
  %16772 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16769, i64 noundef %16771, i64 noundef %16772)
  %16773 = load ptr, ptr %5, align 8, !tbaa !5
  %16774 = getelementptr inbounds %struct.w2c_hermes, ptr %16773, i32 0, i32 3
  %16775 = load i32, ptr %16774, align 8, !tbaa !15
  store i32 %16775, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %16776 = load i32, ptr %46, align 4, !tbaa !9
  %16777 = load i32, ptr %45, align 4, !tbaa !9
  %16778 = add i32 %16777, %16776
  store i32 %16778, ptr %45, align 4, !tbaa !9
  %16779 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16779, ptr %7, align 4, !tbaa !9
  %16780 = load i32, ptr %45, align 4, !tbaa !9
  %16781 = load ptr, ptr %5, align 8, !tbaa !5
  %16782 = getelementptr inbounds %struct.w2c_hermes, ptr %16781, i32 0, i32 3
  store i32 %16780, ptr %16782, align 8, !tbaa !15
  %16783 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16783, ptr %45, align 4, !tbaa !9
  store i64 1, ptr %55, align 8, !tbaa !11
  %16784 = load ptr, ptr %5, align 8, !tbaa !5
  %16785 = getelementptr inbounds %struct.w2c_hermes, ptr %16784, i32 0, i32 6
  %16786 = load i32, ptr %45, align 4, !tbaa !9
  %16787 = zext i32 %16786 to i64
  %16788 = add i64 %16787, 56
  %16789 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16785, i64 noundef %16788, i64 noundef %16789)
  %16790 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16790, ptr %45, align 4, !tbaa !9
  %16791 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16791, ptr %46, align 4, !tbaa !9
  %16792 = load ptr, ptr %5, align 8, !tbaa !5
  %16793 = getelementptr inbounds %struct.w2c_hermes, ptr %16792, i32 0, i32 6
  %16794 = load i32, ptr %46, align 4, !tbaa !9
  %16795 = zext i32 %16794 to i64
  %16796 = add i64 %16795, 8
  %16797 = call i64 @i64_load(ptr noundef %16793, i64 noundef %16796)
  store i64 %16797, ptr %55, align 8, !tbaa !11
  %16798 = load ptr, ptr %5, align 8, !tbaa !5
  %16799 = getelementptr inbounds %struct.w2c_hermes, ptr %16798, i32 0, i32 6
  %16800 = load i32, ptr %45, align 4, !tbaa !9
  %16801 = zext i32 %16800 to i64
  %16802 = add i64 %16801, 48
  %16803 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16799, i64 noundef %16802, i64 noundef %16803)
  %16804 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16804, ptr %45, align 4, !tbaa !9
  %16805 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16805, ptr %46, align 4, !tbaa !9
  %16806 = load ptr, ptr %5, align 8, !tbaa !5
  %16807 = getelementptr inbounds %struct.w2c_hermes, ptr %16806, i32 0, i32 6
  %16808 = load i32, ptr %46, align 4, !tbaa !9
  %16809 = zext i32 %16808 to i64
  %16810 = call i64 @i64_load(ptr noundef %16807, i64 noundef %16809)
  store i64 %16810, ptr %55, align 8, !tbaa !11
  %16811 = load ptr, ptr %5, align 8, !tbaa !5
  %16812 = getelementptr inbounds %struct.w2c_hermes, ptr %16811, i32 0, i32 6
  %16813 = load i32, ptr %45, align 4, !tbaa !9
  %16814 = zext i32 %16813 to i64
  %16815 = add i64 %16814, 40
  %16816 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16812, i64 noundef %16815, i64 noundef %16816)
  %16817 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16817, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %16818 = load ptr, ptr %5, align 8, !tbaa !5
  %16819 = getelementptr inbounds %struct.w2c_hermes, ptr %16818, i32 0, i32 6
  %16820 = load i32, ptr %45, align 4, !tbaa !9
  %16821 = zext i32 %16820 to i64
  %16822 = add i64 %16821, 36
  %16823 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16819, i64 noundef %16822, i32 noundef %16823)
  %16824 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16824, ptr %45, align 4, !tbaa !9
  %16825 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16825, ptr %46, align 4, !tbaa !9
  %16826 = load ptr, ptr %5, align 8, !tbaa !5
  %16827 = getelementptr inbounds %struct.w2c_hermes, ptr %16826, i32 0, i32 6
  %16828 = load i32, ptr %46, align 4, !tbaa !9
  %16829 = zext i32 %16828 to i64
  %16830 = add i64 %16829, 48
  %16831 = call i64 @i64_load(ptr noundef %16827, i64 noundef %16830)
  store i64 %16831, ptr %55, align 8, !tbaa !11
  %16832 = load ptr, ptr %5, align 8, !tbaa !5
  %16833 = getelementptr inbounds %struct.w2c_hermes, ptr %16832, i32 0, i32 6
  %16834 = load i32, ptr %45, align 4, !tbaa !9
  %16835 = zext i32 %16834 to i64
  %16836 = add i64 %16835, 24
  %16837 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16833, i64 noundef %16836, i64 noundef %16837)
  %16838 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16838, ptr %45, align 4, !tbaa !9
  %16839 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16839, ptr %46, align 4, !tbaa !9
  %16840 = load ptr, ptr %5, align 8, !tbaa !5
  %16841 = getelementptr inbounds %struct.w2c_hermes, ptr %16840, i32 0, i32 6
  %16842 = load i32, ptr %46, align 4, !tbaa !9
  %16843 = zext i32 %16842 to i64
  %16844 = add i64 %16843, 40
  %16845 = call i64 @i64_load(ptr noundef %16841, i64 noundef %16844)
  store i64 %16845, ptr %55, align 8, !tbaa !11
  %16846 = load ptr, ptr %5, align 8, !tbaa !5
  %16847 = getelementptr inbounds %struct.w2c_hermes, ptr %16846, i32 0, i32 6
  %16848 = load i32, ptr %45, align 4, !tbaa !9
  %16849 = zext i32 %16848 to i64
  %16850 = add i64 %16849, 16
  %16851 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16847, i64 noundef %16850, i64 noundef %16851)
  %16852 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16852, ptr %45, align 4, !tbaa !9
  %16853 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16853, ptr %46, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %16854 = load i32, ptr %47, align 4, !tbaa !9
  %16855 = load i32, ptr %46, align 4, !tbaa !9
  %16856 = add i32 %16855, %16854
  store i32 %16856, ptr %46, align 4, !tbaa !9
  %16857 = load ptr, ptr %5, align 8, !tbaa !5
  %16858 = getelementptr inbounds %struct.w2c_hermes, ptr %16857, i32 0, i32 6
  %16859 = load i32, ptr %45, align 4, !tbaa !9
  %16860 = zext i32 %16859 to i64
  %16861 = add i64 %16860, 32
  %16862 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16858, i64 noundef %16861, i32 noundef %16862)
  %16863 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16863, ptr %45, align 4, !tbaa !9
  %16864 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16864, ptr %46, align 4, !tbaa !9
  %16865 = load ptr, ptr %5, align 8, !tbaa !5
  %16866 = getelementptr inbounds %struct.w2c_hermes, ptr %16865, i32 0, i32 6
  %16867 = load i32, ptr %46, align 4, !tbaa !9
  %16868 = zext i32 %16867 to i64
  %16869 = add i64 %16868, 32
  %16870 = call i64 @i64_load(ptr noundef %16866, i64 noundef %16869)
  store i64 %16870, ptr %55, align 8, !tbaa !11
  %16871 = load ptr, ptr %5, align 8, !tbaa !5
  %16872 = getelementptr inbounds %struct.w2c_hermes, ptr %16871, i32 0, i32 6
  %16873 = load i32, ptr %45, align 4, !tbaa !9
  %16874 = zext i32 %16873 to i64
  %16875 = add i64 %16874, 8
  %16876 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16872, i64 noundef %16875, i64 noundef %16876)
  %16877 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16877, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %16878 = load i32, ptr %46, align 4, !tbaa !9
  %16879 = load i32, ptr %45, align 4, !tbaa !9
  %16880 = add i32 %16879, %16878
  store i32 %16880, ptr %45, align 4, !tbaa !9
  %16881 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16881, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %16882 = load i32, ptr %47, align 4, !tbaa !9
  %16883 = load i32, ptr %46, align 4, !tbaa !9
  %16884 = add i32 %16883, %16882
  store i32 %16884, ptr %46, align 4, !tbaa !9
  %16885 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16885, ptr %47, align 4, !tbaa !9
  store i32 8, ptr %48, align 4, !tbaa !9
  %16886 = load i32, ptr %48, align 4, !tbaa !9
  %16887 = load i32, ptr %47, align 4, !tbaa !9
  %16888 = add i32 %16887, %16886
  store i32 %16888, ptr %47, align 4, !tbaa !9
  %16889 = load ptr, ptr %5, align 8, !tbaa !5
  %16890 = load i32, ptr %45, align 4, !tbaa !9
  %16891 = load i32, ptr %46, align 4, !tbaa !9
  %16892 = load i32, ptr %47, align 4, !tbaa !9
  %16893 = call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Asubtract0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef %16889, i32 noundef %16890, i32 noundef %16891, i32 noundef %16892)
  store i32 %16893, ptr %45, align 4, !tbaa !9
  %16894 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16894, ptr %6, align 4, !tbaa !9
  %16895 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %16895, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %16896 = load i32, ptr %46, align 4, !tbaa !9
  %16897 = load i32, ptr %45, align 4, !tbaa !9
  %16898 = sub i32 %16897, %16896
  store i32 %16898, ptr %45, align 4, !tbaa !9
  %16899 = load i32, ptr %45, align 4, !tbaa !9
  %16900 = load ptr, ptr %5, align 8, !tbaa !5
  %16901 = getelementptr inbounds %struct.w2c_hermes, ptr %16900, i32 0, i32 3
  store i32 %16899, ptr %16901, align 8, !tbaa !15
  %16902 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16902, ptr %45, align 4, !tbaa !9
  %16903 = load i32, ptr %45, align 4, !tbaa !9
  %16904 = icmp ne i32 %16903, 0
  br i1 %16904, label %16905, label %16919

16905:                                            ; preds = %16673
  %16906 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16906, ptr %45, align 4, !tbaa !9
  %16907 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16907, ptr %46, align 4, !tbaa !9
  %16908 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16908, ptr %47, align 4, !tbaa !9
  %16909 = load ptr, ptr %5, align 8, !tbaa !5
  %16910 = load i32, ptr %46, align 4, !tbaa !9
  %16911 = load i32, ptr %47, align 4, !tbaa !9
  %16912 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef %16909, i32 noundef %16910, i32 noundef %16911)
  store i32 %16912, ptr %46, align 4, !tbaa !9
  %16913 = load ptr, ptr %5, align 8, !tbaa !5
  %16914 = getelementptr inbounds %struct.w2c_hermes, ptr %16913, i32 0, i32 6
  %16915 = load i32, ptr %45, align 4, !tbaa !9
  %16916 = zext i32 %16915 to i64
  %16917 = add i64 %16916, 304
  %16918 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16914, i64 noundef %16917, i32 noundef %16918)
  br label %16940

16919:                                            ; preds = %16673
  %16920 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16920, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %16921 = load ptr, ptr %5, align 8, !tbaa !5
  %16922 = getelementptr inbounds %struct.w2c_hermes, ptr %16921, i32 0, i32 6
  %16923 = load i32, ptr %45, align 4, !tbaa !9
  %16924 = zext i32 %16923 to i64
  %16925 = add i64 %16924, 304
  %16926 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %16922, i64 noundef %16925, i32 noundef %16926)
  %16927 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16927, ptr %45, align 4, !tbaa !9
  %16928 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %16928, ptr %46, align 4, !tbaa !9
  %16929 = load i32, ptr %46, align 4, !tbaa !9
  %16930 = zext i32 %16929 to i64
  store i64 %16930, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %16931 = load i64, ptr %56, align 8, !tbaa !11
  %16932 = load i64, ptr %55, align 8, !tbaa !11
  %16933 = or i64 %16932, %16931
  store i64 %16933, ptr %55, align 8, !tbaa !11
  %16934 = load ptr, ptr %5, align 8, !tbaa !5
  %16935 = getelementptr inbounds %struct.w2c_hermes, ptr %16934, i32 0, i32 6
  %16936 = load i32, ptr %45, align 4, !tbaa !9
  %16937 = zext i32 %16936 to i64
  %16938 = add i64 %16937, 312
  %16939 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %16935, i64 noundef %16938, i64 noundef %16939)
  br label %16940

16940:                                            ; preds = %16919, %16905, %16615
  %16941 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %16941, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %16942 = load i32, ptr %46, align 4, !tbaa !9
  %16943 = load i32, ptr %45, align 4, !tbaa !9
  %16944 = add i32 %16943, %16942
  store i32 %16944, ptr %45, align 4, !tbaa !9
  %16945 = load i32, ptr %45, align 4, !tbaa !9
  %16946 = load ptr, ptr %5, align 8, !tbaa !5
  %16947 = getelementptr inbounds %struct.w2c_hermes, ptr %16946, i32 0, i32 3
  store i32 %16945, ptr %16947, align 8, !tbaa !15
  br label %16948

16948:                                            ; preds = %16940, %16474, %16430, %16325
  %16949 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %16949, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %16950 = load i32, ptr %46, align 4, !tbaa !9
  %16951 = load i32, ptr %45, align 4, !tbaa !9
  %16952 = add i32 %16951, %16950
  store i32 %16952, ptr %45, align 4, !tbaa !9
  %16953 = load i32, ptr %45, align 4, !tbaa !9
  %16954 = load ptr, ptr %5, align 8, !tbaa !5
  %16955 = getelementptr inbounds %struct.w2c_hermes, ptr %16954, i32 0, i32 3
  store i32 %16953, ptr %16955, align 8, !tbaa !15
  %16956 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %16956, ptr %45, align 4, !tbaa !9
  %16957 = load ptr, ptr %5, align 8, !tbaa !5
  %16958 = getelementptr inbounds %struct.w2c_hermes, ptr %16957, i32 0, i32 6
  %16959 = load i32, ptr %45, align 4, !tbaa !9
  %16960 = zext i32 %16959 to i64
  %16961 = add i64 %16960, 5808
  %16962 = call i32 @i32_load(ptr noundef %16958, i64 noundef %16961)
  store i32 %16962, ptr %45, align 4, !tbaa !9
  %16963 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %16963, ptr %6, align 4, !tbaa !9
  %16964 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16964, ptr %45, align 4, !tbaa !9
  %16965 = load ptr, ptr %5, align 8, !tbaa !5
  %16966 = getelementptr inbounds %struct.w2c_hermes, ptr %16965, i32 0, i32 6
  %16967 = load i32, ptr %45, align 4, !tbaa !9
  %16968 = zext i32 %16967 to i64
  %16969 = add i64 %16968, 304
  %16970 = call i32 @i32_load(ptr noundef %16966, i64 noundef %16969)
  store i32 %16970, ptr %45, align 4, !tbaa !9
  %16971 = load i32, ptr %45, align 4, !tbaa !9
  %16972 = icmp ne i32 %16971, 0
  %16973 = xor i1 %16972, true
  %16974 = zext i1 %16973 to i32
  store i32 %16974, ptr %45, align 4, !tbaa !9
  %16975 = load i32, ptr %45, align 4, !tbaa !9
  %16976 = icmp ne i32 %16975, 0
  br i1 %16976, label %16977, label %16978

16977:                                            ; preds = %16948
  br label %43136

16978:                                            ; preds = %16948
  %16979 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %16979, ptr %45, align 4, !tbaa !9
  %16980 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %16980, ptr %46, align 4, !tbaa !9
  %16981 = load ptr, ptr %5, align 8, !tbaa !5
  %16982 = getelementptr inbounds %struct.w2c_hermes, ptr %16981, i32 0, i32 6
  %16983 = load i32, ptr %46, align 4, !tbaa !9
  %16984 = zext i32 %16983 to i64
  %16985 = add i64 %16984, 1
  %16986 = call i32 @i32_load8_u(ptr noundef %16982, i64 noundef %16985)
  store i32 %16986, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %16987 = load i32, ptr %47, align 4, !tbaa !9
  %16988 = and i32 %16987, 31
  %16989 = load i32, ptr %46, align 4, !tbaa !9
  %16990 = shl i32 %16989, %16988
  store i32 %16990, ptr %46, align 4, !tbaa !9
  %16991 = load i32, ptr %46, align 4, !tbaa !9
  %16992 = load i32, ptr %45, align 4, !tbaa !9
  %16993 = add i32 %16992, %16991
  store i32 %16993, ptr %45, align 4, !tbaa !9
  %16994 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %16994, ptr %46, 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 %46, align 4, !tbaa !9
  %16998 = zext i32 %16997 to i64
  %16999 = add i64 %16998, 312
  %17000 = call i64 @i64_load(ptr noundef %16996, i64 noundef %16999)
  store i64 %17000, ptr %55, align 8, !tbaa !11
  %17001 = load ptr, ptr %5, align 8, !tbaa !5
  %17002 = getelementptr inbounds %struct.w2c_hermes, ptr %17001, i32 0, i32 6
  %17003 = load i32, ptr %45, align 4, !tbaa !9
  %17004 = zext i32 %17003 to i64
  %17005 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17002, i64 noundef %17004, i64 noundef %17005)
  %17006 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17006, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17007 = load ptr, ptr %5, align 8, !tbaa !5
  %17008 = getelementptr inbounds %struct.w2c_hermes, ptr %17007, i32 0, i32 6
  %17009 = load i32, ptr %45, align 4, !tbaa !9
  %17010 = zext i32 %17009 to i64
  %17011 = add i64 %17010, 516
  %17012 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17008, i64 noundef %17011, i32 noundef %17012)
  %17013 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17013, ptr %45, align 4, !tbaa !9
  %17014 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %17014, ptr %46, align 4, !tbaa !9
  %17015 = load ptr, ptr %5, align 8, !tbaa !5
  %17016 = getelementptr inbounds %struct.w2c_hermes, ptr %17015, i32 0, i32 6
  %17017 = load i32, ptr %45, align 4, !tbaa !9
  %17018 = zext i32 %17017 to i64
  %17019 = add i64 %17018, 512
  %17020 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17016, i64 noundef %17019, i32 noundef %17020)
  %17021 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17021, ptr %45, align 4, !tbaa !9
  %17022 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %17022, ptr %46, align 4, !tbaa !9
  %17023 = load ptr, ptr %5, align 8, !tbaa !5
  %17024 = getelementptr inbounds %struct.w2c_hermes, ptr %17023, i32 0, i32 6
  %17025 = load i32, ptr %45, align 4, !tbaa !9
  %17026 = zext i32 %17025 to i64
  %17027 = add i64 %17026, 508
  %17028 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17024, i64 noundef %17027, i32 noundef %17028)
  %17029 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17029, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %17030 = load i32, ptr %46, align 4, !tbaa !9
  %17031 = load i32, ptr %45, align 4, !tbaa !9
  %17032 = add i32 %17031, %17030
  store i32 %17032, ptr %45, align 4, !tbaa !9
  %17033 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17033, ptr %6, align 4, !tbaa !9
  br label %2945

17034:                                            ; preds = %3049
  %17035 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17035, ptr %45, align 4, !tbaa !9
  %17036 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17036, ptr %46, align 4, !tbaa !9
  %17037 = load ptr, ptr %5, align 8, !tbaa !5
  %17038 = getelementptr inbounds %struct.w2c_hermes, ptr %17037, i32 0, i32 6
  %17039 = load i32, ptr %46, align 4, !tbaa !9
  %17040 = zext i32 %17039 to i64
  %17041 = add i64 %17040, 2
  %17042 = call i32 @i32_load8_u(ptr noundef %17038, i64 noundef %17041)
  store i32 %17042, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %17043 = load i32, ptr %47, align 4, !tbaa !9
  %17044 = and i32 %17043, 31
  %17045 = load i32, ptr %46, align 4, !tbaa !9
  %17046 = shl i32 %17045, %17044
  store i32 %17046, ptr %46, align 4, !tbaa !9
  %17047 = load i32, ptr %46, align 4, !tbaa !9
  %17048 = load i32, ptr %45, align 4, !tbaa !9
  %17049 = add i32 %17048, %17047
  store i32 %17049, ptr %45, align 4, !tbaa !9
  %17050 = load ptr, ptr %5, align 8, !tbaa !5
  %17051 = getelementptr inbounds %struct.w2c_hermes, ptr %17050, i32 0, i32 6
  %17052 = load i32, ptr %45, align 4, !tbaa !9
  %17053 = zext i32 %17052 to i64
  %17054 = call i64 @i64_load(ptr noundef %17051, i64 noundef %17053)
  store i64 %17054, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %17055 = load i64, ptr %54, align 8, !tbaa !11
  %17056 = load i64, ptr %55, align 8, !tbaa !11
  %17057 = icmp ugt i64 %17055, %17056
  %17058 = zext i1 %17057 to i32
  store i32 %17058, ptr %45, align 4, !tbaa !9
  %17059 = load i32, ptr %45, align 4, !tbaa !9
  %17060 = icmp ne i32 %17059, 0
  br i1 %17060, label %17061, label %17062

17061:                                            ; preds = %17034
  br label %17160

17062:                                            ; preds = %17034
  %17063 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17063, ptr %45, align 4, !tbaa !9
  %17064 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17064, ptr %46, align 4, !tbaa !9
  %17065 = load ptr, ptr %5, align 8, !tbaa !5
  %17066 = getelementptr inbounds %struct.w2c_hermes, ptr %17065, i32 0, i32 6
  %17067 = load i32, ptr %46, align 4, !tbaa !9
  %17068 = zext i32 %17067 to i64
  %17069 = add i64 %17068, 3
  %17070 = call i32 @i32_load8_u(ptr noundef %17066, i64 noundef %17069)
  store i32 %17070, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %17071 = load i32, ptr %47, align 4, !tbaa !9
  %17072 = and i32 %17071, 31
  %17073 = load i32, ptr %46, align 4, !tbaa !9
  %17074 = shl i32 %17073, %17072
  store i32 %17074, ptr %46, align 4, !tbaa !9
  %17075 = load i32, ptr %46, align 4, !tbaa !9
  %17076 = load i32, ptr %45, align 4, !tbaa !9
  %17077 = add i32 %17076, %17075
  store i32 %17077, ptr %45, align 4, !tbaa !9
  %17078 = load ptr, ptr %5, align 8, !tbaa !5
  %17079 = getelementptr inbounds %struct.w2c_hermes, ptr %17078, i32 0, i32 6
  %17080 = load i32, ptr %45, align 4, !tbaa !9
  %17081 = zext i32 %17080 to i64
  %17082 = call i64 @i64_load(ptr noundef %17079, i64 noundef %17081)
  store i64 %17082, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %17083 = load i64, ptr %54, align 8, !tbaa !11
  %17084 = load i64, ptr %55, align 8, !tbaa !11
  %17085 = icmp ugt i64 %17083, %17084
  %17086 = zext i1 %17085 to i32
  store i32 %17086, ptr %45, align 4, !tbaa !9
  %17087 = load i32, ptr %45, align 4, !tbaa !9
  %17088 = icmp ne i32 %17087, 0
  br i1 %17088, label %17089, label %17090

17089:                                            ; preds = %17062
  br label %17160

17090:                                            ; preds = %17062
  br label %17091

17091:                                            ; preds = %17090, %3050
  %17092 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17092, ptr %45, align 4, !tbaa !9
  %17093 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17093, ptr %46, align 4, !tbaa !9
  %17094 = load ptr, ptr %5, align 8, !tbaa !5
  %17095 = getelementptr inbounds %struct.w2c_hermes, ptr %17094, i32 0, i32 6
  %17096 = load i32, ptr %46, align 4, !tbaa !9
  %17097 = zext i32 %17096 to i64
  %17098 = add i64 %17097, 1
  %17099 = call i32 @i32_load8_u(ptr noundef %17095, i64 noundef %17098)
  store i32 %17099, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %17100 = load i32, ptr %47, align 4, !tbaa !9
  %17101 = and i32 %17100, 31
  %17102 = load i32, ptr %46, align 4, !tbaa !9
  %17103 = shl i32 %17102, %17101
  store i32 %17103, ptr %46, align 4, !tbaa !9
  %17104 = load i32, ptr %46, align 4, !tbaa !9
  %17105 = load i32, ptr %45, align 4, !tbaa !9
  %17106 = add i32 %17105, %17104
  store i32 %17106, ptr %45, align 4, !tbaa !9
  %17107 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17107, ptr %46, align 4, !tbaa !9
  %17108 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17108, ptr %47, align 4, !tbaa !9
  %17109 = load ptr, ptr %5, align 8, !tbaa !5
  %17110 = getelementptr inbounds %struct.w2c_hermes, ptr %17109, i32 0, i32 6
  %17111 = load i32, ptr %47, align 4, !tbaa !9
  %17112 = zext i32 %17111 to i64
  %17113 = add i64 %17112, 2
  %17114 = call i32 @i32_load8_u(ptr noundef %17110, i64 noundef %17113)
  store i32 %17114, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %17115 = load i32, ptr %48, align 4, !tbaa !9
  %17116 = and i32 %17115, 31
  %17117 = load i32, ptr %47, align 4, !tbaa !9
  %17118 = shl i32 %17117, %17116
  store i32 %17118, ptr %47, align 4, !tbaa !9
  %17119 = load i32, ptr %47, align 4, !tbaa !9
  %17120 = load i32, ptr %46, align 4, !tbaa !9
  %17121 = add i32 %17120, %17119
  store i32 %17121, ptr %46, 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 %46, align 4, !tbaa !9
  %17125 = zext i32 %17124 to i64
  %17126 = call double @f64_load(ptr noundef %17123, i64 noundef %17125)
  store double %17126, ptr %61, align 8, !tbaa !13
  %17127 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17127, ptr %47, align 4, !tbaa !9
  %17128 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17128, ptr %48, align 4, !tbaa !9
  %17129 = load ptr, ptr %5, align 8, !tbaa !5
  %17130 = getelementptr inbounds %struct.w2c_hermes, ptr %17129, i32 0, i32 6
  %17131 = load i32, ptr %48, align 4, !tbaa !9
  %17132 = zext i32 %17131 to i64
  %17133 = add i64 %17132, 3
  %17134 = call i32 @i32_load8_u(ptr noundef %17130, i64 noundef %17133)
  store i32 %17134, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %17135 = load i32, ptr %49, align 4, !tbaa !9
  %17136 = and i32 %17135, 31
  %17137 = load i32, ptr %48, align 4, !tbaa !9
  %17138 = shl i32 %17137, %17136
  store i32 %17138, ptr %48, align 4, !tbaa !9
  %17139 = load i32, ptr %48, align 4, !tbaa !9
  %17140 = load i32, ptr %47, align 4, !tbaa !9
  %17141 = add i32 %17140, %17139
  store i32 %17141, ptr %47, align 4, !tbaa !9
  %17142 = load ptr, ptr %5, align 8, !tbaa !5
  %17143 = getelementptr inbounds %struct.w2c_hermes, ptr %17142, i32 0, i32 6
  %17144 = load i32, ptr %47, align 4, !tbaa !9
  %17145 = zext i32 %17144 to i64
  %17146 = call double @f64_load(ptr noundef %17143, i64 noundef %17145)
  store double %17146, ptr %62, align 8, !tbaa !13
  %17147 = load double, ptr %62, align 8, !tbaa !13
  %17148 = load double, ptr %61, align 8, !tbaa !13
  %17149 = fadd double %17148, %17147
  store double %17149, ptr %61, align 8, !tbaa !13
  %17150 = load ptr, ptr %5, align 8, !tbaa !5
  %17151 = getelementptr inbounds %struct.w2c_hermes, ptr %17150, i32 0, i32 6
  %17152 = load i32, ptr %45, align 4, !tbaa !9
  %17153 = zext i32 %17152 to i64
  %17154 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %17151, i64 noundef %17153, double noundef %17154)
  %17155 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17155, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %17156 = load i32, ptr %46, align 4, !tbaa !9
  %17157 = load i32, ptr %45, align 4, !tbaa !9
  %17158 = add i32 %17157, %17156
  store i32 %17158, ptr %45, align 4, !tbaa !9
  %17159 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17159, ptr %6, align 4, !tbaa !9
  br label %2945

17160:                                            ; preds = %17089, %17061
  %17161 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17161, ptr %45, align 4, !tbaa !9
  %17162 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17162, ptr %46, align 4, !tbaa !9
  %17163 = load ptr, ptr %5, align 8, !tbaa !5
  %17164 = getelementptr inbounds %struct.w2c_hermes, ptr %17163, i32 0, i32 6
  %17165 = load i32, ptr %45, align 4, !tbaa !9
  %17166 = zext i32 %17165 to i64
  %17167 = add i64 %17166, 5808
  %17168 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17164, i64 noundef %17167, i32 noundef %17168)
  %17169 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %17169, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %17170 = load i32, ptr %46, align 4, !tbaa !9
  %17171 = load i32, ptr %45, align 4, !tbaa !9
  %17172 = add i32 %17171, %17170
  store i32 %17172, ptr %45, align 4, !tbaa !9
  %17173 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17173, ptr %15, align 4, !tbaa !9
  %17174 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17174, ptr %45, align 4, !tbaa !9
  %17175 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17175, ptr %46, align 4, !tbaa !9
  %17176 = load ptr, ptr %5, align 8, !tbaa !5
  %17177 = getelementptr inbounds %struct.w2c_hermes, ptr %17176, i32 0, i32 6
  %17178 = load i32, ptr %46, align 4, !tbaa !9
  %17179 = zext i32 %17178 to i64
  %17180 = add i64 %17179, 2
  %17181 = call i32 @i32_load8_u(ptr noundef %17177, i64 noundef %17180)
  store i32 %17181, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %17182 = load i32, ptr %47, align 4, !tbaa !9
  %17183 = and i32 %17182, 31
  %17184 = load i32, ptr %46, align 4, !tbaa !9
  %17185 = shl i32 %17184, %17183
  store i32 %17185, ptr %46, align 4, !tbaa !9
  %17186 = load i32, ptr %46, align 4, !tbaa !9
  %17187 = load i32, ptr %45, align 4, !tbaa !9
  %17188 = add i32 %17187, %17186
  store i32 %17188, ptr %45, align 4, !tbaa !9
  %17189 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17189, ptr %7, align 4, !tbaa !9
  %17190 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %17190, ptr %45, align 4, !tbaa !9
  %17191 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17191, ptr %46, align 4, !tbaa !9
  %17192 = load ptr, ptr %5, align 8, !tbaa !5
  %17193 = getelementptr inbounds %struct.w2c_hermes, ptr %17192, i32 0, i32 6
  %17194 = load i32, ptr %46, align 4, !tbaa !9
  %17195 = zext i32 %17194 to i64
  %17196 = add i64 %17195, 3
  %17197 = call i32 @i32_load8_u(ptr noundef %17193, i64 noundef %17196)
  store i32 %17197, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %17198 = load i32, ptr %47, align 4, !tbaa !9
  %17199 = and i32 %17198, 31
  %17200 = load i32, ptr %46, align 4, !tbaa !9
  %17201 = shl i32 %17200, %17199
  store i32 %17201, ptr %46, align 4, !tbaa !9
  %17202 = load i32, ptr %46, align 4, !tbaa !9
  %17203 = load i32, ptr %45, align 4, !tbaa !9
  %17204 = add i32 %17203, %17202
  store i32 %17204, ptr %45, align 4, !tbaa !9
  %17205 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17205, ptr %6, align 4, !tbaa !9
  %17206 = load ptr, ptr %5, align 8, !tbaa !5
  %17207 = getelementptr inbounds %struct.w2c_hermes, ptr %17206, i32 0, i32 3
  %17208 = load i32, ptr %17207, align 8, !tbaa !15
  store i32 %17208, ptr %45, align 4, !tbaa !9
  store i32 112, ptr %46, align 4, !tbaa !9
  %17209 = load i32, ptr %46, align 4, !tbaa !9
  %17210 = load i32, ptr %45, align 4, !tbaa !9
  %17211 = sub i32 %17210, %17209
  store i32 %17211, ptr %45, align 4, !tbaa !9
  %17212 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17212, ptr %18, align 4, !tbaa !9
  %17213 = load i32, ptr %45, align 4, !tbaa !9
  %17214 = load ptr, ptr %5, align 8, !tbaa !5
  %17215 = getelementptr inbounds %struct.w2c_hermes, ptr %17214, i32 0, i32 3
  store i32 %17213, ptr %17215, align 8, !tbaa !15
  %17216 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17216, ptr %45, align 4, !tbaa !9
  store i32 96, ptr %46, align 4, !tbaa !9
  %17217 = load i32, ptr %46, align 4, !tbaa !9
  %17218 = load i32, ptr %45, align 4, !tbaa !9
  %17219 = add i32 %17218, %17217
  store i32 %17219, ptr %45, align 4, !tbaa !9
  %17220 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17220, ptr %46, align 4, !tbaa !9
  %17221 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17221, ptr %47, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %17222 = load ptr, ptr %5, align 8, !tbaa !5
  %17223 = load i32, ptr %45, align 4, !tbaa !9
  %17224 = load i32, ptr %46, align 4, !tbaa !9
  %17225 = load i32, ptr %47, align 4, !tbaa !9
  %17226 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %17222, i32 noundef %17223, i32 noundef %17224, i32 noundef %17225, i32 noundef %17226)
  %17227 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17227, ptr %45, align 4, !tbaa !9
  %17228 = load ptr, ptr %5, align 8, !tbaa !5
  %17229 = getelementptr inbounds %struct.w2c_hermes, ptr %17228, i32 0, i32 6
  %17230 = load i32, ptr %45, align 4, !tbaa !9
  %17231 = zext i32 %17230 to i64
  %17232 = add i64 %17231, 96
  %17233 = call i32 @i32_load(ptr noundef %17229, i64 noundef %17232)
  store i32 %17233, ptr %45, align 4, !tbaa !9
  %17234 = load i32, ptr %45, align 4, !tbaa !9
  %17235 = icmp ne i32 %17234, 0
  %17236 = xor i1 %17235, true
  %17237 = zext i1 %17236 to i32
  store i32 %17237, ptr %45, align 4, !tbaa !9
  %17238 = load i32, ptr %45, align 4, !tbaa !9
  %17239 = icmp ne i32 %17238, 0
  br i1 %17239, label %17240, label %17247

17240:                                            ; preds = %17160
  %17241 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17241, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17242 = load ptr, ptr %5, align 8, !tbaa !5
  %17243 = getelementptr inbounds %struct.w2c_hermes, ptr %17242, i32 0, i32 6
  %17244 = load i32, ptr %45, align 4, !tbaa !9
  %17245 = zext i32 %17244 to i64
  %17246 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17243, i64 noundef %17245, i32 noundef %17246)
  br label %18312

17247:                                            ; preds = %17160
  %17248 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17248, ptr %45, align 4, !tbaa !9
  %17249 = load ptr, ptr %5, align 8, !tbaa !5
  %17250 = getelementptr inbounds %struct.w2c_hermes, ptr %17249, i32 0, i32 6
  %17251 = load i32, ptr %45, align 4, !tbaa !9
  %17252 = zext i32 %17251 to i64
  %17253 = add i64 %17252, 104
  %17254 = call i64 @i64_load(ptr noundef %17250, i64 noundef %17253)
  store i64 %17254, ptr %54, align 8, !tbaa !11
  %17255 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17255, ptr %39, align 8, !tbaa !11
  %17256 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17256, ptr %45, align 4, !tbaa !9
  %17257 = load ptr, ptr %5, align 8, !tbaa !5
  %17258 = getelementptr inbounds %struct.w2c_hermes, ptr %17257, i32 0, i32 6
  %17259 = load i32, ptr %45, align 4, !tbaa !9
  %17260 = zext i32 %17259 to i64
  %17261 = add i64 %17260, 4
  %17262 = call i32 @i32_load(ptr noundef %17258, i64 noundef %17261)
  store i32 %17262, ptr %45, align 4, !tbaa !9
  %17263 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17263, ptr %8, align 4, !tbaa !9
  %17264 = load ptr, ptr %5, align 8, !tbaa !5
  %17265 = getelementptr inbounds %struct.w2c_hermes, ptr %17264, i32 0, i32 6
  %17266 = load i32, ptr %45, align 4, !tbaa !9
  %17267 = zext i32 %17266 to i64
  %17268 = add i64 %17267, 164
  %17269 = call i32 @i32_load(ptr noundef %17265, i64 noundef %17268)
  store i32 %17269, ptr %45, align 4, !tbaa !9
  %17270 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17270, ptr %7, align 4, !tbaa !9
  %17271 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17271, ptr %46, align 4, !tbaa !9
  %17272 = load ptr, ptr %5, align 8, !tbaa !5
  %17273 = getelementptr inbounds %struct.w2c_hermes, ptr %17272, i32 0, i32 6
  %17274 = load i32, ptr %46, align 4, !tbaa !9
  %17275 = zext i32 %17274 to i64
  %17276 = add i64 %17275, 168
  %17277 = call i32 @i32_load(ptr noundef %17273, i64 noundef %17276)
  store i32 %17277, ptr %46, align 4, !tbaa !9
  %17278 = load i32, ptr %45, align 4, !tbaa !9
  %17279 = load i32, ptr %46, align 4, !tbaa !9
  %17280 = icmp ult i32 %17278, %17279
  %17281 = zext i1 %17280 to i32
  store i32 %17281, ptr %45, align 4, !tbaa !9
  %17282 = load i32, ptr %45, align 4, !tbaa !9
  %17283 = icmp ne i32 %17282, 0
  br i1 %17283, label %17284, label %17303

17284:                                            ; preds = %17247
  %17285 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17285, ptr %45, align 4, !tbaa !9
  %17286 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17286, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %17287 = load i32, ptr %47, align 4, !tbaa !9
  %17288 = load i32, ptr %46, align 4, !tbaa !9
  %17289 = add i32 %17288, %17287
  store i32 %17289, ptr %46, align 4, !tbaa !9
  %17290 = load ptr, ptr %5, align 8, !tbaa !5
  %17291 = getelementptr inbounds %struct.w2c_hermes, ptr %17290, i32 0, i32 6
  %17292 = load i32, ptr %45, align 4, !tbaa !9
  %17293 = zext i32 %17292 to i64
  %17294 = add i64 %17293, 164
  %17295 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17291, i64 noundef %17294, i32 noundef %17295)
  %17296 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17296, ptr %45, align 4, !tbaa !9
  %17297 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17297, ptr %55, align 8, !tbaa !11
  %17298 = load ptr, ptr %5, align 8, !tbaa !5
  %17299 = getelementptr inbounds %struct.w2c_hermes, ptr %17298, i32 0, i32 6
  %17300 = load i32, ptr %45, align 4, !tbaa !9
  %17301 = zext i32 %17300 to i64
  %17302 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17299, i64 noundef %17301, i64 noundef %17302)
  br label %17311

17303:                                            ; preds = %17247
  %17304 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17304, ptr %45, align 4, !tbaa !9
  %17305 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17305, ptr %55, align 8, !tbaa !11
  %17306 = load ptr, ptr %5, align 8, !tbaa !5
  %17307 = load i32, ptr %45, align 4, !tbaa !9
  %17308 = load i64, ptr %55, align 8, !tbaa !11
  %17309 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %17306, i32 noundef %17307, i64 noundef %17308)
  store i32 %17309, ptr %45, align 4, !tbaa !9
  %17310 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17310, ptr %7, align 4, !tbaa !9
  br label %17311

17311:                                            ; preds = %17303, %17284
  %17312 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17312, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %17313 = load i32, ptr %46, align 4, !tbaa !9
  %17314 = load i32, ptr %45, align 4, !tbaa !9
  %17315 = add i32 %17314, %17313
  store i32 %17315, ptr %45, align 4, !tbaa !9
  %17316 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17316, ptr %46, align 4, !tbaa !9
  %17317 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17317, ptr %47, align 4, !tbaa !9
  store i32 0, ptr %48, align 4, !tbaa !9
  %17318 = load ptr, ptr %5, align 8, !tbaa !5
  %17319 = load i32, ptr %45, align 4, !tbaa !9
  %17320 = load i32, ptr %46, align 4, !tbaa !9
  %17321 = load i32, ptr %47, align 4, !tbaa !9
  %17322 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %17318, i32 noundef %17319, i32 noundef %17320, i32 noundef %17321, i32 noundef %17322)
  %17323 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17323, ptr %45, align 4, !tbaa !9
  %17324 = load ptr, ptr %5, align 8, !tbaa !5
  %17325 = getelementptr inbounds %struct.w2c_hermes, ptr %17324, i32 0, i32 6
  %17326 = load i32, ptr %45, align 4, !tbaa !9
  %17327 = zext i32 %17326 to i64
  %17328 = add i64 %17327, 80
  %17329 = call i32 @i32_load(ptr noundef %17325, i64 noundef %17328)
  store i32 %17329, ptr %45, align 4, !tbaa !9
  %17330 = load i32, ptr %45, align 4, !tbaa !9
  %17331 = icmp ne i32 %17330, 0
  %17332 = xor i1 %17331, true
  %17333 = zext i1 %17332 to i32
  store i32 %17333, ptr %45, align 4, !tbaa !9
  %17334 = load i32, ptr %45, align 4, !tbaa !9
  %17335 = icmp ne i32 %17334, 0
  br i1 %17335, label %17336, label %17343

17336:                                            ; preds = %17311
  %17337 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17337, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17338 = load ptr, ptr %5, align 8, !tbaa !5
  %17339 = getelementptr inbounds %struct.w2c_hermes, ptr %17338, i32 0, i32 6
  %17340 = load i32, ptr %45, align 4, !tbaa !9
  %17341 = zext i32 %17340 to i64
  %17342 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17339, i64 noundef %17341, i32 noundef %17342)
  br label %18312

17343:                                            ; preds = %17311
  %17344 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17344, ptr %45, align 4, !tbaa !9
  %17345 = load ptr, ptr %5, align 8, !tbaa !5
  %17346 = getelementptr inbounds %struct.w2c_hermes, ptr %17345, i32 0, i32 6
  %17347 = load i32, ptr %45, align 4, !tbaa !9
  %17348 = zext i32 %17347 to i64
  %17349 = add i64 %17348, 88
  %17350 = call i64 @i64_load(ptr noundef %17346, i64 noundef %17349)
  store i64 %17350, ptr %54, align 8, !tbaa !11
  %17351 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17351, ptr %39, align 8, !tbaa !11
  %17352 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17352, ptr %45, 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 %45, align 4, !tbaa !9
  %17356 = zext i32 %17355 to i64
  %17357 = add i64 %17356, 4
  %17358 = call i32 @i32_load(ptr noundef %17354, i64 noundef %17357)
  store i32 %17358, ptr %45, align 4, !tbaa !9
  %17359 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17359, ptr %12, align 4, !tbaa !9
  %17360 = load ptr, ptr %5, align 8, !tbaa !5
  %17361 = getelementptr inbounds %struct.w2c_hermes, ptr %17360, i32 0, i32 6
  %17362 = load i32, ptr %45, align 4, !tbaa !9
  %17363 = zext i32 %17362 to i64
  %17364 = add i64 %17363, 164
  %17365 = call i32 @i32_load(ptr noundef %17361, i64 noundef %17364)
  store i32 %17365, ptr %45, align 4, !tbaa !9
  %17366 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17366, ptr %8, align 4, !tbaa !9
  %17367 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17367, ptr %46, align 4, !tbaa !9
  %17368 = load ptr, ptr %5, align 8, !tbaa !5
  %17369 = getelementptr inbounds %struct.w2c_hermes, ptr %17368, i32 0, i32 6
  %17370 = load i32, ptr %46, align 4, !tbaa !9
  %17371 = zext i32 %17370 to i64
  %17372 = add i64 %17371, 168
  %17373 = call i32 @i32_load(ptr noundef %17369, i64 noundef %17372)
  store i32 %17373, ptr %46, align 4, !tbaa !9
  %17374 = load i32, ptr %45, align 4, !tbaa !9
  %17375 = load i32, ptr %46, align 4, !tbaa !9
  %17376 = icmp ult i32 %17374, %17375
  %17377 = zext i1 %17376 to i32
  store i32 %17377, ptr %45, align 4, !tbaa !9
  %17378 = load i32, ptr %45, align 4, !tbaa !9
  %17379 = icmp ne i32 %17378, 0
  br i1 %17379, label %17380, label %17399

17380:                                            ; preds = %17343
  %17381 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17381, ptr %45, align 4, !tbaa !9
  %17382 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17382, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %17383 = load i32, ptr %47, align 4, !tbaa !9
  %17384 = load i32, ptr %46, align 4, !tbaa !9
  %17385 = add i32 %17384, %17383
  store i32 %17385, ptr %46, align 4, !tbaa !9
  %17386 = load ptr, ptr %5, align 8, !tbaa !5
  %17387 = getelementptr inbounds %struct.w2c_hermes, ptr %17386, i32 0, i32 6
  %17388 = load i32, ptr %45, align 4, !tbaa !9
  %17389 = zext i32 %17388 to i64
  %17390 = add i64 %17389, 164
  %17391 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17387, i64 noundef %17390, i32 noundef %17391)
  %17392 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17392, ptr %45, align 4, !tbaa !9
  %17393 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17393, ptr %55, align 8, !tbaa !11
  %17394 = load ptr, ptr %5, align 8, !tbaa !5
  %17395 = getelementptr inbounds %struct.w2c_hermes, ptr %17394, i32 0, i32 6
  %17396 = load i32, ptr %45, align 4, !tbaa !9
  %17397 = zext i32 %17396 to i64
  %17398 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17395, i64 noundef %17397, i64 noundef %17398)
  br label %17407

17399:                                            ; preds = %17343
  %17400 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17400, ptr %45, align 4, !tbaa !9
  %17401 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17401, ptr %55, align 8, !tbaa !11
  %17402 = load ptr, ptr %5, align 8, !tbaa !5
  %17403 = load i32, ptr %45, align 4, !tbaa !9
  %17404 = load i64, ptr %55, align 8, !tbaa !11
  %17405 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %17402, i32 noundef %17403, i64 noundef %17404)
  store i32 %17405, ptr %45, align 4, !tbaa !9
  %17406 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17406, ptr %8, align 4, !tbaa !9
  br label %17407

17407:                                            ; preds = %17399, %17380
  %17408 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17408, ptr %45, align 4, !tbaa !9
  %17409 = load ptr, ptr %5, align 8, !tbaa !5
  %17410 = getelementptr inbounds %struct.w2c_hermes, ptr %17409, i32 0, i32 6
  %17411 = load i32, ptr %45, align 4, !tbaa !9
  %17412 = zext i32 %17411 to i64
  %17413 = call i64 @i64_load(ptr noundef %17410, i64 noundef %17412)
  store i64 %17413, ptr %54, align 8, !tbaa !11
  %17414 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17414, ptr %42, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %17415 = load i64, ptr %54, align 8, !tbaa !11
  %17416 = load i64, ptr %55, align 8, !tbaa !11
  %17417 = and i64 %17416, 63
  %17418 = ashr i64 %17415, %17417
  store i64 %17418, ptr %54, align 8, !tbaa !11
  store i64 4294967295, ptr %55, align 8, !tbaa !11
  %17419 = load i64, ptr %55, align 8, !tbaa !11
  %17420 = load i64, ptr %54, align 8, !tbaa !11
  %17421 = and i64 %17420, %17419
  store i64 %17421, ptr %54, align 8, !tbaa !11
  %17422 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17422, ptr %41, align 8, !tbaa !11
  store i64 4294967293, ptr %55, align 8, !tbaa !11
  %17423 = load i64, ptr %54, align 8, !tbaa !11
  %17424 = load i64, ptr %55, align 8, !tbaa !11
  %17425 = icmp ne i64 %17423, %17424
  %17426 = zext i1 %17425 to i32
  store i32 %17426, ptr %45, align 4, !tbaa !9
  %17427 = load i32, ptr %45, align 4, !tbaa !9
  %17428 = icmp ne i32 %17427, 0
  br i1 %17428, label %17429, label %17449

17429:                                            ; preds = %17407
  %17430 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17430, ptr %45, align 4, !tbaa !9
  %17431 = load ptr, ptr %5, align 8, !tbaa !5
  %17432 = getelementptr inbounds %struct.w2c_hermes, ptr %17431, i32 0, i32 6
  %17433 = load i32, ptr %45, align 4, !tbaa !9
  %17434 = zext i32 %17433 to i64
  %17435 = add i64 %17434, 6
  %17436 = call i64 @i64_load16_s(ptr noundef %17432, i64 noundef %17435)
  store i64 %17436, ptr %54, align 8, !tbaa !11
  store i64 4294967295, ptr %55, align 8, !tbaa !11
  %17437 = load i64, ptr %55, align 8, !tbaa !11
  %17438 = load i64, ptr %54, align 8, !tbaa !11
  %17439 = and i64 %17438, %17437
  store i64 %17439, ptr %54, align 8, !tbaa !11
  %17440 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17440, ptr %39, align 8, !tbaa !11
  store i64 4294967293, ptr %55, align 8, !tbaa !11
  %17441 = load i64, ptr %54, align 8, !tbaa !11
  %17442 = load i64, ptr %55, align 8, !tbaa !11
  %17443 = icmp ne i64 %17441, %17442
  %17444 = zext i1 %17443 to i32
  store i32 %17444, ptr %45, align 4, !tbaa !9
  %17445 = load i32, ptr %45, align 4, !tbaa !9
  %17446 = icmp ne i32 %17445, 0
  br i1 %17446, label %17447, label %17448

17447:                                            ; preds = %17429
  br label %17633

17448:                                            ; preds = %17429
  br label %17449

17449:                                            ; preds = %17448, %17407
  %17450 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17450, ptr %45, align 4, !tbaa !9
  %17451 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17451, ptr %46, align 4, !tbaa !9
  %17452 = load ptr, ptr %5, align 8, !tbaa !5
  %17453 = load i32, ptr %45, align 4, !tbaa !9
  %17454 = load i32, ptr %46, align 4, !tbaa !9
  %17455 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %17452, i32 noundef %17453, i32 noundef %17454)
  store i32 %17455, ptr %45, align 4, !tbaa !9
  %17456 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17456, ptr %6, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %17457 = load i32, ptr %45, align 4, !tbaa !9
  %17458 = load i32, ptr %46, align 4, !tbaa !9
  %17459 = icmp eq i32 %17457, %17458
  %17460 = zext i1 %17459 to i32
  store i32 %17460, ptr %45, align 4, !tbaa !9
  %17461 = load i32, ptr %45, align 4, !tbaa !9
  %17462 = icmp ne i32 %17461, 0
  br i1 %17462, label %17463, label %17470

17463:                                            ; preds = %17449
  %17464 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17464, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17465 = load ptr, ptr %5, align 8, !tbaa !5
  %17466 = getelementptr inbounds %struct.w2c_hermes, ptr %17465, i32 0, i32 6
  %17467 = load i32, ptr %45, align 4, !tbaa !9
  %17468 = zext i32 %17467 to i64
  %17469 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17466, i64 noundef %17468, i32 noundef %17469)
  br label %18312

17470:                                            ; preds = %17449
  %17471 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17471, ptr %45, align 4, !tbaa !9
  %17472 = load i32, ptr %45, align 4, !tbaa !9
  %17473 = zext i32 %17472 to i64
  store i64 %17473, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %17474 = load i64, ptr %55, align 8, !tbaa !11
  %17475 = load i64, ptr %54, align 8, !tbaa !11
  %17476 = or i64 %17475, %17474
  store i64 %17476, ptr %54, align 8, !tbaa !11
  %17477 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17477, ptr %39, align 8, !tbaa !11
  %17478 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17478, ptr %45, align 4, !tbaa !9
  %17479 = load ptr, ptr %5, align 8, !tbaa !5
  %17480 = getelementptr inbounds %struct.w2c_hermes, ptr %17479, i32 0, i32 6
  %17481 = load i32, ptr %45, align 4, !tbaa !9
  %17482 = zext i32 %17481 to i64
  %17483 = add i64 %17482, 4
  %17484 = call i32 @i32_load(ptr noundef %17480, i64 noundef %17483)
  store i32 %17484, ptr %45, align 4, !tbaa !9
  %17485 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17485, ptr %6, align 4, !tbaa !9
  %17486 = load ptr, ptr %5, align 8, !tbaa !5
  %17487 = getelementptr inbounds %struct.w2c_hermes, ptr %17486, i32 0, i32 6
  %17488 = load i32, ptr %45, align 4, !tbaa !9
  %17489 = zext i32 %17488 to i64
  %17490 = add i64 %17489, 164
  %17491 = call i32 @i32_load(ptr noundef %17487, i64 noundef %17490)
  store i32 %17491, ptr %45, align 4, !tbaa !9
  %17492 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17492, ptr %7, align 4, !tbaa !9
  %17493 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17493, ptr %46, align 4, !tbaa !9
  %17494 = load ptr, ptr %5, align 8, !tbaa !5
  %17495 = getelementptr inbounds %struct.w2c_hermes, ptr %17494, i32 0, i32 6
  %17496 = load i32, ptr %46, align 4, !tbaa !9
  %17497 = zext i32 %17496 to i64
  %17498 = add i64 %17497, 168
  %17499 = call i32 @i32_load(ptr noundef %17495, i64 noundef %17498)
  store i32 %17499, ptr %46, align 4, !tbaa !9
  %17500 = load i32, ptr %45, align 4, !tbaa !9
  %17501 = load i32, ptr %46, align 4, !tbaa !9
  %17502 = icmp ult i32 %17500, %17501
  %17503 = zext i1 %17502 to i32
  store i32 %17503, ptr %45, align 4, !tbaa !9
  %17504 = load i32, ptr %45, align 4, !tbaa !9
  %17505 = icmp ne i32 %17504, 0
  br i1 %17505, label %17506, label %17525

17506:                                            ; preds = %17470
  %17507 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17507, ptr %45, align 4, !tbaa !9
  %17508 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17508, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %17509 = load i32, ptr %47, align 4, !tbaa !9
  %17510 = load i32, ptr %46, align 4, !tbaa !9
  %17511 = add i32 %17510, %17509
  store i32 %17511, ptr %46, align 4, !tbaa !9
  %17512 = load ptr, ptr %5, align 8, !tbaa !5
  %17513 = getelementptr inbounds %struct.w2c_hermes, ptr %17512, i32 0, i32 6
  %17514 = load i32, ptr %45, align 4, !tbaa !9
  %17515 = zext i32 %17514 to i64
  %17516 = add i64 %17515, 164
  %17517 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17513, i64 noundef %17516, i32 noundef %17517)
  %17518 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17518, ptr %45, align 4, !tbaa !9
  %17519 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17519, ptr %55, align 8, !tbaa !11
  %17520 = load ptr, ptr %5, align 8, !tbaa !5
  %17521 = getelementptr inbounds %struct.w2c_hermes, ptr %17520, i32 0, i32 6
  %17522 = load i32, ptr %45, align 4, !tbaa !9
  %17523 = zext i32 %17522 to i64
  %17524 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17521, i64 noundef %17523, i64 noundef %17524)
  br label %17533

17525:                                            ; preds = %17470
  %17526 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17526, ptr %45, align 4, !tbaa !9
  %17527 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17527, ptr %55, align 8, !tbaa !11
  %17528 = load ptr, ptr %5, align 8, !tbaa !5
  %17529 = load i32, ptr %45, align 4, !tbaa !9
  %17530 = load i64, ptr %55, align 8, !tbaa !11
  %17531 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %17528, i32 noundef %17529, i64 noundef %17530)
  store i32 %17531, ptr %45, align 4, !tbaa !9
  %17532 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17532, ptr %7, align 4, !tbaa !9
  br label %17533

17533:                                            ; preds = %17525, %17506
  %17534 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17534, ptr %45, align 4, !tbaa !9
  %17535 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17535, ptr %46, align 4, !tbaa !9
  %17536 = load ptr, ptr %5, align 8, !tbaa !5
  %17537 = load i32, ptr %45, align 4, !tbaa !9
  %17538 = load i32, ptr %46, align 4, !tbaa !9
  %17539 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %17536, i32 noundef %17537, i32 noundef %17538)
  store i32 %17539, ptr %45, align 4, !tbaa !9
  %17540 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17540, ptr %6, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %17541 = load i32, ptr %45, align 4, !tbaa !9
  %17542 = load i32, ptr %46, align 4, !tbaa !9
  %17543 = icmp eq i32 %17541, %17542
  %17544 = zext i1 %17543 to i32
  store i32 %17544, ptr %45, align 4, !tbaa !9
  %17545 = load i32, ptr %45, align 4, !tbaa !9
  %17546 = icmp ne i32 %17545, 0
  br i1 %17546, label %17547, label %17554

17547:                                            ; preds = %17533
  %17548 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17548, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17549 = load ptr, ptr %5, align 8, !tbaa !5
  %17550 = getelementptr inbounds %struct.w2c_hermes, ptr %17549, i32 0, i32 6
  %17551 = load i32, ptr %45, align 4, !tbaa !9
  %17552 = zext i32 %17551 to i64
  %17553 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17550, i64 noundef %17552, i32 noundef %17553)
  br label %18312

17554:                                            ; preds = %17533
  %17555 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17555, ptr %45, align 4, !tbaa !9
  %17556 = load i32, ptr %45, align 4, !tbaa !9
  %17557 = zext i32 %17556 to i64
  store i64 %17557, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %17558 = load i64, ptr %55, align 8, !tbaa !11
  %17559 = load i64, ptr %54, align 8, !tbaa !11
  %17560 = or i64 %17559, %17558
  store i64 %17560, ptr %54, align 8, !tbaa !11
  %17561 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %17561, ptr %39, align 8, !tbaa !11
  %17562 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17562, ptr %45, align 4, !tbaa !9
  %17563 = load ptr, ptr %5, align 8, !tbaa !5
  %17564 = getelementptr inbounds %struct.w2c_hermes, ptr %17563, i32 0, i32 6
  %17565 = load i32, ptr %45, align 4, !tbaa !9
  %17566 = zext i32 %17565 to i64
  %17567 = add i64 %17566, 4
  %17568 = call i32 @i32_load(ptr noundef %17564, i64 noundef %17567)
  store i32 %17568, ptr %45, align 4, !tbaa !9
  %17569 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17569, ptr %8, align 4, !tbaa !9
  %17570 = load ptr, ptr %5, align 8, !tbaa !5
  %17571 = getelementptr inbounds %struct.w2c_hermes, ptr %17570, i32 0, i32 6
  %17572 = load i32, ptr %45, align 4, !tbaa !9
  %17573 = zext i32 %17572 to i64
  %17574 = add i64 %17573, 164
  %17575 = call i32 @i32_load(ptr noundef %17571, i64 noundef %17574)
  store i32 %17575, ptr %45, align 4, !tbaa !9
  %17576 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17576, ptr %6, align 4, !tbaa !9
  %17577 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17577, ptr %46, align 4, !tbaa !9
  %17578 = load ptr, ptr %5, align 8, !tbaa !5
  %17579 = getelementptr inbounds %struct.w2c_hermes, ptr %17578, i32 0, i32 6
  %17580 = load i32, ptr %46, align 4, !tbaa !9
  %17581 = zext i32 %17580 to i64
  %17582 = add i64 %17581, 168
  %17583 = call i32 @i32_load(ptr noundef %17579, i64 noundef %17582)
  store i32 %17583, ptr %46, align 4, !tbaa !9
  %17584 = load i32, ptr %45, align 4, !tbaa !9
  %17585 = load i32, ptr %46, align 4, !tbaa !9
  %17586 = icmp ult i32 %17584, %17585
  %17587 = zext i1 %17586 to i32
  store i32 %17587, ptr %45, align 4, !tbaa !9
  %17588 = load i32, ptr %45, align 4, !tbaa !9
  %17589 = icmp ne i32 %17588, 0
  br i1 %17589, label %17590, label %17618

17590:                                            ; preds = %17554
  %17591 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17591, ptr %45, align 4, !tbaa !9
  %17592 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17592, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %17593 = load i32, ptr %47, align 4, !tbaa !9
  %17594 = load i32, ptr %46, align 4, !tbaa !9
  %17595 = add i32 %17594, %17593
  store i32 %17595, ptr %46, align 4, !tbaa !9
  %17596 = load ptr, ptr %5, align 8, !tbaa !5
  %17597 = getelementptr inbounds %struct.w2c_hermes, ptr %17596, i32 0, i32 6
  %17598 = load i32, ptr %45, align 4, !tbaa !9
  %17599 = zext i32 %17598 to i64
  %17600 = add i64 %17599, 164
  %17601 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17597, i64 noundef %17600, i32 noundef %17601)
  %17602 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17602, ptr %45, align 4, !tbaa !9
  %17603 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17603, ptr %55, align 8, !tbaa !11
  %17604 = load ptr, ptr %5, align 8, !tbaa !5
  %17605 = getelementptr inbounds %struct.w2c_hermes, ptr %17604, i32 0, i32 6
  %17606 = load i32, ptr %45, align 4, !tbaa !9
  %17607 = zext i32 %17606 to i64
  %17608 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17605, i64 noundef %17607, i64 noundef %17608)
  %17609 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17609, ptr %45, align 4, !tbaa !9
  %17610 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17610, ptr %46, align 4, !tbaa !9
  %17611 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17611, ptr %47, align 4, !tbaa !9
  %17612 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17612, ptr %48, align 4, !tbaa !9
  %17613 = load ptr, ptr %5, align 8, !tbaa !5
  %17614 = load i32, ptr %45, align 4, !tbaa !9
  %17615 = load i32, ptr %46, align 4, !tbaa !9
  %17616 = load i32, ptr %47, align 4, !tbaa !9
  %17617 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3A0x3Aconcat0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x29(ptr noundef %17613, i32 noundef %17614, i32 noundef %17615, i32 noundef %17616, i32 noundef %17617)
  br label %18312

17618:                                            ; preds = %17554
  %17619 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17619, ptr %45, align 4, !tbaa !9
  %17620 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17620, ptr %46, align 4, !tbaa !9
  %17621 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17621, ptr %47, align 4, !tbaa !9
  %17622 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17622, ptr %48, align 4, !tbaa !9
  %17623 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17623, ptr %58, align 8, !tbaa !11
  %17624 = load ptr, ptr %5, align 8, !tbaa !5
  %17625 = load i32, ptr %48, align 4, !tbaa !9
  %17626 = load i64, ptr %58, align 8, !tbaa !11
  %17627 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %17624, i32 noundef %17625, i64 noundef %17626)
  store i32 %17627, ptr %48, align 4, !tbaa !9
  %17628 = load ptr, ptr %5, align 8, !tbaa !5
  %17629 = load i32, ptr %45, align 4, !tbaa !9
  %17630 = load i32, ptr %46, align 4, !tbaa !9
  %17631 = load i32, ptr %47, align 4, !tbaa !9
  %17632 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3A0x3Aconcat0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x29(ptr noundef %17628, i32 noundef %17629, i32 noundef %17630, i32 noundef %17631, i32 noundef %17632)
  br label %18312

17633:                                            ; preds = %17447
  %17634 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %17634, ptr %54, align 8, !tbaa !11
  store i64 4294967294, ptr %55, align 8, !tbaa !11
  %17635 = load i64, ptr %54, align 8, !tbaa !11
  %17636 = load i64, ptr %55, align 8, !tbaa !11
  %17637 = icmp ne i64 %17635, %17636
  %17638 = zext i1 %17637 to i32
  store i32 %17638, ptr %45, align 4, !tbaa !9
  %17639 = load i32, ptr %45, align 4, !tbaa !9
  %17640 = icmp ne i32 %17639, 0
  br i1 %17640, label %17641, label %17751

17641:                                            ; preds = %17633
  %17642 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17642, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %17643 = load i32, ptr %46, align 4, !tbaa !9
  %17644 = load i32, ptr %45, align 4, !tbaa !9
  %17645 = add i32 %17644, %17643
  store i32 %17645, ptr %45, align 4, !tbaa !9
  %17646 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17646, ptr %46, align 4, !tbaa !9
  %17647 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17647, ptr %47, align 4, !tbaa !9
  %17648 = load ptr, ptr %5, align 8, !tbaa !5
  %17649 = load i32, ptr %45, align 4, !tbaa !9
  %17650 = load i32, ptr %46, align 4, !tbaa !9
  %17651 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %17648, i32 noundef %17649, i32 noundef %17650, i32 noundef %17651)
  %17652 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17652, ptr %45, align 4, !tbaa !9
  %17653 = load ptr, ptr %5, align 8, !tbaa !5
  %17654 = getelementptr inbounds %struct.w2c_hermes, ptr %17653, i32 0, i32 6
  %17655 = load i32, ptr %45, align 4, !tbaa !9
  %17656 = zext i32 %17655 to i64
  %17657 = add i64 %17656, 40
  %17658 = call i32 @i32_load(ptr noundef %17654, i64 noundef %17657)
  store i32 %17658, ptr %45, align 4, !tbaa !9
  %17659 = load i32, ptr %45, align 4, !tbaa !9
  %17660 = icmp ne i32 %17659, 0
  %17661 = xor i1 %17660, true
  %17662 = zext i1 %17661 to i32
  store i32 %17662, ptr %45, align 4, !tbaa !9
  %17663 = load i32, ptr %45, align 4, !tbaa !9
  %17664 = icmp ne i32 %17663, 0
  br i1 %17664, label %17665, label %17672

17665:                                            ; preds = %17641
  %17666 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17666, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17667 = load ptr, ptr %5, align 8, !tbaa !5
  %17668 = getelementptr inbounds %struct.w2c_hermes, ptr %17667, i32 0, i32 6
  %17669 = load i32, ptr %45, align 4, !tbaa !9
  %17670 = zext i32 %17669 to i64
  %17671 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17668, i64 noundef %17670, i32 noundef %17671)
  br label %18312

17672:                                            ; preds = %17641
  %17673 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17673, ptr %45, align 4, !tbaa !9
  %17674 = load ptr, ptr %5, align 8, !tbaa !5
  %17675 = getelementptr inbounds %struct.w2c_hermes, ptr %17674, i32 0, i32 6
  %17676 = load i32, ptr %45, align 4, !tbaa !9
  %17677 = zext i32 %17676 to i64
  %17678 = add i64 %17677, 48
  %17679 = call double @f64_load(ptr noundef %17675, i64 noundef %17678)
  store double %17679, ptr %60, align 8, !tbaa !13
  %17680 = load double, ptr %60, align 8, !tbaa !13
  store double %17680, ptr %44, align 8, !tbaa !13
  %17681 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17681, ptr %45, align 4, !tbaa !9
  %17682 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17682, ptr %46, align 4, !tbaa !9
  %17683 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17683, ptr %47, align 4, !tbaa !9
  %17684 = load ptr, ptr %5, align 8, !tbaa !5
  %17685 = load i32, ptr %45, align 4, !tbaa !9
  %17686 = load i32, ptr %46, align 4, !tbaa !9
  %17687 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %17684, i32 noundef %17685, i32 noundef %17686, i32 noundef %17687)
  %17688 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17688, ptr %45, align 4, !tbaa !9
  %17689 = load ptr, ptr %5, align 8, !tbaa !5
  %17690 = getelementptr inbounds %struct.w2c_hermes, ptr %17689, i32 0, i32 6
  %17691 = load i32, ptr %45, align 4, !tbaa !9
  %17692 = zext i32 %17691 to i64
  %17693 = call i32 @i32_load(ptr noundef %17690, i64 noundef %17692)
  store i32 %17693, ptr %45, align 4, !tbaa !9
  %17694 = load i32, ptr %45, align 4, !tbaa !9
  %17695 = icmp ne i32 %17694, 0
  %17696 = xor i1 %17695, true
  %17697 = zext i1 %17696 to i32
  store i32 %17697, ptr %45, align 4, !tbaa !9
  %17698 = load i32, ptr %45, align 4, !tbaa !9
  %17699 = icmp ne i32 %17698, 0
  br i1 %17699, label %17700, label %17707

17700:                                            ; preds = %17672
  %17701 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17701, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17702 = load ptr, ptr %5, align 8, !tbaa !5
  %17703 = getelementptr inbounds %struct.w2c_hermes, ptr %17702, i32 0, i32 6
  %17704 = load i32, ptr %45, align 4, !tbaa !9
  %17705 = zext i32 %17704 to i64
  %17706 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17703, i64 noundef %17705, i32 noundef %17706)
  br label %18312

17707:                                            ; preds = %17672
  %17708 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17708, ptr %45, align 4, !tbaa !9
  %17709 = load ptr, ptr %5, align 8, !tbaa !5
  %17710 = getelementptr inbounds %struct.w2c_hermes, ptr %17709, i32 0, i32 6
  %17711 = load i32, ptr %45, align 4, !tbaa !9
  %17712 = zext i32 %17711 to i64
  %17713 = add i64 %17712, 8
  %17714 = call double @f64_load(ptr noundef %17710, i64 noundef %17713)
  store double %17714, ptr %60, align 8, !tbaa !13
  %17715 = load double, ptr %60, align 8, !tbaa !13
  store double %17715, ptr %43, align 8, !tbaa !13
  %17716 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17716, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %17717 = load ptr, ptr %5, align 8, !tbaa !5
  %17718 = getelementptr inbounds %struct.w2c_hermes, ptr %17717, i32 0, i32 6
  %17719 = load i32, ptr %45, align 4, !tbaa !9
  %17720 = zext i32 %17719 to i64
  %17721 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17718, i64 noundef %17720, i32 noundef %17721)
  %17722 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17722, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %17723 = load double, ptr %44, align 8, !tbaa !13
  store double %17723, ptr %62, align 8, !tbaa !13
  %17724 = load double, ptr %43, align 8, !tbaa !13
  store double %17724, ptr %63, align 8, !tbaa !13
  %17725 = load double, ptr %63, align 8, !tbaa !13
  %17726 = load double, ptr %62, align 8, !tbaa !13
  %17727 = fadd double %17726, %17725
  store double %17727, ptr %62, align 8, !tbaa !13
  %17728 = load double, ptr %62, align 8, !tbaa !13
  store double %17728, ptr %43, align 8, !tbaa !13
  %17729 = load double, ptr %62, align 8, !tbaa !13
  %17730 = call i64 @i64_reinterpret_f64(double noundef %17729)
  store i64 %17730, ptr %56, align 8, !tbaa !11
  %17731 = load double, ptr %43, align 8, !tbaa !13
  store double %17731, ptr %63, align 8, !tbaa !13
  %17732 = load double, ptr %43, align 8, !tbaa !13
  store double %17732, ptr %64, align 8, !tbaa !13
  %17733 = load double, ptr %63, align 8, !tbaa !13
  %17734 = load double, ptr %64, align 8, !tbaa !13
  %17735 = fcmp une double %17733, %17734
  %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 %17741

17739:                                            ; preds = %17707
  %17740 = load i64, ptr %55, align 8, !tbaa !11
  br label %17743

17741:                                            ; preds = %17707
  %17742 = load i64, ptr %56, align 8, !tbaa !11
  br label %17743

17743:                                            ; preds = %17741, %17739
  %17744 = phi i64 [ %17740, %17739 ], [ %17742, %17741 ]
  store i64 %17744, ptr %55, align 8, !tbaa !11
  %17745 = load ptr, ptr %5, align 8, !tbaa !5
  %17746 = getelementptr inbounds %struct.w2c_hermes, ptr %17745, i32 0, i32 6
  %17747 = load i32, ptr %45, align 4, !tbaa !9
  %17748 = zext i32 %17747 to i64
  %17749 = add i64 %17748, 8
  %17750 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17746, i64 noundef %17749, i64 noundef %17750)
  br label %18312

17751:                                            ; preds = %17633
  %17752 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %17752, ptr %54, align 8, !tbaa !11
  store i64 4294967294, ptr %55, align 8, !tbaa !11
  %17753 = load i64, ptr %54, align 8, !tbaa !11
  %17754 = load i64, ptr %55, align 8, !tbaa !11
  %17755 = icmp ne i64 %17753, %17754
  %17756 = zext i1 %17755 to i32
  store i32 %17756, ptr %45, align 4, !tbaa !9
  %17757 = load i32, ptr %45, align 4, !tbaa !9
  %17758 = icmp ne i32 %17757, 0
  br i1 %17758, label %17759, label %17834

17759:                                            ; preds = %17751
  %17760 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17760, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17761 = load ptr, ptr %5, align 8, !tbaa !5
  %17762 = getelementptr inbounds %struct.w2c_hermes, ptr %17761, i32 0, i32 6
  %17763 = load i32, ptr %45, align 4, !tbaa !9
  %17764 = zext i32 %17763 to i64
  %17765 = add i64 %17764, 72
  %17766 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17762, i64 noundef %17765, i32 noundef %17766)
  %17767 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17767, ptr %45, align 4, !tbaa !9
  store i64 64424509441, ptr %55, align 8, !tbaa !11
  %17768 = load ptr, ptr %5, align 8, !tbaa !5
  %17769 = getelementptr inbounds %struct.w2c_hermes, ptr %17768, i32 0, i32 6
  %17770 = load i32, ptr %45, align 4, !tbaa !9
  %17771 = zext i32 %17770 to i64
  %17772 = add i64 %17771, 64
  %17773 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17769, i64 noundef %17772, i64 noundef %17773)
  %17774 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17774, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %17775 = load ptr, ptr %5, align 8, !tbaa !5
  %17776 = getelementptr inbounds %struct.w2c_hermes, ptr %17775, i32 0, i32 6
  %17777 = load i32, ptr %45, align 4, !tbaa !9
  %17778 = zext i32 %17777 to i64
  %17779 = add i64 %17778, 48
  %17780 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17776, i64 noundef %17779, i32 noundef %17780)
  %17781 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17781, ptr %45, align 4, !tbaa !9
  store i32 61934, ptr %46, align 4, !tbaa !9
  %17782 = load ptr, ptr %5, align 8, !tbaa !5
  %17783 = getelementptr inbounds %struct.w2c_hermes, ptr %17782, i32 0, i32 6
  %17784 = load i32, ptr %45, align 4, !tbaa !9
  %17785 = zext i32 %17784 to i64
  %17786 = add i64 %17785, 40
  %17787 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17783, i64 noundef %17786, i32 noundef %17787)
  %17788 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17788, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %17789 = load ptr, ptr %5, align 8, !tbaa !5
  %17790 = getelementptr inbounds %struct.w2c_hermes, ptr %17789, i32 0, i32 6
  %17791 = load i32, ptr %45, align 4, !tbaa !9
  %17792 = zext i32 %17791 to i64
  %17793 = add i64 %17792, 32
  %17794 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17790, i64 noundef %17793, i32 noundef %17794)
  %17795 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17795, ptr %45, align 4, !tbaa !9
  store i64 42949672961, ptr %55, align 8, !tbaa !11
  %17796 = load ptr, ptr %5, align 8, !tbaa !5
  %17797 = getelementptr inbounds %struct.w2c_hermes, ptr %17796, i32 0, i32 6
  %17798 = load i32, ptr %45, align 4, !tbaa !9
  %17799 = zext i32 %17798 to i64
  %17800 = add i64 %17799, 24
  %17801 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17797, i64 noundef %17800, i64 noundef %17801)
  %17802 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17802, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %17803 = load ptr, ptr %5, align 8, !tbaa !5
  %17804 = getelementptr inbounds %struct.w2c_hermes, ptr %17803, i32 0, i32 6
  %17805 = load i32, ptr %45, align 4, !tbaa !9
  %17806 = zext i32 %17805 to i64
  %17807 = add i64 %17806, 8
  %17808 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17804, i64 noundef %17807, i32 noundef %17808)
  %17809 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17809, ptr %45, align 4, !tbaa !9
  store i32 22121, ptr %46, align 4, !tbaa !9
  %17810 = load ptr, ptr %5, align 8, !tbaa !5
  %17811 = getelementptr inbounds %struct.w2c_hermes, ptr %17810, i32 0, i32 6
  %17812 = load i32, ptr %45, align 4, !tbaa !9
  %17813 = zext i32 %17812 to i64
  %17814 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17811, i64 noundef %17813, i32 noundef %17814)
  %17815 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %17815, ptr %45, align 4, !tbaa !9
  %17816 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17816, ptr %46, align 4, !tbaa !9
  %17817 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17817, ptr %47, align 4, !tbaa !9
  store i32 40, ptr %48, align 4, !tbaa !9
  %17818 = load i32, ptr %48, align 4, !tbaa !9
  %17819 = load i32, ptr %47, align 4, !tbaa !9
  %17820 = add i32 %17819, %17818
  store i32 %17820, ptr %47, align 4, !tbaa !9
  %17821 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17821, ptr %48, align 4, !tbaa !9
  %17822 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %17822, ptr %49, align 4, !tbaa !9
  %17823 = load ptr, ptr %5, align 8, !tbaa !5
  %17824 = load i32, ptr %46, align 4, !tbaa !9
  %17825 = load i32, ptr %47, align 4, !tbaa !9
  %17826 = load i32, ptr %48, align 4, !tbaa !9
  %17827 = load i32, ptr %49, align 4, !tbaa !9
  %17828 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %17823, i32 noundef %17824, i32 noundef %17825, i32 noundef %17826, i32 noundef %17827)
  store i32 %17828, ptr %46, align 4, !tbaa !9
  %17829 = load ptr, ptr %5, align 8, !tbaa !5
  %17830 = getelementptr inbounds %struct.w2c_hermes, ptr %17829, i32 0, i32 6
  %17831 = load i32, ptr %45, align 4, !tbaa !9
  %17832 = zext i32 %17831 to i64
  %17833 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17830, i64 noundef %17832, i32 noundef %17833)
  br label %18312

17834:                                            ; preds = %17751
  %17835 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17835, ptr %45, align 4, !tbaa !9
  %17836 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %17836, ptr %55, align 8, !tbaa !11
  %17837 = load i64, ptr %55, align 8, !tbaa !11
  %17838 = trunc i64 %17837 to i32
  store i32 %17838, ptr %46, align 4, !tbaa !9
  %17839 = load ptr, ptr %5, align 8, !tbaa !5
  %17840 = load i32, ptr %45, align 4, !tbaa !9
  %17841 = load i32, ptr %46, align 4, !tbaa !9
  %17842 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %17839, i32 noundef %17840, i32 noundef %17841)
  store i32 %17842, ptr %45, align 4, !tbaa !9
  %17843 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17843, ptr %14, align 4, !tbaa !9
  %17844 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %17844, ptr %45, align 4, !tbaa !9
  %17845 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %17845, ptr %46, align 4, !tbaa !9
  %17846 = load ptr, ptr %5, align 8, !tbaa !5
  %17847 = getelementptr inbounds %struct.w2c_hermes, ptr %17846, i32 0, i32 6
  %17848 = load i32, ptr %46, align 4, !tbaa !9
  %17849 = zext i32 %17848 to i64
  %17850 = call i32 @i32_load(ptr noundef %17847, i64 noundef %17849)
  store i32 %17850, ptr %46, align 4, !tbaa !9
  %17851 = load ptr, ptr %5, align 8, !tbaa !5
  %17852 = load i32, ptr %45, align 4, !tbaa !9
  %17853 = load i32, ptr %46, align 4, !tbaa !9
  %17854 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %17851, i32 noundef %17852, i32 noundef %17853)
  store i32 %17854, ptr %45, align 4, !tbaa !9
  %17855 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17855, ptr %13, align 4, !tbaa !9
  %17856 = load ptr, ptr %5, align 8, !tbaa !5
  %17857 = getelementptr inbounds %struct.w2c_hermes, ptr %17856, i32 0, i32 3
  %17858 = load i32, ptr %17857, align 8, !tbaa !15
  store i32 %17858, ptr %45, align 4, !tbaa !9
  store i32 112, ptr %46, align 4, !tbaa !9
  %17859 = load i32, ptr %46, align 4, !tbaa !9
  %17860 = load i32, ptr %45, align 4, !tbaa !9
  %17861 = sub i32 %17860, %17859
  store i32 %17861, ptr %45, align 4, !tbaa !9
  %17862 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17862, ptr %16, align 4, !tbaa !9
  %17863 = load i32, ptr %45, align 4, !tbaa !9
  %17864 = load ptr, ptr %5, align 8, !tbaa !5
  %17865 = getelementptr inbounds %struct.w2c_hermes, ptr %17864, i32 0, i32 3
  store i32 %17863, ptr %17865, align 8, !tbaa !15
  %17866 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17866, ptr %45, align 4, !tbaa !9
  %17867 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %17867, ptr %46, align 4, !tbaa !9
  %17868 = load ptr, ptr %5, align 8, !tbaa !5
  %17869 = getelementptr inbounds %struct.w2c_hermes, ptr %17868, i32 0, i32 6
  %17870 = load i32, ptr %46, align 4, !tbaa !9
  %17871 = zext i32 %17870 to i64
  %17872 = call i32 @i32_load(ptr noundef %17869, i64 noundef %17871)
  store i32 %17872, ptr %46, align 4, !tbaa !9
  %17873 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %17873, ptr %6, align 4, !tbaa !9
  %17874 = load ptr, ptr %5, align 8, !tbaa !5
  %17875 = getelementptr inbounds %struct.w2c_hermes, ptr %17874, i32 0, i32 6
  %17876 = load i32, ptr %46, align 4, !tbaa !9
  %17877 = zext i32 %17876 to i64
  %17878 = add i64 %17877, 4
  %17879 = call i32 @i32_load(ptr noundef %17875, i64 noundef %17878)
  store i32 %17879, ptr %46, align 4, !tbaa !9
  %17880 = load ptr, ptr %5, align 8, !tbaa !5
  %17881 = getelementptr inbounds %struct.w2c_hermes, ptr %17880, i32 0, i32 6
  %17882 = load i32, ptr %45, align 4, !tbaa !9
  %17883 = zext i32 %17882 to i64
  %17884 = add i64 %17883, 52
  %17885 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17881, i64 noundef %17884, i32 noundef %17885)
  %17886 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17886, ptr %45, align 4, !tbaa !9
  %17887 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17887, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %17888 = load i32, ptr %47, align 4, !tbaa !9
  %17889 = load i32, ptr %46, align 4, !tbaa !9
  %17890 = add i32 %17889, %17888
  store i32 %17890, ptr %46, align 4, !tbaa !9
  %17891 = load ptr, ptr %5, align 8, !tbaa !5
  %17892 = getelementptr inbounds %struct.w2c_hermes, ptr %17891, i32 0, i32 6
  %17893 = load i32, ptr %45, align 4, !tbaa !9
  %17894 = zext i32 %17893 to i64
  %17895 = add i64 %17894, 48
  %17896 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17892, i64 noundef %17895, i32 noundef %17896)
  %17897 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17897, ptr %45, align 4, !tbaa !9
  %17898 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %17898, ptr %46, align 4, !tbaa !9
  %17899 = load ptr, ptr %5, align 8, !tbaa !5
  %17900 = getelementptr inbounds %struct.w2c_hermes, ptr %17899, i32 0, i32 6
  %17901 = load i32, ptr %46, align 4, !tbaa !9
  %17902 = zext i32 %17901 to i64
  %17903 = call i32 @i32_load(ptr noundef %17900, i64 noundef %17902)
  store i32 %17903, ptr %46, align 4, !tbaa !9
  %17904 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %17904, ptr %6, align 4, !tbaa !9
  %17905 = load ptr, ptr %5, align 8, !tbaa !5
  %17906 = getelementptr inbounds %struct.w2c_hermes, ptr %17905, i32 0, i32 6
  %17907 = load i32, ptr %46, align 4, !tbaa !9
  %17908 = zext i32 %17907 to i64
  %17909 = add i64 %17908, 4
  %17910 = call i32 @i32_load(ptr noundef %17906, i64 noundef %17909)
  store i32 %17910, ptr %46, align 4, !tbaa !9
  %17911 = load ptr, ptr %5, align 8, !tbaa !5
  %17912 = getelementptr inbounds %struct.w2c_hermes, ptr %17911, i32 0, i32 6
  %17913 = load i32, ptr %45, align 4, !tbaa !9
  %17914 = zext i32 %17913 to i64
  %17915 = add i64 %17914, 44
  %17916 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17912, i64 noundef %17915, i32 noundef %17916)
  %17917 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17917, ptr %45, align 4, !tbaa !9
  %17918 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17918, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %17919 = load i32, ptr %47, align 4, !tbaa !9
  %17920 = load i32, ptr %46, align 4, !tbaa !9
  %17921 = add i32 %17920, %17919
  store i32 %17921, ptr %46, align 4, !tbaa !9
  %17922 = load ptr, ptr %5, align 8, !tbaa !5
  %17923 = getelementptr inbounds %struct.w2c_hermes, ptr %17922, i32 0, i32 6
  %17924 = load i32, ptr %45, align 4, !tbaa !9
  %17925 = zext i32 %17924 to i64
  %17926 = add i64 %17925, 40
  %17927 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %17923, i64 noundef %17926, i32 noundef %17927)
  %17928 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17928, ptr %45, align 4, !tbaa !9
  %17929 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17929, ptr %46, align 4, !tbaa !9
  %17930 = load ptr, ptr %5, align 8, !tbaa !5
  %17931 = getelementptr inbounds %struct.w2c_hermes, ptr %17930, i32 0, i32 6
  %17932 = load i32, ptr %46, align 4, !tbaa !9
  %17933 = zext i32 %17932 to i64
  %17934 = add i64 %17933, 48
  %17935 = call i64 @i64_load(ptr noundef %17931, i64 noundef %17934)
  store i64 %17935, ptr %55, align 8, !tbaa !11
  %17936 = load ptr, ptr %5, align 8, !tbaa !5
  %17937 = getelementptr inbounds %struct.w2c_hermes, ptr %17936, i32 0, i32 6
  %17938 = load i32, ptr %45, align 4, !tbaa !9
  %17939 = zext i32 %17938 to i64
  %17940 = add i64 %17939, 32
  %17941 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17937, i64 noundef %17940, i64 noundef %17941)
  %17942 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17942, ptr %45, align 4, !tbaa !9
  %17943 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17943, ptr %46, align 4, !tbaa !9
  %17944 = load ptr, ptr %5, align 8, !tbaa !5
  %17945 = getelementptr inbounds %struct.w2c_hermes, ptr %17944, i32 0, i32 6
  %17946 = load i32, ptr %46, align 4, !tbaa !9
  %17947 = zext i32 %17946 to i64
  %17948 = add i64 %17947, 40
  %17949 = call i64 @i64_load(ptr noundef %17945, i64 noundef %17948)
  store i64 %17949, ptr %55, align 8, !tbaa !11
  %17950 = load ptr, ptr %5, align 8, !tbaa !5
  %17951 = getelementptr inbounds %struct.w2c_hermes, ptr %17950, i32 0, i32 6
  %17952 = load i32, ptr %45, align 4, !tbaa !9
  %17953 = zext i32 %17952 to i64
  %17954 = add i64 %17953, 24
  %17955 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %17951, i64 noundef %17954, i64 noundef %17955)
  %17956 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17956, ptr %45, align 4, !tbaa !9
  %17957 = load ptr, ptr %5, align 8, !tbaa !5
  %17958 = getelementptr inbounds %struct.w2c_hermes, ptr %17957, i32 0, i32 6
  %17959 = load i32, ptr %45, align 4, !tbaa !9
  %17960 = zext i32 %17959 to i64
  %17961 = add i64 %17960, 36
  %17962 = call i32 @i32_load(ptr noundef %17958, i64 noundef %17961)
  store i32 %17962, ptr %45, align 4, !tbaa !9
  %17963 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17963, ptr %7, align 4, !tbaa !9
  %17964 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %17964, ptr %46, align 4, !tbaa !9
  %17965 = load ptr, ptr %5, align 8, !tbaa !5
  %17966 = getelementptr inbounds %struct.w2c_hermes, ptr %17965, i32 0, i32 6
  %17967 = load i32, ptr %46, align 4, !tbaa !9
  %17968 = zext i32 %17967 to i64
  %17969 = add i64 %17968, 28
  %17970 = call i32 @i32_load(ptr noundef %17966, i64 noundef %17969)
  store i32 %17970, ptr %46, align 4, !tbaa !9
  %17971 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %17971, ptr %6, align 4, !tbaa !9
  %17972 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %17972, ptr %47, align 4, !tbaa !9
  %17973 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %17973, ptr %48, align 4, !tbaa !9
  %17974 = load i32, ptr %47, align 4, !tbaa !9
  %17975 = load i32, ptr %48, align 4, !tbaa !9
  %17976 = icmp ult i32 %17974, %17975
  %17977 = zext i1 %17976 to i32
  store i32 %17977, ptr %47, align 4, !tbaa !9
  %17978 = load i32, ptr %47, align 4, !tbaa !9
  %17979 = icmp ne i32 %17978, 0
  br i1 %17979, label %17980, label %17982

17980:                                            ; preds = %17834
  %17981 = load i32, ptr %45, align 4, !tbaa !9
  br label %17984

17982:                                            ; preds = %17834
  %17983 = load i32, ptr %46, align 4, !tbaa !9
  br label %17984

17984:                                            ; preds = %17982, %17980
  %17985 = phi i32 [ %17981, %17980 ], [ %17983, %17982 ]
  store i32 %17985, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %17986 = load i32, ptr %46, align 4, !tbaa !9
  %17987 = load i32, ptr %45, align 4, !tbaa !9
  %17988 = add i32 %17987, %17986
  store i32 %17988, ptr %45, align 4, !tbaa !9
  %17989 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %17989, ptr %12, align 4, !tbaa !9
  store i32 1024, ptr %46, align 4, !tbaa !9
  %17990 = load i32, ptr %45, align 4, !tbaa !9
  %17991 = load i32, ptr %46, align 4, !tbaa !9
  %17992 = icmp ule i32 %17990, %17991
  %17993 = zext i1 %17992 to i32
  store i32 %17993, ptr %45, align 4, !tbaa !9
  %17994 = load i32, ptr %45, align 4, !tbaa !9
  %17995 = icmp ne i32 %17994, 0
  br i1 %17995, label %17996, label %18050

17996:                                            ; preds = %17984
  %17997 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %17997, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %17998 = load i32, ptr %46, align 4, !tbaa !9
  %17999 = and i32 %17998, 31
  %18000 = load i32, ptr %45, align 4, !tbaa !9
  %18001 = shl i32 %18000, %17999
  store i32 %18001, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %18002 = load i32, ptr %46, align 4, !tbaa !9
  %18003 = load i32, ptr %45, align 4, !tbaa !9
  %18004 = add i32 %18003, %18002
  store i32 %18004, ptr %45, align 4, !tbaa !9
  %18005 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18005, ptr %6, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %18006 = load i32, ptr %46, align 4, !tbaa !9
  %18007 = load i32, ptr %45, align 4, !tbaa !9
  %18008 = and i32 %18007, %18006
  store i32 %18008, ptr %45, align 4, !tbaa !9
  %18009 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18009, ptr %8, align 4, !tbaa !9
  %18010 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18010, ptr %46, align 4, !tbaa !9
  store i32 1368, ptr %47, align 4, !tbaa !9
  %18011 = load i32, ptr %47, align 4, !tbaa !9
  %18012 = load i32, ptr %46, align 4, !tbaa !9
  %18013 = add i32 %18012, %18011
  store i32 %18013, ptr %46, align 4, !tbaa !9
  %18014 = load ptr, ptr %5, align 8, !tbaa !5
  %18015 = getelementptr inbounds %struct.w2c_hermes, ptr %18014, i32 0, i32 6
  %18016 = load i32, ptr %46, align 4, !tbaa !9
  %18017 = zext i32 %18016 to i64
  %18018 = call i32 @i32_load(ptr noundef %18015, i64 noundef %18017)
  store i32 %18018, ptr %46, align 4, !tbaa !9
  %18019 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18019, ptr %47, align 4, !tbaa !9
  store i32 1364, ptr %48, align 4, !tbaa !9
  %18020 = load i32, ptr %48, align 4, !tbaa !9
  %18021 = load i32, ptr %47, align 4, !tbaa !9
  %18022 = add i32 %18021, %18020
  store i32 %18022, ptr %47, align 4, !tbaa !9
  %18023 = load ptr, ptr %5, align 8, !tbaa !5
  %18024 = getelementptr inbounds %struct.w2c_hermes, ptr %18023, i32 0, i32 6
  %18025 = load i32, ptr %47, align 4, !tbaa !9
  %18026 = zext i32 %18025 to i64
  %18027 = call i32 @i32_load(ptr noundef %18024, i64 noundef %18026)
  store i32 %18027, ptr %47, align 4, !tbaa !9
  %18028 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %18028, ptr %7, align 4, !tbaa !9
  %18029 = load i32, ptr %47, align 4, !tbaa !9
  %18030 = load i32, ptr %46, align 4, !tbaa !9
  %18031 = sub i32 %18030, %18029
  store i32 %18031, ptr %46, align 4, !tbaa !9
  %18032 = load i32, ptr %45, align 4, !tbaa !9
  %18033 = load i32, ptr %46, align 4, !tbaa !9
  %18034 = icmp ule i32 %18032, %18033
  %18035 = zext i1 %18034 to i32
  store i32 %18035, ptr %45, align 4, !tbaa !9
  %18036 = load i32, ptr %45, align 4, !tbaa !9
  %18037 = icmp ne i32 %18036, 0
  br i1 %18037, label %18038, label %18039

18038:                                            ; preds = %17996
  br label %18094

18039:                                            ; preds = %17996
  %18040 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18040, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %18041 = load i32, ptr %46, align 4, !tbaa !9
  %18042 = load i32, ptr %45, align 4, !tbaa !9
  %18043 = add i32 %18042, %18041
  store i32 %18043, ptr %45, align 4, !tbaa !9
  %18044 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18044, ptr %46, align 4, !tbaa !9
  %18045 = load ptr, ptr %5, align 8, !tbaa !5
  %18046 = load i32, ptr %45, align 4, !tbaa !9
  %18047 = load i32, ptr %46, align 4, !tbaa !9
  %18048 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %18045, i32 noundef %18046, i32 noundef %18047)
  store i32 %18048, ptr %45, align 4, !tbaa !9
  %18049 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18049, ptr %7, align 4, !tbaa !9
  br label %18107

18050:                                            ; preds = %17984
  %18051 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18051, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %18052 = load ptr, ptr %5, align 8, !tbaa !5
  %18053 = getelementptr inbounds %struct.w2c_hermes, ptr %18052, i32 0, i32 6
  %18054 = load i32, ptr %45, align 4, !tbaa !9
  %18055 = zext i32 %18054 to i64
  %18056 = add i64 %18055, 104
  %18057 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18053, i64 noundef %18056, i32 noundef %18057)
  %18058 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18058, ptr %45, align 4, !tbaa !9
  store i64 120259084289, ptr %55, align 8, !tbaa !11
  %18059 = load ptr, ptr %5, align 8, !tbaa !5
  %18060 = getelementptr inbounds %struct.w2c_hermes, ptr %18059, i32 0, i32 6
  %18061 = load i32, ptr %45, align 4, !tbaa !9
  %18062 = zext i32 %18061 to i64
  %18063 = add i64 %18062, 96
  %18064 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18060, i64 noundef %18063, i64 noundef %18064)
  %18065 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18065, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, 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 %45, align 4, !tbaa !9
  %18069 = zext i32 %18068 to i64
  %18070 = add i64 %18069, 80
  %18071 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18067, i64 noundef %18070, i32 noundef %18071)
  %18072 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18072, ptr %45, align 4, !tbaa !9
  store i32 55293, ptr %46, align 4, !tbaa !9
  %18073 = load ptr, ptr %5, align 8, !tbaa !5
  %18074 = getelementptr inbounds %struct.w2c_hermes, ptr %18073, i32 0, i32 6
  %18075 = load i32, ptr %45, align 4, !tbaa !9
  %18076 = zext i32 %18075 to i64
  %18077 = add i64 %18076, 72
  %18078 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18074, i64 noundef %18077, i32 noundef %18078)
  %18079 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18079, ptr %45, align 4, !tbaa !9
  %18080 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18080, ptr %46, align 4, !tbaa !9
  store i32 72, ptr %47, align 4, !tbaa !9
  %18081 = load i32, ptr %47, align 4, !tbaa !9
  %18082 = load i32, ptr %46, align 4, !tbaa !9
  %18083 = add i32 %18082, %18081
  store i32 %18083, ptr %46, align 4, !tbaa !9
  %18084 = load ptr, ptr %5, align 8, !tbaa !5
  %18085 = load i32, ptr %45, align 4, !tbaa !9
  %18086 = load i32, ptr %46, align 4, !tbaa !9
  %18087 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %18084, i32 noundef %18085, i32 noundef %18086)
  store i32 %18087, ptr %45, align 4, !tbaa !9
  %18088 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %18088, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %18089 = load ptr, ptr %5, align 8, !tbaa !5
  %18090 = getelementptr inbounds %struct.w2c_hermes, ptr %18089, i32 0, i32 6
  %18091 = load i32, ptr %45, align 4, !tbaa !9
  %18092 = zext i32 %18091 to i64
  %18093 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18090, i64 noundef %18092, i32 noundef %18093)
  br label %18304

18094:                                            ; preds = %18038
  %18095 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18095, ptr %45, align 4, !tbaa !9
  %18096 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18096, ptr %46, align 4, !tbaa !9
  %18097 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18097, ptr %47, align 4, !tbaa !9
  %18098 = load i32, ptr %47, align 4, !tbaa !9
  %18099 = load i32, ptr %46, align 4, !tbaa !9
  %18100 = add i32 %18099, %18098
  store i32 %18100, ptr %46, align 4, !tbaa !9
  %18101 = load ptr, ptr %5, align 8, !tbaa !5
  %18102 = getelementptr inbounds %struct.w2c_hermes, ptr %18101, i32 0, i32 6
  %18103 = load i32, ptr %45, align 4, !tbaa !9
  %18104 = zext i32 %18103 to i64
  %18105 = add i64 %18104, 1364
  %18106 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18102, i64 noundef %18105, i32 noundef %18106)
  br label %18107

18107:                                            ; preds = %18094, %18039
  %18108 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18108, ptr %45, align 4, !tbaa !9
  %18109 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18109, ptr %46, align 4, !tbaa !9
  %18110 = load ptr, ptr %5, align 8, !tbaa !5
  %18111 = getelementptr inbounds %struct.w2c_hermes, ptr %18110, i32 0, i32 6
  %18112 = load i32, ptr %45, align 4, !tbaa !9
  %18113 = zext i32 %18112 to i64
  %18114 = add i64 %18113, 4
  %18115 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18111, i64 noundef %18114, i32 noundef %18115)
  %18116 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18116, ptr %45, align 4, !tbaa !9
  %18117 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18117, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %18118 = load i32, ptr %47, align 4, !tbaa !9
  %18119 = load i32, ptr %46, align 4, !tbaa !9
  %18120 = and i32 %18119, %18118
  store i32 %18120, ptr %46, align 4, !tbaa !9
  store i32 1291845632, ptr %47, align 4, !tbaa !9
  %18121 = load i32, ptr %47, align 4, !tbaa !9
  %18122 = load i32, ptr %46, align 4, !tbaa !9
  %18123 = or i32 %18122, %18121
  store i32 %18123, ptr %46, align 4, !tbaa !9
  %18124 = load ptr, ptr %5, align 8, !tbaa !5
  %18125 = getelementptr inbounds %struct.w2c_hermes, ptr %18124, i32 0, i32 6
  %18126 = load i32, ptr %45, align 4, !tbaa !9
  %18127 = zext i32 %18126 to i64
  %18128 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18125, i64 noundef %18127, i32 noundef %18128)
  %18129 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18129, ptr %45, align 4, !tbaa !9
  %18130 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18130, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %18131 = load i32, ptr %47, align 4, !tbaa !9
  %18132 = load i32, ptr %46, align 4, !tbaa !9
  %18133 = add i32 %18132, %18131
  store i32 %18133, ptr %46, 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 %45, align 4, !tbaa !9
  %18137 = zext i32 %18136 to i64
  %18138 = add i64 %18137, 76
  %18139 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18135, i64 noundef %18138, i32 noundef %18139)
  %18140 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18140, ptr %45, align 4, !tbaa !9
  %18141 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18141, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18142 = load i32, ptr %47, align 4, !tbaa !9
  %18143 = load i32, ptr %46, align 4, !tbaa !9
  %18144 = add i32 %18143, %18142
  store i32 %18144, ptr %46, align 4, !tbaa !9
  %18145 = load ptr, ptr %5, align 8, !tbaa !5
  %18146 = getelementptr inbounds %struct.w2c_hermes, ptr %18145, i32 0, i32 6
  %18147 = load i32, ptr %45, align 4, !tbaa !9
  %18148 = zext i32 %18147 to i64
  %18149 = add i64 %18148, 72
  %18150 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18146, i64 noundef %18149, i32 noundef %18150)
  %18151 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18151, ptr %45, align 4, !tbaa !9
  %18152 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %18152, ptr %46, align 4, !tbaa !9
  %18153 = load ptr, ptr %5, align 8, !tbaa !5
  %18154 = getelementptr inbounds %struct.w2c_hermes, ptr %18153, i32 0, i32 6
  %18155 = load i32, ptr %46, align 4, !tbaa !9
  %18156 = zext i32 %18155 to i64
  %18157 = call i32 @i32_load(ptr noundef %18154, i64 noundef %18156)
  store i32 %18157, ptr %46, align 4, !tbaa !9
  %18158 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %18158, ptr %6, align 4, !tbaa !9
  %18159 = load ptr, ptr %5, align 8, !tbaa !5
  %18160 = getelementptr inbounds %struct.w2c_hermes, ptr %18159, i32 0, i32 6
  %18161 = load i32, ptr %46, align 4, !tbaa !9
  %18162 = zext i32 %18161 to i64
  %18163 = add i64 %18162, 4
  %18164 = call i32 @i32_load(ptr noundef %18160, i64 noundef %18163)
  store i32 %18164, ptr %46, align 4, !tbaa !9
  %18165 = load ptr, ptr %5, align 8, !tbaa !5
  %18166 = getelementptr inbounds %struct.w2c_hermes, ptr %18165, i32 0, i32 6
  %18167 = load i32, ptr %45, align 4, !tbaa !9
  %18168 = zext i32 %18167 to i64
  %18169 = add i64 %18168, 68
  %18170 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18166, i64 noundef %18169, i32 noundef %18170)
  %18171 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18171, ptr %45, align 4, !tbaa !9
  %18172 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18172, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18173 = load i32, ptr %47, align 4, !tbaa !9
  %18174 = load i32, ptr %46, align 4, !tbaa !9
  %18175 = add i32 %18174, %18173
  store i32 %18175, ptr %46, align 4, !tbaa !9
  %18176 = load ptr, ptr %5, align 8, !tbaa !5
  %18177 = getelementptr inbounds %struct.w2c_hermes, ptr %18176, i32 0, i32 6
  %18178 = load i32, ptr %45, align 4, !tbaa !9
  %18179 = zext i32 %18178 to i64
  %18180 = add i64 %18179, 64
  %18181 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18177, i64 noundef %18180, i32 noundef %18181)
  %18182 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18182, ptr %45, align 4, !tbaa !9
  %18183 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %18183, ptr %46, align 4, !tbaa !9
  %18184 = load ptr, ptr %5, align 8, !tbaa !5
  %18185 = getelementptr inbounds %struct.w2c_hermes, ptr %18184, i32 0, i32 6
  %18186 = load i32, ptr %46, align 4, !tbaa !9
  %18187 = zext i32 %18186 to i64
  %18188 = call i32 @i32_load(ptr noundef %18185, i64 noundef %18187)
  store i32 %18188, ptr %46, align 4, !tbaa !9
  %18189 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %18189, ptr %6, align 4, !tbaa !9
  %18190 = load ptr, ptr %5, align 8, !tbaa !5
  %18191 = getelementptr inbounds %struct.w2c_hermes, ptr %18190, i32 0, i32 6
  %18192 = load i32, ptr %46, align 4, !tbaa !9
  %18193 = zext i32 %18192 to i64
  %18194 = add i64 %18193, 4
  %18195 = call i32 @i32_load(ptr noundef %18191, i64 noundef %18194)
  store i32 %18195, ptr %46, align 4, !tbaa !9
  %18196 = load ptr, ptr %5, align 8, !tbaa !5
  %18197 = getelementptr inbounds %struct.w2c_hermes, ptr %18196, i32 0, i32 6
  %18198 = load i32, ptr %45, align 4, !tbaa !9
  %18199 = zext i32 %18198 to i64
  %18200 = add i64 %18199, 60
  %18201 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18197, i64 noundef %18200, i32 noundef %18201)
  %18202 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18202, ptr %45, align 4, !tbaa !9
  %18203 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18203, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18204 = load i32, ptr %47, align 4, !tbaa !9
  %18205 = load i32, ptr %46, align 4, !tbaa !9
  %18206 = add i32 %18205, %18204
  store i32 %18206, ptr %46, align 4, !tbaa !9
  %18207 = load ptr, ptr %5, align 8, !tbaa !5
  %18208 = getelementptr inbounds %struct.w2c_hermes, ptr %18207, i32 0, i32 6
  %18209 = load i32, ptr %45, align 4, !tbaa !9
  %18210 = zext i32 %18209 to i64
  %18211 = add i64 %18210, 56
  %18212 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18208, i64 noundef %18211, i32 noundef %18212)
  %18213 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18213, ptr %45, align 4, !tbaa !9
  %18214 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18214, ptr %46, align 4, !tbaa !9
  %18215 = load ptr, ptr %5, align 8, !tbaa !5
  %18216 = getelementptr inbounds %struct.w2c_hermes, ptr %18215, i32 0, i32 6
  %18217 = load i32, ptr %46, align 4, !tbaa !9
  %18218 = zext i32 %18217 to i64
  %18219 = add i64 %18218, 72
  %18220 = call i64 @i64_load(ptr noundef %18216, i64 noundef %18219)
  store i64 %18220, ptr %55, align 8, !tbaa !11
  %18221 = load ptr, ptr %5, align 8, !tbaa !5
  %18222 = getelementptr inbounds %struct.w2c_hermes, ptr %18221, i32 0, i32 6
  %18223 = load i32, ptr %45, align 4, !tbaa !9
  %18224 = zext i32 %18223 to i64
  %18225 = add i64 %18224, 16
  %18226 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18222, i64 noundef %18225, i64 noundef %18226)
  %18227 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18227, ptr %45, align 4, !tbaa !9
  %18228 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18228, ptr %46, align 4, !tbaa !9
  %18229 = load ptr, ptr %5, align 8, !tbaa !5
  %18230 = getelementptr inbounds %struct.w2c_hermes, ptr %18229, i32 0, i32 6
  %18231 = load i32, ptr %46, align 4, !tbaa !9
  %18232 = zext i32 %18231 to i64
  %18233 = add i64 %18232, 64
  %18234 = call i64 @i64_load(ptr noundef %18230, i64 noundef %18233)
  store i64 %18234, ptr %55, align 8, !tbaa !11
  %18235 = load ptr, ptr %5, align 8, !tbaa !5
  %18236 = getelementptr inbounds %struct.w2c_hermes, ptr %18235, i32 0, i32 6
  %18237 = load i32, ptr %45, align 4, !tbaa !9
  %18238 = zext i32 %18237 to i64
  %18239 = add i64 %18238, 8
  %18240 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18236, i64 noundef %18239, i64 noundef %18240)
  %18241 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18241, ptr %45, align 4, !tbaa !9
  %18242 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18242, ptr %46, align 4, !tbaa !9
  %18243 = load ptr, ptr %5, align 8, !tbaa !5
  %18244 = getelementptr inbounds %struct.w2c_hermes, ptr %18243, i32 0, i32 6
  %18245 = load i32, ptr %46, align 4, !tbaa !9
  %18246 = zext i32 %18245 to i64
  %18247 = add i64 %18246, 56
  %18248 = call i64 @i64_load(ptr noundef %18244, i64 noundef %18247)
  store i64 %18248, ptr %55, align 8, !tbaa !11
  %18249 = load ptr, ptr %5, align 8, !tbaa !5
  %18250 = getelementptr inbounds %struct.w2c_hermes, ptr %18249, i32 0, i32 6
  %18251 = load i32, ptr %45, align 4, !tbaa !9
  %18252 = zext i32 %18251 to i64
  %18253 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18250, i64 noundef %18252, i64 noundef %18253)
  %18254 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18254, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %18255 = load i32, ptr %46, align 4, !tbaa !9
  %18256 = load i32, ptr %45, align 4, !tbaa !9
  %18257 = add i32 %18256, %18255
  store i32 %18257, ptr %45, align 4, !tbaa !9
  %18258 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18258, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18259 = load i32, ptr %47, align 4, !tbaa !9
  %18260 = load i32, ptr %46, align 4, !tbaa !9
  %18261 = add i32 %18260, %18259
  store i32 %18261, ptr %46, align 4, !tbaa !9
  %18262 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18262, ptr %47, align 4, !tbaa !9
  %18263 = load ptr, ptr %5, align 8, !tbaa !5
  %18264 = load i32, ptr %45, align 4, !tbaa !9
  %18265 = load i32, ptr %46, align 4, !tbaa !9
  %18266 = load i32, ptr %47, align 4, !tbaa !9
  %18267 = call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Aadd0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef %18263, i32 noundef %18264, i32 noundef %18265, i32 noundef %18266)
  store i32 %18267, ptr %45, align 4, !tbaa !9
  %18268 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18268, ptr %6, align 4, !tbaa !9
  %18269 = load i32, ptr %45, align 4, !tbaa !9
  %18270 = icmp ne i32 %18269, 0
  br i1 %18270, label %18271, label %18284

18271:                                            ; preds = %18107
  %18272 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %18272, ptr %45, align 4, !tbaa !9
  %18273 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18273, ptr %46, align 4, !tbaa !9
  %18274 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18274, ptr %47, align 4, !tbaa !9
  %18275 = load ptr, ptr %5, align 8, !tbaa !5
  %18276 = load i32, ptr %46, align 4, !tbaa !9
  %18277 = load i32, ptr %47, align 4, !tbaa !9
  %18278 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef %18275, i32 noundef %18276, i32 noundef %18277)
  store i32 %18278, ptr %46, align 4, !tbaa !9
  %18279 = load ptr, ptr %5, align 8, !tbaa !5
  %18280 = getelementptr inbounds %struct.w2c_hermes, ptr %18279, i32 0, i32 6
  %18281 = load i32, ptr %45, align 4, !tbaa !9
  %18282 = zext i32 %18281 to i64
  %18283 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18280, i64 noundef %18282, i32 noundef %18283)
  br label %18304

18284:                                            ; preds = %18107
  %18285 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %18285, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %18286 = load ptr, ptr %5, align 8, !tbaa !5
  %18287 = getelementptr inbounds %struct.w2c_hermes, ptr %18286, i32 0, i32 6
  %18288 = load i32, ptr %45, align 4, !tbaa !9
  %18289 = zext i32 %18288 to i64
  %18290 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18287, i64 noundef %18289, i32 noundef %18290)
  %18291 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %18291, ptr %45, align 4, !tbaa !9
  %18292 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18292, ptr %46, align 4, !tbaa !9
  %18293 = load i32, ptr %46, align 4, !tbaa !9
  %18294 = zext i32 %18293 to i64
  store i64 %18294, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %18295 = load i64, ptr %56, align 8, !tbaa !11
  %18296 = load i64, ptr %55, align 8, !tbaa !11
  %18297 = or i64 %18296, %18295
  store i64 %18297, ptr %55, align 8, !tbaa !11
  %18298 = load ptr, ptr %5, align 8, !tbaa !5
  %18299 = getelementptr inbounds %struct.w2c_hermes, ptr %18298, i32 0, i32 6
  %18300 = load i32, ptr %45, align 4, !tbaa !9
  %18301 = zext i32 %18300 to i64
  %18302 = add i64 %18301, 8
  %18303 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18299, i64 noundef %18302, i64 noundef %18303)
  br label %18304

18304:                                            ; preds = %18284, %18271, %18050
  %18305 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18305, ptr %45, align 4, !tbaa !9
  store i32 112, ptr %46, align 4, !tbaa !9
  %18306 = load i32, ptr %46, align 4, !tbaa !9
  %18307 = load i32, ptr %45, align 4, !tbaa !9
  %18308 = add i32 %18307, %18306
  store i32 %18308, ptr %45, align 4, !tbaa !9
  %18309 = load i32, ptr %45, align 4, !tbaa !9
  %18310 = load ptr, ptr %5, align 8, !tbaa !5
  %18311 = getelementptr inbounds %struct.w2c_hermes, ptr %18310, i32 0, i32 3
  store i32 %18309, ptr %18311, align 8, !tbaa !15
  br label %18312

18312:                                            ; preds = %18304, %17759, %17743, %17700, %17665, %17618, %17590, %17547, %17463, %17336, %17240
  %18313 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18313, ptr %45, align 4, !tbaa !9
  store i32 112, ptr %46, align 4, !tbaa !9
  %18314 = load i32, ptr %46, align 4, !tbaa !9
  %18315 = load i32, ptr %45, align 4, !tbaa !9
  %18316 = add i32 %18315, %18314
  store i32 %18316, ptr %45, align 4, !tbaa !9
  %18317 = load i32, ptr %45, align 4, !tbaa !9
  %18318 = load ptr, ptr %5, align 8, !tbaa !5
  %18319 = getelementptr inbounds %struct.w2c_hermes, ptr %18318, i32 0, i32 3
  store i32 %18317, ptr %18319, align 8, !tbaa !15
  %18320 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18320, ptr %45, align 4, !tbaa !9
  %18321 = load ptr, ptr %5, align 8, !tbaa !5
  %18322 = getelementptr inbounds %struct.w2c_hermes, ptr %18321, i32 0, i32 6
  %18323 = load i32, ptr %45, align 4, !tbaa !9
  %18324 = zext i32 %18323 to i64
  %18325 = add i64 %18324, 5808
  %18326 = call i32 @i32_load(ptr noundef %18322, i64 noundef %18325)
  store i32 %18326, ptr %45, align 4, !tbaa !9
  %18327 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18327, ptr %6, align 4, !tbaa !9
  %18328 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18328, ptr %45, align 4, !tbaa !9
  %18329 = load ptr, ptr %5, align 8, !tbaa !5
  %18330 = getelementptr inbounds %struct.w2c_hermes, ptr %18329, i32 0, i32 6
  %18331 = load i32, ptr %45, align 4, !tbaa !9
  %18332 = zext i32 %18331 to i64
  %18333 = add i64 %18332, 304
  %18334 = call i32 @i32_load(ptr noundef %18330, i64 noundef %18333)
  store i32 %18334, ptr %45, align 4, !tbaa !9
  %18335 = load i32, ptr %45, align 4, !tbaa !9
  %18336 = icmp ne i32 %18335, 0
  %18337 = xor i1 %18336, true
  %18338 = zext i1 %18337 to i32
  store i32 %18338, ptr %45, align 4, !tbaa !9
  %18339 = load i32, ptr %45, align 4, !tbaa !9
  %18340 = icmp ne i32 %18339, 0
  br i1 %18340, label %18341, label %18342

18341:                                            ; preds = %18312
  br label %43136

18342:                                            ; preds = %18312
  %18343 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18343, ptr %45, align 4, !tbaa !9
  %18344 = load ptr, ptr %5, align 8, !tbaa !5
  %18345 = getelementptr inbounds %struct.w2c_hermes, ptr %18344, i32 0, i32 6
  %18346 = load i32, ptr %45, align 4, !tbaa !9
  %18347 = zext i32 %18346 to i64
  %18348 = add i64 %18347, 312
  %18349 = call i64 @i64_load(ptr noundef %18345, i64 noundef %18348)
  store i64 %18349, ptr %54, align 8, !tbaa !11
  %18350 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %18350, ptr %39, align 8, !tbaa !11
  %18351 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18351, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %18352 = load ptr, ptr %5, align 8, !tbaa !5
  %18353 = getelementptr inbounds %struct.w2c_hermes, ptr %18352, i32 0, i32 6
  %18354 = load i32, ptr %45, align 4, !tbaa !9
  %18355 = zext i32 %18354 to i64
  %18356 = add i64 %18355, 516
  %18357 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18353, i64 noundef %18356, i32 noundef %18357)
  %18358 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18358, ptr %45, align 4, !tbaa !9
  %18359 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %18359, ptr %46, align 4, !tbaa !9
  %18360 = load ptr, ptr %5, align 8, !tbaa !5
  %18361 = getelementptr inbounds %struct.w2c_hermes, ptr %18360, i32 0, i32 6
  %18362 = load i32, ptr %45, align 4, !tbaa !9
  %18363 = zext i32 %18362 to i64
  %18364 = add i64 %18363, 512
  %18365 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18361, i64 noundef %18364, i32 noundef %18365)
  %18366 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18366, ptr %45, align 4, !tbaa !9
  %18367 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %18367, ptr %46, align 4, !tbaa !9
  %18368 = load ptr, ptr %5, align 8, !tbaa !5
  %18369 = getelementptr inbounds %struct.w2c_hermes, ptr %18368, i32 0, i32 6
  %18370 = load i32, ptr %45, align 4, !tbaa !9
  %18371 = zext i32 %18370 to i64
  %18372 = add i64 %18371, 508
  %18373 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18369, i64 noundef %18372, i32 noundef %18373)
  %18374 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18374, ptr %45, align 4, !tbaa !9
  %18375 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18375, ptr %46, align 4, !tbaa !9
  %18376 = load ptr, ptr %5, align 8, !tbaa !5
  %18377 = getelementptr inbounds %struct.w2c_hermes, ptr %18376, i32 0, i32 6
  %18378 = load i32, ptr %46, align 4, !tbaa !9
  %18379 = zext i32 %18378 to i64
  %18380 = add i64 %18379, 1
  %18381 = call i32 @i32_load8_u(ptr noundef %18377, i64 noundef %18380)
  store i32 %18381, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %18382 = load i32, ptr %47, align 4, !tbaa !9
  %18383 = and i32 %18382, 31
  %18384 = load i32, ptr %46, align 4, !tbaa !9
  %18385 = shl i32 %18384, %18383
  store i32 %18385, ptr %46, align 4, !tbaa !9
  %18386 = load i32, ptr %46, align 4, !tbaa !9
  %18387 = load i32, ptr %45, align 4, !tbaa !9
  %18388 = add i32 %18387, %18386
  store i32 %18388, ptr %45, align 4, !tbaa !9
  %18389 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %18389, ptr %55, align 8, !tbaa !11
  %18390 = load ptr, ptr %5, align 8, !tbaa !5
  %18391 = getelementptr inbounds %struct.w2c_hermes, ptr %18390, i32 0, i32 6
  %18392 = load i32, ptr %45, align 4, !tbaa !9
  %18393 = zext i32 %18392 to i64
  %18394 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18391, i64 noundef %18393, i64 noundef %18394)
  %18395 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18395, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %18396 = load i32, ptr %46, align 4, !tbaa !9
  %18397 = load i32, ptr %45, align 4, !tbaa !9
  %18398 = add i32 %18397, %18396
  store i32 %18398, ptr %45, align 4, !tbaa !9
  %18399 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18399, ptr %6, align 4, !tbaa !9
  br label %2945

18400:                                            ; preds = %3051
  %18401 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18401, ptr %45, align 4, !tbaa !9
  %18402 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18402, ptr %46, align 4, !tbaa !9
  %18403 = load ptr, ptr %5, align 8, !tbaa !5
  %18404 = getelementptr inbounds %struct.w2c_hermes, ptr %18403, i32 0, i32 6
  %18405 = load i32, ptr %46, align 4, !tbaa !9
  %18406 = zext i32 %18405 to i64
  %18407 = add i64 %18406, 2
  %18408 = call i32 @i32_load8_u(ptr noundef %18404, i64 noundef %18407)
  store i32 %18408, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %18409 = load i32, ptr %47, align 4, !tbaa !9
  %18410 = and i32 %18409, 31
  %18411 = load i32, ptr %46, align 4, !tbaa !9
  %18412 = shl i32 %18411, %18410
  store i32 %18412, ptr %46, align 4, !tbaa !9
  %18413 = load i32, ptr %46, align 4, !tbaa !9
  %18414 = load i32, ptr %45, align 4, !tbaa !9
  %18415 = add i32 %18414, %18413
  store i32 %18415, ptr %45, align 4, !tbaa !9
  %18416 = load ptr, ptr %5, align 8, !tbaa !5
  %18417 = getelementptr inbounds %struct.w2c_hermes, ptr %18416, i32 0, i32 6
  %18418 = load i32, ptr %45, align 4, !tbaa !9
  %18419 = zext i32 %18418 to i64
  %18420 = call i64 @i64_load(ptr noundef %18417, i64 noundef %18419)
  store i64 %18420, ptr %54, align 8, !tbaa !11
  %18421 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %18421, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %18422 = load i64, ptr %54, align 8, !tbaa !11
  %18423 = load i64, ptr %55, align 8, !tbaa !11
  %18424 = icmp ule i64 %18422, %18423
  %18425 = zext i1 %18424 to i32
  store i32 %18425, ptr %45, align 4, !tbaa !9
  %18426 = load i32, ptr %45, align 4, !tbaa !9
  %18427 = icmp ne i32 %18426, 0
  br i1 %18427, label %18428, label %18529

18428:                                            ; preds = %18400
  %18429 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %18429, ptr %54, align 8, !tbaa !11
  %18430 = load i64, ptr %54, align 8, !tbaa !11
  %18431 = call double @f64_reinterpret_i64(i64 noundef %18430)
  store double %18431, ptr %60, align 8, !tbaa !13
  %18432 = load double, ptr %60, align 8, !tbaa !13
  store double %18432, ptr %43, align 8, !tbaa !13
  %18433 = load double, ptr %60, align 8, !tbaa !13
  %18434 = call double @wasm_fabs(double noundef %18433)
  store double %18434, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %18435 = load double, ptr %60, align 8, !tbaa !13
  %18436 = load double, ptr %61, align 8, !tbaa !13
  %18437 = fcmp olt double %18435, %18436
  %18438 = zext i1 %18437 to i32
  store i32 %18438, ptr %45, align 4, !tbaa !9
  %18439 = load i32, ptr %45, align 4, !tbaa !9
  %18440 = icmp ne i32 %18439, 0
  br i1 %18440, label %18441, label %18478

18441:                                            ; preds = %18428
  %18442 = load double, ptr %43, align 8, !tbaa !13
  store double %18442, ptr %60, align 8, !tbaa !13
  %18443 = load double, ptr %60, align 8, !tbaa !13
  %18444 = load double, ptr %60, align 8, !tbaa !13
  %18445 = fcmp une double %18443, %18444
  %18446 = xor i1 %18445, true
  %18447 = xor i1 %18446, true
  %18448 = zext i1 %18447 to i32
  %18449 = sext i32 %18448 to i64
  %18450 = call i64 @llvm.expect.i64(i64 %18449, i64 0)
  %18451 = icmp ne i64 %18450, 0
  br i1 %18451, label %18452, label %18454

18452:                                            ; preds = %18441
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

18453:                                            ; No predecessors!
  br label %18476

18454:                                            ; preds = %18441
  %18455 = load double, ptr %60, align 8, !tbaa !13
  %18456 = fcmp ogt double %18455, 0xC1E0000000200000
  br i1 %18456, label %18457, label %18460

18457:                                            ; preds = %18454
  %18458 = load double, ptr %60, align 8, !tbaa !13
  %18459 = fcmp olt double %18458, 0x41E0000000000000
  br label %18460

18460:                                            ; preds = %18457, %18454
  %18461 = phi i1 [ false, %18454 ], [ %18459, %18457 ]
  %18462 = xor i1 %18461, true
  %18463 = xor i1 %18462, true
  %18464 = xor i1 %18463, true
  %18465 = zext i1 %18464 to i32
  %18466 = sext i32 %18465 to i64
  %18467 = call i64 @llvm.expect.i64(i64 %18466, i64 0)
  %18468 = icmp ne i64 %18467, 0
  br i1 %18468, label %18469, label %18471

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

18470:                                            ; No predecessors!
  br label %18474

18471:                                            ; preds = %18460
  %18472 = load double, ptr %60, align 8, !tbaa !13
  %18473 = fptosi double %18472 to i32
  br label %18474

18474:                                            ; preds = %18471, %18470
  %18475 = phi i32 [ 0, %18470 ], [ %18473, %18471 ]
  br label %18476

18476:                                            ; preds = %18474, %18453
  %18477 = phi i32 [ 0, %18453 ], [ %18475, %18474 ]
  store i32 %18477, ptr %45, align 4, !tbaa !9
  br label %18479

18478:                                            ; preds = %18428
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %18479

18479:                                            ; preds = %18478, %18476
  %18480 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18480, ptr %12, align 4, !tbaa !9
  %18481 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18481, ptr %45, align 4, !tbaa !9
  %18482 = load i32, ptr %45, align 4, !tbaa !9
  %18483 = sitofp i32 %18482 to double
  store double %18483, ptr %60, align 8, !tbaa !13
  %18484 = load double, ptr %43, align 8, !tbaa !13
  store double %18484, ptr %61, align 8, !tbaa !13
  %18485 = load double, ptr %60, align 8, !tbaa !13
  %18486 = load double, ptr %61, align 8, !tbaa !13
  %18487 = fcmp une double %18485, %18486
  %18488 = zext i1 %18487 to i32
  store i32 %18488, ptr %45, align 4, !tbaa !9
  %18489 = load i32, ptr %45, align 4, !tbaa !9
  %18490 = icmp ne i32 %18489, 0
  br i1 %18490, label %18491, label %18497

18491:                                            ; preds = %18479
  %18492 = load double, ptr %43, align 8, !tbaa !13
  store double %18492, ptr %60, align 8, !tbaa !13
  %18493 = load ptr, ptr %5, align 8, !tbaa !5
  %18494 = load double, ptr %60, align 8, !tbaa !13
  %18495 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %18493, double noundef %18494)
  store i32 %18495, ptr %45, align 4, !tbaa !9
  %18496 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18496, ptr %12, align 4, !tbaa !9
  br label %18497

18497:                                            ; preds = %18491, %18479
  %18498 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18498, ptr %45, align 4, !tbaa !9
  %18499 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18499, ptr %46, align 4, !tbaa !9
  %18500 = load ptr, ptr %5, align 8, !tbaa !5
  %18501 = getelementptr inbounds %struct.w2c_hermes, ptr %18500, i32 0, i32 6
  %18502 = load i32, ptr %46, align 4, !tbaa !9
  %18503 = zext i32 %18502 to i64
  %18504 = add i64 %18503, 1
  %18505 = call i32 @i32_load8_u(ptr noundef %18501, i64 noundef %18504)
  store i32 %18505, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %18506 = load i32, ptr %47, align 4, !tbaa !9
  %18507 = and i32 %18506, 31
  %18508 = load i32, ptr %46, align 4, !tbaa !9
  %18509 = shl i32 %18508, %18507
  store i32 %18509, ptr %46, align 4, !tbaa !9
  %18510 = load i32, ptr %46, align 4, !tbaa !9
  %18511 = load i32, ptr %45, align 4, !tbaa !9
  %18512 = add i32 %18511, %18510
  store i32 %18512, ptr %45, align 4, !tbaa !9
  %18513 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18513, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %18514 = load i32, ptr %47, align 4, !tbaa !9
  %18515 = load i32, ptr %46, align 4, !tbaa !9
  %18516 = xor i32 %18515, %18514
  store i32 %18516, ptr %46, align 4, !tbaa !9
  %18517 = load i32, ptr %46, align 4, !tbaa !9
  %18518 = sitofp i32 %18517 to double
  store double %18518, ptr %61, align 8, !tbaa !13
  %18519 = load ptr, ptr %5, align 8, !tbaa !5
  %18520 = getelementptr inbounds %struct.w2c_hermes, ptr %18519, i32 0, i32 6
  %18521 = load i32, ptr %45, align 4, !tbaa !9
  %18522 = zext i32 %18521 to i64
  %18523 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %18520, i64 noundef %18522, double noundef %18523)
  %18524 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18524, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %18525 = load i32, ptr %46, align 4, !tbaa !9
  %18526 = load i32, ptr %45, align 4, !tbaa !9
  %18527 = add i32 %18526, %18525
  store i32 %18527, ptr %45, align 4, !tbaa !9
  %18528 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18528, ptr %6, align 4, !tbaa !9
  br label %2945

18529:                                            ; preds = %18400
  %18530 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18530, ptr %45, align 4, !tbaa !9
  %18531 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18531, ptr %46, align 4, !tbaa !9
  %18532 = load ptr, ptr %5, align 8, !tbaa !5
  %18533 = getelementptr inbounds %struct.w2c_hermes, ptr %18532, i32 0, i32 6
  %18534 = load i32, ptr %45, align 4, !tbaa !9
  %18535 = zext i32 %18534 to i64
  %18536 = add i64 %18535, 5808
  %18537 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18533, i64 noundef %18536, i32 noundef %18537)
  %18538 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %18538, ptr %45, align 4, !tbaa !9
  %18539 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18539, ptr %46, align 4, !tbaa !9
  %18540 = load ptr, ptr %5, align 8, !tbaa !5
  %18541 = getelementptr inbounds %struct.w2c_hermes, ptr %18540, i32 0, i32 6
  %18542 = load i32, ptr %46, align 4, !tbaa !9
  %18543 = zext i32 %18542 to i64
  %18544 = add i64 %18543, 2
  %18545 = call i32 @i32_load8_u(ptr noundef %18541, i64 noundef %18544)
  store i32 %18545, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %18546 = load i32, ptr %47, align 4, !tbaa !9
  %18547 = and i32 %18546, 31
  %18548 = load i32, ptr %46, align 4, !tbaa !9
  %18549 = shl i32 %18548, %18547
  store i32 %18549, ptr %46, align 4, !tbaa !9
  %18550 = load i32, ptr %46, align 4, !tbaa !9
  %18551 = load i32, ptr %45, align 4, !tbaa !9
  %18552 = add i32 %18551, %18550
  store i32 %18552, ptr %45, align 4, !tbaa !9
  %18553 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18553, ptr %6, align 4, !tbaa !9
  %18554 = load ptr, ptr %5, align 8, !tbaa !5
  %18555 = getelementptr inbounds %struct.w2c_hermes, ptr %18554, i32 0, i32 3
  %18556 = load i32, ptr %18555, align 8, !tbaa !15
  store i32 %18556, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %18557 = load i32, ptr %46, align 4, !tbaa !9
  %18558 = load i32, ptr %45, align 4, !tbaa !9
  %18559 = sub i32 %18558, %18557
  store i32 %18559, ptr %45, align 4, !tbaa !9
  %18560 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18560, ptr %18, align 4, !tbaa !9
  %18561 = load i32, ptr %45, align 4, !tbaa !9
  %18562 = load ptr, ptr %5, align 8, !tbaa !5
  %18563 = getelementptr inbounds %struct.w2c_hermes, ptr %18562, i32 0, i32 3
  store i32 %18561, ptr %18563, align 8, !tbaa !15
  %18564 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18564, ptr %45, align 4, !tbaa !9
  %18565 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18565, ptr %46, align 4, !tbaa !9
  %18566 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18566, ptr %47, align 4, !tbaa !9
  %18567 = load ptr, ptr %5, align 8, !tbaa !5
  %18568 = load i32, ptr %45, align 4, !tbaa !9
  %18569 = load i32, ptr %46, align 4, !tbaa !9
  %18570 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %18567, i32 noundef %18568, i32 noundef %18569, i32 noundef %18570)
  %18571 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18571, ptr %45, align 4, !tbaa !9
  %18572 = load ptr, ptr %5, align 8, !tbaa !5
  %18573 = getelementptr inbounds %struct.w2c_hermes, ptr %18572, i32 0, i32 6
  %18574 = load i32, ptr %45, align 4, !tbaa !9
  %18575 = zext i32 %18574 to i64
  %18576 = call i32 @i32_load(ptr noundef %18573, i64 noundef %18575)
  store i32 %18576, ptr %45, align 4, !tbaa !9
  %18577 = load i32, ptr %45, align 4, !tbaa !9
  %18578 = icmp ne i32 %18577, 0
  %18579 = xor i1 %18578, true
  %18580 = zext i1 %18579 to i32
  store i32 %18580, ptr %45, align 4, !tbaa !9
  %18581 = load i32, ptr %45, align 4, !tbaa !9
  %18582 = icmp ne i32 %18581, 0
  br i1 %18582, label %18583, label %18591

18583:                                            ; preds = %18529
  %18584 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18584, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %18585 = load ptr, ptr %5, align 8, !tbaa !5
  %18586 = getelementptr inbounds %struct.w2c_hermes, ptr %18585, i32 0, i32 6
  %18587 = load i32, ptr %45, align 4, !tbaa !9
  %18588 = zext i32 %18587 to i64
  %18589 = add i64 %18588, 304
  %18590 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18586, i64 noundef %18589, i32 noundef %18590)
  br label %19323

18591:                                            ; preds = %18529
  %18592 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %18592, ptr %45, align 4, !tbaa !9
  %18593 = load ptr, ptr %5, align 8, !tbaa !5
  %18594 = getelementptr inbounds %struct.w2c_hermes, ptr %18593, i32 0, i32 6
  %18595 = load i32, ptr %45, align 4, !tbaa !9
  %18596 = zext i32 %18595 to i64
  %18597 = add i64 %18596, 8
  %18598 = call i64 @i64_load(ptr noundef %18594, i64 noundef %18597)
  store i64 %18598, ptr %54, align 8, !tbaa !11
  %18599 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %18599, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %18600 = load i64, ptr %54, align 8, !tbaa !11
  %18601 = load i64, ptr %55, align 8, !tbaa !11
  %18602 = and i64 %18601, 63
  %18603 = ashr i64 %18600, %18602
  store i64 %18603, ptr %54, align 8, !tbaa !11
  %18604 = load i64, ptr %54, align 8, !tbaa !11
  %18605 = trunc i64 %18604 to i32
  store i32 %18605, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %18606 = load i32, ptr %45, align 4, !tbaa !9
  %18607 = load i32, ptr %46, align 4, !tbaa !9
  %18608 = icmp ne i32 %18606, %18607
  %18609 = zext i1 %18608 to i32
  store i32 %18609, ptr %45, align 4, !tbaa !9
  %18610 = load i32, ptr %45, align 4, !tbaa !9
  %18611 = icmp ne i32 %18610, 0
  br i1 %18611, label %18612, label %18702

18612:                                            ; preds = %18591
  %18613 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %18613, ptr %54, align 8, !tbaa !11
  %18614 = load i64, ptr %54, align 8, !tbaa !11
  %18615 = call double @f64_reinterpret_i64(i64 noundef %18614)
  store double %18615, ptr %60, align 8, !tbaa !13
  %18616 = load double, ptr %60, align 8, !tbaa !13
  store double %18616, ptr %43, align 8, !tbaa !13
  %18617 = load double, ptr %60, align 8, !tbaa !13
  %18618 = call double @wasm_fabs(double noundef %18617)
  store double %18618, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %18619 = load double, ptr %60, align 8, !tbaa !13
  %18620 = load double, ptr %61, align 8, !tbaa !13
  %18621 = fcmp olt double %18619, %18620
  %18622 = zext i1 %18621 to i32
  store i32 %18622, ptr %45, align 4, !tbaa !9
  %18623 = load i32, ptr %45, align 4, !tbaa !9
  %18624 = icmp ne i32 %18623, 0
  br i1 %18624, label %18625, label %18662

18625:                                            ; preds = %18612
  %18626 = load double, ptr %43, align 8, !tbaa !13
  store double %18626, ptr %60, align 8, !tbaa !13
  %18627 = load double, ptr %60, align 8, !tbaa !13
  %18628 = load double, ptr %60, align 8, !tbaa !13
  %18629 = fcmp une double %18627, %18628
  %18630 = xor i1 %18629, true
  %18631 = xor i1 %18630, true
  %18632 = zext i1 %18631 to i32
  %18633 = sext i32 %18632 to i64
  %18634 = call i64 @llvm.expect.i64(i64 %18633, i64 0)
  %18635 = icmp ne i64 %18634, 0
  br i1 %18635, label %18636, label %18638

18636:                                            ; preds = %18625
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

18637:                                            ; No predecessors!
  br label %18660

18638:                                            ; preds = %18625
  %18639 = load double, ptr %60, align 8, !tbaa !13
  %18640 = fcmp ogt double %18639, 0xC1E0000000200000
  br i1 %18640, label %18641, label %18644

18641:                                            ; preds = %18638
  %18642 = load double, ptr %60, align 8, !tbaa !13
  %18643 = fcmp olt double %18642, 0x41E0000000000000
  br label %18644

18644:                                            ; preds = %18641, %18638
  %18645 = phi i1 [ false, %18638 ], [ %18643, %18641 ]
  %18646 = xor i1 %18645, true
  %18647 = xor i1 %18646, true
  %18648 = xor i1 %18647, true
  %18649 = zext i1 %18648 to i32
  %18650 = sext i32 %18649 to i64
  %18651 = call i64 @llvm.expect.i64(i64 %18650, i64 0)
  %18652 = icmp ne i64 %18651, 0
  br i1 %18652, label %18653, label %18655

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

18654:                                            ; No predecessors!
  br label %18658

18655:                                            ; preds = %18644
  %18656 = load double, ptr %60, align 8, !tbaa !13
  %18657 = fptosi double %18656 to i32
  br label %18658

18658:                                            ; preds = %18655, %18654
  %18659 = phi i32 [ 0, %18654 ], [ %18657, %18655 ]
  br label %18660

18660:                                            ; preds = %18658, %18637
  %18661 = phi i32 [ 0, %18637 ], [ %18659, %18658 ]
  store i32 %18661, ptr %45, align 4, !tbaa !9
  br label %18663

18662:                                            ; preds = %18612
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %18663

18663:                                            ; preds = %18662, %18660
  %18664 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18664, ptr %7, align 4, !tbaa !9
  %18665 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18665, ptr %45, align 4, !tbaa !9
  %18666 = load i32, ptr %45, align 4, !tbaa !9
  %18667 = sitofp i32 %18666 to double
  store double %18667, ptr %60, align 8, !tbaa !13
  %18668 = load double, ptr %43, align 8, !tbaa !13
  store double %18668, ptr %61, align 8, !tbaa !13
  %18669 = load double, ptr %60, align 8, !tbaa !13
  %18670 = load double, ptr %61, align 8, !tbaa !13
  %18671 = fcmp une double %18669, %18670
  %18672 = zext i1 %18671 to i32
  store i32 %18672, ptr %45, align 4, !tbaa !9
  %18673 = load i32, ptr %45, align 4, !tbaa !9
  %18674 = icmp ne i32 %18673, 0
  br i1 %18674, label %18675, label %18681

18675:                                            ; preds = %18663
  %18676 = load double, ptr %43, align 8, !tbaa !13
  store double %18676, ptr %60, align 8, !tbaa !13
  %18677 = load ptr, ptr %5, align 8, !tbaa !5
  %18678 = load double, ptr %60, align 8, !tbaa !13
  %18679 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %18677, double noundef %18678)
  store i32 %18679, ptr %45, align 4, !tbaa !9
  %18680 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18680, ptr %7, align 4, !tbaa !9
  br label %18681

18681:                                            ; preds = %18675, %18663
  %18682 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18682, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %18683 = load ptr, ptr %5, align 8, !tbaa !5
  %18684 = getelementptr inbounds %struct.w2c_hermes, ptr %18683, i32 0, i32 6
  %18685 = load i32, ptr %45, align 4, !tbaa !9
  %18686 = zext i32 %18685 to i64
  %18687 = add i64 %18686, 304
  %18688 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18684, i64 noundef %18687, i32 noundef %18688)
  %18689 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18689, ptr %45, align 4, !tbaa !9
  %18690 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18690, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %18691 = load i32, ptr %47, align 4, !tbaa !9
  %18692 = load i32, ptr %46, align 4, !tbaa !9
  %18693 = xor i32 %18692, %18691
  store i32 %18693, ptr %46, align 4, !tbaa !9
  %18694 = load i32, ptr %46, align 4, !tbaa !9
  %18695 = sitofp i32 %18694 to double
  store double %18695, ptr %61, align 8, !tbaa !13
  %18696 = load ptr, ptr %5, align 8, !tbaa !5
  %18697 = getelementptr inbounds %struct.w2c_hermes, ptr %18696, i32 0, i32 6
  %18698 = load i32, ptr %45, align 4, !tbaa !9
  %18699 = zext i32 %18698 to i64
  %18700 = add i64 %18699, 312
  %18701 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %18697, i64 noundef %18700, double noundef %18701)
  br label %19323

18702:                                            ; preds = %18591
  %18703 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18703, ptr %45, align 4, !tbaa !9
  %18704 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %18704, ptr %55, align 8, !tbaa !11
  %18705 = load i64, ptr %55, align 8, !tbaa !11
  %18706 = trunc i64 %18705 to i32
  store i32 %18706, ptr %46, align 4, !tbaa !9
  %18707 = load ptr, ptr %5, align 8, !tbaa !5
  %18708 = load i32, ptr %45, align 4, !tbaa !9
  %18709 = load i32, ptr %46, align 4, !tbaa !9
  %18710 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %18707, i32 noundef %18708, i32 noundef %18709)
  store i32 %18710, ptr %45, align 4, !tbaa !9
  %18711 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18711, ptr %12, align 4, !tbaa !9
  %18712 = load ptr, ptr %5, align 8, !tbaa !5
  %18713 = getelementptr inbounds %struct.w2c_hermes, ptr %18712, i32 0, i32 3
  %18714 = load i32, ptr %18713, align 8, !tbaa !15
  store i32 %18714, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %18715 = load i32, ptr %46, align 4, !tbaa !9
  %18716 = load i32, ptr %45, align 4, !tbaa !9
  %18717 = sub i32 %18716, %18715
  store i32 %18717, ptr %45, align 4, !tbaa !9
  %18718 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18718, ptr %16, align 4, !tbaa !9
  %18719 = load i32, ptr %45, align 4, !tbaa !9
  %18720 = load ptr, ptr %5, align 8, !tbaa !5
  %18721 = getelementptr inbounds %struct.w2c_hermes, ptr %18720, i32 0, i32 3
  store i32 %18719, ptr %18721, align 8, !tbaa !15
  %18722 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18722, ptr %45, align 4, !tbaa !9
  %18723 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18723, ptr %46, align 4, !tbaa !9
  %18724 = load ptr, ptr %5, align 8, !tbaa !5
  %18725 = getelementptr inbounds %struct.w2c_hermes, ptr %18724, i32 0, i32 6
  %18726 = load i32, ptr %46, align 4, !tbaa !9
  %18727 = zext i32 %18726 to i64
  %18728 = call i32 @i32_load(ptr noundef %18725, i64 noundef %18727)
  store i32 %18728, ptr %46, align 4, !tbaa !9
  %18729 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %18729, ptr %6, align 4, !tbaa !9
  %18730 = load ptr, ptr %5, align 8, !tbaa !5
  %18731 = getelementptr inbounds %struct.w2c_hermes, ptr %18730, i32 0, i32 6
  %18732 = load i32, ptr %46, align 4, !tbaa !9
  %18733 = zext i32 %18732 to i64
  %18734 = add i64 %18733, 4
  %18735 = call i32 @i32_load(ptr noundef %18731, i64 noundef %18734)
  store i32 %18735, ptr %46, align 4, !tbaa !9
  %18736 = load ptr, ptr %5, align 8, !tbaa !5
  %18737 = getelementptr inbounds %struct.w2c_hermes, ptr %18736, i32 0, i32 6
  %18738 = load i32, ptr %45, align 4, !tbaa !9
  %18739 = zext i32 %18738 to i64
  %18740 = add i64 %18739, 28
  %18741 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18737, i64 noundef %18740, i32 noundef %18741)
  %18742 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18742, ptr %45, align 4, !tbaa !9
  %18743 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18743, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18744 = load i32, ptr %47, align 4, !tbaa !9
  %18745 = load i32, ptr %46, align 4, !tbaa !9
  %18746 = add i32 %18745, %18744
  store i32 %18746, ptr %46, align 4, !tbaa !9
  %18747 = load ptr, ptr %5, align 8, !tbaa !5
  %18748 = getelementptr inbounds %struct.w2c_hermes, ptr %18747, i32 0, i32 6
  %18749 = load i32, ptr %45, align 4, !tbaa !9
  %18750 = zext i32 %18749 to i64
  %18751 = add i64 %18750, 24
  %18752 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18748, i64 noundef %18751, i32 noundef %18752)
  %18753 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18753, ptr %45, align 4, !tbaa !9
  %18754 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18754, ptr %46, align 4, !tbaa !9
  %18755 = load ptr, ptr %5, align 8, !tbaa !5
  %18756 = getelementptr inbounds %struct.w2c_hermes, ptr %18755, i32 0, i32 6
  %18757 = load i32, ptr %46, align 4, !tbaa !9
  %18758 = zext i32 %18757 to i64
  %18759 = add i64 %18758, 24
  %18760 = call i64 @i64_load(ptr noundef %18756, i64 noundef %18759)
  store i64 %18760, ptr %55, align 8, !tbaa !11
  %18761 = load ptr, ptr %5, align 8, !tbaa !5
  %18762 = getelementptr inbounds %struct.w2c_hermes, ptr %18761, i32 0, i32 6
  %18763 = load i32, ptr %45, align 4, !tbaa !9
  %18764 = zext i32 %18763 to i64
  %18765 = add i64 %18764, 16
  %18766 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18762, i64 noundef %18765, i64 noundef %18766)
  store i32 1, ptr %45, align 4, !tbaa !9
  %18767 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18767, ptr %46, align 4, !tbaa !9
  %18768 = load ptr, ptr %5, align 8, !tbaa !5
  %18769 = getelementptr inbounds %struct.w2c_hermes, ptr %18768, i32 0, i32 6
  %18770 = load i32, ptr %46, align 4, !tbaa !9
  %18771 = zext i32 %18770 to i64
  %18772 = add i64 %18771, 20
  %18773 = call i32 @i32_load(ptr noundef %18769, i64 noundef %18772)
  store i32 %18773, ptr %46, align 4, !tbaa !9
  %18774 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %18774, ptr %6, align 4, !tbaa !9
  %18775 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18775, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %18776 = load i32, ptr %47, align 4, !tbaa !9
  %18777 = load i32, ptr %48, align 4, !tbaa !9
  %18778 = icmp ule i32 %18776, %18777
  %18779 = zext i1 %18778 to i32
  store i32 %18779, ptr %47, align 4, !tbaa !9
  %18780 = load i32, ptr %47, align 4, !tbaa !9
  %18781 = icmp ne i32 %18780, 0
  br i1 %18781, label %18782, label %18784

18782:                                            ; preds = %18702
  %18783 = load i32, ptr %45, align 4, !tbaa !9
  br label %18786

18784:                                            ; preds = %18702
  %18785 = load i32, ptr %46, align 4, !tbaa !9
  br label %18786

18786:                                            ; preds = %18784, %18782
  %18787 = phi i32 [ %18783, %18782 ], [ %18785, %18784 ]
  store i32 %18787, ptr %45, align 4, !tbaa !9
  %18788 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18788, ptr %8, align 4, !tbaa !9
  store i32 1024, ptr %46, align 4, !tbaa !9
  %18789 = load i32, ptr %45, align 4, !tbaa !9
  %18790 = load i32, ptr %46, align 4, !tbaa !9
  %18791 = icmp ule i32 %18789, %18790
  %18792 = zext i1 %18791 to i32
  store i32 %18792, ptr %45, align 4, !tbaa !9
  %18793 = load i32, ptr %45, align 4, !tbaa !9
  %18794 = icmp ne i32 %18793, 0
  br i1 %18794, label %18795, label %18849

18795:                                            ; preds = %18786
  %18796 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18796, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %18797 = load i32, ptr %46, align 4, !tbaa !9
  %18798 = and i32 %18797, 31
  %18799 = load i32, ptr %45, align 4, !tbaa !9
  %18800 = shl i32 %18799, %18798
  store i32 %18800, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %18801 = load i32, ptr %46, align 4, !tbaa !9
  %18802 = load i32, ptr %45, align 4, !tbaa !9
  %18803 = add i32 %18802, %18801
  store i32 %18803, ptr %45, align 4, !tbaa !9
  %18804 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18804, ptr %6, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %18805 = load i32, ptr %46, align 4, !tbaa !9
  %18806 = load i32, ptr %45, align 4, !tbaa !9
  %18807 = and i32 %18806, %18805
  store i32 %18807, ptr %45, align 4, !tbaa !9
  %18808 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18808, ptr %7, align 4, !tbaa !9
  %18809 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18809, ptr %46, align 4, !tbaa !9
  store i32 1368, ptr %47, align 4, !tbaa !9
  %18810 = load i32, ptr %47, align 4, !tbaa !9
  %18811 = load i32, ptr %46, align 4, !tbaa !9
  %18812 = add i32 %18811, %18810
  store i32 %18812, ptr %46, align 4, !tbaa !9
  %18813 = load ptr, ptr %5, align 8, !tbaa !5
  %18814 = getelementptr inbounds %struct.w2c_hermes, ptr %18813, i32 0, i32 6
  %18815 = load i32, ptr %46, align 4, !tbaa !9
  %18816 = zext i32 %18815 to i64
  %18817 = call i32 @i32_load(ptr noundef %18814, i64 noundef %18816)
  store i32 %18817, ptr %46, align 4, !tbaa !9
  %18818 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18818, ptr %47, align 4, !tbaa !9
  store i32 1364, ptr %48, align 4, !tbaa !9
  %18819 = load i32, ptr %48, align 4, !tbaa !9
  %18820 = load i32, ptr %47, align 4, !tbaa !9
  %18821 = add i32 %18820, %18819
  store i32 %18821, ptr %47, align 4, !tbaa !9
  %18822 = load ptr, ptr %5, align 8, !tbaa !5
  %18823 = getelementptr inbounds %struct.w2c_hermes, ptr %18822, i32 0, i32 6
  %18824 = load i32, ptr %47, align 4, !tbaa !9
  %18825 = zext i32 %18824 to i64
  %18826 = call i32 @i32_load(ptr noundef %18823, i64 noundef %18825)
  store i32 %18826, ptr %47, align 4, !tbaa !9
  %18827 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %18827, ptr %22, align 4, !tbaa !9
  %18828 = load i32, ptr %47, align 4, !tbaa !9
  %18829 = load i32, ptr %46, align 4, !tbaa !9
  %18830 = sub i32 %18829, %18828
  store i32 %18830, ptr %46, align 4, !tbaa !9
  %18831 = load i32, ptr %45, align 4, !tbaa !9
  %18832 = load i32, ptr %46, align 4, !tbaa !9
  %18833 = icmp ule i32 %18831, %18832
  %18834 = zext i1 %18833 to i32
  store i32 %18834, ptr %45, align 4, !tbaa !9
  %18835 = load i32, ptr %45, align 4, !tbaa !9
  %18836 = icmp ne i32 %18835, 0
  br i1 %18836, label %18837, label %18838

18837:                                            ; preds = %18795
  br label %18894

18838:                                            ; preds = %18795
  %18839 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18839, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %18840 = load i32, ptr %46, align 4, !tbaa !9
  %18841 = load i32, ptr %45, align 4, !tbaa !9
  %18842 = add i32 %18841, %18840
  store i32 %18842, ptr %45, align 4, !tbaa !9
  %18843 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18843, ptr %46, align 4, !tbaa !9
  %18844 = load ptr, ptr %5, align 8, !tbaa !5
  %18845 = load i32, ptr %45, align 4, !tbaa !9
  %18846 = load i32, ptr %46, align 4, !tbaa !9
  %18847 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %18844, i32 noundef %18845, i32 noundef %18846)
  store i32 %18847, ptr %45, align 4, !tbaa !9
  %18848 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %18848, ptr %22, align 4, !tbaa !9
  br label %18907

18849:                                            ; preds = %18786
  %18850 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18850, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %18851 = load ptr, ptr %5, align 8, !tbaa !5
  %18852 = getelementptr inbounds %struct.w2c_hermes, ptr %18851, i32 0, i32 6
  %18853 = load i32, ptr %45, align 4, !tbaa !9
  %18854 = zext i32 %18853 to i64
  %18855 = add i64 %18854, 72
  %18856 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18852, i64 noundef %18855, i32 noundef %18856)
  %18857 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18857, ptr %45, align 4, !tbaa !9
  store i64 120259084289, ptr %55, align 8, !tbaa !11
  %18858 = load ptr, ptr %5, align 8, !tbaa !5
  %18859 = getelementptr inbounds %struct.w2c_hermes, ptr %18858, i32 0, i32 6
  %18860 = load i32, ptr %45, align 4, !tbaa !9
  %18861 = zext i32 %18860 to i64
  %18862 = add i64 %18861, 64
  %18863 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18859, i64 noundef %18862, i64 noundef %18863)
  %18864 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18864, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %18865 = load ptr, ptr %5, align 8, !tbaa !5
  %18866 = getelementptr inbounds %struct.w2c_hermes, ptr %18865, i32 0, i32 6
  %18867 = load i32, ptr %45, align 4, !tbaa !9
  %18868 = zext i32 %18867 to i64
  %18869 = add i64 %18868, 48
  %18870 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18866, i64 noundef %18869, i32 noundef %18870)
  %18871 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18871, ptr %45, align 4, !tbaa !9
  store i32 55293, ptr %46, align 4, !tbaa !9
  %18872 = load ptr, ptr %5, align 8, !tbaa !5
  %18873 = getelementptr inbounds %struct.w2c_hermes, ptr %18872, i32 0, i32 6
  %18874 = load i32, ptr %45, align 4, !tbaa !9
  %18875 = zext i32 %18874 to i64
  %18876 = add i64 %18875, 40
  %18877 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18873, i64 noundef %18876, i32 noundef %18877)
  %18878 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18878, ptr %45, align 4, !tbaa !9
  %18879 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18879, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %18880 = load i32, ptr %47, align 4, !tbaa !9
  %18881 = load i32, ptr %46, align 4, !tbaa !9
  %18882 = add i32 %18881, %18880
  store i32 %18882, ptr %46, align 4, !tbaa !9
  %18883 = load ptr, ptr %5, align 8, !tbaa !5
  %18884 = load i32, ptr %45, align 4, !tbaa !9
  %18885 = load i32, ptr %46, align 4, !tbaa !9
  %18886 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %18883, i32 noundef %18884, i32 noundef %18885)
  store i32 %18886, ptr %45, align 4, !tbaa !9
  %18887 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %18887, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %18888 = load ptr, ptr %5, align 8, !tbaa !5
  %18889 = getelementptr inbounds %struct.w2c_hermes, ptr %18888, i32 0, i32 6
  %18890 = load i32, ptr %45, align 4, !tbaa !9
  %18891 = zext i32 %18890 to i64
  %18892 = add i64 %18891, 304
  %18893 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18889, i64 noundef %18892, i32 noundef %18893)
  br label %19315

18894:                                            ; preds = %18837
  %18895 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %18895, ptr %45, align 4, !tbaa !9
  %18896 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %18896, ptr %46, align 4, !tbaa !9
  %18897 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %18897, ptr %47, align 4, !tbaa !9
  %18898 = load i32, ptr %47, align 4, !tbaa !9
  %18899 = load i32, ptr %46, align 4, !tbaa !9
  %18900 = add i32 %18899, %18898
  store i32 %18900, ptr %46, align 4, !tbaa !9
  %18901 = load ptr, ptr %5, align 8, !tbaa !5
  %18902 = getelementptr inbounds %struct.w2c_hermes, ptr %18901, i32 0, i32 6
  %18903 = load i32, ptr %45, align 4, !tbaa !9
  %18904 = zext i32 %18903 to i64
  %18905 = add i64 %18904, 1364
  %18906 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18902, i64 noundef %18905, i32 noundef %18906)
  br label %18907

18907:                                            ; preds = %18894, %18838
  %18908 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %18908, ptr %45, align 4, !tbaa !9
  %18909 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %18909, ptr %46, align 4, !tbaa !9
  %18910 = load ptr, ptr %5, align 8, !tbaa !5
  %18911 = getelementptr inbounds %struct.w2c_hermes, ptr %18910, i32 0, i32 6
  %18912 = load i32, ptr %45, align 4, !tbaa !9
  %18913 = zext i32 %18912 to i64
  %18914 = add i64 %18913, 4
  %18915 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18911, i64 noundef %18914, i32 noundef %18915)
  %18916 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %18916, ptr %45, align 4, !tbaa !9
  %18917 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18917, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %18918 = load i32, ptr %47, align 4, !tbaa !9
  %18919 = load i32, ptr %46, align 4, !tbaa !9
  %18920 = and i32 %18919, %18918
  store i32 %18920, ptr %46, align 4, !tbaa !9
  store i32 1291845632, ptr %47, align 4, !tbaa !9
  %18921 = load i32, ptr %47, align 4, !tbaa !9
  %18922 = load i32, ptr %46, align 4, !tbaa !9
  %18923 = or i32 %18922, %18921
  store i32 %18923, ptr %46, 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 %45, align 4, !tbaa !9
  %18927 = zext i32 %18926 to i64
  %18928 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18925, i64 noundef %18927, i32 noundef %18928)
  %18929 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18929, ptr %45, align 4, !tbaa !9
  %18930 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %18930, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %18931 = load i32, ptr %47, align 4, !tbaa !9
  %18932 = load i32, ptr %46, align 4, !tbaa !9
  %18933 = add i32 %18932, %18931
  store i32 %18933, ptr %46, align 4, !tbaa !9
  %18934 = load ptr, ptr %5, align 8, !tbaa !5
  %18935 = getelementptr inbounds %struct.w2c_hermes, ptr %18934, i32 0, i32 6
  %18936 = load i32, ptr %45, align 4, !tbaa !9
  %18937 = zext i32 %18936 to i64
  %18938 = add i64 %18937, 44
  %18939 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18935, i64 noundef %18938, i32 noundef %18939)
  %18940 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18940, ptr %45, align 4, !tbaa !9
  %18941 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %18941, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18942 = load i32, ptr %47, align 4, !tbaa !9
  %18943 = load i32, ptr %46, align 4, !tbaa !9
  %18944 = add i32 %18943, %18942
  store i32 %18944, ptr %46, align 4, !tbaa !9
  %18945 = load ptr, ptr %5, align 8, !tbaa !5
  %18946 = getelementptr inbounds %struct.w2c_hermes, ptr %18945, i32 0, i32 6
  %18947 = load i32, ptr %45, align 4, !tbaa !9
  %18948 = zext i32 %18947 to i64
  %18949 = add i64 %18948, 40
  %18950 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18946, i64 noundef %18949, i32 noundef %18950)
  %18951 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18951, ptr %45, align 4, !tbaa !9
  %18952 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %18952, ptr %46, align 4, !tbaa !9
  %18953 = load ptr, ptr %5, align 8, !tbaa !5
  %18954 = getelementptr inbounds %struct.w2c_hermes, ptr %18953, i32 0, i32 6
  %18955 = load i32, ptr %46, align 4, !tbaa !9
  %18956 = zext i32 %18955 to i64
  %18957 = call i32 @i32_load(ptr noundef %18954, i64 noundef %18956)
  store i32 %18957, ptr %46, align 4, !tbaa !9
  %18958 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %18958, ptr %6, align 4, !tbaa !9
  %18959 = load ptr, ptr %5, align 8, !tbaa !5
  %18960 = getelementptr inbounds %struct.w2c_hermes, ptr %18959, i32 0, i32 6
  %18961 = load i32, ptr %46, align 4, !tbaa !9
  %18962 = zext i32 %18961 to i64
  %18963 = add i64 %18962, 4
  %18964 = call i32 @i32_load(ptr noundef %18960, i64 noundef %18963)
  store i32 %18964, ptr %46, align 4, !tbaa !9
  %18965 = load ptr, ptr %5, align 8, !tbaa !5
  %18966 = getelementptr inbounds %struct.w2c_hermes, ptr %18965, i32 0, i32 6
  %18967 = load i32, ptr %45, align 4, !tbaa !9
  %18968 = zext i32 %18967 to i64
  %18969 = add i64 %18968, 36
  %18970 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18966, i64 noundef %18969, i32 noundef %18970)
  %18971 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18971, ptr %45, align 4, !tbaa !9
  %18972 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %18972, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %18973 = load i32, ptr %47, align 4, !tbaa !9
  %18974 = load i32, ptr %46, align 4, !tbaa !9
  %18975 = add i32 %18974, %18973
  store i32 %18975, ptr %46, align 4, !tbaa !9
  %18976 = load ptr, ptr %5, align 8, !tbaa !5
  %18977 = getelementptr inbounds %struct.w2c_hermes, ptr %18976, i32 0, i32 6
  %18978 = load i32, ptr %45, align 4, !tbaa !9
  %18979 = zext i32 %18978 to i64
  %18980 = add i64 %18979, 32
  %18981 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %18977, i64 noundef %18980, i32 noundef %18981)
  %18982 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18982, ptr %45, align 4, !tbaa !9
  %18983 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18983, ptr %46, align 4, !tbaa !9
  %18984 = load ptr, ptr %5, align 8, !tbaa !5
  %18985 = getelementptr inbounds %struct.w2c_hermes, ptr %18984, i32 0, i32 6
  %18986 = load i32, ptr %46, align 4, !tbaa !9
  %18987 = zext i32 %18986 to i64
  %18988 = add i64 %18987, 40
  %18989 = call i64 @i64_load(ptr noundef %18985, i64 noundef %18988)
  store i64 %18989, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %18993 = zext i32 %18992 to i64
  %18994 = add i64 %18993, 8
  %18995 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %18991, i64 noundef %18994, i64 noundef %18995)
  %18996 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18996, ptr %45, align 4, !tbaa !9
  %18997 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %18997, ptr %46, align 4, !tbaa !9
  %18998 = load ptr, ptr %5, align 8, !tbaa !5
  %18999 = getelementptr inbounds %struct.w2c_hermes, ptr %18998, i32 0, i32 6
  %19000 = load i32, ptr %46, align 4, !tbaa !9
  %19001 = zext i32 %19000 to i64
  %19002 = add i64 %19001, 32
  %19003 = call i64 @i64_load(ptr noundef %18999, i64 noundef %19002)
  store i64 %19003, ptr %55, align 8, !tbaa !11
  %19004 = load ptr, ptr %5, align 8, !tbaa !5
  %19005 = getelementptr inbounds %struct.w2c_hermes, ptr %19004, i32 0, i32 6
  %19006 = load i32, ptr %45, align 4, !tbaa !9
  %19007 = zext i32 %19006 to i64
  %19008 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19005, i64 noundef %19007, i64 noundef %19008)
  %19009 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %19009, ptr %45, align 4, !tbaa !9
  %19010 = load ptr, ptr %5, align 8, !tbaa !5
  %19011 = getelementptr inbounds %struct.w2c_hermes, ptr %19010, i32 0, i32 6
  %19012 = load i32, ptr %45, align 4, !tbaa !9
  %19013 = zext i32 %19012 to i64
  %19014 = add i64 %19013, 4
  %19015 = call i32 @i32_load(ptr noundef %19011, i64 noundef %19014)
  store i32 %19015, ptr %45, align 4, !tbaa !9
  %19016 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19016, ptr %12, align 4, !tbaa !9
  %19017 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %19017, ptr %46, align 4, !tbaa !9
  %19018 = load ptr, ptr %5, align 8, !tbaa !5
  %19019 = getelementptr inbounds %struct.w2c_hermes, ptr %19018, i32 0, i32 6
  %19020 = load i32, ptr %46, align 4, !tbaa !9
  %19021 = zext i32 %19020 to i64
  %19022 = add i64 %19021, 12
  %19023 = call i32 @i32_load(ptr noundef %19019, i64 noundef %19022)
  store i32 %19023, ptr %46, align 4, !tbaa !9
  %19024 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19024, ptr %13, align 4, !tbaa !9
  %19025 = load ptr, ptr %5, align 8, !tbaa !5
  %19026 = getelementptr inbounds %struct.w2c_hermes, ptr %19025, i32 0, i32 6
  %19027 = load i32, ptr %46, align 4, !tbaa !9
  %19028 = zext i32 %19027 to i64
  %19029 = call i32 @i32_load(ptr noundef %19026, i64 noundef %19028)
  store i32 %19029, ptr %46, align 4, !tbaa !9
  %19030 = load i32, ptr %45, align 4, !tbaa !9
  %19031 = load i32, ptr %46, align 4, !tbaa !9
  %19032 = icmp ule i32 %19030, %19031
  %19033 = zext i1 %19032 to i32
  store i32 %19033, ptr %45, align 4, !tbaa !9
  %19034 = load i32, ptr %45, align 4, !tbaa !9
  %19035 = icmp ne i32 %19034, 0
  br i1 %19035, label %19036, label %19275

19036:                                            ; preds = %18907
  %19037 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %19037, ptr %45, 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 %45, align 4, !tbaa !9
  %19041 = zext i32 %19040 to i64
  %19042 = add i64 %19041, 8
  %19043 = call i32 @i32_load(ptr noundef %19039, i64 noundef %19042)
  store i32 %19043, ptr %45, align 4, !tbaa !9
  %19044 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %19044, ptr %46, align 4, !tbaa !9
  %19045 = load ptr, ptr %5, align 8, !tbaa !5
  %19046 = getelementptr inbounds %struct.w2c_hermes, ptr %19045, i32 0, i32 6
  %19047 = load i32, ptr %46, align 4, !tbaa !9
  %19048 = zext i32 %19047 to i64
  %19049 = call i32 @i32_load(ptr noundef %19046, i64 noundef %19048)
  store i32 %19049, ptr %46, align 4, !tbaa !9
  %19050 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19050, ptr %7, align 4, !tbaa !9
  %19051 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19051, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %19052 = load i32, ptr %48, align 4, !tbaa !9
  %19053 = and i32 %19052, 31
  %19054 = load i32, ptr %47, align 4, !tbaa !9
  %19055 = shl i32 %19054, %19053
  store i32 %19055, ptr %47, align 4, !tbaa !9
  %19056 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %19056, ptr %8, align 4, !tbaa !9
  %19057 = load ptr, ptr %5, align 8, !tbaa !5
  %19058 = load i32, ptr %45, align 4, !tbaa !9
  %19059 = load i32, ptr %46, align 4, !tbaa !9
  %19060 = load i32, ptr %47, align 4, !tbaa !9
  %19061 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %19057, i32 noundef %19058, i32 noundef %19059, i32 noundef %19060)
  store i32 %19061, ptr %45, align 4, !tbaa !9
  %19062 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19062, ptr %15, align 4, !tbaa !9
  %19063 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19063, ptr %45, align 4, !tbaa !9
  %19064 = load ptr, ptr %5, align 8, !tbaa !5
  %19065 = getelementptr inbounds %struct.w2c_hermes, ptr %19064, i32 0, i32 6
  %19066 = load i32, ptr %45, align 4, !tbaa !9
  %19067 = zext i32 %19066 to i64
  %19068 = call i32 @i32_load(ptr noundef %19065, i64 noundef %19067)
  store i32 %19068, ptr %45, align 4, !tbaa !9
  %19069 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19069, ptr %46, align 4, !tbaa !9
  %19070 = load i32, ptr %46, align 4, !tbaa !9
  %19071 = load i32, ptr %45, align 4, !tbaa !9
  %19072 = sub i32 %19071, %19070
  store i32 %19072, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %19073 = load i32, ptr %46, align 4, !tbaa !9
  %19074 = and i32 %19073, 31
  %19075 = load i32, ptr %45, align 4, !tbaa !9
  %19076 = shl i32 %19075, %19074
  store i32 %19076, ptr %45, align 4, !tbaa !9
  %19077 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19077, ptr %6, align 4, !tbaa !9
  %19078 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19078, ptr %45, align 4, !tbaa !9
  %19079 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %19079, ptr %46, align 4, !tbaa !9
  %19080 = load i32, ptr %46, align 4, !tbaa !9
  %19081 = load i32, ptr %45, align 4, !tbaa !9
  %19082 = add i32 %19081, %19080
  store i32 %19082, ptr %45, align 4, !tbaa !9
  %19083 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19083, ptr %46, align 4, !tbaa !9
  %19084 = load i32, ptr %46, align 4, !tbaa !9
  %19085 = icmp ne i32 %19084, 0
  br i1 %19085, label %19086, label %19106

19086:                                            ; preds = %19036
  %19087 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19087, ptr %46, align 4, !tbaa !9
  %19088 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19088, ptr %47, align 4, !tbaa !9
  %19089 = load i32, ptr %47, align 4, !tbaa !9
  %19090 = load i32, ptr %46, align 4, !tbaa !9
  %19091 = add i32 %19090, %19089
  store i32 %19091, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %19092 = load i32, ptr %47, align 4, !tbaa !9
  %19093 = load i32, ptr %46, align 4, !tbaa !9
  %19094 = sub i32 %19093, %19092
  store i32 %19094, ptr %46, align 4, !tbaa !9
  %19095 = load ptr, ptr %5, align 8, !tbaa !5
  %19096 = getelementptr inbounds %struct.w2c_hermes, ptr %19095, i32 0, i32 6
  %19097 = load i32, ptr %46, align 4, !tbaa !9
  %19098 = zext i32 %19097 to i64
  %19099 = call i64 @i64_load(ptr noundef %19096, i64 noundef %19098)
  store i64 %19099, ptr %55, align 8, !tbaa !11
  store i64 63, ptr %56, align 8, !tbaa !11
  %19100 = load i64, ptr %55, align 8, !tbaa !11
  %19101 = load i64, ptr %56, align 8, !tbaa !11
  %19102 = and i64 %19101, 63
  %19103 = ashr i64 %19100, %19102
  store i64 %19103, ptr %55, align 8, !tbaa !11
  %19104 = load i64, ptr %55, align 8, !tbaa !11
  %19105 = trunc i64 %19104 to i32
  store i32 %19105, ptr %46, align 4, !tbaa !9
  br label %19107

19106:                                            ; preds = %19036
  store i32 0, ptr %46, align 4, !tbaa !9
  br label %19107

19107:                                            ; preds = %19106, %19086
  %19108 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19108, ptr %47, align 4, !tbaa !9
  %19109 = load ptr, ptr %5, align 8, !tbaa !5
  %19110 = load i32, ptr %45, align 4, !tbaa !9
  %19111 = load i32, ptr %46, align 4, !tbaa !9
  %19112 = load i32, ptr %47, align 4, !tbaa !9
  %19113 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %19109, i32 noundef %19110, i32 noundef %19111, i32 noundef %19112)
  store i32 %19113, ptr %45, align 4, !tbaa !9
  %19114 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %19114, ptr %45, align 4, !tbaa !9
  %19115 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19115, ptr %46, align 4, !tbaa !9
  %19116 = load ptr, ptr %5, align 8, !tbaa !5
  %19117 = getelementptr inbounds %struct.w2c_hermes, ptr %19116, i32 0, i32 6
  %19118 = load i32, ptr %46, align 4, !tbaa !9
  %19119 = zext i32 %19118 to i64
  %19120 = call i32 @i32_load(ptr noundef %19117, i64 noundef %19119)
  store i32 %19120, ptr %46, align 4, !tbaa !9
  %19121 = load ptr, ptr %5, align 8, !tbaa !5
  %19122 = load i32, ptr %45, align 4, !tbaa !9
  %19123 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcComplement0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef %19121, i32 noundef %19122, i32 noundef %19123)
  %19124 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19124, ptr %45, align 4, !tbaa !9
  %19125 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19125, ptr %46, align 4, !tbaa !9
  %19126 = load ptr, ptr %5, align 8, !tbaa !5
  %19127 = getelementptr inbounds %struct.w2c_hermes, ptr %19126, i32 0, i32 6
  %19128 = load i32, ptr %46, align 4, !tbaa !9
  %19129 = zext i32 %19128 to i64
  %19130 = call i32 @i32_load(ptr noundef %19127, i64 noundef %19129)
  store i32 %19130, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19131 = load i32, ptr %47, align 4, !tbaa !9
  %19132 = and i32 %19131, 31
  %19133 = load i32, ptr %46, align 4, !tbaa !9
  %19134 = shl i32 %19133, %19132
  store i32 %19134, ptr %46, align 4, !tbaa !9
  %19135 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19135, ptr %6, align 4, !tbaa !9
  %19136 = load i32, ptr %46, align 4, !tbaa !9
  %19137 = icmp ne i32 %19136, 0
  br i1 %19137, label %19138, label %19268

19138:                                            ; preds = %19107
  %19139 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %19139, ptr %46, align 4, !tbaa !9
  %19140 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19140, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %19141 = load i32, ptr %48, align 4, !tbaa !9
  %19142 = load i32, ptr %47, align 4, !tbaa !9
  %19143 = sub i32 %19142, %19141
  store i32 %19143, ptr %47, align 4, !tbaa !9
  %19144 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %19144, ptr %7, align 4, !tbaa !9
  %19145 = load i32, ptr %47, align 4, !tbaa !9
  %19146 = load i32, ptr %46, align 4, !tbaa !9
  %19147 = add i32 %19146, %19145
  store i32 %19147, ptr %46, align 4, !tbaa !9
  %19148 = load ptr, ptr %5, align 8, !tbaa !5
  %19149 = getelementptr inbounds %struct.w2c_hermes, ptr %19148, i32 0, i32 6
  %19150 = load i32, ptr %46, align 4, !tbaa !9
  %19151 = zext i32 %19150 to i64
  %19152 = call i32 @i32_load8_u(ptr noundef %19149, i64 noundef %19151)
  store i32 %19152, ptr %46, align 4, !tbaa !9
  %19153 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19153, ptr %14, align 4, !tbaa !9
  %19154 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %19154, ptr %47, align 4, !tbaa !9
  %19155 = load i32, ptr %47, align 4, !tbaa !9
  %19156 = trunc i32 %19155 to i8
  %19157 = sext i8 %19156 to i32
  store i32 %19157, ptr %47, align 4, !tbaa !9
  store i32 7, ptr %48, align 4, !tbaa !9
  %19158 = load i32, ptr %47, align 4, !tbaa !9
  %19159 = load i32, ptr %48, align 4, !tbaa !9
  %19160 = and i32 %19159, 31
  %19161 = ashr i32 %19158, %19160
  store i32 %19161, ptr %47, align 4, !tbaa !9
  %19162 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %19162, ptr %13, align 4, !tbaa !9
  store i32 255, ptr %48, align 4, !tbaa !9
  %19163 = load i32, ptr %48, align 4, !tbaa !9
  %19164 = load i32, ptr %47, align 4, !tbaa !9
  %19165 = and i32 %19164, %19163
  store i32 %19165, ptr %47, align 4, !tbaa !9
  %19166 = load i32, ptr %46, align 4, !tbaa !9
  %19167 = load i32, ptr %47, align 4, !tbaa !9
  %19168 = icmp ne i32 %19166, %19167
  %19169 = zext i1 %19168 to i32
  store i32 %19169, ptr %46, align 4, !tbaa !9
  %19170 = load i32, ptr %46, align 4, !tbaa !9
  %19171 = icmp ne i32 %19170, 0
  br i1 %19171, label %19172, label %19177

19172:                                            ; preds = %19138
  %19173 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19173, ptr %46, align 4, !tbaa !9
  %19174 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19174, ptr %7, align 4, !tbaa !9
  %19175 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19175, ptr %8, align 4, !tbaa !9
  %19176 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19176, ptr %46, align 4, !tbaa !9
  br label %19243

19177:                                            ; preds = %19138
  %19178 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19178, ptr %46, align 4, !tbaa !9
  %19179 = load i32, ptr %46, align 4, !tbaa !9
  %19180 = zext i32 %19179 to i64
  store i64 %19180, ptr %55, align 8, !tbaa !11
  %19181 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %19181, ptr %40, align 8, !tbaa !11
  br label %19182

19182:                                            ; preds = %19229, %19177
  %19183 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19183, ptr %46, align 4, !tbaa !9
  %19184 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19184, ptr %8, align 4, !tbaa !9
  %19185 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %19185, ptr %55, align 8, !tbaa !11
  %19186 = load i64, ptr %55, align 8, !tbaa !11
  %19187 = icmp ne i64 %19186, 0
  %19188 = xor i1 %19187, true
  %19189 = zext i1 %19188 to i32
  store i32 %19189, ptr %46, align 4, !tbaa !9
  %19190 = load i32, ptr %46, align 4, !tbaa !9
  %19191 = icmp ne i32 %19190, 0
  br i1 %19191, label %19192, label %19193

19192:                                            ; preds = %19182
  br label %19231

19193:                                            ; preds = %19182
  %19194 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19194, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %19195 = load i32, ptr %47, align 4, !tbaa !9
  %19196 = load i32, ptr %46, align 4, !tbaa !9
  %19197 = sub i32 %19196, %19195
  store i32 %19197, ptr %46, align 4, !tbaa !9
  %19198 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19198, ptr %6, align 4, !tbaa !9
  %19199 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %19199, ptr %55, align 8, !tbaa !11
  %19200 = load i64, ptr %55, align 8, !tbaa !11
  %19201 = trunc i64 %19200 to i32
  store i32 %19201, ptr %46, align 4, !tbaa !9
  %19202 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19202, ptr %7, align 4, !tbaa !9
  %19203 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %19203, ptr %55, align 8, !tbaa !11
  store i64 1, ptr %56, align 8, !tbaa !11
  %19204 = load i64, ptr %56, align 8, !tbaa !11
  %19205 = load i64, ptr %55, align 8, !tbaa !11
  %19206 = sub i64 %19205, %19204
  store i64 %19206, ptr %55, align 8, !tbaa !11
  %19207 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %19207, ptr %40, align 8, !tbaa !11
  %19208 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %19208, ptr %46, align 4, !tbaa !9
  %19209 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19209, ptr %47, align 4, !tbaa !9
  %19210 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %19210, ptr %48, align 4, !tbaa !9
  %19211 = load i32, ptr %48, align 4, !tbaa !9
  %19212 = load i32, ptr %47, align 4, !tbaa !9
  %19213 = add i32 %19212, %19211
  store i32 %19213, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %19214 = load i32, ptr %48, align 4, !tbaa !9
  %19215 = load i32, ptr %47, align 4, !tbaa !9
  %19216 = sub i32 %19215, %19214
  store i32 %19216, ptr %47, align 4, !tbaa !9
  %19217 = load ptr, ptr %5, align 8, !tbaa !5
  %19218 = getelementptr inbounds %struct.w2c_hermes, ptr %19217, i32 0, i32 6
  %19219 = load i32, ptr %47, align 4, !tbaa !9
  %19220 = zext i32 %19219 to i64
  %19221 = call i32 @i32_load8_u(ptr noundef %19218, i64 noundef %19220)
  store i32 %19221, ptr %47, align 4, !tbaa !9
  %19222 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %19222, ptr %12, align 4, !tbaa !9
  %19223 = load i32, ptr %46, align 4, !tbaa !9
  %19224 = load i32, ptr %47, align 4, !tbaa !9
  %19225 = icmp eq i32 %19223, %19224
  %19226 = zext i1 %19225 to i32
  store i32 %19226, ptr %46, align 4, !tbaa !9
  %19227 = load i32, ptr %46, align 4, !tbaa !9
  %19228 = icmp ne i32 %19227, 0
  br i1 %19228, label %19229, label %19230

19229:                                            ; preds = %19193
  br label %19182

19230:                                            ; preds = %19193
  br label %19234

19231:                                            ; preds = %19192
  store i32 0, ptr %46, align 4, !tbaa !9
  %19232 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19232, ptr %7, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %19233 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19233, ptr %8, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  br label %19243

19234:                                            ; preds = %19230
  %19235 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %19235, ptr %46, align 4, !tbaa !9
  %19236 = load i32, ptr %46, align 4, !tbaa !9
  %19237 = trunc i32 %19236 to i8
  %19238 = sext i8 %19237 to i32
  store i32 %19238, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %19239 = load i32, ptr %46, align 4, !tbaa !9
  %19240 = load i32, ptr %47, align 4, !tbaa !9
  %19241 = and i32 %19240, 31
  %19242 = ashr i32 %19239, %19241
  store i32 %19242, ptr %46, align 4, !tbaa !9
  br label %19243

19243:                                            ; preds = %19234, %19231, %19172
  %19244 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19244, ptr %6, align 4, !tbaa !9
  %19245 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19245, ptr %46, align 4, !tbaa !9
  %19246 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19246, ptr %47, align 4, !tbaa !9
  %19247 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19247, ptr %48, align 4, !tbaa !9
  %19248 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %19248, ptr %49, align 4, !tbaa !9
  %19249 = load i32, ptr %48, align 4, !tbaa !9
  %19250 = load i32, ptr %49, align 4, !tbaa !9
  %19251 = icmp eq i32 %19249, %19250
  %19252 = zext i1 %19251 to i32
  store i32 %19252, ptr %48, align 4, !tbaa !9
  %19253 = load i32, ptr %48, align 4, !tbaa !9
  %19254 = icmp ne i32 %19253, 0
  br i1 %19254, label %19255, label %19257

19255:                                            ; preds = %19243
  %19256 = load i32, ptr %46, align 4, !tbaa !9
  br label %19259

19257:                                            ; preds = %19243
  %19258 = load i32, ptr %47, align 4, !tbaa !9
  br label %19259

19259:                                            ; preds = %19257, %19255
  %19260 = phi i32 [ %19256, %19255 ], [ %19258, %19257 ]
  store i32 %19260, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %19261 = load i32, ptr %47, align 4, !tbaa !9
  %19262 = load i32, ptr %46, align 4, !tbaa !9
  %19263 = add i32 %19262, %19261
  store i32 %19263, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19264 = load i32, ptr %47, align 4, !tbaa !9
  %19265 = and i32 %19264, 31
  %19266 = load i32, ptr %46, align 4, !tbaa !9
  %19267 = lshr i32 %19266, %19265
  store i32 %19267, ptr %46, align 4, !tbaa !9
  br label %19269

19268:                                            ; preds = %19107
  store i32 0, ptr %46, align 4, !tbaa !9
  br label %19269

19269:                                            ; preds = %19268, %19259
  %19270 = load ptr, ptr %5, align 8, !tbaa !5
  %19271 = getelementptr inbounds %struct.w2c_hermes, ptr %19270, i32 0, i32 6
  %19272 = load i32, ptr %45, align 4, !tbaa !9
  %19273 = zext i32 %19272 to i64
  %19274 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19271, i64 noundef %19273, i32 noundef %19274)
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %19276

19275:                                            ; preds = %18907
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %19276

19276:                                            ; preds = %19275, %19269
  %19277 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19277, ptr %6, align 4, !tbaa !9
  %19278 = load i32, ptr %45, align 4, !tbaa !9
  %19279 = icmp ne i32 %19278, 0
  br i1 %19279, label %19280, label %19294

19280:                                            ; preds = %19276
  %19281 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19281, ptr %45, align 4, !tbaa !9
  %19282 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19282, ptr %46, align 4, !tbaa !9
  %19283 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19283, ptr %47, align 4, !tbaa !9
  %19284 = load ptr, ptr %5, align 8, !tbaa !5
  %19285 = load i32, ptr %46, align 4, !tbaa !9
  %19286 = load i32, ptr %47, align 4, !tbaa !9
  %19287 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef %19284, i32 noundef %19285, i32 noundef %19286)
  store i32 %19287, ptr %46, align 4, !tbaa !9
  %19288 = load ptr, ptr %5, align 8, !tbaa !5
  %19289 = getelementptr inbounds %struct.w2c_hermes, ptr %19288, i32 0, i32 6
  %19290 = load i32, ptr %45, align 4, !tbaa !9
  %19291 = zext i32 %19290 to i64
  %19292 = add i64 %19291, 304
  %19293 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19289, i64 noundef %19292, i32 noundef %19293)
  br label %19315

19294:                                            ; preds = %19276
  %19295 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19295, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %19296 = load ptr, ptr %5, align 8, !tbaa !5
  %19297 = getelementptr inbounds %struct.w2c_hermes, ptr %19296, i32 0, i32 6
  %19298 = load i32, ptr %45, align 4, !tbaa !9
  %19299 = zext i32 %19298 to i64
  %19300 = add i64 %19299, 304
  %19301 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19297, i64 noundef %19300, i32 noundef %19301)
  %19302 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19302, ptr %45, align 4, !tbaa !9
  %19303 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %19303, ptr %46, align 4, !tbaa !9
  %19304 = load i32, ptr %46, align 4, !tbaa !9
  %19305 = zext i32 %19304 to i64
  store i64 %19305, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %19306 = load i64, ptr %56, align 8, !tbaa !11
  %19307 = load i64, ptr %55, align 8, !tbaa !11
  %19308 = or i64 %19307, %19306
  store i64 %19308, ptr %55, align 8, !tbaa !11
  %19309 = load ptr, ptr %5, align 8, !tbaa !5
  %19310 = getelementptr inbounds %struct.w2c_hermes, ptr %19309, i32 0, i32 6
  %19311 = load i32, ptr %45, align 4, !tbaa !9
  %19312 = zext i32 %19311 to i64
  %19313 = add i64 %19312, 312
  %19314 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19310, i64 noundef %19313, i64 noundef %19314)
  br label %19315

19315:                                            ; preds = %19294, %19280, %18849
  %19316 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %19316, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %19317 = load i32, ptr %46, align 4, !tbaa !9
  %19318 = load i32, ptr %45, align 4, !tbaa !9
  %19319 = add i32 %19318, %19317
  store i32 %19319, ptr %45, align 4, !tbaa !9
  %19320 = load i32, ptr %45, align 4, !tbaa !9
  %19321 = load ptr, ptr %5, align 8, !tbaa !5
  %19322 = getelementptr inbounds %struct.w2c_hermes, ptr %19321, i32 0, i32 3
  store i32 %19320, ptr %19322, align 8, !tbaa !15
  br label %19323

19323:                                            ; preds = %19315, %18681, %18583
  %19324 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %19324, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %19325 = load i32, ptr %46, align 4, !tbaa !9
  %19326 = load i32, ptr %45, align 4, !tbaa !9
  %19327 = add i32 %19326, %19325
  store i32 %19327, ptr %45, align 4, !tbaa !9
  %19328 = load i32, ptr %45, align 4, !tbaa !9
  %19329 = load ptr, ptr %5, align 8, !tbaa !5
  %19330 = getelementptr inbounds %struct.w2c_hermes, ptr %19329, i32 0, i32 3
  store i32 %19328, ptr %19330, align 8, !tbaa !15
  %19331 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19331, ptr %45, align 4, !tbaa !9
  %19332 = load ptr, ptr %5, align 8, !tbaa !5
  %19333 = getelementptr inbounds %struct.w2c_hermes, ptr %19332, i32 0, i32 6
  %19334 = load i32, ptr %45, align 4, !tbaa !9
  %19335 = zext i32 %19334 to i64
  %19336 = add i64 %19335, 5808
  %19337 = call i32 @i32_load(ptr noundef %19333, i64 noundef %19336)
  store i32 %19337, ptr %45, align 4, !tbaa !9
  %19338 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19338, ptr %6, align 4, !tbaa !9
  %19339 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19339, ptr %45, align 4, !tbaa !9
  %19340 = load ptr, ptr %5, align 8, !tbaa !5
  %19341 = getelementptr inbounds %struct.w2c_hermes, ptr %19340, i32 0, i32 6
  %19342 = load i32, ptr %45, align 4, !tbaa !9
  %19343 = zext i32 %19342 to i64
  %19344 = add i64 %19343, 304
  %19345 = call i32 @i32_load(ptr noundef %19341, i64 noundef %19344)
  store i32 %19345, ptr %45, align 4, !tbaa !9
  %19346 = load i32, ptr %45, align 4, !tbaa !9
  %19347 = icmp ne i32 %19346, 0
  %19348 = xor i1 %19347, true
  %19349 = zext i1 %19348 to i32
  store i32 %19349, ptr %45, align 4, !tbaa !9
  %19350 = load i32, ptr %45, align 4, !tbaa !9
  %19351 = icmp ne i32 %19350, 0
  br i1 %19351, label %19352, label %19353

19352:                                            ; preds = %19323
  br label %43136

19353:                                            ; preds = %19323
  %19354 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19354, ptr %45, align 4, !tbaa !9
  %19355 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19355, ptr %46, align 4, !tbaa !9
  %19356 = load ptr, ptr %5, align 8, !tbaa !5
  %19357 = getelementptr inbounds %struct.w2c_hermes, ptr %19356, i32 0, i32 6
  %19358 = load i32, ptr %46, align 4, !tbaa !9
  %19359 = zext i32 %19358 to i64
  %19360 = add i64 %19359, 1
  %19361 = call i32 @i32_load8_u(ptr noundef %19357, i64 noundef %19360)
  store i32 %19361, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19362 = load i32, ptr %47, align 4, !tbaa !9
  %19363 = and i32 %19362, 31
  %19364 = load i32, ptr %46, align 4, !tbaa !9
  %19365 = shl i32 %19364, %19363
  store i32 %19365, ptr %46, align 4, !tbaa !9
  %19366 = load i32, ptr %46, align 4, !tbaa !9
  %19367 = load i32, ptr %45, align 4, !tbaa !9
  %19368 = add i32 %19367, %19366
  store i32 %19368, ptr %45, align 4, !tbaa !9
  %19369 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19369, ptr %46, align 4, !tbaa !9
  %19370 = load ptr, ptr %5, align 8, !tbaa !5
  %19371 = getelementptr inbounds %struct.w2c_hermes, ptr %19370, i32 0, i32 6
  %19372 = load i32, ptr %46, align 4, !tbaa !9
  %19373 = zext i32 %19372 to i64
  %19374 = add i64 %19373, 312
  %19375 = call i64 @i64_load(ptr noundef %19371, i64 noundef %19374)
  store i64 %19375, ptr %55, align 8, !tbaa !11
  %19376 = load ptr, ptr %5, align 8, !tbaa !5
  %19377 = getelementptr inbounds %struct.w2c_hermes, ptr %19376, i32 0, i32 6
  %19378 = load i32, ptr %45, align 4, !tbaa !9
  %19379 = zext i32 %19378 to i64
  %19380 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19377, i64 noundef %19379, i64 noundef %19380)
  %19381 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19381, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %19382 = load ptr, ptr %5, align 8, !tbaa !5
  %19383 = getelementptr inbounds %struct.w2c_hermes, ptr %19382, i32 0, i32 6
  %19384 = load i32, ptr %45, align 4, !tbaa !9
  %19385 = zext i32 %19384 to i64
  %19386 = add i64 %19385, 516
  %19387 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19383, i64 noundef %19386, i32 noundef %19387)
  %19388 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19388, ptr %45, align 4, !tbaa !9
  %19389 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %19389, ptr %46, align 4, !tbaa !9
  %19390 = load ptr, ptr %5, align 8, !tbaa !5
  %19391 = getelementptr inbounds %struct.w2c_hermes, ptr %19390, i32 0, i32 6
  %19392 = load i32, ptr %45, align 4, !tbaa !9
  %19393 = zext i32 %19392 to i64
  %19394 = add i64 %19393, 512
  %19395 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19391, i64 noundef %19394, i32 noundef %19395)
  %19396 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19396, ptr %45, align 4, !tbaa !9
  %19397 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19397, ptr %46, align 4, !tbaa !9
  %19398 = load ptr, ptr %5, align 8, !tbaa !5
  %19399 = getelementptr inbounds %struct.w2c_hermes, ptr %19398, i32 0, i32 6
  %19400 = load i32, ptr %45, align 4, !tbaa !9
  %19401 = zext i32 %19400 to i64
  %19402 = add i64 %19401, 508
  %19403 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19399, i64 noundef %19402, i32 noundef %19403)
  %19404 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19404, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %19405 = load i32, ptr %46, align 4, !tbaa !9
  %19406 = load i32, ptr %45, align 4, !tbaa !9
  %19407 = add i32 %19406, %19405
  store i32 %19407, ptr %45, align 4, !tbaa !9
  %19408 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19408, ptr %6, align 4, !tbaa !9
  br label %2945

19409:                                            ; preds = %3052
  %19410 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19410, ptr %45, align 4, !tbaa !9
  %19411 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19411, ptr %46, align 4, !tbaa !9
  %19412 = load ptr, ptr %5, align 8, !tbaa !5
  %19413 = getelementptr inbounds %struct.w2c_hermes, ptr %19412, i32 0, i32 6
  %19414 = load i32, ptr %46, align 4, !tbaa !9
  %19415 = zext i32 %19414 to i64
  %19416 = add i64 %19415, 2
  %19417 = call i32 @i32_load8_u(ptr noundef %19413, i64 noundef %19416)
  store i32 %19417, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19418 = load i32, ptr %47, align 4, !tbaa !9
  %19419 = and i32 %19418, 31
  %19420 = load i32, ptr %46, align 4, !tbaa !9
  %19421 = shl i32 %19420, %19419
  store i32 %19421, ptr %46, align 4, !tbaa !9
  %19422 = load i32, ptr %46, align 4, !tbaa !9
  %19423 = load i32, ptr %45, align 4, !tbaa !9
  %19424 = add i32 %19423, %19422
  store i32 %19424, ptr %45, align 4, !tbaa !9
  %19425 = load ptr, ptr %5, align 8, !tbaa !5
  %19426 = getelementptr inbounds %struct.w2c_hermes, ptr %19425, i32 0, i32 6
  %19427 = load i32, ptr %45, align 4, !tbaa !9
  %19428 = zext i32 %19427 to i64
  %19429 = call i64 @i64_load(ptr noundef %19426, i64 noundef %19428)
  store i64 %19429, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %19430 = load i64, ptr %54, align 8, !tbaa !11
  %19431 = load i64, ptr %55, align 8, !tbaa !11
  %19432 = and i64 %19431, 63
  %19433 = ashr i64 %19430, %19432
  store i64 %19433, ptr %54, align 8, !tbaa !11
  %19434 = load i64, ptr %54, align 8, !tbaa !11
  %19435 = trunc i64 %19434 to i32
  store i32 %19435, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %19436 = load i32, ptr %45, align 4, !tbaa !9
  %19437 = load i32, ptr %46, align 4, !tbaa !9
  %19438 = icmp eq i32 %19436, %19437
  %19439 = zext i1 %19438 to i32
  store i32 %19439, ptr %45, align 4, !tbaa !9
  %19440 = load i32, ptr %45, align 4, !tbaa !9
  %19441 = icmp ne i32 %19440, 0
  br i1 %19441, label %19442, label %19479

19442:                                            ; preds = %19409
  %19443 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19443, ptr %45, align 4, !tbaa !9
  %19444 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19444, ptr %46, align 4, !tbaa !9
  %19445 = load ptr, ptr %5, align 8, !tbaa !5
  %19446 = getelementptr inbounds %struct.w2c_hermes, ptr %19445, i32 0, i32 6
  %19447 = load i32, ptr %46, align 4, !tbaa !9
  %19448 = zext i32 %19447 to i64
  %19449 = add i64 %19448, 1
  %19450 = call i32 @i32_load8_u(ptr noundef %19446, i64 noundef %19449)
  store i32 %19450, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19451 = load i32, ptr %47, align 4, !tbaa !9
  %19452 = and i32 %19451, 31
  %19453 = load i32, ptr %46, align 4, !tbaa !9
  %19454 = shl i32 %19453, %19452
  store i32 %19454, ptr %46, align 4, !tbaa !9
  %19455 = load i32, ptr %46, align 4, !tbaa !9
  %19456 = load i32, ptr %45, align 4, !tbaa !9
  %19457 = add i32 %19456, %19455
  store i32 %19457, ptr %45, align 4, !tbaa !9
  %19458 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19458, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %19459 = load i32, ptr %47, align 4, !tbaa !9
  %19460 = load i32, ptr %46, align 4, !tbaa !9
  %19461 = sub i32 %19460, %19459
  store i32 %19461, ptr %46, align 4, !tbaa !9
  %19462 = load ptr, ptr %5, align 8, !tbaa !5
  %19463 = getelementptr inbounds %struct.w2c_hermes, ptr %19462, i32 0, i32 6
  %19464 = load i32, ptr %46, align 4, !tbaa !9
  %19465 = zext i32 %19464 to i64
  %19466 = call i32 @i32_load(ptr noundef %19463, i64 noundef %19465)
  store i32 %19466, ptr %46, align 4, !tbaa !9
  %19467 = load i32, ptr %46, align 4, !tbaa !9
  %19468 = uitofp i32 %19467 to double
  store double %19468, ptr %61, align 8, !tbaa !13
  %19469 = load ptr, ptr %5, align 8, !tbaa !5
  %19470 = getelementptr inbounds %struct.w2c_hermes, ptr %19469, i32 0, i32 6
  %19471 = load i32, ptr %45, align 4, !tbaa !9
  %19472 = zext i32 %19471 to i64
  %19473 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %19470, i64 noundef %19472, double noundef %19473)
  %19474 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19474, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %19475 = load i32, ptr %46, align 4, !tbaa !9
  %19476 = load i32, ptr %45, align 4, !tbaa !9
  %19477 = add i32 %19476, %19475
  store i32 %19477, ptr %45, align 4, !tbaa !9
  %19478 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19478, ptr %6, align 4, !tbaa !9
  br label %2945

19479:                                            ; preds = %19409
  %19480 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19480, ptr %45, align 4, !tbaa !9
  %19481 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19481, ptr %46, align 4, !tbaa !9
  %19482 = load ptr, ptr %5, align 8, !tbaa !5
  %19483 = getelementptr inbounds %struct.w2c_hermes, ptr %19482, i32 0, i32 6
  %19484 = load i32, ptr %45, align 4, !tbaa !9
  %19485 = zext i32 %19484 to i64
  %19486 = add i64 %19485, 5808
  %19487 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19483, i64 noundef %19486, i32 noundef %19487)
  %19488 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19488, ptr %45, align 4, !tbaa !9
  %19489 = load ptr, ptr %5, align 8, !tbaa !5
  %19490 = getelementptr inbounds %struct.w2c_hermes, ptr %19489, i32 0, i32 6
  %19491 = load i32, ptr %45, align 4, !tbaa !9
  %19492 = zext i32 %19491 to i64
  %19493 = add i64 %19492, 2
  %19494 = call i32 @i32_load8_u(ptr noundef %19490, i64 noundef %19493)
  store i32 %19494, ptr %45, align 4, !tbaa !9
  %19495 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19495, ptr %6, align 4, !tbaa !9
  %19496 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19496, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %19497 = load ptr, ptr %5, align 8, !tbaa !5
  %19498 = getelementptr inbounds %struct.w2c_hermes, ptr %19497, i32 0, i32 6
  %19499 = load i32, ptr %45, align 4, !tbaa !9
  %19500 = zext i32 %19499 to i64
  %19501 = add i64 %19500, 52
  %19502 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19498, i64 noundef %19501, i32 noundef %19502)
  %19503 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19503, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, 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 %45, align 4, !tbaa !9
  %19507 = zext i32 %19506 to i64
  %19508 = add i64 %19507, 524
  %19509 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19505, i64 noundef %19508, i32 noundef %19509)
  %19510 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19510, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %19511 = load i32, ptr %46, align 4, !tbaa !9
  %19512 = load i32, ptr %45, align 4, !tbaa !9
  %19513 = add i32 %19512, %19511
  store i32 %19513, ptr %45, align 4, !tbaa !9
  %19514 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19514, ptr %46, align 4, !tbaa !9
  %19515 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19515, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %19516 = load i32, ptr %48, align 4, !tbaa !9
  %19517 = and i32 %19516, 31
  %19518 = load i32, ptr %47, align 4, !tbaa !9
  %19519 = shl i32 %19518, %19517
  store i32 %19519, ptr %47, align 4, !tbaa !9
  %19520 = load i32, ptr %47, align 4, !tbaa !9
  %19521 = load i32, ptr %46, align 4, !tbaa !9
  %19522 = add i32 %19521, %19520
  store i32 %19522, ptr %46, align 4, !tbaa !9
  %19523 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %19523, ptr %6, align 4, !tbaa !9
  %19524 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19524, ptr %47, align 4, !tbaa !9
  store i32 85, ptr %48, align 4, !tbaa !9
  %19525 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19525, ptr %49, align 4, !tbaa !9
  %19526 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19526, ptr %50, align 4, !tbaa !9
  store i32 52, ptr %51, align 4, !tbaa !9
  %19527 = load i32, ptr %51, align 4, !tbaa !9
  %19528 = load i32, ptr %50, align 4, !tbaa !9
  %19529 = add i32 %19528, %19527
  store i32 %19529, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %19530 = load ptr, ptr %5, align 8, !tbaa !5
  %19531 = load i32, ptr %45, align 4, !tbaa !9
  %19532 = load i32, ptr %46, align 4, !tbaa !9
  %19533 = load i32, ptr %47, align 4, !tbaa !9
  %19534 = load i32, ptr %48, align 4, !tbaa !9
  %19535 = load i32, ptr %49, align 4, !tbaa !9
  %19536 = load i32, ptr %50, align 4, !tbaa !9
  %19537 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %19530, i32 noundef %19531, i32 noundef %19532, i32 noundef %19533, i32 noundef %19534, i32 noundef %19535, i32 noundef %19536, i32 noundef %19537)
  %19538 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19538, ptr %45, align 4, !tbaa !9
  %19539 = load ptr, ptr %5, align 8, !tbaa !5
  %19540 = getelementptr inbounds %struct.w2c_hermes, ptr %19539, i32 0, i32 6
  %19541 = load i32, ptr %45, align 4, !tbaa !9
  %19542 = zext i32 %19541 to i64
  %19543 = add i64 %19542, 5808
  %19544 = call i32 @i32_load(ptr noundef %19540, i64 noundef %19543)
  store i32 %19544, ptr %45, align 4, !tbaa !9
  %19545 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19545, ptr %6, align 4, !tbaa !9
  %19546 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19546, ptr %45, align 4, !tbaa !9
  %19547 = load ptr, ptr %5, align 8, !tbaa !5
  %19548 = getelementptr inbounds %struct.w2c_hermes, ptr %19547, i32 0, i32 6
  %19549 = load i32, ptr %45, align 4, !tbaa !9
  %19550 = zext i32 %19549 to i64
  %19551 = add i64 %19550, 304
  %19552 = call i32 @i32_load(ptr noundef %19548, i64 noundef %19551)
  store i32 %19552, ptr %45, align 4, !tbaa !9
  %19553 = load i32, ptr %45, align 4, !tbaa !9
  %19554 = icmp ne i32 %19553, 0
  %19555 = xor i1 %19554, true
  %19556 = zext i1 %19555 to i32
  store i32 %19556, ptr %45, align 4, !tbaa !9
  %19557 = load i32, ptr %45, align 4, !tbaa !9
  %19558 = icmp ne i32 %19557, 0
  br i1 %19558, label %19559, label %19560

19559:                                            ; preds = %19479
  br label %43136

19560:                                            ; preds = %19479
  %19561 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19561, ptr %45, align 4, !tbaa !9
  %19562 = load ptr, ptr %5, align 8, !tbaa !5
  %19563 = getelementptr inbounds %struct.w2c_hermes, ptr %19562, i32 0, i32 6
  %19564 = load i32, ptr %45, align 4, !tbaa !9
  %19565 = zext i32 %19564 to i64
  %19566 = add i64 %19565, 312
  %19567 = call i64 @i64_load(ptr noundef %19563, i64 noundef %19566)
  store i64 %19567, ptr %54, align 8, !tbaa !11
  %19568 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %19568, ptr %39, align 8, !tbaa !11
  %19569 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19569, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %19570 = load ptr, ptr %5, align 8, !tbaa !5
  %19571 = getelementptr inbounds %struct.w2c_hermes, ptr %19570, i32 0, i32 6
  %19572 = load i32, ptr %45, align 4, !tbaa !9
  %19573 = zext i32 %19572 to i64
  %19574 = add i64 %19573, 516
  %19575 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19571, i64 noundef %19574, i32 noundef %19575)
  %19576 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19576, ptr %45, align 4, !tbaa !9
  %19577 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %19577, ptr %46, align 4, !tbaa !9
  %19578 = load ptr, ptr %5, align 8, !tbaa !5
  %19579 = getelementptr inbounds %struct.w2c_hermes, ptr %19578, i32 0, i32 6
  %19580 = load i32, ptr %45, align 4, !tbaa !9
  %19581 = zext i32 %19580 to i64
  %19582 = add i64 %19581, 512
  %19583 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19579, i64 noundef %19582, i32 noundef %19583)
  %19584 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19584, ptr %45, align 4, !tbaa !9
  %19585 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19585, ptr %46, align 4, !tbaa !9
  %19586 = load ptr, ptr %5, align 8, !tbaa !5
  %19587 = getelementptr inbounds %struct.w2c_hermes, ptr %19586, i32 0, i32 6
  %19588 = load i32, ptr %45, align 4, !tbaa !9
  %19589 = zext i32 %19588 to i64
  %19590 = add i64 %19589, 508
  %19591 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19587, i64 noundef %19590, i32 noundef %19591)
  %19592 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19592, ptr %45, align 4, !tbaa !9
  %19593 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19593, ptr %46, align 4, !tbaa !9
  %19594 = load ptr, ptr %5, align 8, !tbaa !5
  %19595 = getelementptr inbounds %struct.w2c_hermes, ptr %19594, i32 0, i32 6
  %19596 = load i32, ptr %46, align 4, !tbaa !9
  %19597 = zext i32 %19596 to i64
  %19598 = add i64 %19597, 1
  %19599 = call i32 @i32_load8_u(ptr noundef %19595, i64 noundef %19598)
  store i32 %19599, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19600 = load i32, ptr %47, align 4, !tbaa !9
  %19601 = and i32 %19600, 31
  %19602 = load i32, ptr %46, align 4, !tbaa !9
  %19603 = shl i32 %19602, %19601
  store i32 %19603, ptr %46, align 4, !tbaa !9
  %19604 = load i32, ptr %46, align 4, !tbaa !9
  %19605 = load i32, ptr %45, align 4, !tbaa !9
  %19606 = add i32 %19605, %19604
  store i32 %19606, ptr %45, align 4, !tbaa !9
  %19607 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %19607, ptr %55, align 8, !tbaa !11
  %19608 = load ptr, ptr %5, align 8, !tbaa !5
  %19609 = getelementptr inbounds %struct.w2c_hermes, ptr %19608, i32 0, i32 6
  %19610 = load i32, ptr %45, align 4, !tbaa !9
  %19611 = zext i32 %19610 to i64
  %19612 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19609, i64 noundef %19611, i64 noundef %19612)
  %19613 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19613, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %19614 = load i32, ptr %46, align 4, !tbaa !9
  %19615 = load i32, ptr %45, align 4, !tbaa !9
  %19616 = add i32 %19615, %19614
  store i32 %19616, ptr %45, align 4, !tbaa !9
  %19617 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19617, ptr %6, align 4, !tbaa !9
  br label %2945

19618:                                            ; preds = %3053
  %19619 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19619, ptr %45, align 4, !tbaa !9
  %19620 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19620, ptr %46, align 4, !tbaa !9
  %19621 = load ptr, ptr %5, align 8, !tbaa !5
  %19622 = getelementptr inbounds %struct.w2c_hermes, ptr %19621, i32 0, i32 6
  %19623 = load i32, ptr %46, align 4, !tbaa !9
  %19624 = zext i32 %19623 to i64
  %19625 = add i64 %19624, 3
  %19626 = call i32 @i32_load8_u(ptr noundef %19622, i64 noundef %19625)
  store i32 %19626, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19627 = load i32, ptr %47, align 4, !tbaa !9
  %19628 = and i32 %19627, 31
  %19629 = load i32, ptr %46, align 4, !tbaa !9
  %19630 = shl i32 %19629, %19628
  store i32 %19630, ptr %46, align 4, !tbaa !9
  %19631 = load i32, ptr %46, align 4, !tbaa !9
  %19632 = load i32, ptr %45, align 4, !tbaa !9
  %19633 = add i32 %19632, %19631
  store i32 %19633, ptr %45, align 4, !tbaa !9
  %19634 = load ptr, ptr %5, align 8, !tbaa !5
  %19635 = getelementptr inbounds %struct.w2c_hermes, ptr %19634, i32 0, i32 6
  %19636 = load i32, ptr %45, align 4, !tbaa !9
  %19637 = zext i32 %19636 to i64
  %19638 = call i64 @i64_load(ptr noundef %19635, i64 noundef %19637)
  store i64 %19638, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %19639 = load i64, ptr %54, align 8, !tbaa !11
  %19640 = load i64, ptr %55, align 8, !tbaa !11
  %19641 = and i64 %19640, 63
  %19642 = ashr i64 %19639, %19641
  store i64 %19642, ptr %54, align 8, !tbaa !11
  %19643 = load i64, ptr %54, align 8, !tbaa !11
  %19644 = trunc i64 %19643 to i32
  store i32 %19644, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %19645 = load i32, ptr %45, align 4, !tbaa !9
  %19646 = load i32, ptr %46, align 4, !tbaa !9
  %19647 = icmp ne i32 %19645, %19646
  %19648 = zext i1 %19647 to i32
  store i32 %19648, ptr %45, align 4, !tbaa !9
  %19649 = load i32, ptr %45, align 4, !tbaa !9
  %19650 = icmp ne i32 %19649, 0
  br i1 %19650, label %19651, label %19652

19651:                                            ; preds = %19618
  br label %19834

19652:                                            ; preds = %19618
  %19653 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19653, ptr %45, align 4, !tbaa !9
  %19654 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19654, ptr %46, align 4, !tbaa !9
  %19655 = load ptr, ptr %5, align 8, !tbaa !5
  %19656 = getelementptr inbounds %struct.w2c_hermes, ptr %19655, i32 0, i32 6
  %19657 = load i32, ptr %46, align 4, !tbaa !9
  %19658 = zext i32 %19657 to i64
  %19659 = add i64 %19658, 2
  %19660 = call i32 @i32_load8_u(ptr noundef %19656, i64 noundef %19659)
  store i32 %19660, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19661 = load i32, ptr %47, align 4, !tbaa !9
  %19662 = and i32 %19661, 31
  %19663 = load i32, ptr %46, align 4, !tbaa !9
  %19664 = shl i32 %19663, %19662
  store i32 %19664, ptr %46, align 4, !tbaa !9
  %19665 = load i32, ptr %46, align 4, !tbaa !9
  %19666 = load i32, ptr %45, align 4, !tbaa !9
  %19667 = add i32 %19666, %19665
  store i32 %19667, ptr %45, align 4, !tbaa !9
  %19668 = load ptr, ptr %5, align 8, !tbaa !5
  %19669 = getelementptr inbounds %struct.w2c_hermes, ptr %19668, i32 0, i32 6
  %19670 = load i32, ptr %45, align 4, !tbaa !9
  %19671 = zext i32 %19670 to i64
  %19672 = call i64 @i64_load(ptr noundef %19669, i64 noundef %19671)
  store i64 %19672, ptr %54, align 8, !tbaa !11
  %19673 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %19673, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %19674 = load i64, ptr %54, align 8, !tbaa !11
  %19675 = load i64, ptr %55, align 8, !tbaa !11
  %19676 = icmp ugt i64 %19674, %19675
  %19677 = zext i1 %19676 to i32
  store i32 %19677, ptr %45, align 4, !tbaa !9
  %19678 = load i32, ptr %45, align 4, !tbaa !9
  %19679 = icmp ne i32 %19678, 0
  br i1 %19679, label %19680, label %19681

19680:                                            ; preds = %19652
  br label %19834

19681:                                            ; preds = %19652
  %19682 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %19682, ptr %54, align 8, !tbaa !11
  %19683 = load i64, ptr %54, align 8, !tbaa !11
  %19684 = call double @f64_reinterpret_i64(i64 noundef %19683)
  store double %19684, ptr %60, align 8, !tbaa !13
  %19685 = load double, ptr %60, align 8, !tbaa !13
  store double %19685, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %19686 = load double, ptr %60, align 8, !tbaa !13
  %19687 = load double, ptr %61, align 8, !tbaa !13
  %19688 = fcmp olt double %19686, %19687
  %19689 = zext i1 %19688 to i32
  store i32 %19689, ptr %45, align 4, !tbaa !9
  %19690 = load double, ptr %43, align 8, !tbaa !13
  store double %19690, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %19691 = load double, ptr %61, align 8, !tbaa !13
  %19692 = load double, ptr %62, align 8, !tbaa !13
  %19693 = fcmp oge double %19691, %19692
  %19694 = zext i1 %19693 to i32
  store i32 %19694, ptr %46, align 4, !tbaa !9
  %19695 = load i32, ptr %46, align 4, !tbaa !9
  %19696 = load i32, ptr %45, align 4, !tbaa !9
  %19697 = and i32 %19696, %19695
  store i32 %19697, ptr %45, align 4, !tbaa !9
  %19698 = load i32, ptr %45, align 4, !tbaa !9
  %19699 = icmp ne i32 %19698, 0
  br i1 %19699, label %19700, label %19737

19700:                                            ; preds = %19681
  %19701 = load double, ptr %43, align 8, !tbaa !13
  store double %19701, ptr %60, align 8, !tbaa !13
  %19702 = load double, ptr %60, align 8, !tbaa !13
  %19703 = load double, ptr %60, align 8, !tbaa !13
  %19704 = fcmp une double %19702, %19703
  %19705 = xor i1 %19704, true
  %19706 = xor i1 %19705, true
  %19707 = zext i1 %19706 to i32
  %19708 = sext i32 %19707 to i64
  %19709 = call i64 @llvm.expect.i64(i64 %19708, i64 0)
  %19710 = icmp ne i64 %19709, 0
  br i1 %19710, label %19711, label %19713

19711:                                            ; preds = %19700
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

19712:                                            ; No predecessors!
  br label %19735

19713:                                            ; preds = %19700
  %19714 = load double, ptr %60, align 8, !tbaa !13
  %19715 = fcmp ogt double %19714, -1.000000e+00
  br i1 %19715, label %19716, label %19719

19716:                                            ; preds = %19713
  %19717 = load double, ptr %60, align 8, !tbaa !13
  %19718 = fcmp olt double %19717, 0x41F0000000000000
  br label %19719

19719:                                            ; preds = %19716, %19713
  %19720 = phi i1 [ false, %19713 ], [ %19718, %19716 ]
  %19721 = xor i1 %19720, true
  %19722 = xor i1 %19721, true
  %19723 = xor i1 %19722, true
  %19724 = zext i1 %19723 to i32
  %19725 = sext i32 %19724 to i64
  %19726 = call i64 @llvm.expect.i64(i64 %19725, i64 0)
  %19727 = icmp ne i64 %19726, 0
  br i1 %19727, label %19728, label %19730

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

19729:                                            ; No predecessors!
  br label %19733

19730:                                            ; preds = %19719
  %19731 = load double, ptr %60, align 8, !tbaa !13
  %19732 = fptoui double %19731 to i32
  br label %19733

19733:                                            ; preds = %19730, %19729
  %19734 = phi i32 [ 0, %19729 ], [ %19732, %19730 ]
  br label %19735

19735:                                            ; preds = %19733, %19712
  %19736 = phi i32 [ 0, %19712 ], [ %19734, %19733 ]
  store i32 %19736, ptr %45, align 4, !tbaa !9
  br label %19738

19737:                                            ; preds = %19681
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %19738

19738:                                            ; preds = %19737, %19735
  %19739 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19739, ptr %8, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %19740 = load i32, ptr %45, align 4, !tbaa !9
  %19741 = load i32, ptr %46, align 4, !tbaa !9
  %19742 = icmp ne i32 %19740, %19741
  %19743 = zext i1 %19742 to i32
  store i32 %19743, ptr %45, align 4, !tbaa !9
  %19744 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19744, ptr %46, align 4, !tbaa !9
  %19745 = load i32, ptr %46, align 4, !tbaa !9
  %19746 = uitofp i32 %19745 to double
  store double %19746, ptr %61, align 8, !tbaa !13
  %19747 = load double, ptr %43, align 8, !tbaa !13
  store double %19747, ptr %62, align 8, !tbaa !13
  %19748 = load double, ptr %61, align 8, !tbaa !13
  %19749 = load double, ptr %62, align 8, !tbaa !13
  %19750 = fcmp oeq double %19748, %19749
  %19751 = zext i1 %19750 to i32
  store i32 %19751, ptr %46, align 4, !tbaa !9
  %19752 = load i32, ptr %46, align 4, !tbaa !9
  %19753 = load i32, ptr %45, align 4, !tbaa !9
  %19754 = and i32 %19753, %19752
  store i32 %19754, ptr %45, align 4, !tbaa !9
  %19755 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19755, ptr %7, align 4, !tbaa !9
  %19756 = load i32, ptr %45, align 4, !tbaa !9
  %19757 = icmp ne i32 %19756, 0
  %19758 = xor i1 %19757, true
  %19759 = zext i1 %19758 to i32
  store i32 %19759, ptr %45, align 4, !tbaa !9
  %19760 = load i32, ptr %45, align 4, !tbaa !9
  %19761 = icmp ne i32 %19760, 0
  br i1 %19761, label %19762, label %19763

19762:                                            ; preds = %19738
  br label %19834

19763:                                            ; preds = %19738
  %19764 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %19764, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %19765 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19765, ptr %47, align 4, !tbaa !9
  %19766 = load i32, ptr %47, align 4, !tbaa !9
  %19767 = icmp ne i32 %19766, 0
  br i1 %19767, label %19768, label %19770

19768:                                            ; preds = %19763
  %19769 = load i32, ptr %45, align 4, !tbaa !9
  br label %19772

19770:                                            ; preds = %19763
  %19771 = load i32, ptr %46, align 4, !tbaa !9
  br label %19772

19772:                                            ; preds = %19770, %19768
  %19773 = phi i32 [ %19769, %19768 ], [ %19771, %19770 ]
  store i32 %19773, ptr %45, align 4, !tbaa !9
  %19774 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19774, ptr %7, align 4, !tbaa !9
  %19775 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19775, ptr %46, align 4, !tbaa !9
  store i32 40, ptr %47, align 4, !tbaa !9
  %19776 = load i32, ptr %47, align 4, !tbaa !9
  %19777 = load i32, ptr %46, align 4, !tbaa !9
  %19778 = sub i32 %19777, %19776
  store i32 %19778, ptr %46, align 4, !tbaa !9
  %19779 = load ptr, ptr %5, align 8, !tbaa !5
  %19780 = getelementptr inbounds %struct.w2c_hermes, ptr %19779, i32 0, i32 6
  %19781 = load i32, ptr %46, align 4, !tbaa !9
  %19782 = zext i32 %19781 to i64
  %19783 = call i32 @i32_load(ptr noundef %19780, i64 noundef %19782)
  store i32 %19783, ptr %46, align 4, !tbaa !9
  %19784 = load i32, ptr %45, align 4, !tbaa !9
  %19785 = load i32, ptr %46, align 4, !tbaa !9
  %19786 = icmp uge i32 %19784, %19785
  %19787 = zext i1 %19786 to i32
  store i32 %19787, ptr %45, align 4, !tbaa !9
  %19788 = load i32, ptr %45, align 4, !tbaa !9
  %19789 = icmp ne i32 %19788, 0
  br i1 %19789, label %19790, label %19791

19790:                                            ; preds = %19772
  br label %19834

19791:                                            ; preds = %19772
  %19792 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19792, ptr %45, align 4, !tbaa !9
  %19793 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19793, ptr %46, align 4, !tbaa !9
  %19794 = load ptr, ptr %5, align 8, !tbaa !5
  %19795 = getelementptr inbounds %struct.w2c_hermes, ptr %19794, i32 0, i32 6
  %19796 = load i32, ptr %46, align 4, !tbaa !9
  %19797 = zext i32 %19796 to i64
  %19798 = add i64 %19797, 1
  %19799 = call i32 @i32_load8_u(ptr noundef %19795, i64 noundef %19798)
  store i32 %19799, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19800 = load i32, ptr %47, align 4, !tbaa !9
  %19801 = and i32 %19800, 31
  %19802 = load i32, ptr %46, align 4, !tbaa !9
  %19803 = shl i32 %19802, %19801
  store i32 %19803, ptr %46, align 4, !tbaa !9
  %19804 = load i32, ptr %46, align 4, !tbaa !9
  %19805 = load i32, ptr %45, align 4, !tbaa !9
  %19806 = add i32 %19805, %19804
  store i32 %19806, ptr %45, align 4, !tbaa !9
  %19807 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19807, ptr %46, align 4, !tbaa !9
  %19808 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %19808, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %19809 = load i32, ptr %48, align 4, !tbaa !9
  %19810 = and i32 %19809, 31
  %19811 = load i32, ptr %47, align 4, !tbaa !9
  %19812 = shl i32 %19811, %19810
  store i32 %19812, ptr %47, align 4, !tbaa !9
  %19813 = load i32, ptr %47, align 4, !tbaa !9
  %19814 = load i32, ptr %46, align 4, !tbaa !9
  %19815 = sub i32 %19814, %19813
  store i32 %19815, ptr %46, align 4, !tbaa !9
  store i32 72, ptr %47, align 4, !tbaa !9
  %19816 = load i32, ptr %47, align 4, !tbaa !9
  %19817 = load i32, ptr %46, align 4, !tbaa !9
  %19818 = sub i32 %19817, %19816
  store i32 %19818, ptr %46, align 4, !tbaa !9
  %19819 = load ptr, ptr %5, align 8, !tbaa !5
  %19820 = getelementptr inbounds %struct.w2c_hermes, ptr %19819, i32 0, i32 6
  %19821 = load i32, ptr %46, align 4, !tbaa !9
  %19822 = zext i32 %19821 to i64
  %19823 = call i64 @i64_load(ptr noundef %19820, i64 noundef %19822)
  store i64 %19823, ptr %55, align 8, !tbaa !11
  %19824 = load ptr, ptr %5, align 8, !tbaa !5
  %19825 = getelementptr inbounds %struct.w2c_hermes, ptr %19824, i32 0, i32 6
  %19826 = load i32, ptr %45, align 4, !tbaa !9
  %19827 = zext i32 %19826 to i64
  %19828 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19825, i64 noundef %19827, i64 noundef %19828)
  %19829 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19829, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %19830 = load i32, ptr %46, align 4, !tbaa !9
  %19831 = load i32, ptr %45, align 4, !tbaa !9
  %19832 = add i32 %19831, %19830
  store i32 %19832, ptr %45, align 4, !tbaa !9
  %19833 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19833, ptr %6, align 4, !tbaa !9
  br label %2945

19834:                                            ; preds = %19790, %19762, %19680, %19651
  %19835 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19835, ptr %45, align 4, !tbaa !9
  %19836 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19836, ptr %46, align 4, !tbaa !9
  %19837 = load ptr, ptr %5, align 8, !tbaa !5
  %19838 = getelementptr inbounds %struct.w2c_hermes, ptr %19837, i32 0, i32 6
  %19839 = load i32, ptr %45, align 4, !tbaa !9
  %19840 = zext i32 %19839 to i64
  %19841 = add i64 %19840, 5808
  %19842 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19838, i64 noundef %19841, i32 noundef %19842)
  %19843 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19843, ptr %45, align 4, !tbaa !9
  store i32 216, ptr %46, align 4, !tbaa !9
  %19844 = load i32, ptr %46, align 4, !tbaa !9
  %19845 = load i32, ptr %45, align 4, !tbaa !9
  %19846 = add i32 %19845, %19844
  store i32 %19846, ptr %45, align 4, !tbaa !9
  %19847 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19847, ptr %46, align 4, !tbaa !9
  %19848 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19848, ptr %47, align 4, !tbaa !9
  %19849 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19849, ptr %48, align 4, !tbaa !9
  %19850 = load ptr, ptr %5, align 8, !tbaa !5
  %19851 = getelementptr inbounds %struct.w2c_hermes, ptr %19850, i32 0, i32 6
  %19852 = load i32, ptr %48, align 4, !tbaa !9
  %19853 = zext i32 %19852 to i64
  %19854 = add i64 %19853, 3
  %19855 = call i32 @i32_load8_u(ptr noundef %19851, i64 noundef %19854)
  store i32 %19855, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %19856 = load i32, ptr %49, align 4, !tbaa !9
  %19857 = and i32 %19856, 31
  %19858 = load i32, ptr %48, align 4, !tbaa !9
  %19859 = shl i32 %19858, %19857
  store i32 %19859, ptr %48, align 4, !tbaa !9
  %19860 = load i32, ptr %48, align 4, !tbaa !9
  %19861 = load i32, ptr %47, align 4, !tbaa !9
  %19862 = add i32 %19861, %19860
  store i32 %19862, ptr %47, align 4, !tbaa !9
  %19863 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19863, ptr %48, align 4, !tbaa !9
  %19864 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19864, ptr %49, align 4, !tbaa !9
  %19865 = load ptr, ptr %5, align 8, !tbaa !5
  %19866 = getelementptr inbounds %struct.w2c_hermes, ptr %19865, i32 0, i32 6
  %19867 = load i32, ptr %49, align 4, !tbaa !9
  %19868 = zext i32 %19867 to i64
  %19869 = add i64 %19868, 2
  %19870 = call i32 @i32_load8_u(ptr noundef %19866, i64 noundef %19869)
  store i32 %19870, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %19871 = load i32, ptr %50, align 4, !tbaa !9
  %19872 = and i32 %19871, 31
  %19873 = load i32, ptr %49, align 4, !tbaa !9
  %19874 = shl i32 %19873, %19872
  store i32 %19874, ptr %49, align 4, !tbaa !9
  %19875 = load i32, ptr %49, align 4, !tbaa !9
  %19876 = load i32, ptr %48, align 4, !tbaa !9
  %19877 = add i32 %19876, %19875
  store i32 %19877, ptr %48, align 4, !tbaa !9
  %19878 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19878, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %19879 = load i32, ptr %50, align 4, !tbaa !9
  %19880 = load i32, ptr %49, align 4, !tbaa !9
  %19881 = sub i32 %19880, %19879
  store i32 %19881, ptr %49, align 4, !tbaa !9
  %19882 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %19882, ptr %50, align 4, !tbaa !9
  %19883 = load ptr, ptr %5, align 8, !tbaa !5
  %19884 = load i32, ptr %45, align 4, !tbaa !9
  %19885 = load i32, ptr %46, align 4, !tbaa !9
  %19886 = load i32, ptr %47, align 4, !tbaa !9
  %19887 = load i32, ptr %48, align 4, !tbaa !9
  %19888 = load i32, ptr %49, align 4, !tbaa !9
  %19889 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AgetArgumentsPropByValSlowPath_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef %19883, i32 noundef %19884, i32 noundef %19885, i32 noundef %19886, i32 noundef %19887, i32 noundef %19888, i32 noundef %19889)
  %19890 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %19890, ptr %45, align 4, !tbaa !9
  %19891 = load ptr, ptr %5, align 8, !tbaa !5
  %19892 = getelementptr inbounds %struct.w2c_hermes, ptr %19891, i32 0, i32 6
  %19893 = load i32, ptr %45, align 4, !tbaa !9
  %19894 = zext i32 %19893 to i64
  %19895 = add i64 %19894, 5808
  %19896 = call i32 @i32_load(ptr noundef %19892, i64 noundef %19895)
  store i32 %19896, ptr %45, align 4, !tbaa !9
  %19897 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19897, ptr %6, align 4, !tbaa !9
  %19898 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19898, ptr %45, align 4, !tbaa !9
  %19899 = load ptr, ptr %5, align 8, !tbaa !5
  %19900 = getelementptr inbounds %struct.w2c_hermes, ptr %19899, i32 0, i32 6
  %19901 = load i32, ptr %45, align 4, !tbaa !9
  %19902 = zext i32 %19901 to i64
  %19903 = add i64 %19902, 216
  %19904 = call i32 @i32_load(ptr noundef %19900, i64 noundef %19903)
  store i32 %19904, ptr %45, align 4, !tbaa !9
  %19905 = load i32, ptr %45, align 4, !tbaa !9
  %19906 = icmp ne i32 %19905, 0
  %19907 = xor i1 %19906, true
  %19908 = zext i1 %19907 to i32
  store i32 %19908, ptr %45, align 4, !tbaa !9
  %19909 = load i32, ptr %45, align 4, !tbaa !9
  %19910 = icmp ne i32 %19909, 0
  br i1 %19910, label %19911, label %19912

19911:                                            ; preds = %19834
  br label %43136

19912:                                            ; preds = %19834
  %19913 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19913, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %19914 = load ptr, ptr %5, align 8, !tbaa !5
  %19915 = getelementptr inbounds %struct.w2c_hermes, ptr %19914, i32 0, i32 6
  %19916 = load i32, ptr %45, align 4, !tbaa !9
  %19917 = zext i32 %19916 to i64
  %19918 = add i64 %19917, 516
  %19919 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19915, i64 noundef %19918, i32 noundef %19919)
  %19920 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19920, ptr %45, align 4, !tbaa !9
  %19921 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %19921, ptr %46, align 4, !tbaa !9
  %19922 = load ptr, ptr %5, align 8, !tbaa !5
  %19923 = getelementptr inbounds %struct.w2c_hermes, ptr %19922, i32 0, i32 6
  %19924 = load i32, ptr %45, align 4, !tbaa !9
  %19925 = zext i32 %19924 to i64
  %19926 = add i64 %19925, 512
  %19927 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19923, i64 noundef %19926, i32 noundef %19927)
  %19928 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19928, ptr %45, align 4, !tbaa !9
  %19929 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %19929, ptr %46, align 4, !tbaa !9
  %19930 = load ptr, ptr %5, align 8, !tbaa !5
  %19931 = getelementptr inbounds %struct.w2c_hermes, ptr %19930, i32 0, i32 6
  %19932 = load i32, ptr %45, align 4, !tbaa !9
  %19933 = zext i32 %19932 to i64
  %19934 = add i64 %19933, 508
  %19935 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %19931, i64 noundef %19934, i32 noundef %19935)
  %19936 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19936, ptr %45, align 4, !tbaa !9
  %19937 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19937, ptr %46, align 4, !tbaa !9
  %19938 = load ptr, ptr %5, align 8, !tbaa !5
  %19939 = getelementptr inbounds %struct.w2c_hermes, ptr %19938, i32 0, i32 6
  %19940 = load i32, ptr %46, align 4, !tbaa !9
  %19941 = zext i32 %19940 to i64
  %19942 = add i64 %19941, 1
  %19943 = call i32 @i32_load8_u(ptr noundef %19939, i64 noundef %19942)
  store i32 %19943, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19944 = load i32, ptr %47, align 4, !tbaa !9
  %19945 = and i32 %19944, 31
  %19946 = load i32, ptr %46, align 4, !tbaa !9
  %19947 = shl i32 %19946, %19945
  store i32 %19947, ptr %46, align 4, !tbaa !9
  %19948 = load i32, ptr %46, align 4, !tbaa !9
  %19949 = load i32, ptr %45, align 4, !tbaa !9
  %19950 = add i32 %19949, %19948
  store i32 %19950, ptr %45, align 4, !tbaa !9
  %19951 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %19951, ptr %46, align 4, !tbaa !9
  %19952 = load ptr, ptr %5, align 8, !tbaa !5
  %19953 = getelementptr inbounds %struct.w2c_hermes, ptr %19952, i32 0, i32 6
  %19954 = load i32, ptr %46, align 4, !tbaa !9
  %19955 = zext i32 %19954 to i64
  %19956 = add i64 %19955, 224
  %19957 = call i64 @i64_load(ptr noundef %19953, i64 noundef %19956)
  store i64 %19957, ptr %55, align 8, !tbaa !11
  %19958 = load ptr, ptr %5, align 8, !tbaa !5
  %19959 = getelementptr inbounds %struct.w2c_hermes, ptr %19958, i32 0, i32 6
  %19960 = load i32, ptr %45, align 4, !tbaa !9
  %19961 = zext i32 %19960 to i64
  %19962 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %19959, i64 noundef %19961, i64 noundef %19962)
  %19963 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19963, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %19964 = load i32, ptr %46, align 4, !tbaa !9
  %19965 = load i32, ptr %45, align 4, !tbaa !9
  %19966 = add i32 %19965, %19964
  store i32 %19966, ptr %45, align 4, !tbaa !9
  %19967 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %19967, ptr %6, align 4, !tbaa !9
  br label %2945

19968:                                            ; preds = %3054
  %19969 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %19969, ptr %45, align 4, !tbaa !9
  %19970 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %19970, ptr %46, align 4, !tbaa !9
  %19971 = load ptr, ptr %5, align 8, !tbaa !5
  %19972 = getelementptr inbounds %struct.w2c_hermes, ptr %19971, i32 0, i32 6
  %19973 = load i32, ptr %46, align 4, !tbaa !9
  %19974 = zext i32 %19973 to i64
  %19975 = add i64 %19974, 1
  %19976 = call i32 @i32_load8_u(ptr noundef %19972, i64 noundef %19975)
  store i32 %19976, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %19977 = load i32, ptr %47, align 4, !tbaa !9
  %19978 = and i32 %19977, 31
  %19979 = load i32, ptr %46, align 4, !tbaa !9
  %19980 = shl i32 %19979, %19978
  store i32 %19980, ptr %46, align 4, !tbaa !9
  %19981 = load i32, ptr %46, align 4, !tbaa !9
  %19982 = load i32, ptr %45, align 4, !tbaa !9
  %19983 = add i32 %19982, %19981
  store i32 %19983, ptr %45, align 4, !tbaa !9
  %19984 = load ptr, ptr %5, align 8, !tbaa !5
  %19985 = getelementptr inbounds %struct.w2c_hermes, ptr %19984, i32 0, i32 6
  %19986 = load i32, ptr %45, align 4, !tbaa !9
  %19987 = zext i32 %19986 to i64
  %19988 = call i64 @i64_load(ptr noundef %19985, i64 noundef %19987)
  store i64 %19988, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %19989 = load i64, ptr %54, align 8, !tbaa !11
  %19990 = load i64, ptr %55, align 8, !tbaa !11
  %19991 = and i64 %19990, 63
  %19992 = ashr i64 %19989, %19991
  store i64 %19992, ptr %54, align 8, !tbaa !11
  %19993 = load i64, ptr %54, align 8, !tbaa !11
  %19994 = trunc i64 %19993 to i32
  store i32 %19994, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %19995 = load i32, ptr %45, align 4, !tbaa !9
  %19996 = load i32, ptr %46, align 4, !tbaa !9
  %19997 = icmp ne i32 %19995, %19996
  %19998 = zext i1 %19997 to i32
  store i32 %19998, ptr %45, align 4, !tbaa !9
  %19999 = load i32, ptr %45, align 4, !tbaa !9
  %20000 = icmp ne i32 %19999, 0
  br i1 %20000, label %20001, label %20007

20001:                                            ; preds = %19968
  %20002 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20002, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %20003 = load i32, ptr %46, align 4, !tbaa !9
  %20004 = load i32, ptr %45, align 4, !tbaa !9
  %20005 = add i32 %20004, %20003
  store i32 %20005, ptr %45, align 4, !tbaa !9
  %20006 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20006, ptr %6, align 4, !tbaa !9
  br label %2945

20007:                                            ; preds = %19968
  %20008 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20008, ptr %45, align 4, !tbaa !9
  %20009 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20009, ptr %46, align 4, !tbaa !9
  %20010 = load ptr, ptr %5, align 8, !tbaa !5
  %20011 = getelementptr inbounds %struct.w2c_hermes, ptr %20010, i32 0, i32 6
  %20012 = load i32, ptr %45, align 4, !tbaa !9
  %20013 = zext i32 %20012 to i64
  %20014 = add i64 %20013, 5808
  %20015 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20011, i64 noundef %20014, i32 noundef %20015)
  %20016 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20016, ptr %45, align 4, !tbaa !9
  %20017 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20017, ptr %46, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %20018 = load i32, ptr %47, align 4, !tbaa !9
  %20019 = load i32, ptr %46, align 4, !tbaa !9
  %20020 = sub i32 %20019, %20018
  store i32 %20020, ptr %46, align 4, !tbaa !9
  %20021 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %20021, ptr %47, align 4, !tbaa !9
  %20022 = load ptr, ptr %5, align 8, !tbaa !5
  %20023 = load i32, ptr %45, align 4, !tbaa !9
  %20024 = load i32, ptr %46, align 4, !tbaa !9
  %20025 = load i32, ptr %47, align 4, !tbaa !9
  %20026 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AreifyArgumentsSlowPath0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef %20022, i32 noundef %20023, i32 noundef %20024, i32 noundef %20025)
  store i32 %20026, ptr %45, align 4, !tbaa !9
  %20027 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20027, ptr %7, align 4, !tbaa !9
  %20028 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20028, ptr %45, align 4, !tbaa !9
  %20029 = load ptr, ptr %5, align 8, !tbaa !5
  %20030 = getelementptr inbounds %struct.w2c_hermes, ptr %20029, i32 0, i32 6
  %20031 = load i32, ptr %45, align 4, !tbaa !9
  %20032 = zext i32 %20031 to i64
  %20033 = add i64 %20032, 5808
  %20034 = call i32 @i32_load(ptr noundef %20030, i64 noundef %20033)
  store i32 %20034, ptr %45, align 4, !tbaa !9
  %20035 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20035, ptr %6, align 4, !tbaa !9
  %20036 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20036, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %20037 = load i32, ptr %45, align 4, !tbaa !9
  %20038 = load i32, ptr %46, align 4, !tbaa !9
  %20039 = icmp eq i32 %20037, %20038
  %20040 = zext i1 %20039 to i32
  store i32 %20040, ptr %45, align 4, !tbaa !9
  %20041 = load i32, ptr %45, align 4, !tbaa !9
  %20042 = icmp ne i32 %20041, 0
  br i1 %20042, label %20043, label %20044

20043:                                            ; preds = %20007
  br label %43136

20044:                                            ; preds = %20007
  %20045 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20045, ptr %45, align 4, !tbaa !9
  %20046 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20046, ptr %46, align 4, !tbaa !9
  %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 %46, align 4, !tbaa !9
  %20050 = zext i32 %20049 to i64
  %20051 = add i64 %20050, 1
  %20052 = call i32 @i32_load8_u(ptr noundef %20048, i64 noundef %20051)
  store i32 %20052, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20053 = load i32, ptr %47, align 4, !tbaa !9
  %20054 = and i32 %20053, 31
  %20055 = load i32, ptr %46, align 4, !tbaa !9
  %20056 = shl i32 %20055, %20054
  store i32 %20056, ptr %46, align 4, !tbaa !9
  %20057 = load i32, ptr %46, align 4, !tbaa !9
  %20058 = load i32, ptr %45, align 4, !tbaa !9
  %20059 = add i32 %20058, %20057
  store i32 %20059, ptr %45, align 4, !tbaa !9
  %20060 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20060, ptr %46, align 4, !tbaa !9
  %20061 = load ptr, ptr %5, align 8, !tbaa !5
  %20062 = getelementptr inbounds %struct.w2c_hermes, ptr %20061, i32 0, i32 6
  %20063 = load i32, ptr %46, align 4, !tbaa !9
  %20064 = zext i32 %20063 to i64
  %20065 = call i64 @i64_load(ptr noundef %20062, i64 noundef %20064)
  store i64 %20065, ptr %55, align 8, !tbaa !11
  %20066 = load ptr, ptr %5, align 8, !tbaa !5
  %20067 = getelementptr inbounds %struct.w2c_hermes, ptr %20066, i32 0, i32 6
  %20068 = load i32, ptr %45, align 4, !tbaa !9
  %20069 = zext i32 %20068 to i64
  %20070 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20067, i64 noundef %20069, i64 noundef %20070)
  %20071 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20071, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20072 = load ptr, ptr %5, align 8, !tbaa !5
  %20073 = getelementptr inbounds %struct.w2c_hermes, ptr %20072, i32 0, i32 6
  %20074 = load i32, ptr %45, align 4, !tbaa !9
  %20075 = zext i32 %20074 to i64
  %20076 = add i64 %20075, 516
  %20077 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20073, i64 noundef %20076, i32 noundef %20077)
  %20078 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20078, ptr %45, align 4, !tbaa !9
  %20079 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20079, ptr %46, align 4, !tbaa !9
  %20080 = load ptr, ptr %5, align 8, !tbaa !5
  %20081 = getelementptr inbounds %struct.w2c_hermes, ptr %20080, i32 0, i32 6
  %20082 = load i32, ptr %45, align 4, !tbaa !9
  %20083 = zext i32 %20082 to i64
  %20084 = add i64 %20083, 512
  %20085 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20081, i64 noundef %20084, i32 noundef %20085)
  %20086 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20086, ptr %45, align 4, !tbaa !9
  %20087 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20087, ptr %46, align 4, !tbaa !9
  %20088 = load ptr, ptr %5, align 8, !tbaa !5
  %20089 = getelementptr inbounds %struct.w2c_hermes, ptr %20088, i32 0, i32 6
  %20090 = load i32, ptr %45, align 4, !tbaa !9
  %20091 = zext i32 %20090 to i64
  %20092 = add i64 %20091, 508
  %20093 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20089, i64 noundef %20092, i32 noundef %20093)
  %20094 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20094, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %20095 = load i32, ptr %46, align 4, !tbaa !9
  %20096 = load i32, ptr %45, align 4, !tbaa !9
  %20097 = add i32 %20096, %20095
  store i32 %20097, ptr %45, align 4, !tbaa !9
  %20098 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20098, ptr %6, align 4, !tbaa !9
  br label %2945

20099:                                            ; preds = %3055
  %20100 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20100, ptr %45, align 4, !tbaa !9
  %20101 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20101, ptr %46, align 4, !tbaa !9
  %20102 = load ptr, ptr %5, align 8, !tbaa !5
  %20103 = getelementptr inbounds %struct.w2c_hermes, ptr %20102, i32 0, i32 6
  %20104 = load i32, ptr %45, align 4, !tbaa !9
  %20105 = zext i32 %20104 to i64
  %20106 = add i64 %20105, 5808
  %20107 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20103, i64 noundef %20106, i32 noundef %20107)
  %20108 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20108, ptr %45, align 4, !tbaa !9
  %20109 = load ptr, ptr %5, align 8, !tbaa !5
  %20110 = load i32, ptr %45, align 4, !tbaa !9
  %20111 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %20109, i32 noundef %20110)
  store i32 %20111, ptr %45, align 4, !tbaa !9
  %20112 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20112, ptr %7, align 4, !tbaa !9
  %20113 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20113, ptr %45, align 4, !tbaa !9
  %20114 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20114, ptr %46, align 4, !tbaa !9
  %20115 = load ptr, ptr %5, align 8, !tbaa !5
  %20116 = getelementptr inbounds %struct.w2c_hermes, ptr %20115, i32 0, i32 6
  %20117 = load i32, ptr %46, align 4, !tbaa !9
  %20118 = zext i32 %20117 to i64
  %20119 = add i64 %20118, 1
  %20120 = call i32 @i32_load8_u(ptr noundef %20116, i64 noundef %20119)
  store i32 %20120, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20121 = load i32, ptr %47, align 4, !tbaa !9
  %20122 = and i32 %20121, 31
  %20123 = load i32, ptr %46, align 4, !tbaa !9
  %20124 = shl i32 %20123, %20122
  store i32 %20124, ptr %46, align 4, !tbaa !9
  %20125 = load i32, ptr %46, align 4, !tbaa !9
  %20126 = load i32, ptr %45, align 4, !tbaa !9
  %20127 = add i32 %20126, %20125
  store i32 %20127, ptr %45, align 4, !tbaa !9
  %20128 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20128, ptr %46, align 4, !tbaa !9
  %20129 = load i32, ptr %46, align 4, !tbaa !9
  %20130 = zext i32 %20129 to i64
  store i64 %20130, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %20131 = load i64, ptr %56, align 8, !tbaa !11
  %20132 = load i64, ptr %55, align 8, !tbaa !11
  %20133 = or i64 %20132, %20131
  store i64 %20133, ptr %55, align 8, !tbaa !11
  %20134 = load ptr, ptr %5, align 8, !tbaa !5
  %20135 = getelementptr inbounds %struct.w2c_hermes, ptr %20134, i32 0, i32 6
  %20136 = load i32, ptr %45, align 4, !tbaa !9
  %20137 = zext i32 %20136 to i64
  %20138 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20135, i64 noundef %20137, i64 noundef %20138)
  %20139 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20139, ptr %45, align 4, !tbaa !9
  %20140 = load ptr, ptr %5, align 8, !tbaa !5
  %20141 = getelementptr inbounds %struct.w2c_hermes, ptr %20140, i32 0, i32 6
  %20142 = load i32, ptr %45, align 4, !tbaa !9
  %20143 = zext i32 %20142 to i64
  %20144 = add i64 %20143, 5808
  %20145 = call i32 @i32_load(ptr noundef %20141, i64 noundef %20144)
  store i32 %20145, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %20146 = load i32, ptr %46, align 4, !tbaa !9
  %20147 = load i32, ptr %45, align 4, !tbaa !9
  %20148 = add i32 %20147, %20146
  store i32 %20148, ptr %45, align 4, !tbaa !9
  %20149 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20149, ptr %6, align 4, !tbaa !9
  br label %2945

20150:                                            ; preds = %3056
  %20151 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20151, ptr %45, align 4, !tbaa !9
  %20152 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20152, ptr %46, align 4, !tbaa !9
  %20153 = load ptr, ptr %5, align 8, !tbaa !5
  %20154 = getelementptr inbounds %struct.w2c_hermes, ptr %20153, i32 0, i32 6
  %20155 = load i32, ptr %45, align 4, !tbaa !9
  %20156 = zext i32 %20155 to i64
  %20157 = add i64 %20156, 5808
  %20158 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20154, i64 noundef %20157, i32 noundef %20158)
  %20159 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20159, ptr %45, align 4, !tbaa !9
  %20160 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20160, ptr %46, align 4, !tbaa !9
  %20161 = load ptr, ptr %5, align 8, !tbaa !5
  %20162 = getelementptr inbounds %struct.w2c_hermes, ptr %20161, i32 0, i32 6
  %20163 = load i32, ptr %46, align 4, !tbaa !9
  %20164 = zext i32 %20163 to i64
  %20165 = add i64 %20164, 2
  %20166 = call i32 @i32_load8_u(ptr noundef %20162, i64 noundef %20165)
  store i32 %20166, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20167 = load i32, ptr %47, align 4, !tbaa !9
  %20168 = and i32 %20167, 31
  %20169 = load i32, ptr %46, align 4, !tbaa !9
  %20170 = shl i32 %20169, %20168
  store i32 %20170, ptr %46, align 4, !tbaa !9
  %20171 = load i32, ptr %46, align 4, !tbaa !9
  %20172 = load i32, ptr %45, align 4, !tbaa !9
  %20173 = add i32 %20172, %20171
  store i32 %20173, ptr %45, align 4, !tbaa !9
  %20174 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20174, ptr %7, align 4, !tbaa !9
  %20175 = load ptr, ptr %5, align 8, !tbaa !5
  %20176 = getelementptr inbounds %struct.w2c_hermes, ptr %20175, i32 0, i32 6
  %20177 = load i32, ptr %45, align 4, !tbaa !9
  %20178 = zext i32 %20177 to i64
  %20179 = call i64 @i64_load(ptr noundef %20176, i64 noundef %20178)
  store i64 %20179, ptr %54, align 8, !tbaa !11
  %20180 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %20180, ptr %39, align 8, !tbaa !11
  %20181 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20181, ptr %45, align 4, !tbaa !9
  %20182 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20182, ptr %46, align 4, !tbaa !9
  store i32 67200, ptr %47, align 4, !tbaa !9
  %20183 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %20183, ptr %48, align 4, !tbaa !9
  %20184 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %20184, ptr %58, align 8, !tbaa !11
  store i64 47, ptr %59, align 8, !tbaa !11
  %20185 = load i64, ptr %58, align 8, !tbaa !11
  %20186 = load i64, ptr %59, align 8, !tbaa !11
  %20187 = and i64 %20186, 63
  %20188 = ashr i64 %20185, %20187
  store i64 %20188, ptr %58, align 8, !tbaa !11
  %20189 = load i64, ptr %58, align 8, !tbaa !11
  %20190 = trunc i64 %20189 to i32
  store i32 %20190, ptr %49, align 4, !tbaa !9
  store i32 -11, ptr %50, align 4, !tbaa !9
  %20191 = load i32, ptr %49, align 4, !tbaa !9
  %20192 = load i32, ptr %50, align 4, !tbaa !9
  %20193 = icmp eq i32 %20191, %20192
  %20194 = zext i1 %20193 to i32
  store i32 %20194, ptr %49, align 4, !tbaa !9
  %20195 = load i32, ptr %49, align 4, !tbaa !9
  %20196 = icmp ne i32 %20195, 0
  br i1 %20196, label %20197, label %20199

20197:                                            ; preds = %20150
  %20198 = load i32, ptr %47, align 4, !tbaa !9
  br label %20201

20199:                                            ; preds = %20150
  %20200 = load i32, ptr %48, align 4, !tbaa !9
  br label %20201

20201:                                            ; preds = %20199, %20197
  %20202 = phi i32 [ %20198, %20197 ], [ %20200, %20199 ]
  store i32 %20202, ptr %47, align 4, !tbaa !9
  %20203 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %20203, ptr %57, align 8, !tbaa !11
  store i64 48, ptr %58, align 8, !tbaa !11
  %20204 = load i64, ptr %57, align 8, !tbaa !11
  %20205 = load i64, ptr %58, align 8, !tbaa !11
  %20206 = and i64 %20205, 63
  %20207 = ashr i64 %20204, %20206
  store i64 %20207, ptr %57, align 8, !tbaa !11
  %20208 = load i64, ptr %57, align 8, !tbaa !11
  %20209 = trunc i64 %20208 to i32
  store i32 %20209, ptr %48, align 4, !tbaa !9
  store i32 -1, ptr %49, align 4, !tbaa !9
  %20210 = load i32, ptr %48, align 4, !tbaa !9
  %20211 = load i32, ptr %49, align 4, !tbaa !9
  %20212 = icmp eq i32 %20210, %20211
  %20213 = zext i1 %20212 to i32
  store i32 %20213, ptr %48, align 4, !tbaa !9
  %20214 = load i32, ptr %48, align 4, !tbaa !9
  %20215 = icmp ne i32 %20214, 0
  br i1 %20215, label %20216, label %20218

20216:                                            ; preds = %20201
  %20217 = load i32, ptr %46, align 4, !tbaa !9
  br label %20220

20218:                                            ; preds = %20201
  %20219 = load i32, ptr %47, align 4, !tbaa !9
  br label %20220

20220:                                            ; preds = %20218, %20216
  %20221 = phi i32 [ %20217, %20216 ], [ %20219, %20218 ]
  store i32 %20221, ptr %46, align 4, !tbaa !9
  %20222 = load ptr, ptr %5, align 8, !tbaa !5
  %20223 = load i32, ptr %45, align 4, !tbaa !9
  %20224 = load i32, ptr %46, align 4, !tbaa !9
  %20225 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x29(ptr noundef %20222, i32 noundef %20223, i32 noundef %20224)
  store i32 %20225, ptr %45, align 4, !tbaa !9
  %20226 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20226, ptr %7, align 4, !tbaa !9
  %20227 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20227, ptr %45, align 4, !tbaa !9
  %20228 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20228, ptr %46, align 4, !tbaa !9
  %20229 = load ptr, ptr %5, align 8, !tbaa !5
  %20230 = getelementptr inbounds %struct.w2c_hermes, ptr %20229, i32 0, i32 6
  %20231 = load i32, ptr %46, align 4, !tbaa !9
  %20232 = zext i32 %20231 to i64
  %20233 = add i64 %20232, 1
  %20234 = call i32 @i32_load8_u(ptr noundef %20230, i64 noundef %20233)
  store i32 %20234, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20235 = load i32, ptr %47, align 4, !tbaa !9
  %20236 = and i32 %20235, 31
  %20237 = load i32, ptr %46, align 4, !tbaa !9
  %20238 = shl i32 %20237, %20236
  store i32 %20238, ptr %46, align 4, !tbaa !9
  %20239 = load i32, ptr %46, align 4, !tbaa !9
  %20240 = load i32, ptr %45, align 4, !tbaa !9
  %20241 = add i32 %20240, %20239
  store i32 %20241, ptr %45, align 4, !tbaa !9
  %20242 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20242, ptr %46, align 4, !tbaa !9
  %20243 = load i32, ptr %46, align 4, !tbaa !9
  %20244 = zext i32 %20243 to i64
  store i64 %20244, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %20245 = load i64, ptr %56, align 8, !tbaa !11
  %20246 = load i64, ptr %55, align 8, !tbaa !11
  %20247 = or i64 %20246, %20245
  store i64 %20247, ptr %55, align 8, !tbaa !11
  %20248 = load ptr, ptr %5, align 8, !tbaa !5
  %20249 = getelementptr inbounds %struct.w2c_hermes, ptr %20248, i32 0, i32 6
  %20250 = load i32, ptr %45, align 4, !tbaa !9
  %20251 = zext i32 %20250 to i64
  %20252 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20249, i64 noundef %20251, i64 noundef %20252)
  %20253 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20253, ptr %45, align 4, !tbaa !9
  %20254 = load ptr, ptr %5, align 8, !tbaa !5
  %20255 = getelementptr inbounds %struct.w2c_hermes, ptr %20254, i32 0, i32 6
  %20256 = load i32, ptr %45, align 4, !tbaa !9
  %20257 = zext i32 %20256 to i64
  %20258 = add i64 %20257, 5808
  %20259 = call i32 @i32_load(ptr noundef %20255, i64 noundef %20258)
  store i32 %20259, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %20260 = load i32, ptr %46, align 4, !tbaa !9
  %20261 = load i32, ptr %45, align 4, !tbaa !9
  %20262 = add i32 %20261, %20260
  store i32 %20262, ptr %45, align 4, !tbaa !9
  %20263 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20263, ptr %6, align 4, !tbaa !9
  br label %2945

20264:                                            ; preds = %3057
  %20265 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20265, ptr %45, align 4, !tbaa !9
  %20266 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20266, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %20270 = zext i32 %20269 to i64
  %20271 = add i64 %20270, 5808
  %20272 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20268, i64 noundef %20271, i32 noundef %20272)
  %20273 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20273, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %20274 = load i32, ptr %46, align 4, !tbaa !9
  %20275 = load i32, ptr %45, align 4, !tbaa !9
  %20276 = add i32 %20275, %20274
  store i32 %20276, ptr %45, align 4, !tbaa !9
  %20277 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20277, ptr %46, align 4, !tbaa !9
  %20278 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %20278, ptr %47, align 4, !tbaa !9
  %20279 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20279, ptr %48, align 4, !tbaa !9
  %20280 = load ptr, ptr %5, align 8, !tbaa !5
  %20281 = getelementptr inbounds %struct.w2c_hermes, ptr %20280, i32 0, i32 6
  %20282 = load i32, ptr %48, align 4, !tbaa !9
  %20283 = zext i32 %20282 to i64
  %20284 = add i64 %20283, 4
  %20285 = call i32 @i32_load16_u(ptr noundef %20281, i64 noundef %20284)
  store i32 %20285, ptr %48, align 4, !tbaa !9
  %20286 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20286, ptr %49, align 4, !tbaa !9
  %20287 = load ptr, ptr %5, align 8, !tbaa !5
  %20288 = getelementptr inbounds %struct.w2c_hermes, ptr %20287, i32 0, i32 6
  %20289 = load i32, ptr %49, align 4, !tbaa !9
  %20290 = zext i32 %20289 to i64
  %20291 = add i64 %20290, 6
  %20292 = call i32 @i32_load16_u(ptr noundef %20288, i64 noundef %20291)
  store i32 %20292, ptr %49, align 4, !tbaa !9
  %20293 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20293, ptr %50, align 4, !tbaa !9
  %20294 = load ptr, ptr %5, align 8, !tbaa !5
  %20295 = getelementptr inbounds %struct.w2c_hermes, ptr %20294, i32 0, i32 6
  %20296 = load i32, ptr %50, align 4, !tbaa !9
  %20297 = zext i32 %20296 to i64
  %20298 = add i64 %20297, 8
  %20299 = call i32 @i32_load16_u(ptr noundef %20295, i64 noundef %20298)
  store i32 %20299, ptr %50, align 4, !tbaa !9
  %20300 = load ptr, ptr %5, align 8, !tbaa !5
  %20301 = load i32, ptr %45, align 4, !tbaa !9
  %20302 = load i32, ptr %46, align 4, !tbaa !9
  %20303 = load i32, ptr %47, align 4, !tbaa !9
  %20304 = load i32, ptr %48, align 4, !tbaa !9
  %20305 = load i32, ptr %49, align 4, !tbaa !9
  %20306 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateObjectFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %20300, i32 noundef %20301, i32 noundef %20302, i32 noundef %20303, i32 noundef %20304, i32 noundef %20305, i32 noundef %20306)
  %20307 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20307, ptr %45, align 4, !tbaa !9
  %20308 = load ptr, ptr %5, align 8, !tbaa !5
  %20309 = getelementptr inbounds %struct.w2c_hermes, ptr %20308, i32 0, i32 6
  %20310 = load i32, ptr %45, align 4, !tbaa !9
  %20311 = zext i32 %20310 to i64
  %20312 = add i64 %20311, 5808
  %20313 = call i32 @i32_load(ptr noundef %20309, i64 noundef %20312)
  store i32 %20313, ptr %45, align 4, !tbaa !9
  %20314 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20314, ptr %6, align 4, !tbaa !9
  %20315 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20315, ptr %45, align 4, !tbaa !9
  %20316 = load ptr, ptr %5, align 8, !tbaa !5
  %20317 = getelementptr inbounds %struct.w2c_hermes, ptr %20316, i32 0, i32 6
  %20318 = load i32, ptr %45, align 4, !tbaa !9
  %20319 = zext i32 %20318 to i64
  %20320 = add i64 %20319, 304
  %20321 = call i32 @i32_load(ptr noundef %20317, i64 noundef %20320)
  store i32 %20321, ptr %45, align 4, !tbaa !9
  %20322 = load i32, ptr %45, align 4, !tbaa !9
  %20323 = icmp ne i32 %20322, 0
  %20324 = xor i1 %20323, true
  %20325 = zext i1 %20324 to i32
  store i32 %20325, ptr %45, align 4, !tbaa !9
  %20326 = load i32, ptr %45, align 4, !tbaa !9
  %20327 = icmp ne i32 %20326, 0
  br i1 %20327, label %20328, label %20329

20328:                                            ; preds = %20264
  br label %43136

20329:                                            ; preds = %20264
  %20330 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20330, ptr %45, align 4, !tbaa !9
  %20331 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20331, ptr %46, align 4, !tbaa !9
  %20332 = load ptr, ptr %5, align 8, !tbaa !5
  %20333 = getelementptr inbounds %struct.w2c_hermes, ptr %20332, i32 0, i32 6
  %20334 = load i32, ptr %46, align 4, !tbaa !9
  %20335 = zext i32 %20334 to i64
  %20336 = add i64 %20335, 1
  %20337 = call i32 @i32_load8_u(ptr noundef %20333, i64 noundef %20336)
  store i32 %20337, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20338 = load i32, ptr %47, align 4, !tbaa !9
  %20339 = and i32 %20338, 31
  %20340 = load i32, ptr %46, align 4, !tbaa !9
  %20341 = shl i32 %20340, %20339
  store i32 %20341, ptr %46, align 4, !tbaa !9
  %20342 = load i32, ptr %46, align 4, !tbaa !9
  %20343 = load i32, ptr %45, align 4, !tbaa !9
  %20344 = add i32 %20343, %20342
  store i32 %20344, ptr %45, align 4, !tbaa !9
  %20345 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20345, ptr %46, align 4, !tbaa !9
  %20346 = load ptr, ptr %5, align 8, !tbaa !5
  %20347 = getelementptr inbounds %struct.w2c_hermes, ptr %20346, i32 0, i32 6
  %20348 = load i32, ptr %46, align 4, !tbaa !9
  %20349 = zext i32 %20348 to i64
  %20350 = add i64 %20349, 312
  %20351 = call i64 @i64_load(ptr noundef %20347, i64 noundef %20350)
  store i64 %20351, ptr %55, align 8, !tbaa !11
  %20352 = load ptr, ptr %5, align 8, !tbaa !5
  %20353 = getelementptr inbounds %struct.w2c_hermes, ptr %20352, i32 0, i32 6
  %20354 = load i32, ptr %45, align 4, !tbaa !9
  %20355 = zext i32 %20354 to i64
  %20356 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20353, i64 noundef %20355, i64 noundef %20356)
  %20357 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20357, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20358 = load ptr, ptr %5, align 8, !tbaa !5
  %20359 = getelementptr inbounds %struct.w2c_hermes, ptr %20358, i32 0, i32 6
  %20360 = load i32, ptr %45, align 4, !tbaa !9
  %20361 = zext i32 %20360 to i64
  %20362 = add i64 %20361, 516
  %20363 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20359, i64 noundef %20362, i32 noundef %20363)
  %20364 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20364, ptr %45, align 4, !tbaa !9
  %20365 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20365, ptr %46, align 4, !tbaa !9
  %20366 = load ptr, ptr %5, align 8, !tbaa !5
  %20367 = getelementptr inbounds %struct.w2c_hermes, ptr %20366, i32 0, i32 6
  %20368 = load i32, ptr %45, align 4, !tbaa !9
  %20369 = zext i32 %20368 to i64
  %20370 = add i64 %20369, 512
  %20371 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20367, i64 noundef %20370, i32 noundef %20371)
  %20372 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20372, ptr %45, align 4, !tbaa !9
  %20373 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20373, ptr %46, 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 %45, align 4, !tbaa !9
  %20377 = zext i32 %20376 to i64
  %20378 = add i64 %20377, 508
  %20379 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20375, i64 noundef %20378, i32 noundef %20379)
  %20380 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20380, ptr %45, align 4, !tbaa !9
  store i32 10, ptr %46, align 4, !tbaa !9
  %20381 = load i32, ptr %46, align 4, !tbaa !9
  %20382 = load i32, ptr %45, align 4, !tbaa !9
  %20383 = add i32 %20382, %20381
  store i32 %20383, ptr %45, align 4, !tbaa !9
  %20384 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20384, ptr %6, align 4, !tbaa !9
  br label %2945

20385:                                            ; preds = %3058
  %20386 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20386, ptr %45, align 4, !tbaa !9
  %20387 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20387, ptr %46, align 4, !tbaa !9
  %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 %45, align 4, !tbaa !9
  %20391 = zext i32 %20390 to i64
  %20392 = add i64 %20391, 5808
  %20393 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20389, i64 noundef %20392, i32 noundef %20393)
  %20394 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20394, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %20395 = load i32, ptr %46, align 4, !tbaa !9
  %20396 = load i32, ptr %45, align 4, !tbaa !9
  %20397 = add i32 %20396, %20395
  store i32 %20397, ptr %45, align 4, !tbaa !9
  %20398 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20398, ptr %46, align 4, !tbaa !9
  %20399 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %20399, ptr %47, align 4, !tbaa !9
  %20400 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20400, ptr %48, align 4, !tbaa !9
  %20401 = load ptr, ptr %5, align 8, !tbaa !5
  %20402 = getelementptr inbounds %struct.w2c_hermes, ptr %20401, i32 0, i32 6
  %20403 = load i32, ptr %48, align 4, !tbaa !9
  %20404 = zext i32 %20403 to i64
  %20405 = add i64 %20404, 4
  %20406 = call i32 @i32_load16_u(ptr noundef %20402, i64 noundef %20405)
  store i32 %20406, ptr %48, align 4, !tbaa !9
  %20407 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20407, ptr %49, align 4, !tbaa !9
  %20408 = load ptr, ptr %5, align 8, !tbaa !5
  %20409 = getelementptr inbounds %struct.w2c_hermes, ptr %20408, i32 0, i32 6
  %20410 = load i32, ptr %49, align 4, !tbaa !9
  %20411 = zext i32 %20410 to i64
  %20412 = add i64 %20411, 6
  %20413 = call i32 @i32_load(ptr noundef %20409, i64 noundef %20412)
  store i32 %20413, ptr %49, align 4, !tbaa !9
  %20414 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20414, ptr %50, align 4, !tbaa !9
  %20415 = load ptr, ptr %5, align 8, !tbaa !5
  %20416 = getelementptr inbounds %struct.w2c_hermes, ptr %20415, i32 0, i32 6
  %20417 = load i32, ptr %50, align 4, !tbaa !9
  %20418 = zext i32 %20417 to i64
  %20419 = add i64 %20418, 10
  %20420 = call i32 @i32_load(ptr noundef %20416, i64 noundef %20419)
  store i32 %20420, ptr %50, align 4, !tbaa !9
  %20421 = load ptr, ptr %5, align 8, !tbaa !5
  %20422 = load i32, ptr %45, align 4, !tbaa !9
  %20423 = load i32, ptr %46, align 4, !tbaa !9
  %20424 = load i32, ptr %47, align 4, !tbaa !9
  %20425 = load i32, ptr %48, align 4, !tbaa !9
  %20426 = load i32, ptr %49, align 4, !tbaa !9
  %20427 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateObjectFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %20421, i32 noundef %20422, i32 noundef %20423, i32 noundef %20424, i32 noundef %20425, i32 noundef %20426, i32 noundef %20427)
  %20428 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20428, ptr %45, align 4, !tbaa !9
  %20429 = load ptr, ptr %5, align 8, !tbaa !5
  %20430 = getelementptr inbounds %struct.w2c_hermes, ptr %20429, i32 0, i32 6
  %20431 = load i32, ptr %45, align 4, !tbaa !9
  %20432 = zext i32 %20431 to i64
  %20433 = add i64 %20432, 5808
  %20434 = call i32 @i32_load(ptr noundef %20430, i64 noundef %20433)
  store i32 %20434, ptr %45, align 4, !tbaa !9
  %20435 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20435, ptr %6, align 4, !tbaa !9
  %20436 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20436, ptr %45, align 4, !tbaa !9
  %20437 = load ptr, ptr %5, align 8, !tbaa !5
  %20438 = getelementptr inbounds %struct.w2c_hermes, ptr %20437, i32 0, i32 6
  %20439 = load i32, ptr %45, align 4, !tbaa !9
  %20440 = zext i32 %20439 to i64
  %20441 = add i64 %20440, 304
  %20442 = call i32 @i32_load(ptr noundef %20438, i64 noundef %20441)
  store i32 %20442, ptr %45, align 4, !tbaa !9
  %20443 = load i32, ptr %45, align 4, !tbaa !9
  %20444 = icmp ne i32 %20443, 0
  %20445 = xor i1 %20444, true
  %20446 = zext i1 %20445 to i32
  store i32 %20446, ptr %45, align 4, !tbaa !9
  %20447 = load i32, ptr %45, align 4, !tbaa !9
  %20448 = icmp ne i32 %20447, 0
  br i1 %20448, label %20449, label %20450

20449:                                            ; preds = %20385
  br label %43136

20450:                                            ; preds = %20385
  %20451 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20451, ptr %45, align 4, !tbaa !9
  %20452 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20452, ptr %46, align 4, !tbaa !9
  %20453 = load ptr, ptr %5, align 8, !tbaa !5
  %20454 = getelementptr inbounds %struct.w2c_hermes, ptr %20453, i32 0, i32 6
  %20455 = load i32, ptr %46, align 4, !tbaa !9
  %20456 = zext i32 %20455 to i64
  %20457 = add i64 %20456, 1
  %20458 = call i32 @i32_load8_u(ptr noundef %20454, i64 noundef %20457)
  store i32 %20458, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20459 = load i32, ptr %47, align 4, !tbaa !9
  %20460 = and i32 %20459, 31
  %20461 = load i32, ptr %46, align 4, !tbaa !9
  %20462 = shl i32 %20461, %20460
  store i32 %20462, ptr %46, align 4, !tbaa !9
  %20463 = load i32, ptr %46, align 4, !tbaa !9
  %20464 = load i32, ptr %45, align 4, !tbaa !9
  %20465 = add i32 %20464, %20463
  store i32 %20465, ptr %45, align 4, !tbaa !9
  %20466 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20466, ptr %46, align 4, !tbaa !9
  %20467 = load ptr, ptr %5, align 8, !tbaa !5
  %20468 = getelementptr inbounds %struct.w2c_hermes, ptr %20467, i32 0, i32 6
  %20469 = load i32, ptr %46, align 4, !tbaa !9
  %20470 = zext i32 %20469 to i64
  %20471 = add i64 %20470, 312
  %20472 = call i64 @i64_load(ptr noundef %20468, i64 noundef %20471)
  store i64 %20472, ptr %55, align 8, !tbaa !11
  %20473 = load ptr, ptr %5, align 8, !tbaa !5
  %20474 = getelementptr inbounds %struct.w2c_hermes, ptr %20473, i32 0, i32 6
  %20475 = load i32, ptr %45, align 4, !tbaa !9
  %20476 = zext i32 %20475 to i64
  %20477 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20474, i64 noundef %20476, i64 noundef %20477)
  %20478 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20478, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20479 = load ptr, ptr %5, align 8, !tbaa !5
  %20480 = getelementptr inbounds %struct.w2c_hermes, ptr %20479, i32 0, i32 6
  %20481 = load i32, ptr %45, align 4, !tbaa !9
  %20482 = zext i32 %20481 to i64
  %20483 = add i64 %20482, 516
  %20484 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20480, i64 noundef %20483, i32 noundef %20484)
  %20485 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20485, ptr %45, align 4, !tbaa !9
  %20486 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20486, ptr %46, align 4, !tbaa !9
  %20487 = load ptr, ptr %5, align 8, !tbaa !5
  %20488 = getelementptr inbounds %struct.w2c_hermes, ptr %20487, i32 0, i32 6
  %20489 = load i32, ptr %45, align 4, !tbaa !9
  %20490 = zext i32 %20489 to i64
  %20491 = add i64 %20490, 512
  %20492 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20488, i64 noundef %20491, i32 noundef %20492)
  %20493 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20493, ptr %45, align 4, !tbaa !9
  %20494 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20494, ptr %46, align 4, !tbaa !9
  %20495 = load ptr, ptr %5, align 8, !tbaa !5
  %20496 = getelementptr inbounds %struct.w2c_hermes, ptr %20495, i32 0, i32 6
  %20497 = load i32, ptr %45, align 4, !tbaa !9
  %20498 = zext i32 %20497 to i64
  %20499 = add i64 %20498, 508
  %20500 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20496, i64 noundef %20499, i32 noundef %20500)
  %20501 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20501, ptr %45, align 4, !tbaa !9
  store i32 14, ptr %46, align 4, !tbaa !9
  %20502 = load i32, ptr %46, align 4, !tbaa !9
  %20503 = load i32, ptr %45, align 4, !tbaa !9
  %20504 = add i32 %20503, %20502
  store i32 %20504, ptr %45, align 4, !tbaa !9
  %20505 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20505, ptr %6, align 4, !tbaa !9
  br label %2945

20506:                                            ; preds = %3059
  %20507 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20507, ptr %45, align 4, !tbaa !9
  %20508 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20508, ptr %46, align 4, !tbaa !9
  %20509 = load ptr, ptr %5, align 8, !tbaa !5
  %20510 = getelementptr inbounds %struct.w2c_hermes, ptr %20509, i32 0, i32 6
  %20511 = load i32, ptr %45, align 4, !tbaa !9
  %20512 = zext i32 %20511 to i64
  %20513 = add i64 %20512, 5808
  %20514 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20510, i64 noundef %20513, i32 noundef %20514)
  %20515 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20515, ptr %45, align 4, !tbaa !9
  %20516 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20516, ptr %46, align 4, !tbaa !9
  %20517 = load ptr, ptr %5, align 8, !tbaa !5
  %20518 = getelementptr inbounds %struct.w2c_hermes, ptr %20517, i32 0, i32 6
  %20519 = load i32, ptr %46, align 4, !tbaa !9
  %20520 = zext i32 %20519 to i64
  %20521 = add i64 %20520, 2
  %20522 = call i32 @i32_load16_u(ptr noundef %20518, i64 noundef %20521)
  store i32 %20522, ptr %46, align 4, !tbaa !9
  %20523 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %20523, ptr %6, align 4, !tbaa !9
  %20524 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20524, ptr %47, align 4, !tbaa !9
  %20525 = load ptr, ptr %5, align 8, !tbaa !5
  %20526 = load i32, ptr %45, align 4, !tbaa !9
  %20527 = load i32, ptr %46, align 4, !tbaa !9
  %20528 = load i32, ptr %47, align 4, !tbaa !9
  %20529 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSArray0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %20525, i32 noundef %20526, i32 noundef %20527, i32 noundef %20528)
  store i32 %20529, ptr %45, align 4, !tbaa !9
  %20530 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20530, ptr %7, align 4, !tbaa !9
  %20531 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20531, ptr %45, align 4, !tbaa !9
  %20532 = load ptr, ptr %5, align 8, !tbaa !5
  %20533 = getelementptr inbounds %struct.w2c_hermes, ptr %20532, i32 0, i32 6
  %20534 = load i32, ptr %45, align 4, !tbaa !9
  %20535 = zext i32 %20534 to i64
  %20536 = add i64 %20535, 5808
  %20537 = call i32 @i32_load(ptr noundef %20533, i64 noundef %20536)
  store i32 %20537, ptr %45, align 4, !tbaa !9
  %20538 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20538, ptr %6, align 4, !tbaa !9
  %20539 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20539, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %20540 = load i32, ptr %45, align 4, !tbaa !9
  %20541 = load i32, ptr %46, align 4, !tbaa !9
  %20542 = icmp eq i32 %20540, %20541
  %20543 = zext i1 %20542 to i32
  store i32 %20543, ptr %45, align 4, !tbaa !9
  %20544 = load i32, ptr %45, align 4, !tbaa !9
  %20545 = icmp ne i32 %20544, 0
  br i1 %20545, label %20546, label %20547

20546:                                            ; preds = %20506
  br label %43136

20547:                                            ; preds = %20506
  %20548 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20548, ptr %45, align 4, !tbaa !9
  %20549 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20549, ptr %46, align 4, !tbaa !9
  %20550 = load ptr, ptr %5, align 8, !tbaa !5
  %20551 = getelementptr inbounds %struct.w2c_hermes, ptr %20550, i32 0, i32 6
  %20552 = load i32, ptr %46, align 4, !tbaa !9
  %20553 = zext i32 %20552 to i64
  %20554 = add i64 %20553, 1
  %20555 = call i32 @i32_load8_u(ptr noundef %20551, i64 noundef %20554)
  store i32 %20555, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20556 = load i32, ptr %47, align 4, !tbaa !9
  %20557 = and i32 %20556, 31
  %20558 = load i32, ptr %46, align 4, !tbaa !9
  %20559 = shl i32 %20558, %20557
  store i32 %20559, ptr %46, align 4, !tbaa !9
  %20560 = load i32, ptr %46, align 4, !tbaa !9
  %20561 = load i32, ptr %45, align 4, !tbaa !9
  %20562 = add i32 %20561, %20560
  store i32 %20562, ptr %45, align 4, !tbaa !9
  %20563 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %20563, ptr %46, align 4, !tbaa !9
  %20564 = load ptr, ptr %5, align 8, !tbaa !5
  %20565 = getelementptr inbounds %struct.w2c_hermes, ptr %20564, i32 0, i32 6
  %20566 = load i32, ptr %46, align 4, !tbaa !9
  %20567 = zext i32 %20566 to i64
  %20568 = call i64 @i64_load(ptr noundef %20565, i64 noundef %20567)
  store i64 %20568, ptr %55, align 8, !tbaa !11
  %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 %45, align 4, !tbaa !9
  %20572 = zext i32 %20571 to i64
  %20573 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20570, i64 noundef %20572, i64 noundef %20573)
  %20574 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20574, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20575 = load ptr, ptr %5, align 8, !tbaa !5
  %20576 = getelementptr inbounds %struct.w2c_hermes, ptr %20575, i32 0, i32 6
  %20577 = load i32, ptr %45, align 4, !tbaa !9
  %20578 = zext i32 %20577 to i64
  %20579 = add i64 %20578, 516
  %20580 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20576, i64 noundef %20579, i32 noundef %20580)
  %20581 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20581, ptr %45, align 4, !tbaa !9
  %20582 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20582, ptr %46, align 4, !tbaa !9
  %20583 = load ptr, ptr %5, align 8, !tbaa !5
  %20584 = getelementptr inbounds %struct.w2c_hermes, ptr %20583, i32 0, i32 6
  %20585 = load i32, ptr %45, align 4, !tbaa !9
  %20586 = zext i32 %20585 to i64
  %20587 = add i64 %20586, 512
  %20588 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20584, i64 noundef %20587, i32 noundef %20588)
  %20589 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20589, ptr %45, align 4, !tbaa !9
  %20590 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20590, ptr %46, align 4, !tbaa !9
  %20591 = load ptr, ptr %5, align 8, !tbaa !5
  %20592 = getelementptr inbounds %struct.w2c_hermes, ptr %20591, i32 0, i32 6
  %20593 = load i32, ptr %45, align 4, !tbaa !9
  %20594 = zext i32 %20593 to i64
  %20595 = add i64 %20594, 508
  %20596 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20592, i64 noundef %20595, i32 noundef %20596)
  %20597 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20597, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %20598 = load i32, ptr %46, align 4, !tbaa !9
  %20599 = load i32, ptr %45, align 4, !tbaa !9
  %20600 = add i32 %20599, %20598
  store i32 %20600, ptr %45, align 4, !tbaa !9
  %20601 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20601, ptr %6, align 4, !tbaa !9
  br label %2945

20602:                                            ; preds = %3060
  %20603 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20603, ptr %45, align 4, !tbaa !9
  %20604 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20604, ptr %46, align 4, !tbaa !9
  %20605 = load ptr, ptr %5, align 8, !tbaa !5
  %20606 = getelementptr inbounds %struct.w2c_hermes, ptr %20605, i32 0, i32 6
  %20607 = load i32, ptr %45, align 4, !tbaa !9
  %20608 = zext i32 %20607 to i64
  %20609 = add i64 %20608, 5808
  %20610 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20606, i64 noundef %20609, i32 noundef %20610)
  %20611 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20611, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %20612 = load i32, ptr %46, align 4, !tbaa !9
  %20613 = load i32, ptr %45, align 4, !tbaa !9
  %20614 = add i32 %20613, %20612
  store i32 %20614, ptr %45, align 4, !tbaa !9
  %20615 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20615, ptr %46, align 4, !tbaa !9
  %20616 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %20616, ptr %47, align 4, !tbaa !9
  %20617 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20617, ptr %48, align 4, !tbaa !9
  %20618 = load ptr, ptr %5, align 8, !tbaa !5
  %20619 = getelementptr inbounds %struct.w2c_hermes, ptr %20618, i32 0, i32 6
  %20620 = load i32, ptr %48, align 4, !tbaa !9
  %20621 = zext i32 %20620 to i64
  %20622 = add i64 %20621, 2
  %20623 = call i32 @i32_load16_u(ptr noundef %20619, i64 noundef %20622)
  store i32 %20623, ptr %48, align 4, !tbaa !9
  %20624 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20624, ptr %49, align 4, !tbaa !9
  %20625 = load ptr, ptr %5, align 8, !tbaa !5
  %20626 = getelementptr inbounds %struct.w2c_hermes, ptr %20625, i32 0, i32 6
  %20627 = load i32, ptr %49, align 4, !tbaa !9
  %20628 = zext i32 %20627 to i64
  %20629 = add i64 %20628, 4
  %20630 = call i32 @i32_load16_u(ptr noundef %20626, i64 noundef %20629)
  store i32 %20630, ptr %49, align 4, !tbaa !9
  %20631 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20631, ptr %50, align 4, !tbaa !9
  %20632 = load ptr, ptr %5, align 8, !tbaa !5
  %20633 = getelementptr inbounds %struct.w2c_hermes, ptr %20632, i32 0, i32 6
  %20634 = load i32, ptr %50, align 4, !tbaa !9
  %20635 = zext i32 %20634 to i64
  %20636 = add i64 %20635, 6
  %20637 = call i32 @i32_load16_u(ptr noundef %20633, i64 noundef %20636)
  store i32 %20637, ptr %50, align 4, !tbaa !9
  %20638 = load ptr, ptr %5, align 8, !tbaa !5
  %20639 = load i32, ptr %45, align 4, !tbaa !9
  %20640 = load i32, ptr %46, align 4, !tbaa !9
  %20641 = load i32, ptr %47, align 4, !tbaa !9
  %20642 = load i32, ptr %48, align 4, !tbaa !9
  %20643 = load i32, ptr %49, align 4, !tbaa !9
  %20644 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateArrayFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %20638, i32 noundef %20639, i32 noundef %20640, i32 noundef %20641, i32 noundef %20642, i32 noundef %20643, i32 noundef %20644)
  %20645 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20645, ptr %45, align 4, !tbaa !9
  %20646 = load ptr, ptr %5, align 8, !tbaa !5
  %20647 = getelementptr inbounds %struct.w2c_hermes, ptr %20646, i32 0, i32 6
  %20648 = load i32, ptr %45, align 4, !tbaa !9
  %20649 = zext i32 %20648 to i64
  %20650 = add i64 %20649, 5808
  %20651 = call i32 @i32_load(ptr noundef %20647, i64 noundef %20650)
  store i32 %20651, ptr %45, align 4, !tbaa !9
  %20652 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20652, ptr %6, align 4, !tbaa !9
  %20653 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20653, ptr %45, align 4, !tbaa !9
  %20654 = load ptr, ptr %5, align 8, !tbaa !5
  %20655 = getelementptr inbounds %struct.w2c_hermes, ptr %20654, i32 0, i32 6
  %20656 = load i32, ptr %45, align 4, !tbaa !9
  %20657 = zext i32 %20656 to i64
  %20658 = add i64 %20657, 304
  %20659 = call i32 @i32_load(ptr noundef %20655, i64 noundef %20658)
  store i32 %20659, ptr %45, align 4, !tbaa !9
  %20660 = load i32, ptr %45, align 4, !tbaa !9
  %20661 = icmp ne i32 %20660, 0
  %20662 = xor i1 %20661, true
  %20663 = zext i1 %20662 to i32
  store i32 %20663, ptr %45, align 4, !tbaa !9
  %20664 = load i32, ptr %45, align 4, !tbaa !9
  %20665 = icmp ne i32 %20664, 0
  br i1 %20665, label %20666, label %20667

20666:                                            ; preds = %20602
  br label %43136

20667:                                            ; preds = %20602
  %20668 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20668, ptr %45, align 4, !tbaa !9
  %20669 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20669, ptr %46, align 4, !tbaa !9
  %20670 = load ptr, ptr %5, align 8, !tbaa !5
  %20671 = getelementptr inbounds %struct.w2c_hermes, ptr %20670, i32 0, i32 6
  %20672 = load i32, ptr %46, align 4, !tbaa !9
  %20673 = zext i32 %20672 to i64
  %20674 = add i64 %20673, 1
  %20675 = call i32 @i32_load8_u(ptr noundef %20671, i64 noundef %20674)
  store i32 %20675, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20676 = load i32, ptr %47, align 4, !tbaa !9
  %20677 = and i32 %20676, 31
  %20678 = load i32, ptr %46, align 4, !tbaa !9
  %20679 = shl i32 %20678, %20677
  store i32 %20679, ptr %46, align 4, !tbaa !9
  %20680 = load i32, ptr %46, align 4, !tbaa !9
  %20681 = load i32, ptr %45, align 4, !tbaa !9
  %20682 = add i32 %20681, %20680
  store i32 %20682, ptr %45, align 4, !tbaa !9
  %20683 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20683, ptr %46, align 4, !tbaa !9
  %20684 = load ptr, ptr %5, align 8, !tbaa !5
  %20685 = getelementptr inbounds %struct.w2c_hermes, ptr %20684, i32 0, i32 6
  %20686 = load i32, ptr %46, align 4, !tbaa !9
  %20687 = zext i32 %20686 to i64
  %20688 = add i64 %20687, 312
  %20689 = call i64 @i64_load(ptr noundef %20685, i64 noundef %20688)
  store i64 %20689, ptr %55, align 8, !tbaa !11
  %20690 = load ptr, ptr %5, align 8, !tbaa !5
  %20691 = getelementptr inbounds %struct.w2c_hermes, ptr %20690, i32 0, i32 6
  %20692 = load i32, ptr %45, align 4, !tbaa !9
  %20693 = zext i32 %20692 to i64
  %20694 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20691, i64 noundef %20693, i64 noundef %20694)
  %20695 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20695, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20696 = load ptr, ptr %5, align 8, !tbaa !5
  %20697 = getelementptr inbounds %struct.w2c_hermes, ptr %20696, i32 0, i32 6
  %20698 = load i32, ptr %45, align 4, !tbaa !9
  %20699 = zext i32 %20698 to i64
  %20700 = add i64 %20699, 516
  %20701 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20697, i64 noundef %20700, i32 noundef %20701)
  %20702 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20702, ptr %45, align 4, !tbaa !9
  %20703 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20703, ptr %46, align 4, !tbaa !9
  %20704 = load ptr, ptr %5, align 8, !tbaa !5
  %20705 = getelementptr inbounds %struct.w2c_hermes, ptr %20704, i32 0, i32 6
  %20706 = load i32, ptr %45, align 4, !tbaa !9
  %20707 = zext i32 %20706 to i64
  %20708 = add i64 %20707, 512
  %20709 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20705, i64 noundef %20708, i32 noundef %20709)
  %20710 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20710, ptr %45, align 4, !tbaa !9
  %20711 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20711, ptr %46, align 4, !tbaa !9
  %20712 = load ptr, ptr %5, align 8, !tbaa !5
  %20713 = getelementptr inbounds %struct.w2c_hermes, ptr %20712, i32 0, i32 6
  %20714 = load i32, ptr %45, align 4, !tbaa !9
  %20715 = zext i32 %20714 to i64
  %20716 = add i64 %20715, 508
  %20717 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20713, i64 noundef %20716, i32 noundef %20717)
  %20718 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20718, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %20719 = load ptr, ptr %5, align 8, !tbaa !5
  %20720 = getelementptr inbounds %struct.w2c_hermes, ptr %20719, i32 0, i32 6
  %20721 = load i32, ptr %45, align 4, !tbaa !9
  %20722 = zext i32 %20721 to i64
  %20723 = add i64 %20722, 352
  %20724 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20720, i64 noundef %20723, i64 noundef %20724)
  %20725 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20725, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %20726 = load i32, ptr %46, align 4, !tbaa !9
  %20727 = load i32, ptr %45, align 4, !tbaa !9
  %20728 = add i32 %20727, %20726
  store i32 %20728, ptr %45, align 4, !tbaa !9
  %20729 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20729, ptr %6, align 4, !tbaa !9
  br label %2945

20730:                                            ; preds = %3061
  %20731 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20731, ptr %45, align 4, !tbaa !9
  %20732 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20732, ptr %46, align 4, !tbaa !9
  %20733 = load ptr, ptr %5, align 8, !tbaa !5
  %20734 = getelementptr inbounds %struct.w2c_hermes, ptr %20733, i32 0, i32 6
  %20735 = load i32, ptr %45, align 4, !tbaa !9
  %20736 = zext i32 %20735 to i64
  %20737 = add i64 %20736, 5808
  %20738 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20734, i64 noundef %20737, i32 noundef %20738)
  %20739 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20739, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %20740 = load i32, ptr %46, align 4, !tbaa !9
  %20741 = load i32, ptr %45, align 4, !tbaa !9
  %20742 = add i32 %20741, %20740
  store i32 %20742, ptr %45, align 4, !tbaa !9
  %20743 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20743, ptr %46, align 4, !tbaa !9
  %20744 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %20744, ptr %47, align 4, !tbaa !9
  %20745 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20745, ptr %48, align 4, !tbaa !9
  %20746 = load ptr, ptr %5, align 8, !tbaa !5
  %20747 = getelementptr inbounds %struct.w2c_hermes, ptr %20746, i32 0, i32 6
  %20748 = load i32, ptr %48, align 4, !tbaa !9
  %20749 = zext i32 %20748 to i64
  %20750 = add i64 %20749, 2
  %20751 = call i32 @i32_load16_u(ptr noundef %20747, i64 noundef %20750)
  store i32 %20751, ptr %48, align 4, !tbaa !9
  %20752 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20752, ptr %49, align 4, !tbaa !9
  %20753 = load ptr, ptr %5, align 8, !tbaa !5
  %20754 = getelementptr inbounds %struct.w2c_hermes, ptr %20753, i32 0, i32 6
  %20755 = load i32, ptr %49, align 4, !tbaa !9
  %20756 = zext i32 %20755 to i64
  %20757 = add i64 %20756, 4
  %20758 = call i32 @i32_load16_u(ptr noundef %20754, i64 noundef %20757)
  store i32 %20758, ptr %49, align 4, !tbaa !9
  %20759 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20759, ptr %50, align 4, !tbaa !9
  %20760 = load ptr, ptr %5, align 8, !tbaa !5
  %20761 = getelementptr inbounds %struct.w2c_hermes, ptr %20760, i32 0, i32 6
  %20762 = load i32, ptr %50, align 4, !tbaa !9
  %20763 = zext i32 %20762 to i64
  %20764 = add i64 %20763, 6
  %20765 = call i32 @i32_load(ptr noundef %20761, i64 noundef %20764)
  store i32 %20765, ptr %50, align 4, !tbaa !9
  %20766 = load ptr, ptr %5, align 8, !tbaa !5
  %20767 = load i32, ptr %45, align 4, !tbaa !9
  %20768 = load i32, ptr %46, align 4, !tbaa !9
  %20769 = load i32, ptr %47, align 4, !tbaa !9
  %20770 = load i32, ptr %48, align 4, !tbaa !9
  %20771 = load i32, ptr %49, align 4, !tbaa !9
  %20772 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateArrayFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %20766, i32 noundef %20767, i32 noundef %20768, i32 noundef %20769, i32 noundef %20770, i32 noundef %20771, i32 noundef %20772)
  %20773 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20773, ptr %45, align 4, !tbaa !9
  %20774 = load ptr, ptr %5, align 8, !tbaa !5
  %20775 = getelementptr inbounds %struct.w2c_hermes, ptr %20774, i32 0, i32 6
  %20776 = load i32, ptr %45, align 4, !tbaa !9
  %20777 = zext i32 %20776 to i64
  %20778 = add i64 %20777, 5808
  %20779 = call i32 @i32_load(ptr noundef %20775, i64 noundef %20778)
  store i32 %20779, ptr %45, align 4, !tbaa !9
  %20780 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20780, ptr %6, align 4, !tbaa !9
  %20781 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20781, ptr %45, align 4, !tbaa !9
  %20782 = load ptr, ptr %5, align 8, !tbaa !5
  %20783 = getelementptr inbounds %struct.w2c_hermes, ptr %20782, i32 0, i32 6
  %20784 = load i32, ptr %45, align 4, !tbaa !9
  %20785 = zext i32 %20784 to i64
  %20786 = add i64 %20785, 304
  %20787 = call i32 @i32_load(ptr noundef %20783, i64 noundef %20786)
  store i32 %20787, ptr %45, align 4, !tbaa !9
  %20788 = load i32, ptr %45, align 4, !tbaa !9
  %20789 = icmp ne i32 %20788, 0
  %20790 = xor i1 %20789, true
  %20791 = zext i1 %20790 to i32
  store i32 %20791, ptr %45, align 4, !tbaa !9
  %20792 = load i32, ptr %45, align 4, !tbaa !9
  %20793 = icmp ne i32 %20792, 0
  br i1 %20793, label %20794, label %20795

20794:                                            ; preds = %20730
  br label %43136

20795:                                            ; preds = %20730
  %20796 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20796, ptr %45, align 4, !tbaa !9
  %20797 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20797, ptr %46, align 4, !tbaa !9
  %20798 = load ptr, ptr %5, align 8, !tbaa !5
  %20799 = getelementptr inbounds %struct.w2c_hermes, ptr %20798, i32 0, i32 6
  %20800 = load i32, ptr %46, align 4, !tbaa !9
  %20801 = zext i32 %20800 to i64
  %20802 = add i64 %20801, 1
  %20803 = call i32 @i32_load8_u(ptr noundef %20799, i64 noundef %20802)
  store i32 %20803, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20804 = load i32, ptr %47, align 4, !tbaa !9
  %20805 = and i32 %20804, 31
  %20806 = load i32, ptr %46, align 4, !tbaa !9
  %20807 = shl i32 %20806, %20805
  store i32 %20807, ptr %46, align 4, !tbaa !9
  %20808 = load i32, ptr %46, align 4, !tbaa !9
  %20809 = load i32, ptr %45, align 4, !tbaa !9
  %20810 = add i32 %20809, %20808
  store i32 %20810, ptr %45, align 4, !tbaa !9
  %20811 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20811, ptr %46, align 4, !tbaa !9
  %20812 = load ptr, ptr %5, align 8, !tbaa !5
  %20813 = getelementptr inbounds %struct.w2c_hermes, ptr %20812, i32 0, i32 6
  %20814 = load i32, ptr %46, align 4, !tbaa !9
  %20815 = zext i32 %20814 to i64
  %20816 = add i64 %20815, 312
  %20817 = call i64 @i64_load(ptr noundef %20813, i64 noundef %20816)
  store i64 %20817, ptr %55, align 8, !tbaa !11
  %20818 = load ptr, ptr %5, align 8, !tbaa !5
  %20819 = getelementptr inbounds %struct.w2c_hermes, ptr %20818, i32 0, i32 6
  %20820 = load i32, ptr %45, align 4, !tbaa !9
  %20821 = zext i32 %20820 to i64
  %20822 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20819, i64 noundef %20821, i64 noundef %20822)
  %20823 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20823, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20824 = load ptr, ptr %5, align 8, !tbaa !5
  %20825 = getelementptr inbounds %struct.w2c_hermes, ptr %20824, i32 0, i32 6
  %20826 = load i32, ptr %45, align 4, !tbaa !9
  %20827 = zext i32 %20826 to i64
  %20828 = add i64 %20827, 516
  %20829 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20825, i64 noundef %20828, i32 noundef %20829)
  %20830 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20830, ptr %45, align 4, !tbaa !9
  %20831 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %20831, ptr %46, align 4, !tbaa !9
  %20832 = load ptr, ptr %5, align 8, !tbaa !5
  %20833 = getelementptr inbounds %struct.w2c_hermes, ptr %20832, i32 0, i32 6
  %20834 = load i32, ptr %45, align 4, !tbaa !9
  %20835 = zext i32 %20834 to i64
  %20836 = add i64 %20835, 512
  %20837 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20833, i64 noundef %20836, i32 noundef %20837)
  %20838 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20838, ptr %45, align 4, !tbaa !9
  %20839 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %20839, ptr %46, align 4, !tbaa !9
  %20840 = load ptr, ptr %5, align 8, !tbaa !5
  %20841 = getelementptr inbounds %struct.w2c_hermes, ptr %20840, i32 0, i32 6
  %20842 = load i32, ptr %45, align 4, !tbaa !9
  %20843 = zext i32 %20842 to i64
  %20844 = add i64 %20843, 508
  %20845 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20841, i64 noundef %20844, i32 noundef %20845)
  %20846 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20846, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %20847 = load ptr, ptr %5, align 8, !tbaa !5
  %20848 = getelementptr inbounds %struct.w2c_hermes, ptr %20847, i32 0, i32 6
  %20849 = load i32, ptr %45, align 4, !tbaa !9
  %20850 = zext i32 %20849 to i64
  %20851 = add i64 %20850, 352
  %20852 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20848, i64 noundef %20851, i64 noundef %20852)
  %20853 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20853, ptr %45, align 4, !tbaa !9
  store i32 10, ptr %46, align 4, !tbaa !9
  %20854 = load i32, ptr %46, align 4, !tbaa !9
  %20855 = load i32, ptr %45, align 4, !tbaa !9
  %20856 = add i32 %20855, %20854
  store i32 %20856, ptr %45, align 4, !tbaa !9
  %20857 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20857, ptr %6, align 4, !tbaa !9
  br label %2945

20858:                                            ; preds = %3062
  %20859 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20859, ptr %45, align 4, !tbaa !9
  %20860 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20860, ptr %46, align 4, !tbaa !9
  %20861 = load ptr, ptr %5, align 8, !tbaa !5
  %20862 = getelementptr inbounds %struct.w2c_hermes, ptr %20861, i32 0, i32 6
  %20863 = load i32, ptr %46, align 4, !tbaa !9
  %20864 = zext i32 %20863 to i64
  %20865 = add i64 %20864, 3
  %20866 = call i32 @i32_load8_u(ptr noundef %20862, i64 noundef %20865)
  store i32 %20866, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20867 = load i32, ptr %47, align 4, !tbaa !9
  %20868 = and i32 %20867, 31
  %20869 = load i32, ptr %46, align 4, !tbaa !9
  %20870 = shl i32 %20869, %20868
  store i32 %20870, ptr %46, align 4, !tbaa !9
  %20871 = load i32, ptr %46, align 4, !tbaa !9
  %20872 = load i32, ptr %45, align 4, !tbaa !9
  %20873 = add i32 %20872, %20871
  store i32 %20873, ptr %45, 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 %45, align 4, !tbaa !9
  %20877 = zext i32 %20876 to i64
  %20878 = call i64 @i64_load(ptr noundef %20875, i64 noundef %20877)
  store i64 %20878, ptr %54, align 8, !tbaa !11
  %20879 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %20879, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %20880 = load i64, ptr %54, align 8, !tbaa !11
  %20881 = load i64, ptr %55, align 8, !tbaa !11
  %20882 = icmp uge i64 %20880, %20881
  %20883 = zext i1 %20882 to i32
  store i32 %20883, ptr %45, align 4, !tbaa !9
  %20884 = load i32, ptr %45, align 4, !tbaa !9
  %20885 = icmp ne i32 %20884, 0
  br i1 %20885, label %20886, label %20906

20886:                                            ; preds = %20858
  %20887 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %20887, ptr %54, align 8, !tbaa !11
  %20888 = load i64, ptr %54, align 8, !tbaa !11
  %20889 = trunc i64 %20888 to i32
  store i32 %20889, ptr %45, align 4, !tbaa !9
  %20890 = load ptr, ptr %5, align 8, !tbaa !5
  %20891 = getelementptr inbounds %struct.w2c_hermes, ptr %20890, i32 0, i32 6
  %20892 = load i32, ptr %45, align 4, !tbaa !9
  %20893 = zext i32 %20892 to i64
  %20894 = call i32 @i32_load(ptr noundef %20891, i64 noundef %20893)
  store i32 %20894, ptr %45, align 4, !tbaa !9
  store i32 1140850688, ptr %46, align 4, !tbaa !9
  %20895 = load i32, ptr %46, align 4, !tbaa !9
  %20896 = load i32, ptr %45, align 4, !tbaa !9
  %20897 = sub i32 %20896, %20895
  store i32 %20897, ptr %45, align 4, !tbaa !9
  store i32 150994944, ptr %46, align 4, !tbaa !9
  %20898 = load i32, ptr %45, align 4, !tbaa !9
  %20899 = load i32, ptr %46, align 4, !tbaa !9
  %20900 = icmp ult i32 %20898, %20899
  %20901 = zext i1 %20900 to i32
  store i32 %20901, ptr %45, align 4, !tbaa !9
  %20902 = load i32, ptr %45, align 4, !tbaa !9
  %20903 = icmp ne i32 %20902, 0
  br i1 %20903, label %20904, label %20905

20904:                                            ; preds = %20886
  br label %20960

20905:                                            ; preds = %20886
  br label %20906

20906:                                            ; preds = %20905, %20858
  %20907 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20907, ptr %45, align 4, !tbaa !9
  %20908 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20908, ptr %46, align 4, !tbaa !9
  %20909 = load ptr, ptr %5, align 8, !tbaa !5
  %20910 = getelementptr inbounds %struct.w2c_hermes, ptr %20909, i32 0, i32 6
  %20911 = load i32, ptr %45, align 4, !tbaa !9
  %20912 = zext i32 %20911 to i64
  %20913 = add i64 %20912, 5808
  %20914 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20910, i64 noundef %20913, i32 noundef %20914)
  %20915 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20915, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %20916 = load ptr, ptr %5, align 8, !tbaa !5
  %20917 = getelementptr inbounds %struct.w2c_hermes, ptr %20916, i32 0, i32 6
  %20918 = load i32, ptr %45, align 4, !tbaa !9
  %20919 = zext i32 %20918 to i64
  %20920 = add i64 %20919, 336
  %20921 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20917, i64 noundef %20920, i32 noundef %20921)
  %20922 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20922, ptr %45, align 4, !tbaa !9
  store i64 115964116993, ptr %55, align 8, !tbaa !11
  %20923 = load ptr, ptr %5, align 8, !tbaa !5
  %20924 = getelementptr inbounds %struct.w2c_hermes, ptr %20923, i32 0, i32 6
  %20925 = load i32, ptr %45, align 4, !tbaa !9
  %20926 = zext i32 %20925 to i64
  %20927 = add i64 %20926, 328
  %20928 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %20924, i64 noundef %20927, i64 noundef %20928)
  %20929 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20929, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %20930 = load ptr, ptr %5, align 8, !tbaa !5
  %20931 = getelementptr inbounds %struct.w2c_hermes, ptr %20930, i32 0, i32 6
  %20932 = load i32, ptr %45, align 4, !tbaa !9
  %20933 = zext i32 %20932 to i64
  %20934 = add i64 %20933, 312
  %20935 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20931, i64 noundef %20934, i32 noundef %20935)
  %20936 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20936, ptr %45, align 4, !tbaa !9
  store i32 50799, ptr %46, align 4, !tbaa !9
  %20937 = load ptr, ptr %5, align 8, !tbaa !5
  %20938 = getelementptr inbounds %struct.w2c_hermes, ptr %20937, i32 0, i32 6
  %20939 = load i32, ptr %45, align 4, !tbaa !9
  %20940 = zext i32 %20939 to i64
  %20941 = add i64 %20940, 304
  %20942 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20938, i64 noundef %20941, i32 noundef %20942)
  %20943 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20943, ptr %45, align 4, !tbaa !9
  %20944 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %20944, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %20945 = load i32, ptr %47, align 4, !tbaa !9
  %20946 = load i32, ptr %46, align 4, !tbaa !9
  %20947 = add i32 %20946, %20945
  store i32 %20947, ptr %46, align 4, !tbaa !9
  %20948 = load ptr, ptr %5, align 8, !tbaa !5
  %20949 = load i32, ptr %45, align 4, !tbaa !9
  %20950 = load i32, ptr %46, align 4, !tbaa !9
  %20951 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %20948, i32 noundef %20949, i32 noundef %20950)
  store i32 %20951, ptr %45, align 4, !tbaa !9
  %20952 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20952, ptr %45, align 4, !tbaa !9
  %20953 = load ptr, ptr %5, align 8, !tbaa !5
  %20954 = getelementptr inbounds %struct.w2c_hermes, ptr %20953, i32 0, i32 6
  %20955 = load i32, ptr %45, align 4, !tbaa !9
  %20956 = zext i32 %20955 to i64
  %20957 = add i64 %20956, 5808
  %20958 = call i32 @i32_load(ptr noundef %20954, i64 noundef %20957)
  store i32 %20958, ptr %45, align 4, !tbaa !9
  %20959 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20959, ptr %6, align 4, !tbaa !9
  br label %43136

20960:                                            ; preds = %20904
  %20961 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20961, ptr %45, align 4, !tbaa !9
  %20962 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20962, ptr %46, align 4, !tbaa !9
  %20963 = load ptr, ptr %5, align 8, !tbaa !5
  %20964 = getelementptr inbounds %struct.w2c_hermes, ptr %20963, i32 0, i32 6
  %20965 = load i32, ptr %45, align 4, !tbaa !9
  %20966 = zext i32 %20965 to i64
  %20967 = add i64 %20966, 5808
  %20968 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %20964, i64 noundef %20967, i32 noundef %20968)
  %20969 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20969, ptr %45, align 4, !tbaa !9
  %20970 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20970, ptr %46, 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 %46, align 4, !tbaa !9
  %20974 = zext i32 %20973 to i64
  %20975 = add i64 %20974, 3
  %20976 = call i32 @i32_load8_u(ptr noundef %20972, i64 noundef %20975)
  store i32 %20976, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %20977 = load i32, ptr %47, align 4, !tbaa !9
  %20978 = and i32 %20977, 31
  %20979 = load i32, ptr %46, align 4, !tbaa !9
  %20980 = shl i32 %20979, %20978
  store i32 %20980, ptr %46, align 4, !tbaa !9
  %20981 = load i32, ptr %46, align 4, !tbaa !9
  %20982 = load i32, ptr %45, align 4, !tbaa !9
  %20983 = add i32 %20982, %20981
  store i32 %20983, ptr %45, align 4, !tbaa !9
  %20984 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20984, ptr %8, align 4, !tbaa !9
  %20985 = load ptr, ptr %5, align 8, !tbaa !5
  %20986 = getelementptr inbounds %struct.w2c_hermes, ptr %20985, i32 0, i32 6
  %20987 = load i32, ptr %45, align 4, !tbaa !9
  %20988 = zext i32 %20987 to i64
  %20989 = call i32 @i32_load(ptr noundef %20986, i64 noundef %20988)
  store i32 %20989, ptr %45, align 4, !tbaa !9
  %20990 = load ptr, ptr %5, align 8, !tbaa !5
  %20991 = getelementptr inbounds %struct.w2c_hermes, ptr %20990, i32 0, i32 6
  %20992 = load i32, ptr %45, align 4, !tbaa !9
  %20993 = zext i32 %20992 to i64
  %20994 = call i32 @i32_load(ptr noundef %20991, i64 noundef %20993)
  store i32 %20994, ptr %45, align 4, !tbaa !9
  %20995 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %20995, ptr %7, align 4, !tbaa !9
  %20996 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %20996, ptr %45, align 4, !tbaa !9
  %20997 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %20997, ptr %46, align 4, !tbaa !9
  %20998 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %20998, ptr %47, align 4, !tbaa !9
  %20999 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %20999, ptr %48, align 4, !tbaa !9
  %21000 = load ptr, ptr %5, align 8, !tbaa !5
  %21001 = getelementptr inbounds %struct.w2c_hermes, ptr %21000, i32 0, i32 6
  %21002 = load i32, ptr %48, align 4, !tbaa !9
  %21003 = zext i32 %21002 to i64
  %21004 = add i64 %21003, 2
  %21005 = call i32 @i32_load8_u(ptr noundef %21001, i64 noundef %21004)
  store i32 %21005, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %21006 = load i32, ptr %49, align 4, !tbaa !9
  %21007 = and i32 %21006, 31
  %21008 = load i32, ptr %48, align 4, !tbaa !9
  %21009 = shl i32 %21008, %21007
  store i32 %21009, ptr %48, align 4, !tbaa !9
  %21010 = load i32, ptr %48, align 4, !tbaa !9
  %21011 = load i32, ptr %47, align 4, !tbaa !9
  %21012 = add i32 %21011, %21010
  store i32 %21012, ptr %47, align 4, !tbaa !9
  %21013 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %21013, ptr %6, align 4, !tbaa !9
  %21014 = load i32, ptr %35, align 4, !tbaa !9
  store i32 %21014, ptr %48, align 4, !tbaa !9
  %21015 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21015, ptr %49, 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 %49, align 4, !tbaa !9
  %21019 = zext i32 %21018 to i64
  %21020 = add i64 %21019, 6
  %21021 = call i32 @i32_load16_s(ptr noundef %21017, i64 noundef %21020)
  store i32 %21021, ptr %49, align 4, !tbaa !9
  store i32 -1, ptr %50, align 4, !tbaa !9
  %21022 = load i32, ptr %49, align 4, !tbaa !9
  %21023 = load i32, ptr %50, align 4, !tbaa !9
  %21024 = icmp eq i32 %21022, %21023
  %21025 = zext i1 %21024 to i32
  store i32 %21025, ptr %49, align 4, !tbaa !9
  %21026 = load i32, ptr %49, align 4, !tbaa !9
  %21027 = icmp ne i32 %21026, 0
  br i1 %21027, label %21028, label %21030

21028:                                            ; preds = %20960
  %21029 = load i32, ptr %47, align 4, !tbaa !9
  br label %21032

21030:                                            ; preds = %20960
  %21031 = load i32, ptr %48, align 4, !tbaa !9
  br label %21032

21032:                                            ; preds = %21030, %21028
  %21033 = phi i32 [ %21029, %21028 ], [ %21031, %21030 ]
  store i32 %21033, ptr %47, align 4, !tbaa !9
  %21034 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21034, ptr %48, align 4, !tbaa !9
  store i32 22, ptr %49, align 4, !tbaa !9
  %21035 = load i32, ptr %49, align 4, !tbaa !9
  %21036 = and i32 %21035, 31
  %21037 = load i32, ptr %48, align 4, !tbaa !9
  %21038 = lshr i32 %21037, %21036
  store i32 %21038, ptr %48, align 4, !tbaa !9
  store i32 1020, ptr %49, align 4, !tbaa !9
  %21039 = load i32, ptr %49, align 4, !tbaa !9
  %21040 = load i32, ptr %48, align 4, !tbaa !9
  %21041 = and i32 %21040, %21039
  store i32 %21041, ptr %48, align 4, !tbaa !9
  store i32 138008, ptr %49, align 4, !tbaa !9
  %21042 = load i32, ptr %49, align 4, !tbaa !9
  %21043 = load i32, ptr %48, align 4, !tbaa !9
  %21044 = add i32 %21043, %21042
  store i32 %21044, ptr %48, align 4, !tbaa !9
  %21045 = load ptr, ptr %5, align 8, !tbaa !5
  %21046 = getelementptr inbounds %struct.w2c_hermes, ptr %21045, i32 0, i32 6
  %21047 = load i32, ptr %48, align 4, !tbaa !9
  %21048 = zext i32 %21047 to i64
  %21049 = call i32 @i32_load(ptr noundef %21046, i64 noundef %21048)
  store i32 %21049, ptr %48, align 4, !tbaa !9
  %21050 = load ptr, ptr %5, align 8, !tbaa !5
  %21051 = getelementptr inbounds %struct.w2c_hermes, ptr %21050, i32 0, i32 6
  %21052 = load i32, ptr %48, align 4, !tbaa !9
  %21053 = zext i32 %21052 to i64
  %21054 = add i64 %21053, 56
  %21055 = call i32 @i32_load(ptr noundef %21051, i64 noundef %21054)
  store i32 %21055, ptr %48, align 4, !tbaa !9
  %21056 = load i32, ptr %48, align 4, !tbaa !9
  %21057 = load ptr, ptr %5, align 8, !tbaa !5
  %21058 = getelementptr inbounds %struct.w2c_hermes, ptr %21057, i32 0, i32 7
  %21059 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21058, i32 0, i32 2
  %21060 = load i32, ptr %21059, align 4, !tbaa !23
  %21061 = icmp ult i32 %21056, %21060
  br i1 %21061, label %21062, label %21085

21062:                                            ; preds = %21032
  %21063 = load ptr, ptr %5, align 8, !tbaa !5
  %21064 = getelementptr inbounds %struct.w2c_hermes, ptr %21063, i32 0, i32 7
  %21065 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21064, i32 0, i32 0
  %21066 = load ptr, ptr %21065, align 8, !tbaa !24
  %21067 = load i32, ptr %48, align 4, !tbaa !9
  %21068 = zext i32 %21067 to i64
  %21069 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21066, i64 %21068
  %21070 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21069, i32 0, i32 1
  %21071 = load ptr, ptr %21070, align 8, !tbaa !25
  %21072 = icmp ne ptr %21071, null
  br i1 %21072, label %21073, label %21085

21073:                                            ; preds = %21062
  %21074 = load ptr, ptr @w2c_hermes_t6, align 8, !tbaa !5
  %21075 = load ptr, ptr %5, align 8, !tbaa !5
  %21076 = getelementptr inbounds %struct.w2c_hermes, ptr %21075, i32 0, i32 7
  %21077 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21076, i32 0, i32 0
  %21078 = load ptr, ptr %21077, align 8, !tbaa !24
  %21079 = load i32, ptr %48, align 4, !tbaa !9
  %21080 = zext i32 %21079 to i64
  %21081 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21078, i64 %21080
  %21082 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21081, i32 0, i32 0
  %21083 = load ptr, ptr %21082, align 8, !tbaa !27
  %21084 = call zeroext i1 @func_types_eq(ptr noundef %21074, ptr noundef %21083)
  br label %21085

21085:                                            ; preds = %21073, %21062, %21032
  %21086 = phi i1 [ false, %21062 ], [ false, %21032 ], [ %21084, %21073 ]
  %21087 = xor i1 %21086, true
  %21088 = xor i1 %21087, true
  %21089 = zext i1 %21088 to i32
  %21090 = sext i32 %21089 to i64
  %21091 = call i64 @llvm.expect.i64(i64 %21090, i64 1)
  %21092 = icmp ne i64 %21091, 0
  br i1 %21092, label %21095, label %21093

21093:                                            ; preds = %21085
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

21094:                                            ; No predecessors!
  br label %21095

21095:                                            ; preds = %21094, %21085
  %21096 = phi i1 [ true, %21085 ], [ false, %21094 ]
  %21097 = zext i1 %21096 to i32
  %21098 = load ptr, ptr %5, align 8, !tbaa !5
  %21099 = getelementptr inbounds %struct.w2c_hermes, ptr %21098, i32 0, i32 7
  %21100 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21099, i32 0, i32 0
  %21101 = load ptr, ptr %21100, align 8, !tbaa !24
  %21102 = load i32, ptr %48, align 4, !tbaa !9
  %21103 = zext i32 %21102 to i64
  %21104 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21101, i64 %21103
  %21105 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21104, i32 0, i32 1
  %21106 = load ptr, ptr %21105, align 8, !tbaa !25
  %21107 = load ptr, ptr %5, align 8, !tbaa !5
  %21108 = getelementptr inbounds %struct.w2c_hermes, ptr %21107, i32 0, i32 7
  %21109 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %21108, i32 0, i32 0
  %21110 = load ptr, ptr %21109, align 8, !tbaa !24
  %21111 = load i32, ptr %48, align 4, !tbaa !9
  %21112 = zext i32 %21111 to i64
  %21113 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21110, i64 %21112
  %21114 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %21113, i32 0, i32 2
  %21115 = load ptr, ptr %21114, align 8, !tbaa !28
  %21116 = load i32, ptr %45, align 4, !tbaa !9
  %21117 = load i32, ptr %46, align 4, !tbaa !9
  %21118 = load i32, ptr %47, align 4, !tbaa !9
  %21119 = call i32 %21106(ptr noundef %21115, i32 noundef %21116, i32 noundef %21117, i32 noundef %21118)
  store i32 %21119, ptr %45, align 4, !tbaa !9
  %21120 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21120, ptr %7, align 4, !tbaa !9
  %21121 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21121, ptr %45, align 4, !tbaa !9
  %21122 = load ptr, ptr %5, align 8, !tbaa !5
  %21123 = getelementptr inbounds %struct.w2c_hermes, ptr %21122, i32 0, i32 6
  %21124 = load i32, ptr %45, align 4, !tbaa !9
  %21125 = zext i32 %21124 to i64
  %21126 = add i64 %21125, 5808
  %21127 = call i32 @i32_load(ptr noundef %21123, i64 noundef %21126)
  store i32 %21127, ptr %45, align 4, !tbaa !9
  %21128 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21128, ptr %6, align 4, !tbaa !9
  %21129 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21129, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %21130 = load i32, ptr %45, align 4, !tbaa !9
  %21131 = load i32, ptr %46, align 4, !tbaa !9
  %21132 = icmp eq i32 %21130, %21131
  %21133 = zext i1 %21132 to i32
  store i32 %21133, ptr %45, align 4, !tbaa !9
  %21134 = load i32, ptr %45, align 4, !tbaa !9
  %21135 = icmp ne i32 %21134, 0
  br i1 %21135, label %21136, label %21137

21136:                                            ; preds = %21095
  br label %43136

21137:                                            ; preds = %21095
  %21138 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21138, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %21139 = load ptr, ptr %5, align 8, !tbaa !5
  %21140 = getelementptr inbounds %struct.w2c_hermes, ptr %21139, i32 0, i32 6
  %21141 = load i32, ptr %45, align 4, !tbaa !9
  %21142 = zext i32 %21141 to i64
  %21143 = add i64 %21142, 516
  %21144 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21140, i64 noundef %21143, i32 noundef %21144)
  %21145 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21145, ptr %45, align 4, !tbaa !9
  %21146 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %21146, ptr %46, align 4, !tbaa !9
  %21147 = load ptr, ptr %5, align 8, !tbaa !5
  %21148 = getelementptr inbounds %struct.w2c_hermes, ptr %21147, i32 0, i32 6
  %21149 = load i32, ptr %45, align 4, !tbaa !9
  %21150 = zext i32 %21149 to i64
  %21151 = add i64 %21150, 512
  %21152 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21148, i64 noundef %21151, i32 noundef %21152)
  %21153 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21153, ptr %45, align 4, !tbaa !9
  %21154 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %21154, ptr %46, align 4, !tbaa !9
  %21155 = load ptr, ptr %5, align 8, !tbaa !5
  %21156 = getelementptr inbounds %struct.w2c_hermes, ptr %21155, i32 0, i32 6
  %21157 = load i32, ptr %45, align 4, !tbaa !9
  %21158 = zext i32 %21157 to i64
  %21159 = add i64 %21158, 508
  %21160 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21156, i64 noundef %21159, i32 noundef %21160)
  %21161 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21161, ptr %45, align 4, !tbaa !9
  %21162 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21162, ptr %46, align 4, !tbaa !9
  %21163 = load ptr, ptr %5, align 8, !tbaa !5
  %21164 = getelementptr inbounds %struct.w2c_hermes, ptr %21163, i32 0, i32 6
  %21165 = load i32, ptr %46, align 4, !tbaa !9
  %21166 = zext i32 %21165 to i64
  %21167 = add i64 %21166, 1
  %21168 = call i32 @i32_load8_u(ptr noundef %21164, i64 noundef %21167)
  store i32 %21168, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21169 = load i32, ptr %47, align 4, !tbaa !9
  %21170 = and i32 %21169, 31
  %21171 = load i32, ptr %46, align 4, !tbaa !9
  %21172 = shl i32 %21171, %21170
  store i32 %21172, ptr %46, align 4, !tbaa !9
  %21173 = load i32, ptr %46, align 4, !tbaa !9
  %21174 = load i32, ptr %45, align 4, !tbaa !9
  %21175 = add i32 %21174, %21173
  store i32 %21175, ptr %45, align 4, !tbaa !9
  %21176 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21176, ptr %46, align 4, !tbaa !9
  %21177 = load i32, ptr %46, align 4, !tbaa !9
  %21178 = zext i32 %21177 to i64
  store i64 %21178, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %21179 = load i64, ptr %56, align 8, !tbaa !11
  %21180 = load i64, ptr %55, align 8, !tbaa !11
  %21181 = or i64 %21180, %21179
  store i64 %21181, ptr %55, align 8, !tbaa !11
  %21182 = load ptr, ptr %5, align 8, !tbaa !5
  %21183 = getelementptr inbounds %struct.w2c_hermes, ptr %21182, i32 0, i32 6
  %21184 = load i32, ptr %45, align 4, !tbaa !9
  %21185 = zext i32 %21184 to i64
  %21186 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21183, i64 noundef %21185, i64 noundef %21186)
  %21187 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21187, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %21188 = load i32, ptr %46, align 4, !tbaa !9
  %21189 = load i32, ptr %45, align 4, !tbaa !9
  %21190 = add i32 %21189, %21188
  store i32 %21190, ptr %45, align 4, !tbaa !9
  %21191 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21191, ptr %6, align 4, !tbaa !9
  br label %2945

21192:                                            ; preds = %3063
  %21193 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21193, ptr %45, align 4, !tbaa !9
  %21194 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21194, ptr %46, align 4, !tbaa !9
  %21195 = load ptr, ptr %5, align 8, !tbaa !5
  %21196 = getelementptr inbounds %struct.w2c_hermes, ptr %21195, i32 0, i32 6
  %21197 = load i32, ptr %46, align 4, !tbaa !9
  %21198 = zext i32 %21197 to i64
  %21199 = add i64 %21198, 1
  %21200 = call i32 @i32_load8_u(ptr noundef %21196, i64 noundef %21199)
  store i32 %21200, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21201 = load i32, ptr %47, align 4, !tbaa !9
  %21202 = and i32 %21201, 31
  %21203 = load i32, ptr %46, align 4, !tbaa !9
  %21204 = shl i32 %21203, %21202
  store i32 %21204, ptr %46, align 4, !tbaa !9
  %21205 = load i32, ptr %46, align 4, !tbaa !9
  %21206 = load i32, ptr %45, align 4, !tbaa !9
  %21207 = add i32 %21206, %21205
  store i32 %21207, ptr %45, align 4, !tbaa !9
  %21208 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21208, ptr %46, align 4, !tbaa !9
  %21209 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21209, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  store i32 2, ptr %49, align 4, !tbaa !9
  %21210 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21210, ptr %50, align 4, !tbaa !9
  %21211 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21211, ptr %51, align 4, !tbaa !9
  %21212 = load ptr, ptr %5, align 8, !tbaa !5
  %21213 = getelementptr inbounds %struct.w2c_hermes, ptr %21212, i32 0, i32 6
  %21214 = load i32, ptr %51, align 4, !tbaa !9
  %21215 = zext i32 %21214 to i64
  %21216 = add i64 %21215, 3
  %21217 = call i32 @i32_load8_u(ptr noundef %21213, i64 noundef %21216)
  store i32 %21217, ptr %51, align 4, !tbaa !9
  store i32 3, ptr %52, align 4, !tbaa !9
  %21218 = load i32, ptr %52, align 4, !tbaa !9
  %21219 = and i32 %21218, 31
  %21220 = load i32, ptr %51, align 4, !tbaa !9
  %21221 = shl i32 %21220, %21219
  store i32 %21221, ptr %51, align 4, !tbaa !9
  %21222 = load i32, ptr %51, align 4, !tbaa !9
  %21223 = load i32, ptr %50, align 4, !tbaa !9
  %21224 = add i32 %21223, %21222
  store i32 %21224, ptr %50, align 4, !tbaa !9
  %21225 = load ptr, ptr %5, align 8, !tbaa !5
  %21226 = getelementptr inbounds %struct.w2c_hermes, ptr %21225, i32 0, i32 6
  %21227 = load i32, ptr %50, align 4, !tbaa !9
  %21228 = zext i32 %21227 to i64
  %21229 = add i64 %21228, 6
  %21230 = call i32 @i32_load16_s(ptr noundef %21226, i64 noundef %21229)
  store i32 %21230, ptr %50, align 4, !tbaa !9
  store i32 -1, ptr %51, align 4, !tbaa !9
  %21231 = load i32, ptr %50, align 4, !tbaa !9
  %21232 = load i32, ptr %51, align 4, !tbaa !9
  %21233 = icmp eq i32 %21231, %21232
  %21234 = zext i1 %21233 to i32
  store i32 %21234, ptr %50, align 4, !tbaa !9
  %21235 = load i32, ptr %50, align 4, !tbaa !9
  %21236 = icmp ne i32 %21235, 0
  br i1 %21236, label %21237, label %21239

21237:                                            ; preds = %21192
  %21238 = load i32, ptr %48, align 4, !tbaa !9
  br label %21241

21239:                                            ; preds = %21192
  %21240 = load i32, ptr %49, align 4, !tbaa !9
  br label %21241

21241:                                            ; preds = %21239, %21237
  %21242 = phi i32 [ %21238, %21237 ], [ %21240, %21239 ]
  store i32 %21242, ptr %48, align 4, !tbaa !9
  %21243 = load i32, ptr %48, align 4, !tbaa !9
  %21244 = load i32, ptr %47, align 4, !tbaa !9
  %21245 = add i32 %21244, %21243
  store i32 %21245, ptr %47, align 4, !tbaa !9
  %21246 = load ptr, ptr %5, align 8, !tbaa !5
  %21247 = getelementptr inbounds %struct.w2c_hermes, ptr %21246, i32 0, i32 6
  %21248 = load i32, ptr %47, align 4, !tbaa !9
  %21249 = zext i32 %21248 to i64
  %21250 = call i32 @i32_load8_u(ptr noundef %21247, i64 noundef %21249)
  store i32 %21250, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %21251 = load i32, ptr %48, align 4, !tbaa !9
  %21252 = and i32 %21251, 31
  %21253 = load i32, ptr %47, align 4, !tbaa !9
  %21254 = shl i32 %21253, %21252
  store i32 %21254, ptr %47, align 4, !tbaa !9
  %21255 = load i32, ptr %47, align 4, !tbaa !9
  %21256 = load i32, ptr %46, align 4, !tbaa !9
  %21257 = add i32 %21256, %21255
  store i32 %21257, ptr %46, align 4, !tbaa !9
  %21258 = load ptr, ptr %5, align 8, !tbaa !5
  %21259 = getelementptr inbounds %struct.w2c_hermes, ptr %21258, i32 0, i32 6
  %21260 = load i32, ptr %46, align 4, !tbaa !9
  %21261 = zext i32 %21260 to i64
  %21262 = call i64 @i64_load(ptr noundef %21259, i64 noundef %21261)
  store i64 %21262, ptr %55, align 8, !tbaa !11
  %21263 = load ptr, ptr %5, align 8, !tbaa !5
  %21264 = getelementptr inbounds %struct.w2c_hermes, ptr %21263, i32 0, i32 6
  %21265 = load i32, ptr %45, align 4, !tbaa !9
  %21266 = zext i32 %21265 to i64
  %21267 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21264, i64 noundef %21266, i64 noundef %21267)
  %21268 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21268, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %21269 = load i32, ptr %46, align 4, !tbaa !9
  %21270 = load i32, ptr %45, align 4, !tbaa !9
  %21271 = add i32 %21270, %21269
  store i32 %21271, ptr %45, align 4, !tbaa !9
  %21272 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21272, ptr %6, align 4, !tbaa !9
  br label %2945

21273:                                            ; preds = %3064
  %21274 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21274, ptr %45, align 4, !tbaa !9
  %21275 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21275, ptr %46, align 4, !tbaa !9
  %21276 = load ptr, ptr %5, align 8, !tbaa !5
  %21277 = getelementptr inbounds %struct.w2c_hermes, ptr %21276, i32 0, i32 6
  %21278 = load i32, ptr %45, align 4, !tbaa !9
  %21279 = zext i32 %21278 to i64
  %21280 = add i64 %21279, 5808
  %21281 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21277, i64 noundef %21280, i32 noundef %21281)
  %21282 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21282, ptr %45, align 4, !tbaa !9
  store i32 212, ptr %46, align 4, !tbaa !9
  %21283 = load i32, ptr %46, align 4, !tbaa !9
  %21284 = load i32, ptr %45, align 4, !tbaa !9
  %21285 = add i32 %21284, %21283
  store i32 %21285, ptr %45, align 4, !tbaa !9
  %21286 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21286, ptr %46, align 4, !tbaa !9
  %21287 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21287, ptr %47, align 4, !tbaa !9
  %21288 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21288, ptr %48, align 4, !tbaa !9
  %21289 = load ptr, ptr %5, align 8, !tbaa !5
  %21290 = getelementptr inbounds %struct.w2c_hermes, ptr %21289, i32 0, i32 6
  %21291 = load i32, ptr %48, align 4, !tbaa !9
  %21292 = zext i32 %21291 to i64
  %21293 = add i64 %21292, 2
  %21294 = call i32 @i32_load8_u(ptr noundef %21290, i64 noundef %21293)
  store i32 %21294, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %21295 = load i32, ptr %49, align 4, !tbaa !9
  %21296 = and i32 %21295, 31
  %21297 = load i32, ptr %48, align 4, !tbaa !9
  %21298 = shl i32 %21297, %21296
  store i32 %21298, ptr %48, align 4, !tbaa !9
  %21299 = load i32, ptr %48, align 4, !tbaa !9
  %21300 = load i32, ptr %47, align 4, !tbaa !9
  %21301 = add i32 %21300, %21299
  store i32 %21301, ptr %47, align 4, !tbaa !9
  %21302 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21302, ptr %48, align 4, !tbaa !9
  %21303 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21303, ptr %49, align 4, !tbaa !9
  %21304 = load ptr, ptr %5, align 8, !tbaa !5
  %21305 = getelementptr inbounds %struct.w2c_hermes, ptr %21304, i32 0, i32 6
  %21306 = load i32, ptr %49, align 4, !tbaa !9
  %21307 = zext i32 %21306 to i64
  %21308 = add i64 %21307, 3
  %21309 = call i32 @i32_load8_u(ptr noundef %21305, i64 noundef %21308)
  store i32 %21309, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %21310 = load i32, ptr %50, align 4, !tbaa !9
  %21311 = and i32 %21310, 31
  %21312 = load i32, ptr %49, align 4, !tbaa !9
  %21313 = shl i32 %21312, %21311
  store i32 %21313, ptr %49, align 4, !tbaa !9
  %21314 = load i32, ptr %49, align 4, !tbaa !9
  %21315 = load i32, ptr %48, align 4, !tbaa !9
  %21316 = add i32 %21315, %21314
  store i32 %21316, ptr %48, align 4, !tbaa !9
  %21317 = load ptr, ptr %5, align 8, !tbaa !5
  %21318 = load i32, ptr %45, align 4, !tbaa !9
  %21319 = load i32, ptr %46, align 4, !tbaa !9
  %21320 = load i32, ptr %47, align 4, !tbaa !9
  %21321 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %21317, i32 noundef %21318, i32 noundef %21319, i32 noundef %21320, i32 noundef %21321)
  %21322 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21322, ptr %45, align 4, !tbaa !9
  %21323 = load ptr, ptr %5, align 8, !tbaa !5
  %21324 = getelementptr inbounds %struct.w2c_hermes, ptr %21323, i32 0, i32 6
  %21325 = load i32, ptr %45, align 4, !tbaa !9
  %21326 = zext i32 %21325 to i64
  %21327 = add i64 %21326, 5808
  %21328 = call i32 @i32_load(ptr noundef %21324, i64 noundef %21327)
  store i32 %21328, ptr %45, align 4, !tbaa !9
  %21329 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21329, ptr %6, align 4, !tbaa !9
  %21330 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21330, ptr %45, align 4, !tbaa !9
  %21331 = load ptr, ptr %5, align 8, !tbaa !5
  %21332 = getelementptr inbounds %struct.w2c_hermes, ptr %21331, i32 0, i32 6
  %21333 = load i32, ptr %45, align 4, !tbaa !9
  %21334 = zext i32 %21333 to i64
  %21335 = add i64 %21334, 212
  %21336 = call i32 @i32_load16_u(ptr noundef %21332, i64 noundef %21335)
  store i32 %21336, ptr %45, align 4, !tbaa !9
  %21337 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21337, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %21338 = load i32, ptr %46, align 4, !tbaa !9
  %21339 = load i32, ptr %45, align 4, !tbaa !9
  %21340 = and i32 %21339, %21338
  store i32 %21340, ptr %45, align 4, !tbaa !9
  %21341 = load i32, ptr %45, align 4, !tbaa !9
  %21342 = icmp ne i32 %21341, 0
  %21343 = xor i1 %21342, true
  %21344 = zext i1 %21343 to i32
  store i32 %21344, ptr %45, align 4, !tbaa !9
  %21345 = load i32, ptr %45, align 4, !tbaa !9
  %21346 = icmp ne i32 %21345, 0
  br i1 %21346, label %21347, label %21348

21347:                                            ; preds = %21273
  br label %43136

21348:                                            ; preds = %21273
  %21349 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21349, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %21350 = load ptr, ptr %5, align 8, !tbaa !5
  %21351 = getelementptr inbounds %struct.w2c_hermes, ptr %21350, i32 0, i32 6
  %21352 = load i32, ptr %45, align 4, !tbaa !9
  %21353 = zext i32 %21352 to i64
  %21354 = add i64 %21353, 516
  %21355 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21351, i64 noundef %21354, i32 noundef %21355)
  %21356 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21356, ptr %45, align 4, !tbaa !9
  %21357 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %21357, ptr %46, align 4, !tbaa !9
  %21358 = load ptr, ptr %5, align 8, !tbaa !5
  %21359 = getelementptr inbounds %struct.w2c_hermes, ptr %21358, i32 0, i32 6
  %21360 = load i32, ptr %45, align 4, !tbaa !9
  %21361 = zext i32 %21360 to i64
  %21362 = add i64 %21361, 512
  %21363 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21359, i64 noundef %21362, i32 noundef %21363)
  %21364 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21364, ptr %45, align 4, !tbaa !9
  %21365 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %21365, ptr %46, align 4, !tbaa !9
  %21366 = load ptr, ptr %5, align 8, !tbaa !5
  %21367 = getelementptr inbounds %struct.w2c_hermes, ptr %21366, i32 0, i32 6
  %21368 = load i32, ptr %45, align 4, !tbaa !9
  %21369 = zext i32 %21368 to i64
  %21370 = add i64 %21369, 508
  %21371 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21367, i64 noundef %21370, i32 noundef %21371)
  %21372 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21372, ptr %45, align 4, !tbaa !9
  %21373 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21373, ptr %46, align 4, !tbaa !9
  %21374 = load ptr, ptr %5, align 8, !tbaa !5
  %21375 = getelementptr inbounds %struct.w2c_hermes, ptr %21374, i32 0, i32 6
  %21376 = load i32, ptr %46, align 4, !tbaa !9
  %21377 = zext i32 %21376 to i64
  %21378 = add i64 %21377, 1
  %21379 = call i32 @i32_load8_u(ptr noundef %21375, i64 noundef %21378)
  store i32 %21379, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21380 = load i32, ptr %47, align 4, !tbaa !9
  %21381 = and i32 %21380, 31
  %21382 = load i32, ptr %46, align 4, !tbaa !9
  %21383 = shl i32 %21382, %21381
  store i32 %21383, ptr %46, align 4, !tbaa !9
  %21384 = load i32, ptr %46, align 4, !tbaa !9
  %21385 = load i32, ptr %45, align 4, !tbaa !9
  %21386 = add i32 %21385, %21384
  store i32 %21386, ptr %45, align 4, !tbaa !9
  %21387 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21387, ptr %46, align 4, !tbaa !9
  store i32 256, ptr %47, align 4, !tbaa !9
  %21388 = load i32, ptr %47, align 4, !tbaa !9
  %21389 = load i32, ptr %46, align 4, !tbaa !9
  %21390 = and i32 %21389, %21388
  store i32 %21390, ptr %46, align 4, !tbaa !9
  %21391 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %21391, ptr %7, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %21392 = load i32, ptr %47, align 4, !tbaa !9
  %21393 = and i32 %21392, 31
  %21394 = load i32, ptr %46, align 4, !tbaa !9
  %21395 = lshr i32 %21394, %21393
  store i32 %21395, ptr %46, align 4, !tbaa !9
  %21396 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21396, ptr %47, align 4, !tbaa !9
  %21397 = load i32, ptr %47, align 4, !tbaa !9
  %21398 = icmp ne i32 %21397, 0
  %21399 = xor i1 %21398, true
  %21400 = zext i1 %21399 to i32
  store i32 %21400, ptr %47, align 4, !tbaa !9
  %21401 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21401, ptr %48, align 4, !tbaa !9
  %21402 = load ptr, ptr %5, align 8, !tbaa !5
  %21403 = getelementptr inbounds %struct.w2c_hermes, ptr %21402, i32 0, i32 6
  %21404 = load i32, ptr %48, align 4, !tbaa !9
  %21405 = zext i32 %21404 to i64
  %21406 = call i32 @i32_load8_u(ptr noundef %21403, i64 noundef %21405)
  store i32 %21406, ptr %48, align 4, !tbaa !9
  store i32 14, ptr %49, align 4, !tbaa !9
  %21407 = load i32, ptr %48, align 4, !tbaa !9
  %21408 = load i32, ptr %49, align 4, !tbaa !9
  %21409 = icmp eq i32 %21407, %21408
  %21410 = zext i1 %21409 to i32
  store i32 %21410, ptr %48, align 4, !tbaa !9
  %21411 = load i32, ptr %48, align 4, !tbaa !9
  %21412 = icmp ne i32 %21411, 0
  br i1 %21412, label %21413, label %21415

21413:                                            ; preds = %21348
  %21414 = load i32, ptr %46, align 4, !tbaa !9
  br label %21417

21415:                                            ; preds = %21348
  %21416 = load i32, ptr %47, align 4, !tbaa !9
  br label %21417

21417:                                            ; preds = %21415, %21413
  %21418 = phi i32 [ %21414, %21413 ], [ %21416, %21415 ]
  store i32 %21418, ptr %46, align 4, !tbaa !9
  %21419 = load i32, ptr %46, align 4, !tbaa !9
  %21420 = zext i32 %21419 to i64
  store i64 %21420, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %21421 = load i64, ptr %56, align 8, !tbaa !11
  %21422 = load i64, ptr %55, align 8, !tbaa !11
  %21423 = or i64 %21422, %21421
  store i64 %21423, ptr %55, align 8, !tbaa !11
  %21424 = load ptr, ptr %5, align 8, !tbaa !5
  %21425 = getelementptr inbounds %struct.w2c_hermes, ptr %21424, i32 0, i32 6
  %21426 = load i32, ptr %45, align 4, !tbaa !9
  %21427 = zext i32 %21426 to i64
  %21428 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21425, i64 noundef %21427, i64 noundef %21428)
  %21429 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21429, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %21430 = load i32, ptr %46, align 4, !tbaa !9
  %21431 = load i32, ptr %45, align 4, !tbaa !9
  %21432 = add i32 %21431, %21430
  store i32 %21432, ptr %45, align 4, !tbaa !9
  %21433 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21433, ptr %6, align 4, !tbaa !9
  br label %2945

21434:                                            ; preds = %3065
  %21435 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21435, ptr %45, align 4, !tbaa !9
  %21436 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21436, ptr %46, align 4, !tbaa !9
  %21437 = load ptr, ptr %5, align 8, !tbaa !5
  %21438 = getelementptr inbounds %struct.w2c_hermes, ptr %21437, i32 0, i32 6
  %21439 = load i32, ptr %46, align 4, !tbaa !9
  %21440 = zext i32 %21439 to i64
  %21441 = add i64 %21440, 2
  %21442 = call i32 @i32_load8_u(ptr noundef %21438, i64 noundef %21441)
  store i32 %21442, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21443 = load i32, ptr %47, align 4, !tbaa !9
  %21444 = and i32 %21443, 31
  %21445 = load i32, ptr %46, align 4, !tbaa !9
  %21446 = shl i32 %21445, %21444
  store i32 %21446, ptr %46, align 4, !tbaa !9
  %21447 = load i32, ptr %46, align 4, !tbaa !9
  %21448 = load i32, ptr %45, align 4, !tbaa !9
  %21449 = add i32 %21448, %21447
  store i32 %21449, ptr %45, align 4, !tbaa !9
  %21450 = load ptr, ptr %5, align 8, !tbaa !5
  %21451 = getelementptr inbounds %struct.w2c_hermes, ptr %21450, i32 0, i32 6
  %21452 = load i32, ptr %45, align 4, !tbaa !9
  %21453 = zext i32 %21452 to i64
  %21454 = call i64 @i64_load(ptr noundef %21451, i64 noundef %21453)
  store i64 %21454, ptr %54, align 8, !tbaa !11
  %21455 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21455, ptr %46, align 4, !tbaa !9
  %21456 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21456, ptr %47, align 4, !tbaa !9
  %21457 = load ptr, ptr %5, align 8, !tbaa !5
  %21458 = getelementptr inbounds %struct.w2c_hermes, ptr %21457, i32 0, i32 6
  %21459 = load i32, ptr %47, align 4, !tbaa !9
  %21460 = zext i32 %21459 to i64
  %21461 = add i64 %21460, 3
  %21462 = call i32 @i32_load8_u(ptr noundef %21458, i64 noundef %21461)
  store i32 %21462, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %21463 = load i32, ptr %48, align 4, !tbaa !9
  %21464 = and i32 %21463, 31
  %21465 = load i32, ptr %47, align 4, !tbaa !9
  %21466 = shl i32 %21465, %21464
  store i32 %21466, ptr %47, align 4, !tbaa !9
  %21467 = load i32, ptr %47, align 4, !tbaa !9
  %21468 = load i32, ptr %46, align 4, !tbaa !9
  %21469 = add i32 %21468, %21467
  store i32 %21469, ptr %46, align 4, !tbaa !9
  %21470 = load ptr, ptr %5, align 8, !tbaa !5
  %21471 = getelementptr inbounds %struct.w2c_hermes, ptr %21470, i32 0, i32 6
  %21472 = load i32, ptr %46, align 4, !tbaa !9
  %21473 = zext i32 %21472 to i64
  %21474 = call i64 @i64_load(ptr noundef %21471, i64 noundef %21473)
  store i64 %21474, ptr %55, align 8, !tbaa !11
  %21475 = load ptr, ptr %5, align 8, !tbaa !5
  %21476 = load i64, ptr %54, align 8, !tbaa !11
  %21477 = load i64, ptr %55, align 8, !tbaa !11
  %21478 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %21475, i64 noundef %21476, i64 noundef %21477)
  store i32 %21478, ptr %45, align 4, !tbaa !9
  %21479 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21479, ptr %7, align 4, !tbaa !9
  %21480 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21480, ptr %45, align 4, !tbaa !9
  %21481 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21481, ptr %46, align 4, !tbaa !9
  %21482 = load ptr, ptr %5, align 8, !tbaa !5
  %21483 = getelementptr inbounds %struct.w2c_hermes, ptr %21482, i32 0, i32 6
  %21484 = load i32, ptr %46, align 4, !tbaa !9
  %21485 = zext i32 %21484 to i64
  %21486 = add i64 %21485, 1
  %21487 = call i32 @i32_load8_u(ptr noundef %21483, i64 noundef %21486)
  store i32 %21487, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21488 = load i32, ptr %47, align 4, !tbaa !9
  %21489 = and i32 %21488, 31
  %21490 = load i32, ptr %46, align 4, !tbaa !9
  %21491 = shl i32 %21490, %21489
  store i32 %21491, ptr %46, align 4, !tbaa !9
  %21492 = load i32, ptr %46, align 4, !tbaa !9
  %21493 = load i32, ptr %45, align 4, !tbaa !9
  %21494 = add i32 %21493, %21492
  store i32 %21494, ptr %45, align 4, !tbaa !9
  %21495 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21495, ptr %46, align 4, !tbaa !9
  %21496 = load i32, ptr %46, align 4, !tbaa !9
  %21497 = zext i32 %21496 to i64
  store i64 %21497, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %21498 = load i64, ptr %56, align 8, !tbaa !11
  %21499 = load i64, ptr %55, align 8, !tbaa !11
  %21500 = or i64 %21499, %21498
  store i64 %21500, ptr %55, align 8, !tbaa !11
  %21501 = load ptr, ptr %5, align 8, !tbaa !5
  %21502 = getelementptr inbounds %struct.w2c_hermes, ptr %21501, i32 0, i32 6
  %21503 = load i32, ptr %45, align 4, !tbaa !9
  %21504 = zext i32 %21503 to i64
  %21505 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21502, i64 noundef %21504, i64 noundef %21505)
  %21506 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21506, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %21507 = load i32, ptr %46, align 4, !tbaa !9
  %21508 = load i32, ptr %45, align 4, !tbaa !9
  %21509 = add i32 %21508, %21507
  store i32 %21509, ptr %45, align 4, !tbaa !9
  %21510 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21510, ptr %6, align 4, !tbaa !9
  br label %2945

21511:                                            ; preds = %3066
  %21512 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21512, ptr %45, align 4, !tbaa !9
  %21513 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21513, ptr %46, align 4, !tbaa !9
  %21514 = load ptr, ptr %5, align 8, !tbaa !5
  %21515 = getelementptr inbounds %struct.w2c_hermes, ptr %21514, i32 0, i32 6
  %21516 = load i32, ptr %46, align 4, !tbaa !9
  %21517 = zext i32 %21516 to i64
  %21518 = add i64 %21517, 2
  %21519 = call i32 @i32_load8_u(ptr noundef %21515, i64 noundef %21518)
  store i32 %21519, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21520 = load i32, ptr %47, align 4, !tbaa !9
  %21521 = and i32 %21520, 31
  %21522 = load i32, ptr %46, align 4, !tbaa !9
  %21523 = shl i32 %21522, %21521
  store i32 %21523, ptr %46, align 4, !tbaa !9
  %21524 = load i32, ptr %46, align 4, !tbaa !9
  %21525 = load i32, ptr %45, align 4, !tbaa !9
  %21526 = add i32 %21525, %21524
  store i32 %21526, ptr %45, align 4, !tbaa !9
  %21527 = load ptr, ptr %5, align 8, !tbaa !5
  %21528 = getelementptr inbounds %struct.w2c_hermes, ptr %21527, i32 0, i32 6
  %21529 = load i32, ptr %45, align 4, !tbaa !9
  %21530 = zext i32 %21529 to i64
  %21531 = call i64 @i64_load(ptr noundef %21528, i64 noundef %21530)
  store i64 %21531, ptr %54, align 8, !tbaa !11
  %21532 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21532, ptr %46, align 4, !tbaa !9
  %21533 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21533, ptr %47, align 4, !tbaa !9
  %21534 = load ptr, ptr %5, align 8, !tbaa !5
  %21535 = getelementptr inbounds %struct.w2c_hermes, ptr %21534, i32 0, i32 6
  %21536 = load i32, ptr %47, align 4, !tbaa !9
  %21537 = zext i32 %21536 to i64
  %21538 = add i64 %21537, 3
  %21539 = call i32 @i32_load8_u(ptr noundef %21535, i64 noundef %21538)
  store i32 %21539, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %21540 = load i32, ptr %48, align 4, !tbaa !9
  %21541 = and i32 %21540, 31
  %21542 = load i32, ptr %47, align 4, !tbaa !9
  %21543 = shl i32 %21542, %21541
  store i32 %21543, ptr %47, align 4, !tbaa !9
  %21544 = load i32, ptr %47, align 4, !tbaa !9
  %21545 = load i32, ptr %46, align 4, !tbaa !9
  %21546 = add i32 %21545, %21544
  store i32 %21546, ptr %46, align 4, !tbaa !9
  %21547 = load ptr, ptr %5, align 8, !tbaa !5
  %21548 = getelementptr inbounds %struct.w2c_hermes, ptr %21547, i32 0, i32 6
  %21549 = load i32, ptr %46, align 4, !tbaa !9
  %21550 = zext i32 %21549 to i64
  %21551 = call i64 @i64_load(ptr noundef %21548, i64 noundef %21550)
  store i64 %21551, ptr %55, align 8, !tbaa !11
  %21552 = load ptr, ptr %5, align 8, !tbaa !5
  %21553 = load i64, ptr %54, align 8, !tbaa !11
  %21554 = load i64, ptr %55, align 8, !tbaa !11
  %21555 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %21552, i64 noundef %21553, i64 noundef %21554)
  store i32 %21555, ptr %45, align 4, !tbaa !9
  %21556 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21556, ptr %7, align 4, !tbaa !9
  %21557 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21557, ptr %45, align 4, !tbaa !9
  %21558 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21558, ptr %46, 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 %46, align 4, !tbaa !9
  %21562 = zext i32 %21561 to i64
  %21563 = add i64 %21562, 1
  %21564 = call i32 @i32_load8_u(ptr noundef %21560, i64 noundef %21563)
  store i32 %21564, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21565 = load i32, ptr %47, align 4, !tbaa !9
  %21566 = and i32 %21565, 31
  %21567 = load i32, ptr %46, align 4, !tbaa !9
  %21568 = shl i32 %21567, %21566
  store i32 %21568, ptr %46, align 4, !tbaa !9
  %21569 = load i32, ptr %46, align 4, !tbaa !9
  %21570 = load i32, ptr %45, align 4, !tbaa !9
  %21571 = add i32 %21570, %21569
  store i32 %21571, ptr %45, align 4, !tbaa !9
  %21572 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21572, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %21573 = load i32, ptr %47, align 4, !tbaa !9
  %21574 = load i32, ptr %46, align 4, !tbaa !9
  %21575 = xor i32 %21574, %21573
  store i32 %21575, ptr %46, align 4, !tbaa !9
  %21576 = load i32, ptr %46, align 4, !tbaa !9
  %21577 = zext i32 %21576 to i64
  store i64 %21577, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %21578 = load i64, ptr %56, align 8, !tbaa !11
  %21579 = load i64, ptr %55, align 8, !tbaa !11
  %21580 = or i64 %21579, %21578
  store i64 %21580, ptr %55, align 8, !tbaa !11
  %21581 = load ptr, ptr %5, align 8, !tbaa !5
  %21582 = getelementptr inbounds %struct.w2c_hermes, ptr %21581, i32 0, i32 6
  %21583 = load i32, ptr %45, align 4, !tbaa !9
  %21584 = zext i32 %21583 to i64
  %21585 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21582, i64 noundef %21584, i64 noundef %21585)
  %21586 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21586, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %21587 = load i32, ptr %46, align 4, !tbaa !9
  %21588 = load i32, ptr %45, align 4, !tbaa !9
  %21589 = add i32 %21588, %21587
  store i32 %21589, ptr %45, align 4, !tbaa !9
  %21590 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21590, ptr %6, align 4, !tbaa !9
  br label %2945

21591:                                            ; preds = %3067
  %21592 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21592, ptr %45, align 4, !tbaa !9
  %21593 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21593, ptr %46, align 4, !tbaa !9
  %21594 = load ptr, ptr %5, align 8, !tbaa !5
  %21595 = getelementptr inbounds %struct.w2c_hermes, ptr %21594, i32 0, i32 6
  %21596 = load i32, ptr %46, align 4, !tbaa !9
  %21597 = zext i32 %21596 to i64
  %21598 = add i64 %21597, 2
  %21599 = call i32 @i32_load8_u(ptr noundef %21595, i64 noundef %21598)
  store i32 %21599, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21600 = load i32, ptr %47, align 4, !tbaa !9
  %21601 = and i32 %21600, 31
  %21602 = load i32, ptr %46, align 4, !tbaa !9
  %21603 = shl i32 %21602, %21601
  store i32 %21603, ptr %46, align 4, !tbaa !9
  %21604 = load i32, ptr %46, align 4, !tbaa !9
  %21605 = load i32, ptr %45, align 4, !tbaa !9
  %21606 = add i32 %21605, %21604
  store i32 %21606, ptr %45, align 4, !tbaa !9
  %21607 = load ptr, ptr %5, align 8, !tbaa !5
  %21608 = getelementptr inbounds %struct.w2c_hermes, ptr %21607, i32 0, i32 6
  %21609 = load i32, ptr %45, align 4, !tbaa !9
  %21610 = zext i32 %21609 to i64
  %21611 = call i64 @i64_load(ptr noundef %21608, i64 noundef %21610)
  store i64 %21611, ptr %54, align 8, !tbaa !11
  %21612 = load ptr, ptr %5, align 8, !tbaa !5
  %21613 = load i64, ptr %54, align 8, !tbaa !11
  %21614 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %21612, i64 noundef %21613)
  store i32 %21614, ptr %45, align 4, !tbaa !9
  %21615 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21615, ptr %7, align 4, !tbaa !9
  %21616 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21616, ptr %45, align 4, !tbaa !9
  %21617 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21617, ptr %46, align 4, !tbaa !9
  %21618 = load ptr, ptr %5, align 8, !tbaa !5
  %21619 = getelementptr inbounds %struct.w2c_hermes, ptr %21618, i32 0, i32 6
  %21620 = load i32, ptr %46, align 4, !tbaa !9
  %21621 = zext i32 %21620 to i64
  %21622 = add i64 %21621, 1
  %21623 = call i32 @i32_load8_u(ptr noundef %21619, i64 noundef %21622)
  store i32 %21623, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21624 = load i32, ptr %47, align 4, !tbaa !9
  %21625 = and i32 %21624, 31
  %21626 = load i32, ptr %46, align 4, !tbaa !9
  %21627 = shl i32 %21626, %21625
  store i32 %21627, ptr %46, align 4, !tbaa !9
  %21628 = load i32, ptr %46, align 4, !tbaa !9
  %21629 = load i32, ptr %45, align 4, !tbaa !9
  %21630 = add i32 %21629, %21628
  store i32 %21630, ptr %45, align 4, !tbaa !9
  %21631 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %21631, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %21632 = load i32, ptr %47, align 4, !tbaa !9
  %21633 = load i32, ptr %46, align 4, !tbaa !9
  %21634 = xor i32 %21633, %21632
  store i32 %21634, ptr %46, align 4, !tbaa !9
  %21635 = load i32, ptr %46, align 4, !tbaa !9
  %21636 = zext i32 %21635 to i64
  store i64 %21636, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %21637 = load i64, ptr %56, align 8, !tbaa !11
  %21638 = load i64, ptr %55, align 8, !tbaa !11
  %21639 = or i64 %21638, %21637
  store i64 %21639, ptr %55, align 8, !tbaa !11
  %21640 = load ptr, ptr %5, align 8, !tbaa !5
  %21641 = getelementptr inbounds %struct.w2c_hermes, ptr %21640, i32 0, i32 6
  %21642 = load i32, ptr %45, align 4, !tbaa !9
  %21643 = zext i32 %21642 to i64
  %21644 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21641, i64 noundef %21643, i64 noundef %21644)
  %21645 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21645, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %21646 = load i32, ptr %46, align 4, !tbaa !9
  %21647 = load i32, ptr %45, align 4, !tbaa !9
  %21648 = add i32 %21647, %21646
  store i32 %21648, ptr %45, align 4, !tbaa !9
  %21649 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21649, ptr %6, align 4, !tbaa !9
  br label %2945

21650:                                            ; preds = %3068
  %21651 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21651, ptr %45, align 4, !tbaa !9
  %21652 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21652, ptr %46, align 4, !tbaa !9
  %21653 = load ptr, ptr %5, align 8, !tbaa !5
  %21654 = getelementptr inbounds %struct.w2c_hermes, ptr %21653, i32 0, i32 6
  %21655 = load i32, ptr %46, align 4, !tbaa !9
  %21656 = zext i32 %21655 to i64
  %21657 = add i64 %21656, 2
  %21658 = call i32 @i32_load8_u(ptr noundef %21654, i64 noundef %21657)
  store i32 %21658, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21659 = load i32, ptr %47, align 4, !tbaa !9
  %21660 = and i32 %21659, 31
  %21661 = load i32, ptr %46, align 4, !tbaa !9
  %21662 = shl i32 %21661, %21660
  store i32 %21662, ptr %46, align 4, !tbaa !9
  %21663 = load i32, ptr %46, align 4, !tbaa !9
  %21664 = load i32, ptr %45, align 4, !tbaa !9
  %21665 = add i32 %21664, %21663
  store i32 %21665, ptr %45, align 4, !tbaa !9
  %21666 = load ptr, ptr %5, align 8, !tbaa !5
  %21667 = getelementptr inbounds %struct.w2c_hermes, ptr %21666, i32 0, i32 6
  %21668 = load i32, ptr %45, align 4, !tbaa !9
  %21669 = zext i32 %21668 to i64
  %21670 = call i64 @i64_load(ptr noundef %21667, i64 noundef %21669)
  store i64 %21670, ptr %54, align 8, !tbaa !11
  %21671 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %21671, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %21672 = load i64, ptr %54, align 8, !tbaa !11
  %21673 = load i64, ptr %55, align 8, !tbaa !11
  %21674 = icmp ule i64 %21672, %21673
  %21675 = zext i1 %21674 to i32
  store i32 %21675, ptr %45, align 4, !tbaa !9
  %21676 = load i32, ptr %45, align 4, !tbaa !9
  %21677 = icmp ne i32 %21676, 0
  br i1 %21677, label %21678, label %21725

21678:                                            ; preds = %21650
  %21679 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21679, ptr %45, align 4, !tbaa !9
  %21680 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21680, ptr %46, align 4, !tbaa !9
  %21681 = load ptr, ptr %5, align 8, !tbaa !5
  %21682 = getelementptr inbounds %struct.w2c_hermes, ptr %21681, i32 0, i32 6
  %21683 = load i32, ptr %46, align 4, !tbaa !9
  %21684 = zext i32 %21683 to i64
  %21685 = add i64 %21684, 1
  %21686 = call i32 @i32_load8_u(ptr noundef %21682, i64 noundef %21685)
  store i32 %21686, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21687 = load i32, ptr %47, align 4, !tbaa !9
  %21688 = and i32 %21687, 31
  %21689 = load i32, ptr %46, align 4, !tbaa !9
  %21690 = shl i32 %21689, %21688
  store i32 %21690, ptr %46, align 4, !tbaa !9
  %21691 = load i32, ptr %46, align 4, !tbaa !9
  %21692 = load i32, ptr %45, align 4, !tbaa !9
  %21693 = add i32 %21692, %21691
  store i32 %21693, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %21694 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21694, ptr %56, align 8, !tbaa !11
  store i64 -9223372036854775808, ptr %57, align 8, !tbaa !11
  %21695 = load i64, ptr %57, align 8, !tbaa !11
  %21696 = load i64, ptr %56, align 8, !tbaa !11
  %21697 = xor i64 %21696, %21695
  store i64 %21697, ptr %56, align 8, !tbaa !11
  %21698 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21698, ptr %57, align 8, !tbaa !11
  %21699 = load i64, ptr %57, align 8, !tbaa !11
  %21700 = call double @f64_reinterpret_i64(i64 noundef %21699)
  store double %21700, ptr %63, align 8, !tbaa !13
  %21701 = load double, ptr %63, align 8, !tbaa !13
  store double %21701, ptr %43, align 8, !tbaa !13
  %21702 = load double, ptr %43, align 8, !tbaa !13
  store double %21702, ptr %64, align 8, !tbaa !13
  %21703 = load double, ptr %63, align 8, !tbaa !13
  %21704 = load double, ptr %64, align 8, !tbaa !13
  %21705 = fcmp une double %21703, %21704
  %21706 = zext i1 %21705 to i32
  store i32 %21706, ptr %48, align 4, !tbaa !9
  %21707 = load i32, ptr %48, align 4, !tbaa !9
  %21708 = icmp ne i32 %21707, 0
  br i1 %21708, label %21709, label %21711

21709:                                            ; preds = %21678
  %21710 = load i64, ptr %55, align 8, !tbaa !11
  br label %21713

21711:                                            ; preds = %21678
  %21712 = load i64, ptr %56, align 8, !tbaa !11
  br label %21713

21713:                                            ; preds = %21711, %21709
  %21714 = phi i64 [ %21710, %21709 ], [ %21712, %21711 ]
  store i64 %21714, ptr %55, align 8, !tbaa !11
  %21715 = load ptr, ptr %5, align 8, !tbaa !5
  %21716 = getelementptr inbounds %struct.w2c_hermes, ptr %21715, i32 0, i32 6
  %21717 = load i32, ptr %45, align 4, !tbaa !9
  %21718 = zext i32 %21717 to i64
  %21719 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21716, i64 noundef %21718, i64 noundef %21719)
  %21720 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21720, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %21721 = load i32, ptr %46, align 4, !tbaa !9
  %21722 = load i32, ptr %45, align 4, !tbaa !9
  %21723 = add i32 %21722, %21721
  store i32 %21723, ptr %45, align 4, !tbaa !9
  %21724 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21724, ptr %6, align 4, !tbaa !9
  br label %2945

21725:                                            ; preds = %21650
  %21726 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21726, ptr %45, align 4, !tbaa !9
  %21727 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21727, ptr %46, align 4, !tbaa !9
  %21728 = load ptr, ptr %5, align 8, !tbaa !5
  %21729 = getelementptr inbounds %struct.w2c_hermes, ptr %21728, i32 0, i32 6
  %21730 = load i32, ptr %45, align 4, !tbaa !9
  %21731 = zext i32 %21730 to i64
  %21732 = add i64 %21731, 5808
  %21733 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21729, i64 noundef %21732, i32 noundef %21733)
  %21734 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %21734, ptr %45, align 4, !tbaa !9
  %21735 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21735, ptr %46, align 4, !tbaa !9
  %21736 = load ptr, ptr %5, align 8, !tbaa !5
  %21737 = getelementptr inbounds %struct.w2c_hermes, ptr %21736, i32 0, i32 6
  %21738 = load i32, ptr %46, align 4, !tbaa !9
  %21739 = zext i32 %21738 to i64
  %21740 = add i64 %21739, 2
  %21741 = call i32 @i32_load8_u(ptr noundef %21737, i64 noundef %21740)
  store i32 %21741, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %21742 = load i32, ptr %47, align 4, !tbaa !9
  %21743 = and i32 %21742, 31
  %21744 = load i32, ptr %46, align 4, !tbaa !9
  %21745 = shl i32 %21744, %21743
  store i32 %21745, ptr %46, align 4, !tbaa !9
  %21746 = load i32, ptr %46, align 4, !tbaa !9
  %21747 = load i32, ptr %45, align 4, !tbaa !9
  %21748 = add i32 %21747, %21746
  store i32 %21748, ptr %45, align 4, !tbaa !9
  %21749 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21749, ptr %6, align 4, !tbaa !9
  %21750 = load ptr, ptr %5, align 8, !tbaa !5
  %21751 = getelementptr inbounds %struct.w2c_hermes, ptr %21750, i32 0, i32 3
  %21752 = load i32, ptr %21751, align 8, !tbaa !15
  store i32 %21752, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %21753 = load i32, ptr %46, align 4, !tbaa !9
  %21754 = load i32, ptr %45, align 4, !tbaa !9
  %21755 = sub i32 %21754, %21753
  store i32 %21755, ptr %45, align 4, !tbaa !9
  %21756 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21756, ptr %18, align 4, !tbaa !9
  %21757 = load i32, ptr %45, align 4, !tbaa !9
  %21758 = load ptr, ptr %5, align 8, !tbaa !5
  %21759 = getelementptr inbounds %struct.w2c_hermes, ptr %21758, i32 0, i32 3
  store i32 %21757, ptr %21759, align 8, !tbaa !15
  %21760 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %21760, ptr %45, align 4, !tbaa !9
  %21761 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21761, ptr %46, align 4, !tbaa !9
  %21762 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21762, ptr %47, align 4, !tbaa !9
  %21763 = load ptr, ptr %5, align 8, !tbaa !5
  %21764 = load i32, ptr %45, align 4, !tbaa !9
  %21765 = load i32, ptr %46, align 4, !tbaa !9
  %21766 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %21763, i32 noundef %21764, i32 noundef %21765, i32 noundef %21766)
  %21767 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %21767, ptr %45, align 4, !tbaa !9
  %21768 = load ptr, ptr %5, align 8, !tbaa !5
  %21769 = getelementptr inbounds %struct.w2c_hermes, ptr %21768, i32 0, i32 6
  %21770 = load i32, ptr %45, align 4, !tbaa !9
  %21771 = zext i32 %21770 to i64
  %21772 = call i32 @i32_load(ptr noundef %21769, i64 noundef %21771)
  store i32 %21772, ptr %45, align 4, !tbaa !9
  %21773 = load i32, ptr %45, align 4, !tbaa !9
  %21774 = icmp ne i32 %21773, 0
  %21775 = xor i1 %21774, true
  %21776 = zext i1 %21775 to i32
  store i32 %21776, ptr %45, align 4, !tbaa !9
  %21777 = load i32, ptr %45, align 4, !tbaa !9
  %21778 = icmp ne i32 %21777, 0
  br i1 %21778, label %21779, label %21787

21779:                                            ; preds = %21725
  %21780 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21780, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, 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 %45, align 4, !tbaa !9
  %21784 = zext i32 %21783 to i64
  %21785 = add i64 %21784, 304
  %21786 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21782, i64 noundef %21785, i32 noundef %21786)
  br label %22582

21787:                                            ; preds = %21725
  %21788 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %21788, ptr %45, align 4, !tbaa !9
  %21789 = load ptr, ptr %5, align 8, !tbaa !5
  %21790 = getelementptr inbounds %struct.w2c_hermes, ptr %21789, i32 0, i32 6
  %21791 = load i32, ptr %45, align 4, !tbaa !9
  %21792 = zext i32 %21791 to i64
  %21793 = add i64 %21792, 8
  %21794 = call i64 @i64_load(ptr noundef %21790, i64 noundef %21793)
  store i64 %21794, ptr %54, align 8, !tbaa !11
  %21795 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %21795, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %21796 = load i64, ptr %54, align 8, !tbaa !11
  %21797 = load i64, ptr %55, align 8, !tbaa !11
  %21798 = and i64 %21797, 63
  %21799 = ashr i64 %21796, %21798
  store i64 %21799, ptr %54, align 8, !tbaa !11
  %21800 = load i64, ptr %54, align 8, !tbaa !11
  %21801 = trunc i64 %21800 to i32
  store i32 %21801, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %21802 = load i32, ptr %45, align 4, !tbaa !9
  %21803 = load i32, ptr %46, align 4, !tbaa !9
  %21804 = icmp ne i32 %21802, %21803
  %21805 = zext i1 %21804 to i32
  store i32 %21805, ptr %45, align 4, !tbaa !9
  %21806 = load i32, ptr %45, align 4, !tbaa !9
  %21807 = icmp ne i32 %21806, 0
  br i1 %21807, label %21808, label %21844

21808:                                            ; preds = %21787
  %21809 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21809, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %21810 = load ptr, ptr %5, align 8, !tbaa !5
  %21811 = getelementptr inbounds %struct.w2c_hermes, ptr %21810, i32 0, i32 6
  %21812 = load i32, ptr %45, align 4, !tbaa !9
  %21813 = zext i32 %21812 to i64
  %21814 = add i64 %21813, 304
  %21815 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21811, i64 noundef %21814, i32 noundef %21815)
  %21816 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21816, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %21817 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21817, ptr %56, align 8, !tbaa !11
  store i64 -9223372036854775808, ptr %57, align 8, !tbaa !11
  %21818 = load i64, ptr %57, align 8, !tbaa !11
  %21819 = load i64, ptr %56, align 8, !tbaa !11
  %21820 = xor i64 %21819, %21818
  store i64 %21820, ptr %56, align 8, !tbaa !11
  %21821 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21821, ptr %57, align 8, !tbaa !11
  %21822 = load i64, ptr %57, align 8, !tbaa !11
  %21823 = call double @f64_reinterpret_i64(i64 noundef %21822)
  store double %21823, ptr %63, align 8, !tbaa !13
  %21824 = load double, ptr %63, align 8, !tbaa !13
  store double %21824, ptr %43, align 8, !tbaa !13
  %21825 = load double, ptr %43, align 8, !tbaa !13
  store double %21825, ptr %64, align 8, !tbaa !13
  %21826 = load double, ptr %63, align 8, !tbaa !13
  %21827 = load double, ptr %64, align 8, !tbaa !13
  %21828 = fcmp une double %21826, %21827
  %21829 = zext i1 %21828 to i32
  store i32 %21829, ptr %48, align 4, !tbaa !9
  %21830 = load i32, ptr %48, align 4, !tbaa !9
  %21831 = icmp ne i32 %21830, 0
  br i1 %21831, label %21832, label %21834

21832:                                            ; preds = %21808
  %21833 = load i64, ptr %55, align 8, !tbaa !11
  br label %21836

21834:                                            ; preds = %21808
  %21835 = load i64, ptr %56, align 8, !tbaa !11
  br label %21836

21836:                                            ; preds = %21834, %21832
  %21837 = phi i64 [ %21833, %21832 ], [ %21835, %21834 ]
  store i64 %21837, ptr %55, align 8, !tbaa !11
  %21838 = load ptr, ptr %5, align 8, !tbaa !5
  %21839 = getelementptr inbounds %struct.w2c_hermes, ptr %21838, i32 0, i32 6
  %21840 = load i32, ptr %45, align 4, !tbaa !9
  %21841 = zext i32 %21840 to i64
  %21842 = add i64 %21841, 312
  %21843 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21839, i64 noundef %21842, i64 noundef %21843)
  br label %22582

21844:                                            ; preds = %21787
  %21845 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %21845, ptr %45, align 4, !tbaa !9
  %21846 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21846, ptr %55, align 8, !tbaa !11
  %21847 = load i64, ptr %55, align 8, !tbaa !11
  %21848 = trunc i64 %21847 to i32
  store i32 %21848, ptr %46, align 4, !tbaa !9
  %21849 = load ptr, ptr %5, align 8, !tbaa !5
  %21850 = load i32, ptr %45, align 4, !tbaa !9
  %21851 = load i32, ptr %46, align 4, !tbaa !9
  %21852 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %21849, i32 noundef %21850, i32 noundef %21851)
  store i32 %21852, ptr %45, align 4, !tbaa !9
  %21853 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21853, ptr %12, align 4, !tbaa !9
  %21854 = load ptr, ptr %5, align 8, !tbaa !5
  %21855 = getelementptr inbounds %struct.w2c_hermes, ptr %21854, i32 0, i32 3
  %21856 = load i32, ptr %21855, align 8, !tbaa !15
  store i32 %21856, ptr %45, align 4, !tbaa !9
  store i32 96, ptr %46, align 4, !tbaa !9
  %21857 = load i32, ptr %46, align 4, !tbaa !9
  %21858 = load i32, ptr %45, align 4, !tbaa !9
  %21859 = sub i32 %21858, %21857
  store i32 %21859, ptr %45, align 4, !tbaa !9
  %21860 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21860, ptr %16, align 4, !tbaa !9
  %21861 = load i32, ptr %45, align 4, !tbaa !9
  %21862 = load ptr, ptr %5, align 8, !tbaa !5
  %21863 = getelementptr inbounds %struct.w2c_hermes, ptr %21862, i32 0, i32 3
  store i32 %21861, ptr %21863, align 8, !tbaa !15
  %21864 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21864, ptr %45, align 4, !tbaa !9
  %21865 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21865, ptr %46, align 4, !tbaa !9
  %21866 = load ptr, ptr %5, align 8, !tbaa !5
  %21867 = getelementptr inbounds %struct.w2c_hermes, ptr %21866, i32 0, i32 6
  %21868 = load i32, ptr %46, align 4, !tbaa !9
  %21869 = zext i32 %21868 to i64
  %21870 = call i32 @i32_load(ptr noundef %21867, i64 noundef %21869)
  store i32 %21870, ptr %46, align 4, !tbaa !9
  %21871 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %21871, ptr %6, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %21872 = load i32, ptr %47, align 4, !tbaa !9
  %21873 = load i32, ptr %46, align 4, !tbaa !9
  %21874 = add i32 %21873, %21872
  store i32 %21874, ptr %46, align 4, !tbaa !9
  %21875 = load ptr, ptr %5, align 8, !tbaa !5
  %21876 = getelementptr inbounds %struct.w2c_hermes, ptr %21875, i32 0, i32 6
  %21877 = load i32, ptr %45, align 4, !tbaa !9
  %21878 = zext i32 %21877 to i64
  %21879 = add i64 %21878, 56
  %21880 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21876, i64 noundef %21879, i32 noundef %21880)
  %21881 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21881, ptr %45, align 4, !tbaa !9
  %21882 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21882, ptr %46, align 4, !tbaa !9
  %21883 = load ptr, ptr %5, align 8, !tbaa !5
  %21884 = getelementptr inbounds %struct.w2c_hermes, ptr %21883, i32 0, i32 6
  %21885 = load i32, ptr %46, align 4, !tbaa !9
  %21886 = zext i32 %21885 to i64
  %21887 = add i64 %21886, 4
  %21888 = call i32 @i32_load(ptr noundef %21884, i64 noundef %21887)
  store i32 %21888, ptr %46, align 4, !tbaa !9
  %21889 = load ptr, ptr %5, align 8, !tbaa !5
  %21890 = getelementptr inbounds %struct.w2c_hermes, ptr %21889, i32 0, i32 6
  %21891 = load i32, ptr %45, align 4, !tbaa !9
  %21892 = zext i32 %21891 to i64
  %21893 = add i64 %21892, 60
  %21894 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21890, i64 noundef %21893, i32 noundef %21894)
  %21895 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21895, ptr %45, align 4, !tbaa !9
  %21896 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21896, ptr %46, align 4, !tbaa !9
  %21897 = load ptr, ptr %5, align 8, !tbaa !5
  %21898 = getelementptr inbounds %struct.w2c_hermes, ptr %21897, i32 0, i32 6
  %21899 = load i32, ptr %46, align 4, !tbaa !9
  %21900 = zext i32 %21899 to i64
  %21901 = add i64 %21900, 56
  %21902 = call i64 @i64_load(ptr noundef %21898, i64 noundef %21901)
  store i64 %21902, ptr %55, align 8, !tbaa !11
  %21903 = load ptr, ptr %5, align 8, !tbaa !5
  %21904 = getelementptr inbounds %struct.w2c_hermes, ptr %21903, i32 0, i32 6
  %21905 = load i32, ptr %45, align 4, !tbaa !9
  %21906 = zext i32 %21905 to i64
  %21907 = add i64 %21906, 32
  %21908 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21904, i64 noundef %21907, i64 noundef %21908)
  %21909 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21909, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %21910 = load i32, ptr %46, align 4, !tbaa !9
  %21911 = load i32, ptr %45, align 4, !tbaa !9
  %21912 = add i32 %21911, %21910
  store i32 %21912, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %21913 = load ptr, ptr %5, align 8, !tbaa !5
  %21914 = load i32, ptr %45, align 4, !tbaa !9
  %21915 = load i64, ptr %55, align 8, !tbaa !11
  %21916 = call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Acompare0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef %21913, i32 noundef %21914, i64 noundef %21915)
  store i32 %21916, ptr %45, align 4, !tbaa !9
  %21917 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %21917, ptr %6, align 4, !tbaa !9
  %21918 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %21918, ptr %45, align 4, !tbaa !9
  %21919 = load ptr, ptr %5, align 8, !tbaa !5
  %21920 = getelementptr inbounds %struct.w2c_hermes, ptr %21919, i32 0, i32 6
  %21921 = load i32, ptr %45, align 4, !tbaa !9
  %21922 = zext i32 %21921 to i64
  %21923 = call i64 @i64_load32_u(ptr noundef %21920, i64 noundef %21922)
  store i64 %21923, ptr %54, align 8, !tbaa !11
  %21924 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %21924, ptr %39, align 8, !tbaa !11
  %21925 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21925, ptr %45, align 4, !tbaa !9
  %21926 = load i32, ptr %45, align 4, !tbaa !9
  %21927 = icmp ne i32 %21926, 0
  %21928 = xor i1 %21927, true
  %21929 = zext i1 %21928 to i32
  store i32 %21929, ptr %45, align 4, !tbaa !9
  %21930 = load i32, ptr %45, align 4, !tbaa !9
  %21931 = icmp ne i32 %21930, 0
  br i1 %21931, label %21932, label %21951

21932:                                            ; preds = %21844
  %21933 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21933, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %21934 = load ptr, ptr %5, align 8, !tbaa !5
  %21935 = getelementptr inbounds %struct.w2c_hermes, ptr %21934, i32 0, i32 6
  %21936 = load i32, ptr %45, align 4, !tbaa !9
  %21937 = zext i32 %21936 to i64
  %21938 = add i64 %21937, 304
  %21939 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21935, i64 noundef %21938, i32 noundef %21939)
  %21940 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %21940, ptr %45, align 4, !tbaa !9
  %21941 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21941, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %21942 = load i64, ptr %56, align 8, !tbaa !11
  %21943 = load i64, ptr %55, align 8, !tbaa !11
  %21944 = or i64 %21943, %21942
  store i64 %21944, ptr %55, align 8, !tbaa !11
  %21945 = load ptr, ptr %5, align 8, !tbaa !5
  %21946 = getelementptr inbounds %struct.w2c_hermes, ptr %21945, i32 0, i32 6
  %21947 = load i32, ptr %45, align 4, !tbaa !9
  %21948 = zext i32 %21947 to i64
  %21949 = add i64 %21948, 312
  %21950 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21946, i64 noundef %21949, i64 noundef %21950)
  br label %22574

21951:                                            ; preds = %21844
  %21952 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21952, ptr %45, align 4, !tbaa !9
  %21953 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %21953, ptr %55, align 8, !tbaa !11
  %21954 = load i64, ptr %55, align 8, !tbaa !11
  %21955 = trunc i64 %21954 to i32
  store i32 %21955, ptr %46, align 4, !tbaa !9
  %21956 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %21956, ptr %6, align 4, !tbaa !9
  %21957 = load ptr, ptr %5, align 8, !tbaa !5
  %21958 = getelementptr inbounds %struct.w2c_hermes, ptr %21957, i32 0, i32 6
  %21959 = load i32, ptr %46, align 4, !tbaa !9
  %21960 = zext i32 %21959 to i64
  %21961 = add i64 %21960, 4
  %21962 = call i32 @i32_load(ptr noundef %21958, i64 noundef %21961)
  store i32 %21962, ptr %46, align 4, !tbaa !9
  %21963 = load ptr, ptr %5, align 8, !tbaa !5
  %21964 = getelementptr inbounds %struct.w2c_hermes, ptr %21963, i32 0, i32 6
  %21965 = load i32, ptr %45, align 4, !tbaa !9
  %21966 = zext i32 %21965 to i64
  %21967 = add i64 %21966, 44
  %21968 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21964, i64 noundef %21967, i32 noundef %21968)
  %21969 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21969, ptr %45, align 4, !tbaa !9
  %21970 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %21970, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %21971 = load i32, ptr %47, align 4, !tbaa !9
  %21972 = load i32, ptr %46, align 4, !tbaa !9
  %21973 = add i32 %21972, %21971
  store i32 %21973, ptr %46, align 4, !tbaa !9
  %21974 = load ptr, ptr %5, align 8, !tbaa !5
  %21975 = getelementptr inbounds %struct.w2c_hermes, ptr %21974, i32 0, i32 6
  %21976 = load i32, ptr %45, align 4, !tbaa !9
  %21977 = zext i32 %21976 to i64
  %21978 = add i64 %21977, 40
  %21979 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %21975, i64 noundef %21978, i32 noundef %21979)
  %21980 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21980, ptr %45, align 4, !tbaa !9
  %21981 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21981, ptr %46, align 4, !tbaa !9
  %21982 = load ptr, ptr %5, align 8, !tbaa !5
  %21983 = getelementptr inbounds %struct.w2c_hermes, ptr %21982, i32 0, i32 6
  %21984 = load i32, ptr %46, align 4, !tbaa !9
  %21985 = zext i32 %21984 to i64
  %21986 = add i64 %21985, 40
  %21987 = call i64 @i64_load(ptr noundef %21983, i64 noundef %21986)
  store i64 %21987, ptr %55, align 8, !tbaa !11
  %21988 = load ptr, ptr %5, align 8, !tbaa !5
  %21989 = getelementptr inbounds %struct.w2c_hermes, ptr %21988, i32 0, i32 6
  %21990 = load i32, ptr %45, align 4, !tbaa !9
  %21991 = zext i32 %21990 to i64
  %21992 = add i64 %21991, 24
  %21993 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %21989, i64 noundef %21992, i64 noundef %21993)
  %21994 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %21994, ptr %45, align 4, !tbaa !9
  %21995 = load ptr, ptr %5, align 8, !tbaa !5
  %21996 = getelementptr inbounds %struct.w2c_hermes, ptr %21995, i32 0, i32 6
  %21997 = load i32, ptr %45, align 4, !tbaa !9
  %21998 = zext i32 %21997 to i64
  %21999 = add i64 %21998, 28
  %22000 = call i32 @i32_load(ptr noundef %21996, i64 noundef %21999)
  store i32 %22000, ptr %45, align 4, !tbaa !9
  %22001 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22001, ptr %6, align 4, !tbaa !9
  %22002 = load i32, ptr %45, align 4, !tbaa !9
  %22003 = icmp ne i32 %22002, 0
  %22004 = xor i1 %22003, true
  %22005 = zext i1 %22004 to i32
  store i32 %22005, ptr %45, align 4, !tbaa !9
  %22006 = load i32, ptr %45, align 4, !tbaa !9
  %22007 = icmp ne i32 %22006, 0
  br i1 %22007, label %22008, label %22010

22008:                                            ; preds = %21951
  %22009 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22009, ptr %45, align 4, !tbaa !9
  br label %22044

22010:                                            ; preds = %21951
  %22011 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22011, ptr %45, align 4, !tbaa !9
  %22012 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22012, ptr %46, 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 %46, align 4, !tbaa !9
  %22016 = zext i32 %22015 to i64
  %22017 = add i64 %22016, 24
  %22018 = call i32 @i32_load(ptr noundef %22014, i64 noundef %22017)
  store i32 %22018, ptr %46, align 4, !tbaa !9
  %22019 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22019, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %22020 = load i32, ptr %48, align 4, !tbaa !9
  %22021 = and i32 %22020, 31
  %22022 = load i32, ptr %47, align 4, !tbaa !9
  %22023 = shl i32 %22022, %22021
  store i32 %22023, ptr %47, align 4, !tbaa !9
  %22024 = load i32, ptr %47, align 4, !tbaa !9
  %22025 = load i32, ptr %46, align 4, !tbaa !9
  %22026 = add i32 %22025, %22024
  store i32 %22026, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %22027 = load i32, ptr %47, align 4, !tbaa !9
  %22028 = load i32, ptr %46, align 4, !tbaa !9
  %22029 = sub i32 %22028, %22027
  store i32 %22029, ptr %46, align 4, !tbaa !9
  %22030 = load ptr, ptr %5, align 8, !tbaa !5
  %22031 = getelementptr inbounds %struct.w2c_hermes, ptr %22030, i32 0, i32 6
  %22032 = load i32, ptr %46, align 4, !tbaa !9
  %22033 = zext i32 %22032 to i64
  %22034 = call i64 @i64_load(ptr noundef %22031, i64 noundef %22033)
  store i64 %22034, ptr %55, align 8, !tbaa !11
  store i64 63, ptr %56, align 8, !tbaa !11
  %22035 = load i64, ptr %56, align 8, !tbaa !11
  %22036 = and i64 %22035, 63
  %22037 = load i64, ptr %55, align 8, !tbaa !11
  %22038 = lshr i64 %22037, %22036
  store i64 %22038, ptr %55, align 8, !tbaa !11
  %22039 = load i64, ptr %55, align 8, !tbaa !11
  %22040 = trunc i64 %22039 to i32
  store i32 %22040, ptr %46, align 4, !tbaa !9
  %22041 = load i32, ptr %46, align 4, !tbaa !9
  %22042 = load i32, ptr %45, align 4, !tbaa !9
  %22043 = add i32 %22042, %22041
  store i32 %22043, ptr %45, align 4, !tbaa !9
  br label %22044

22044:                                            ; preds = %22010, %22008
  %22045 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22045, ptr %8, align 4, !tbaa !9
  store i32 1024, ptr %46, align 4, !tbaa !9
  %22046 = load i32, ptr %45, align 4, !tbaa !9
  %22047 = load i32, ptr %46, align 4, !tbaa !9
  %22048 = icmp ule i32 %22046, %22047
  %22049 = zext i1 %22048 to i32
  store i32 %22049, ptr %45, align 4, !tbaa !9
  %22050 = load i32, ptr %45, align 4, !tbaa !9
  %22051 = icmp ne i32 %22050, 0
  br i1 %22051, label %22052, label %22106

22052:                                            ; preds = %22044
  %22053 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22053, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %22054 = load i32, ptr %46, align 4, !tbaa !9
  %22055 = and i32 %22054, 31
  %22056 = load i32, ptr %45, align 4, !tbaa !9
  %22057 = shl i32 %22056, %22055
  store i32 %22057, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %22058 = load i32, ptr %46, align 4, !tbaa !9
  %22059 = load i32, ptr %45, align 4, !tbaa !9
  %22060 = add i32 %22059, %22058
  store i32 %22060, ptr %45, align 4, !tbaa !9
  %22061 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22061, ptr %6, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %22062 = load i32, ptr %46, align 4, !tbaa !9
  %22063 = load i32, ptr %45, align 4, !tbaa !9
  %22064 = and i32 %22063, %22062
  store i32 %22064, ptr %45, align 4, !tbaa !9
  %22065 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22065, ptr %7, align 4, !tbaa !9
  %22066 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22066, ptr %46, align 4, !tbaa !9
  store i32 1368, ptr %47, align 4, !tbaa !9
  %22067 = load i32, ptr %47, align 4, !tbaa !9
  %22068 = load i32, ptr %46, align 4, !tbaa !9
  %22069 = add i32 %22068, %22067
  store i32 %22069, ptr %46, 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 %46, align 4, !tbaa !9
  %22073 = zext i32 %22072 to i64
  %22074 = call i32 @i32_load(ptr noundef %22071, i64 noundef %22073)
  store i32 %22074, ptr %46, align 4, !tbaa !9
  %22075 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22075, ptr %47, align 4, !tbaa !9
  store i32 1364, ptr %48, align 4, !tbaa !9
  %22076 = load i32, ptr %48, align 4, !tbaa !9
  %22077 = load i32, ptr %47, align 4, !tbaa !9
  %22078 = add i32 %22077, %22076
  store i32 %22078, ptr %47, align 4, !tbaa !9
  %22079 = load ptr, ptr %5, align 8, !tbaa !5
  %22080 = getelementptr inbounds %struct.w2c_hermes, ptr %22079, i32 0, i32 6
  %22081 = load i32, ptr %47, align 4, !tbaa !9
  %22082 = zext i32 %22081 to i64
  %22083 = call i32 @i32_load(ptr noundef %22080, i64 noundef %22082)
  store i32 %22083, ptr %47, align 4, !tbaa !9
  %22084 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %22084, ptr %22, align 4, !tbaa !9
  %22085 = load i32, ptr %47, align 4, !tbaa !9
  %22086 = load i32, ptr %46, align 4, !tbaa !9
  %22087 = sub i32 %22086, %22085
  store i32 %22087, ptr %46, align 4, !tbaa !9
  %22088 = load i32, ptr %45, align 4, !tbaa !9
  %22089 = load i32, ptr %46, align 4, !tbaa !9
  %22090 = icmp ule i32 %22088, %22089
  %22091 = zext i1 %22090 to i32
  store i32 %22091, ptr %45, align 4, !tbaa !9
  %22092 = load i32, ptr %45, align 4, !tbaa !9
  %22093 = icmp ne i32 %22092, 0
  br i1 %22093, label %22094, label %22095

22094:                                            ; preds = %22052
  br label %22151

22095:                                            ; preds = %22052
  %22096 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22096, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %22097 = load i32, ptr %46, align 4, !tbaa !9
  %22098 = load i32, ptr %45, align 4, !tbaa !9
  %22099 = add i32 %22098, %22097
  store i32 %22099, ptr %45, align 4, !tbaa !9
  %22100 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22100, ptr %46, align 4, !tbaa !9
  %22101 = load ptr, ptr %5, align 8, !tbaa !5
  %22102 = load i32, ptr %45, align 4, !tbaa !9
  %22103 = load i32, ptr %46, align 4, !tbaa !9
  %22104 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %22101, i32 noundef %22102, i32 noundef %22103)
  store i32 %22104, ptr %45, align 4, !tbaa !9
  %22105 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22105, ptr %22, align 4, !tbaa !9
  br label %22164

22106:                                            ; preds = %22044
  %22107 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22107, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %22108 = load ptr, ptr %5, align 8, !tbaa !5
  %22109 = getelementptr inbounds %struct.w2c_hermes, ptr %22108, i32 0, i32 6
  %22110 = load i32, ptr %45, align 4, !tbaa !9
  %22111 = zext i32 %22110 to i64
  %22112 = add i64 %22111, 88
  %22113 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22109, i64 noundef %22112, i32 noundef %22113)
  %22114 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22114, ptr %45, align 4, !tbaa !9
  store i64 120259084289, ptr %55, align 8, !tbaa !11
  %22115 = load ptr, ptr %5, align 8, !tbaa !5
  %22116 = getelementptr inbounds %struct.w2c_hermes, ptr %22115, i32 0, i32 6
  %22117 = load i32, ptr %45, align 4, !tbaa !9
  %22118 = zext i32 %22117 to i64
  %22119 = add i64 %22118, 80
  %22120 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22116, i64 noundef %22119, i64 noundef %22120)
  %22121 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22121, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %22122 = load ptr, ptr %5, align 8, !tbaa !5
  %22123 = getelementptr inbounds %struct.w2c_hermes, ptr %22122, i32 0, i32 6
  %22124 = load i32, ptr %45, align 4, !tbaa !9
  %22125 = zext i32 %22124 to i64
  %22126 = add i64 %22125, 64
  %22127 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22123, i64 noundef %22126, i32 noundef %22127)
  %22128 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22128, ptr %45, align 4, !tbaa !9
  store i32 55293, ptr %46, align 4, !tbaa !9
  %22129 = load ptr, ptr %5, align 8, !tbaa !5
  %22130 = getelementptr inbounds %struct.w2c_hermes, ptr %22129, i32 0, i32 6
  %22131 = load i32, ptr %45, align 4, !tbaa !9
  %22132 = zext i32 %22131 to i64
  %22133 = add i64 %22132, 56
  %22134 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22130, i64 noundef %22133, i32 noundef %22134)
  %22135 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22135, ptr %45, align 4, !tbaa !9
  %22136 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22136, ptr %46, align 4, !tbaa !9
  store i32 56, ptr %47, align 4, !tbaa !9
  %22137 = load i32, ptr %47, align 4, !tbaa !9
  %22138 = load i32, ptr %46, align 4, !tbaa !9
  %22139 = add i32 %22138, %22137
  store i32 %22139, ptr %46, align 4, !tbaa !9
  %22140 = load ptr, ptr %5, align 8, !tbaa !5
  %22141 = load i32, ptr %45, align 4, !tbaa !9
  %22142 = load i32, ptr %46, align 4, !tbaa !9
  %22143 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %22140, i32 noundef %22141, i32 noundef %22142)
  store i32 %22143, ptr %45, align 4, !tbaa !9
  %22144 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22144, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %22145 = load ptr, ptr %5, align 8, !tbaa !5
  %22146 = getelementptr inbounds %struct.w2c_hermes, ptr %22145, i32 0, i32 6
  %22147 = load i32, ptr %45, align 4, !tbaa !9
  %22148 = zext i32 %22147 to i64
  %22149 = add i64 %22148, 304
  %22150 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22146, i64 noundef %22149, i32 noundef %22150)
  br label %22574

22151:                                            ; preds = %22094
  %22152 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22152, ptr %45, align 4, !tbaa !9
  %22153 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22153, ptr %46, align 4, !tbaa !9
  %22154 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %22154, ptr %47, align 4, !tbaa !9
  %22155 = load i32, ptr %47, align 4, !tbaa !9
  %22156 = load i32, ptr %46, align 4, !tbaa !9
  %22157 = add i32 %22156, %22155
  store i32 %22157, ptr %46, align 4, !tbaa !9
  %22158 = load ptr, ptr %5, align 8, !tbaa !5
  %22159 = getelementptr inbounds %struct.w2c_hermes, ptr %22158, i32 0, i32 6
  %22160 = load i32, ptr %45, align 4, !tbaa !9
  %22161 = zext i32 %22160 to i64
  %22162 = add i64 %22161, 1364
  %22163 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22159, i64 noundef %22162, i32 noundef %22163)
  br label %22164

22164:                                            ; preds = %22151, %22095
  %22165 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %22165, ptr %45, align 4, !tbaa !9
  %22166 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22166, ptr %46, align 4, !tbaa !9
  %22167 = load ptr, ptr %5, align 8, !tbaa !5
  %22168 = getelementptr inbounds %struct.w2c_hermes, ptr %22167, i32 0, i32 6
  %22169 = load i32, ptr %45, align 4, !tbaa !9
  %22170 = zext i32 %22169 to i64
  %22171 = add i64 %22170, 4
  %22172 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22168, i64 noundef %22171, i32 noundef %22172)
  %22173 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %22173, ptr %45, align 4, !tbaa !9
  %22174 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22174, ptr %46, align 4, !tbaa !9
  store i32 16777208, ptr %47, align 4, !tbaa !9
  %22175 = load i32, ptr %47, align 4, !tbaa !9
  %22176 = load i32, ptr %46, align 4, !tbaa !9
  %22177 = and i32 %22176, %22175
  store i32 %22177, ptr %46, align 4, !tbaa !9
  store i32 1291845632, ptr %47, align 4, !tbaa !9
  %22178 = load i32, ptr %47, align 4, !tbaa !9
  %22179 = load i32, ptr %46, align 4, !tbaa !9
  %22180 = or i32 %22179, %22178
  store i32 %22180, ptr %46, align 4, !tbaa !9
  %22181 = load ptr, ptr %5, align 8, !tbaa !5
  %22182 = getelementptr inbounds %struct.w2c_hermes, ptr %22181, i32 0, i32 6
  %22183 = load i32, ptr %45, align 4, !tbaa !9
  %22184 = zext i32 %22183 to i64
  %22185 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22182, i64 noundef %22184, i32 noundef %22185)
  %22186 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22186, ptr %45, align 4, !tbaa !9
  %22187 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %22187, ptr %46, align 4, !tbaa !9
  store i32 4, ptr %47, align 4, !tbaa !9
  %22188 = load i32, ptr %47, align 4, !tbaa !9
  %22189 = load i32, ptr %46, align 4, !tbaa !9
  %22190 = add i32 %22189, %22188
  store i32 %22190, ptr %46, align 4, !tbaa !9
  %22191 = load ptr, ptr %5, align 8, !tbaa !5
  %22192 = getelementptr inbounds %struct.w2c_hermes, ptr %22191, i32 0, i32 6
  %22193 = load i32, ptr %45, align 4, !tbaa !9
  %22194 = zext i32 %22193 to i64
  %22195 = add i64 %22194, 60
  %22196 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22192, i64 noundef %22195, i32 noundef %22196)
  %22197 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22197, ptr %45, align 4, !tbaa !9
  %22198 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %22198, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %22199 = load i32, ptr %47, align 4, !tbaa !9
  %22200 = load i32, ptr %46, align 4, !tbaa !9
  %22201 = add i32 %22200, %22199
  store i32 %22201, ptr %46, align 4, !tbaa !9
  %22202 = load ptr, ptr %5, align 8, !tbaa !5
  %22203 = getelementptr inbounds %struct.w2c_hermes, ptr %22202, i32 0, i32 6
  %22204 = load i32, ptr %45, align 4, !tbaa !9
  %22205 = zext i32 %22204 to i64
  %22206 = add i64 %22205, 56
  %22207 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22203, i64 noundef %22206, i32 noundef %22207)
  %22208 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22208, ptr %45, align 4, !tbaa !9
  %22209 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22209, ptr %46, align 4, !tbaa !9
  %22210 = load ptr, ptr %5, align 8, !tbaa !5
  %22211 = getelementptr inbounds %struct.w2c_hermes, ptr %22210, i32 0, i32 6
  %22212 = load i32, ptr %46, align 4, !tbaa !9
  %22213 = zext i32 %22212 to i64
  %22214 = call i32 @i32_load(ptr noundef %22211, i64 noundef %22213)
  store i32 %22214, ptr %46, align 4, !tbaa !9
  %22215 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22215, ptr %6, align 4, !tbaa !9
  %22216 = load ptr, ptr %5, align 8, !tbaa !5
  %22217 = getelementptr inbounds %struct.w2c_hermes, ptr %22216, i32 0, i32 6
  %22218 = load i32, ptr %46, align 4, !tbaa !9
  %22219 = zext i32 %22218 to i64
  %22220 = add i64 %22219, 4
  %22221 = call i32 @i32_load(ptr noundef %22217, i64 noundef %22220)
  store i32 %22221, ptr %46, align 4, !tbaa !9
  %22222 = load ptr, ptr %5, align 8, !tbaa !5
  %22223 = getelementptr inbounds %struct.w2c_hermes, ptr %22222, i32 0, i32 6
  %22224 = load i32, ptr %45, align 4, !tbaa !9
  %22225 = zext i32 %22224 to i64
  %22226 = add i64 %22225, 52
  %22227 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22223, i64 noundef %22226, i32 noundef %22227)
  %22228 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22228, ptr %45, align 4, !tbaa !9
  %22229 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22229, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %22230 = load i32, ptr %47, align 4, !tbaa !9
  %22231 = load i32, ptr %46, align 4, !tbaa !9
  %22232 = add i32 %22231, %22230
  store i32 %22232, ptr %46, align 4, !tbaa !9
  %22233 = load ptr, ptr %5, align 8, !tbaa !5
  %22234 = getelementptr inbounds %struct.w2c_hermes, ptr %22233, i32 0, i32 6
  %22235 = load i32, ptr %45, align 4, !tbaa !9
  %22236 = zext i32 %22235 to i64
  %22237 = add i64 %22236, 48
  %22238 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22234, i64 noundef %22237, i32 noundef %22238)
  %22239 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22239, ptr %45, align 4, !tbaa !9
  %22240 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22240, ptr %46, align 4, !tbaa !9
  %22241 = load ptr, ptr %5, align 8, !tbaa !5
  %22242 = getelementptr inbounds %struct.w2c_hermes, ptr %22241, i32 0, i32 6
  %22243 = load i32, ptr %46, align 4, !tbaa !9
  %22244 = zext i32 %22243 to i64
  %22245 = add i64 %22244, 56
  %22246 = call i64 @i64_load(ptr noundef %22242, i64 noundef %22245)
  store i64 %22246, ptr %55, align 8, !tbaa !11
  %22247 = load ptr, ptr %5, align 8, !tbaa !5
  %22248 = getelementptr inbounds %struct.w2c_hermes, ptr %22247, i32 0, i32 6
  %22249 = load i32, ptr %45, align 4, !tbaa !9
  %22250 = zext i32 %22249 to i64
  %22251 = add i64 %22250, 16
  %22252 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22248, i64 noundef %22251, i64 noundef %22252)
  %22253 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22253, ptr %45, align 4, !tbaa !9
  %22254 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22254, ptr %46, align 4, !tbaa !9
  %22255 = load ptr, ptr %5, align 8, !tbaa !5
  %22256 = getelementptr inbounds %struct.w2c_hermes, ptr %22255, i32 0, i32 6
  %22257 = load i32, ptr %46, align 4, !tbaa !9
  %22258 = zext i32 %22257 to i64
  %22259 = add i64 %22258, 48
  %22260 = call i64 @i64_load(ptr noundef %22256, i64 noundef %22259)
  store i64 %22260, ptr %55, align 8, !tbaa !11
  %22261 = load ptr, ptr %5, align 8, !tbaa !5
  %22262 = getelementptr inbounds %struct.w2c_hermes, ptr %22261, i32 0, i32 6
  %22263 = load i32, ptr %45, align 4, !tbaa !9
  %22264 = zext i32 %22263 to i64
  %22265 = add i64 %22264, 8
  %22266 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22262, i64 noundef %22265, i64 noundef %22266)
  %22267 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22267, ptr %45, 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 %45, align 4, !tbaa !9
  %22271 = zext i32 %22270 to i64
  %22272 = add i64 %22271, 12
  %22273 = call i32 @i32_load(ptr noundef %22269, i64 noundef %22272)
  store i32 %22273, ptr %45, align 4, !tbaa !9
  %22274 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22274, ptr %12, align 4, !tbaa !9
  %22275 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22275, ptr %46, align 4, !tbaa !9
  %22276 = load ptr, ptr %5, align 8, !tbaa !5
  %22277 = getelementptr inbounds %struct.w2c_hermes, ptr %22276, i32 0, i32 6
  %22278 = load i32, ptr %46, align 4, !tbaa !9
  %22279 = zext i32 %22278 to i64
  %22280 = add i64 %22279, 20
  %22281 = call i32 @i32_load(ptr noundef %22277, i64 noundef %22280)
  store i32 %22281, ptr %46, align 4, !tbaa !9
  %22282 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22282, ptr %13, align 4, !tbaa !9
  %22283 = load ptr, ptr %5, align 8, !tbaa !5
  %22284 = getelementptr inbounds %struct.w2c_hermes, ptr %22283, i32 0, i32 6
  %22285 = load i32, ptr %46, align 4, !tbaa !9
  %22286 = zext i32 %22285 to i64
  %22287 = call i32 @i32_load(ptr noundef %22284, i64 noundef %22286)
  store i32 %22287, ptr %46, align 4, !tbaa !9
  %22288 = load i32, ptr %45, align 4, !tbaa !9
  %22289 = load i32, ptr %46, align 4, !tbaa !9
  %22290 = icmp ule i32 %22288, %22289
  %22291 = zext i1 %22290 to i32
  store i32 %22291, ptr %45, align 4, !tbaa !9
  %22292 = load i32, ptr %45, align 4, !tbaa !9
  %22293 = icmp ne i32 %22292, 0
  br i1 %22293, label %22294, label %22534

22294:                                            ; preds = %22164
  %22295 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22295, ptr %45, align 4, !tbaa !9
  %22296 = load ptr, ptr %5, align 8, !tbaa !5
  %22297 = getelementptr inbounds %struct.w2c_hermes, ptr %22296, i32 0, i32 6
  %22298 = load i32, ptr %45, align 4, !tbaa !9
  %22299 = zext i32 %22298 to i64
  %22300 = add i64 %22299, 16
  %22301 = call i32 @i32_load(ptr noundef %22297, i64 noundef %22300)
  store i32 %22301, ptr %45, align 4, !tbaa !9
  %22302 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22302, ptr %46, align 4, !tbaa !9
  %22303 = load ptr, ptr %5, align 8, !tbaa !5
  %22304 = getelementptr inbounds %struct.w2c_hermes, ptr %22303, i32 0, i32 6
  %22305 = load i32, ptr %46, align 4, !tbaa !9
  %22306 = zext i32 %22305 to i64
  %22307 = add i64 %22306, 8
  %22308 = call i32 @i32_load(ptr noundef %22304, i64 noundef %22307)
  store i32 %22308, ptr %46, align 4, !tbaa !9
  %22309 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22309, ptr %7, align 4, !tbaa !9
  %22310 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22310, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %22311 = load i32, ptr %48, align 4, !tbaa !9
  %22312 = and i32 %22311, 31
  %22313 = load i32, ptr %47, align 4, !tbaa !9
  %22314 = shl i32 %22313, %22312
  store i32 %22314, ptr %47, align 4, !tbaa !9
  %22315 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %22315, ptr %8, align 4, !tbaa !9
  %22316 = load ptr, ptr %5, align 8, !tbaa !5
  %22317 = load i32, ptr %45, align 4, !tbaa !9
  %22318 = load i32, ptr %46, align 4, !tbaa !9
  %22319 = load i32, ptr %47, align 4, !tbaa !9
  %22320 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %22316, i32 noundef %22317, i32 noundef %22318, i32 noundef %22319)
  store i32 %22320, ptr %45, align 4, !tbaa !9
  %22321 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22321, ptr %15, align 4, !tbaa !9
  %22322 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22322, ptr %45, align 4, !tbaa !9
  %22323 = load ptr, ptr %5, align 8, !tbaa !5
  %22324 = getelementptr inbounds %struct.w2c_hermes, ptr %22323, i32 0, i32 6
  %22325 = load i32, ptr %45, align 4, !tbaa !9
  %22326 = zext i32 %22325 to i64
  %22327 = call i32 @i32_load(ptr noundef %22324, i64 noundef %22326)
  store i32 %22327, ptr %45, align 4, !tbaa !9
  %22328 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22328, ptr %46, align 4, !tbaa !9
  %22329 = load i32, ptr %46, align 4, !tbaa !9
  %22330 = load i32, ptr %45, align 4, !tbaa !9
  %22331 = sub i32 %22330, %22329
  store i32 %22331, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %22332 = load i32, ptr %46, align 4, !tbaa !9
  %22333 = and i32 %22332, 31
  %22334 = load i32, ptr %45, align 4, !tbaa !9
  %22335 = shl i32 %22334, %22333
  store i32 %22335, ptr %45, align 4, !tbaa !9
  %22336 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22336, ptr %6, align 4, !tbaa !9
  %22337 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22337, ptr %45, align 4, !tbaa !9
  %22338 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %22338, ptr %46, align 4, !tbaa !9
  %22339 = load i32, ptr %46, align 4, !tbaa !9
  %22340 = load i32, ptr %45, align 4, !tbaa !9
  %22341 = add i32 %22340, %22339
  store i32 %22341, ptr %45, align 4, !tbaa !9
  %22342 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22342, ptr %46, align 4, !tbaa !9
  %22343 = load i32, ptr %46, align 4, !tbaa !9
  %22344 = icmp ne i32 %22343, 0
  br i1 %22344, label %22345, label %22365

22345:                                            ; preds = %22294
  %22346 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22346, ptr %46, align 4, !tbaa !9
  %22347 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22347, ptr %47, align 4, !tbaa !9
  %22348 = load i32, ptr %47, align 4, !tbaa !9
  %22349 = load i32, ptr %46, align 4, !tbaa !9
  %22350 = add i32 %22349, %22348
  store i32 %22350, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %22351 = load i32, ptr %47, align 4, !tbaa !9
  %22352 = load i32, ptr %46, align 4, !tbaa !9
  %22353 = sub i32 %22352, %22351
  store i32 %22353, ptr %46, align 4, !tbaa !9
  %22354 = load ptr, ptr %5, align 8, !tbaa !5
  %22355 = getelementptr inbounds %struct.w2c_hermes, ptr %22354, i32 0, i32 6
  %22356 = load i32, ptr %46, align 4, !tbaa !9
  %22357 = zext i32 %22356 to i64
  %22358 = call i64 @i64_load(ptr noundef %22355, i64 noundef %22357)
  store i64 %22358, ptr %55, align 8, !tbaa !11
  store i64 63, ptr %56, align 8, !tbaa !11
  %22359 = load i64, ptr %55, align 8, !tbaa !11
  %22360 = load i64, ptr %56, align 8, !tbaa !11
  %22361 = and i64 %22360, 63
  %22362 = ashr i64 %22359, %22361
  store i64 %22362, ptr %55, align 8, !tbaa !11
  %22363 = load i64, ptr %55, align 8, !tbaa !11
  %22364 = trunc i64 %22363 to i32
  store i32 %22364, ptr %46, align 4, !tbaa !9
  br label %22366

22365:                                            ; preds = %22294
  store i32 0, ptr %46, align 4, !tbaa !9
  br label %22366

22366:                                            ; preds = %22365, %22345
  %22367 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22367, ptr %47, align 4, !tbaa !9
  %22368 = load ptr, ptr %5, align 8, !tbaa !5
  %22369 = load i32, ptr %45, align 4, !tbaa !9
  %22370 = load i32, ptr %46, align 4, !tbaa !9
  %22371 = load i32, ptr %47, align 4, !tbaa !9
  %22372 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %22368, i32 noundef %22369, i32 noundef %22370, i32 noundef %22371)
  store i32 %22372, ptr %45, align 4, !tbaa !9
  %22373 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %22373, ptr %45, align 4, !tbaa !9
  %22374 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22374, ptr %46, align 4, !tbaa !9
  %22375 = load ptr, ptr %5, align 8, !tbaa !5
  %22376 = getelementptr inbounds %struct.w2c_hermes, ptr %22375, i32 0, i32 6
  %22377 = load i32, ptr %46, align 4, !tbaa !9
  %22378 = zext i32 %22377 to i64
  %22379 = call i32 @i32_load(ptr noundef %22376, i64 noundef %22378)
  store i32 %22379, ptr %46, align 4, !tbaa !9
  %22380 = load ptr, ptr %5, align 8, !tbaa !5
  %22381 = load i32, ptr %45, align 4, !tbaa !9
  %22382 = load i32, ptr %46, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcNegate0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef %22380, i32 noundef %22381, i32 noundef %22382)
  %22383 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22383, ptr %45, align 4, !tbaa !9
  %22384 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22384, ptr %46, align 4, !tbaa !9
  %22385 = load ptr, ptr %5, align 8, !tbaa !5
  %22386 = getelementptr inbounds %struct.w2c_hermes, ptr %22385, i32 0, i32 6
  %22387 = load i32, ptr %46, align 4, !tbaa !9
  %22388 = zext i32 %22387 to i64
  %22389 = call i32 @i32_load(ptr noundef %22386, i64 noundef %22388)
  store i32 %22389, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22390 = load i32, ptr %47, align 4, !tbaa !9
  %22391 = and i32 %22390, 31
  %22392 = load i32, ptr %46, align 4, !tbaa !9
  %22393 = shl i32 %22392, %22391
  store i32 %22393, ptr %46, align 4, !tbaa !9
  %22394 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22394, ptr %6, align 4, !tbaa !9
  %22395 = load i32, ptr %46, align 4, !tbaa !9
  %22396 = icmp ne i32 %22395, 0
  br i1 %22396, label %22397, label %22527

22397:                                            ; preds = %22366
  %22398 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %22398, ptr %46, align 4, !tbaa !9
  %22399 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22399, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %22400 = load i32, ptr %48, align 4, !tbaa !9
  %22401 = load i32, ptr %47, align 4, !tbaa !9
  %22402 = sub i32 %22401, %22400
  store i32 %22402, ptr %47, align 4, !tbaa !9
  %22403 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %22403, ptr %7, align 4, !tbaa !9
  %22404 = load i32, ptr %47, align 4, !tbaa !9
  %22405 = load i32, ptr %46, align 4, !tbaa !9
  %22406 = add i32 %22405, %22404
  store i32 %22406, ptr %46, align 4, !tbaa !9
  %22407 = load ptr, ptr %5, align 8, !tbaa !5
  %22408 = getelementptr inbounds %struct.w2c_hermes, ptr %22407, i32 0, i32 6
  %22409 = load i32, ptr %46, align 4, !tbaa !9
  %22410 = zext i32 %22409 to i64
  %22411 = call i32 @i32_load8_u(ptr noundef %22408, i64 noundef %22410)
  store i32 %22411, ptr %46, align 4, !tbaa !9
  %22412 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22412, ptr %14, align 4, !tbaa !9
  %22413 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %22413, ptr %47, align 4, !tbaa !9
  %22414 = load i32, ptr %47, align 4, !tbaa !9
  %22415 = trunc i32 %22414 to i8
  %22416 = sext i8 %22415 to i32
  store i32 %22416, ptr %47, align 4, !tbaa !9
  store i32 7, ptr %48, align 4, !tbaa !9
  %22417 = load i32, ptr %47, align 4, !tbaa !9
  %22418 = load i32, ptr %48, align 4, !tbaa !9
  %22419 = and i32 %22418, 31
  %22420 = ashr i32 %22417, %22419
  store i32 %22420, ptr %47, align 4, !tbaa !9
  %22421 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %22421, ptr %13, align 4, !tbaa !9
  store i32 255, ptr %48, align 4, !tbaa !9
  %22422 = load i32, ptr %48, align 4, !tbaa !9
  %22423 = load i32, ptr %47, align 4, !tbaa !9
  %22424 = and i32 %22423, %22422
  store i32 %22424, ptr %47, align 4, !tbaa !9
  %22425 = load i32, ptr %46, align 4, !tbaa !9
  %22426 = load i32, ptr %47, align 4, !tbaa !9
  %22427 = icmp ne i32 %22425, %22426
  %22428 = zext i1 %22427 to i32
  store i32 %22428, ptr %46, align 4, !tbaa !9
  %22429 = load i32, ptr %46, align 4, !tbaa !9
  %22430 = icmp ne i32 %22429, 0
  br i1 %22430, label %22431, label %22436

22431:                                            ; preds = %22397
  %22432 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22432, ptr %46, align 4, !tbaa !9
  %22433 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22433, ptr %12, align 4, !tbaa !9
  %22434 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22434, ptr %8, align 4, !tbaa !9
  %22435 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22435, ptr %46, align 4, !tbaa !9
  br label %22502

22436:                                            ; preds = %22397
  %22437 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22437, ptr %46, align 4, !tbaa !9
  %22438 = load i32, ptr %46, align 4, !tbaa !9
  %22439 = zext i32 %22438 to i64
  store i64 %22439, ptr %55, align 8, !tbaa !11
  %22440 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %22440, ptr %40, align 8, !tbaa !11
  br label %22441

22441:                                            ; preds = %22488, %22436
  %22442 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22442, ptr %46, align 4, !tbaa !9
  %22443 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22443, ptr %8, align 4, !tbaa !9
  %22444 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %22444, ptr %55, align 8, !tbaa !11
  %22445 = load i64, ptr %55, align 8, !tbaa !11
  %22446 = icmp ne i64 %22445, 0
  %22447 = xor i1 %22446, true
  %22448 = zext i1 %22447 to i32
  store i32 %22448, ptr %46, align 4, !tbaa !9
  %22449 = load i32, ptr %46, align 4, !tbaa !9
  %22450 = icmp ne i32 %22449, 0
  br i1 %22450, label %22451, label %22452

22451:                                            ; preds = %22441
  br label %22490

22452:                                            ; preds = %22441
  %22453 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22453, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %22454 = load i32, ptr %47, align 4, !tbaa !9
  %22455 = load i32, ptr %46, align 4, !tbaa !9
  %22456 = sub i32 %22455, %22454
  store i32 %22456, ptr %46, align 4, !tbaa !9
  %22457 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22457, ptr %6, align 4, !tbaa !9
  %22458 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %22458, ptr %55, align 8, !tbaa !11
  %22459 = load i64, ptr %55, align 8, !tbaa !11
  %22460 = trunc i64 %22459 to i32
  store i32 %22460, ptr %46, align 4, !tbaa !9
  %22461 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22461, ptr %12, align 4, !tbaa !9
  %22462 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %22462, ptr %55, align 8, !tbaa !11
  store i64 1, ptr %56, align 8, !tbaa !11
  %22463 = load i64, ptr %56, align 8, !tbaa !11
  %22464 = load i64, ptr %55, align 8, !tbaa !11
  %22465 = sub i64 %22464, %22463
  store i64 %22465, ptr %55, align 8, !tbaa !11
  %22466 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %22466, ptr %40, align 8, !tbaa !11
  %22467 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %22467, ptr %46, align 4, !tbaa !9
  %22468 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22468, ptr %47, align 4, !tbaa !9
  %22469 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %22469, ptr %48, align 4, !tbaa !9
  %22470 = load i32, ptr %48, align 4, !tbaa !9
  %22471 = load i32, ptr %47, align 4, !tbaa !9
  %22472 = add i32 %22471, %22470
  store i32 %22472, ptr %47, align 4, !tbaa !9
  store i32 1, ptr %48, align 4, !tbaa !9
  %22473 = load i32, ptr %48, align 4, !tbaa !9
  %22474 = load i32, ptr %47, align 4, !tbaa !9
  %22475 = sub i32 %22474, %22473
  store i32 %22475, ptr %47, align 4, !tbaa !9
  %22476 = load ptr, ptr %5, align 8, !tbaa !5
  %22477 = getelementptr inbounds %struct.w2c_hermes, ptr %22476, i32 0, i32 6
  %22478 = load i32, ptr %47, align 4, !tbaa !9
  %22479 = zext i32 %22478 to i64
  %22480 = call i32 @i32_load8_u(ptr noundef %22477, i64 noundef %22479)
  store i32 %22480, ptr %47, align 4, !tbaa !9
  %22481 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %22481, ptr %7, align 4, !tbaa !9
  %22482 = load i32, ptr %46, align 4, !tbaa !9
  %22483 = load i32, ptr %47, align 4, !tbaa !9
  %22484 = icmp eq i32 %22482, %22483
  %22485 = zext i1 %22484 to i32
  store i32 %22485, ptr %46, align 4, !tbaa !9
  %22486 = load i32, ptr %46, align 4, !tbaa !9
  %22487 = icmp ne i32 %22486, 0
  br i1 %22487, label %22488, label %22489

22488:                                            ; preds = %22452
  br label %22441

22489:                                            ; preds = %22452
  br label %22493

22490:                                            ; preds = %22451
  store i32 0, ptr %46, align 4, !tbaa !9
  %22491 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22491, ptr %12, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %22492 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22492, ptr %8, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  br label %22502

22493:                                            ; preds = %22489
  %22494 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22494, ptr %46, align 4, !tbaa !9
  %22495 = load i32, ptr %46, align 4, !tbaa !9
  %22496 = trunc i32 %22495 to i8
  %22497 = sext i8 %22496 to i32
  store i32 %22497, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %22498 = load i32, ptr %46, align 4, !tbaa !9
  %22499 = load i32, ptr %47, align 4, !tbaa !9
  %22500 = and i32 %22499, 31
  %22501 = ashr i32 %22498, %22500
  store i32 %22501, ptr %46, align 4, !tbaa !9
  br label %22502

22502:                                            ; preds = %22493, %22490, %22431
  %22503 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %22503, ptr %6, align 4, !tbaa !9
  %22504 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22504, ptr %46, align 4, !tbaa !9
  %22505 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %22505, ptr %47, align 4, !tbaa !9
  %22506 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22506, ptr %48, align 4, !tbaa !9
  %22507 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22507, ptr %49, align 4, !tbaa !9
  %22508 = load i32, ptr %48, align 4, !tbaa !9
  %22509 = load i32, ptr %49, align 4, !tbaa !9
  %22510 = icmp eq i32 %22508, %22509
  %22511 = zext i1 %22510 to i32
  store i32 %22511, ptr %48, align 4, !tbaa !9
  %22512 = load i32, ptr %48, align 4, !tbaa !9
  %22513 = icmp ne i32 %22512, 0
  br i1 %22513, label %22514, label %22516

22514:                                            ; preds = %22502
  %22515 = load i32, ptr %46, align 4, !tbaa !9
  br label %22518

22516:                                            ; preds = %22502
  %22517 = load i32, ptr %47, align 4, !tbaa !9
  br label %22518

22518:                                            ; preds = %22516, %22514
  %22519 = phi i32 [ %22515, %22514 ], [ %22517, %22516 ]
  store i32 %22519, ptr %46, align 4, !tbaa !9
  store i32 7, ptr %47, align 4, !tbaa !9
  %22520 = load i32, ptr %47, align 4, !tbaa !9
  %22521 = load i32, ptr %46, align 4, !tbaa !9
  %22522 = add i32 %22521, %22520
  store i32 %22522, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22523 = load i32, ptr %47, align 4, !tbaa !9
  %22524 = and i32 %22523, 31
  %22525 = load i32, ptr %46, align 4, !tbaa !9
  %22526 = lshr i32 %22525, %22524
  store i32 %22526, ptr %46, align 4, !tbaa !9
  br label %22528

22527:                                            ; preds = %22366
  store i32 0, ptr %46, align 4, !tbaa !9
  br label %22528

22528:                                            ; preds = %22527, %22518
  %22529 = load ptr, ptr %5, align 8, !tbaa !5
  %22530 = getelementptr inbounds %struct.w2c_hermes, ptr %22529, i32 0, i32 6
  %22531 = load i32, ptr %45, align 4, !tbaa !9
  %22532 = zext i32 %22531 to i64
  %22533 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22530, i64 noundef %22532, i32 noundef %22533)
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %22535

22534:                                            ; preds = %22164
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %22535

22535:                                            ; preds = %22534, %22528
  %22536 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22536, ptr %6, align 4, !tbaa !9
  %22537 = load i32, ptr %45, align 4, !tbaa !9
  %22538 = icmp ne i32 %22537, 0
  br i1 %22538, label %22539, label %22553

22539:                                            ; preds = %22535
  %22540 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22540, ptr %45, align 4, !tbaa !9
  %22541 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22541, ptr %46, align 4, !tbaa !9
  %22542 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22542, ptr %47, align 4, !tbaa !9
  %22543 = load ptr, ptr %5, align 8, !tbaa !5
  %22544 = load i32, ptr %46, align 4, !tbaa !9
  %22545 = load i32, ptr %47, align 4, !tbaa !9
  %22546 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef %22543, i32 noundef %22544, i32 noundef %22545)
  store i32 %22546, ptr %46, align 4, !tbaa !9
  %22547 = load ptr, ptr %5, align 8, !tbaa !5
  %22548 = getelementptr inbounds %struct.w2c_hermes, ptr %22547, i32 0, i32 6
  %22549 = load i32, ptr %45, align 4, !tbaa !9
  %22550 = zext i32 %22549 to i64
  %22551 = add i64 %22550, 304
  %22552 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22548, i64 noundef %22551, i32 noundef %22552)
  br label %22574

22553:                                            ; preds = %22535
  %22554 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22554, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %22555 = load ptr, ptr %5, align 8, !tbaa !5
  %22556 = getelementptr inbounds %struct.w2c_hermes, ptr %22555, i32 0, i32 6
  %22557 = load i32, ptr %45, align 4, !tbaa !9
  %22558 = zext i32 %22557 to i64
  %22559 = add i64 %22558, 304
  %22560 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22556, i64 noundef %22559, i32 noundef %22560)
  %22561 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22561, ptr %45, align 4, !tbaa !9
  %22562 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %22562, ptr %46, align 4, !tbaa !9
  %22563 = load i32, ptr %46, align 4, !tbaa !9
  %22564 = zext i32 %22563 to i64
  store i64 %22564, ptr %55, align 8, !tbaa !11
  store i64 -562949953421312, ptr %56, align 8, !tbaa !11
  %22565 = load i64, ptr %56, align 8, !tbaa !11
  %22566 = load i64, ptr %55, align 8, !tbaa !11
  %22567 = or i64 %22566, %22565
  store i64 %22567, ptr %55, align 8, !tbaa !11
  %22568 = load ptr, ptr %5, align 8, !tbaa !5
  %22569 = getelementptr inbounds %struct.w2c_hermes, ptr %22568, i32 0, i32 6
  %22570 = load i32, ptr %45, align 4, !tbaa !9
  %22571 = zext i32 %22570 to i64
  %22572 = add i64 %22571, 312
  %22573 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22569, i64 noundef %22572, i64 noundef %22573)
  br label %22574

22574:                                            ; preds = %22553, %22539, %22106, %21932
  %22575 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %22575, ptr %45, align 4, !tbaa !9
  store i32 96, ptr %46, align 4, !tbaa !9
  %22576 = load i32, ptr %46, align 4, !tbaa !9
  %22577 = load i32, ptr %45, align 4, !tbaa !9
  %22578 = add i32 %22577, %22576
  store i32 %22578, ptr %45, align 4, !tbaa !9
  %22579 = load i32, ptr %45, align 4, !tbaa !9
  %22580 = load ptr, ptr %5, align 8, !tbaa !5
  %22581 = getelementptr inbounds %struct.w2c_hermes, ptr %22580, i32 0, i32 3
  store i32 %22579, ptr %22581, align 8, !tbaa !15
  br label %22582

22582:                                            ; preds = %22574, %21836, %21779
  %22583 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %22583, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %22584 = load i32, ptr %46, align 4, !tbaa !9
  %22585 = load i32, ptr %45, align 4, !tbaa !9
  %22586 = add i32 %22585, %22584
  store i32 %22586, ptr %45, align 4, !tbaa !9
  %22587 = load i32, ptr %45, align 4, !tbaa !9
  %22588 = load ptr, ptr %5, align 8, !tbaa !5
  %22589 = getelementptr inbounds %struct.w2c_hermes, ptr %22588, i32 0, i32 3
  store i32 %22587, ptr %22589, align 8, !tbaa !15
  %22590 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22590, ptr %45, align 4, !tbaa !9
  %22591 = load ptr, ptr %5, align 8, !tbaa !5
  %22592 = getelementptr inbounds %struct.w2c_hermes, ptr %22591, i32 0, i32 6
  %22593 = load i32, ptr %45, align 4, !tbaa !9
  %22594 = zext i32 %22593 to i64
  %22595 = add i64 %22594, 5808
  %22596 = call i32 @i32_load(ptr noundef %22592, i64 noundef %22595)
  store i32 %22596, ptr %45, align 4, !tbaa !9
  %22597 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22597, ptr %6, align 4, !tbaa !9
  %22598 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22598, ptr %45, align 4, !tbaa !9
  %22599 = load ptr, ptr %5, align 8, !tbaa !5
  %22600 = getelementptr inbounds %struct.w2c_hermes, ptr %22599, i32 0, i32 6
  %22601 = load i32, ptr %45, align 4, !tbaa !9
  %22602 = zext i32 %22601 to i64
  %22603 = add i64 %22602, 304
  %22604 = call i32 @i32_load(ptr noundef %22600, i64 noundef %22603)
  store i32 %22604, ptr %45, align 4, !tbaa !9
  %22605 = load i32, ptr %45, align 4, !tbaa !9
  %22606 = icmp ne i32 %22605, 0
  %22607 = xor i1 %22606, true
  %22608 = zext i1 %22607 to i32
  store i32 %22608, ptr %45, align 4, !tbaa !9
  %22609 = load i32, ptr %45, align 4, !tbaa !9
  %22610 = icmp ne i32 %22609, 0
  br i1 %22610, label %22611, label %22612

22611:                                            ; preds = %22582
  br label %43136

22612:                                            ; preds = %22582
  %22613 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22613, ptr %45, align 4, !tbaa !9
  %22614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22614, ptr %46, align 4, !tbaa !9
  %22615 = load ptr, ptr %5, align 8, !tbaa !5
  %22616 = getelementptr inbounds %struct.w2c_hermes, ptr %22615, i32 0, i32 6
  %22617 = load i32, ptr %46, align 4, !tbaa !9
  %22618 = zext i32 %22617 to i64
  %22619 = add i64 %22618, 1
  %22620 = call i32 @i32_load8_u(ptr noundef %22616, i64 noundef %22619)
  store i32 %22620, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22621 = load i32, ptr %47, align 4, !tbaa !9
  %22622 = and i32 %22621, 31
  %22623 = load i32, ptr %46, align 4, !tbaa !9
  %22624 = shl i32 %22623, %22622
  store i32 %22624, ptr %46, align 4, !tbaa !9
  %22625 = load i32, ptr %46, align 4, !tbaa !9
  %22626 = load i32, ptr %45, align 4, !tbaa !9
  %22627 = add i32 %22626, %22625
  store i32 %22627, ptr %45, align 4, !tbaa !9
  %22628 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22628, ptr %46, align 4, !tbaa !9
  %22629 = load ptr, ptr %5, align 8, !tbaa !5
  %22630 = getelementptr inbounds %struct.w2c_hermes, ptr %22629, i32 0, i32 6
  %22631 = load i32, ptr %46, align 4, !tbaa !9
  %22632 = zext i32 %22631 to i64
  %22633 = add i64 %22632, 312
  %22634 = call i64 @i64_load(ptr noundef %22630, i64 noundef %22633)
  store i64 %22634, ptr %55, align 8, !tbaa !11
  %22635 = load ptr, ptr %5, align 8, !tbaa !5
  %22636 = getelementptr inbounds %struct.w2c_hermes, ptr %22635, i32 0, i32 6
  %22637 = load i32, ptr %45, align 4, !tbaa !9
  %22638 = zext i32 %22637 to i64
  %22639 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22636, i64 noundef %22638, i64 noundef %22639)
  %22640 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22640, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %22641 = load ptr, ptr %5, align 8, !tbaa !5
  %22642 = getelementptr inbounds %struct.w2c_hermes, ptr %22641, i32 0, i32 6
  %22643 = load i32, ptr %45, align 4, !tbaa !9
  %22644 = zext i32 %22643 to i64
  %22645 = add i64 %22644, 516
  %22646 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22642, i64 noundef %22645, i32 noundef %22646)
  %22647 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22647, ptr %45, align 4, !tbaa !9
  %22648 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %22648, ptr %46, align 4, !tbaa !9
  %22649 = load ptr, ptr %5, align 8, !tbaa !5
  %22650 = getelementptr inbounds %struct.w2c_hermes, ptr %22649, i32 0, i32 6
  %22651 = load i32, ptr %45, align 4, !tbaa !9
  %22652 = zext i32 %22651 to i64
  %22653 = add i64 %22652, 512
  %22654 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22650, i64 noundef %22653, i32 noundef %22654)
  %22655 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22655, ptr %45, align 4, !tbaa !9
  %22656 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %22656, ptr %46, align 4, !tbaa !9
  %22657 = load ptr, ptr %5, align 8, !tbaa !5
  %22658 = getelementptr inbounds %struct.w2c_hermes, ptr %22657, i32 0, i32 6
  %22659 = load i32, ptr %45, align 4, !tbaa !9
  %22660 = zext i32 %22659 to i64
  %22661 = add i64 %22660, 508
  %22662 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22658, i64 noundef %22661, i32 noundef %22662)
  %22663 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22663, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %22664 = load i32, ptr %46, align 4, !tbaa !9
  %22665 = load i32, ptr %45, align 4, !tbaa !9
  %22666 = add i32 %22665, %22664
  store i32 %22666, ptr %45, align 4, !tbaa !9
  %22667 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22667, ptr %6, align 4, !tbaa !9
  br label %2945

22668:                                            ; preds = %3069
  %22669 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22669, ptr %45, align 4, !tbaa !9
  %22670 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22670, ptr %46, align 4, !tbaa !9
  %22671 = load ptr, ptr %5, align 8, !tbaa !5
  %22672 = getelementptr inbounds %struct.w2c_hermes, ptr %22671, i32 0, i32 6
  %22673 = load i32, ptr %45, align 4, !tbaa !9
  %22674 = zext i32 %22673 to i64
  %22675 = add i64 %22674, 5808
  %22676 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22672, i64 noundef %22675, i32 noundef %22676)
  %22677 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22677, ptr %45, align 4, !tbaa !9
  %22678 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22678, ptr %46, align 4, !tbaa !9
  %22679 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22679, ptr %47, align 4, !tbaa !9
  %22680 = load ptr, ptr %5, align 8, !tbaa !5
  %22681 = getelementptr inbounds %struct.w2c_hermes, ptr %22680, i32 0, i32 6
  %22682 = load i32, ptr %47, align 4, !tbaa !9
  %22683 = zext i32 %22682 to i64
  %22684 = add i64 %22683, 2
  %22685 = call i32 @i32_load8_u(ptr noundef %22681, i64 noundef %22684)
  store i32 %22685, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %22686 = load i32, ptr %48, align 4, !tbaa !9
  %22687 = and i32 %22686, 31
  %22688 = load i32, ptr %47, align 4, !tbaa !9
  %22689 = shl i32 %22688, %22687
  store i32 %22689, ptr %47, align 4, !tbaa !9
  %22690 = load i32, ptr %47, align 4, !tbaa !9
  %22691 = load i32, ptr %46, align 4, !tbaa !9
  %22692 = add i32 %22691, %22690
  store i32 %22692, ptr %46, align 4, !tbaa !9
  %22693 = load ptr, ptr %5, align 8, !tbaa !5
  %22694 = load i32, ptr %45, align 4, !tbaa !9
  %22695 = load i32, ptr %46, align 4, !tbaa !9
  %22696 = call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtypeOf0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %22693, i32 noundef %22694, i32 noundef %22695)
  store i64 %22696, ptr %54, align 8, !tbaa !11
  %22697 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %22697, ptr %39, align 8, !tbaa !11
  %22698 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22698, ptr %45, align 4, !tbaa !9
  %22699 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22699, ptr %46, align 4, !tbaa !9
  %22700 = load ptr, ptr %5, align 8, !tbaa !5
  %22701 = getelementptr inbounds %struct.w2c_hermes, ptr %22700, i32 0, i32 6
  %22702 = load i32, ptr %46, align 4, !tbaa !9
  %22703 = zext i32 %22702 to i64
  %22704 = add i64 %22703, 1
  %22705 = call i32 @i32_load8_u(ptr noundef %22701, i64 noundef %22704)
  store i32 %22705, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22706 = load i32, ptr %47, align 4, !tbaa !9
  %22707 = and i32 %22706, 31
  %22708 = load i32, ptr %46, align 4, !tbaa !9
  %22709 = shl i32 %22708, %22707
  store i32 %22709, ptr %46, align 4, !tbaa !9
  %22710 = load i32, ptr %46, align 4, !tbaa !9
  %22711 = load i32, ptr %45, align 4, !tbaa !9
  %22712 = add i32 %22711, %22710
  store i32 %22712, ptr %45, align 4, !tbaa !9
  %22713 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %22713, ptr %55, align 8, !tbaa !11
  %22714 = load ptr, ptr %5, align 8, !tbaa !5
  %22715 = getelementptr inbounds %struct.w2c_hermes, ptr %22714, i32 0, i32 6
  %22716 = load i32, ptr %45, align 4, !tbaa !9
  %22717 = zext i32 %22716 to i64
  %22718 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22715, i64 noundef %22717, i64 noundef %22718)
  %22719 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22719, ptr %45, align 4, !tbaa !9
  %22720 = load ptr, ptr %5, align 8, !tbaa !5
  %22721 = getelementptr inbounds %struct.w2c_hermes, ptr %22720, i32 0, i32 6
  %22722 = load i32, ptr %45, align 4, !tbaa !9
  %22723 = zext i32 %22722 to i64
  %22724 = add i64 %22723, 5808
  %22725 = call i32 @i32_load(ptr noundef %22721, i64 noundef %22724)
  store i32 %22725, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %22726 = load i32, ptr %46, align 4, !tbaa !9
  %22727 = load i32, ptr %45, align 4, !tbaa !9
  %22728 = add i32 %22727, %22726
  store i32 %22728, ptr %45, align 4, !tbaa !9
  %22729 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22729, ptr %6, align 4, !tbaa !9
  br label %2945

22730:                                            ; preds = %3070
  %22731 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22731, ptr %45, align 4, !tbaa !9
  %22732 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22732, ptr %46, align 4, !tbaa !9
  %22733 = load ptr, ptr %5, align 8, !tbaa !5
  %22734 = getelementptr inbounds %struct.w2c_hermes, ptr %22733, i32 0, i32 6
  %22735 = load i32, ptr %46, align 4, !tbaa !9
  %22736 = zext i32 %22735 to i64
  %22737 = add i64 %22736, 2
  %22738 = call i32 @i32_load8_u(ptr noundef %22734, i64 noundef %22737)
  store i32 %22738, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22739 = load i32, ptr %47, align 4, !tbaa !9
  %22740 = and i32 %22739, 31
  %22741 = load i32, ptr %46, align 4, !tbaa !9
  %22742 = shl i32 %22741, %22740
  store i32 %22742, ptr %46, align 4, !tbaa !9
  %22743 = load i32, ptr %46, align 4, !tbaa !9
  %22744 = load i32, ptr %45, align 4, !tbaa !9
  %22745 = add i32 %22744, %22743
  store i32 %22745, ptr %45, align 4, !tbaa !9
  %22746 = load ptr, ptr %5, align 8, !tbaa !5
  %22747 = getelementptr inbounds %struct.w2c_hermes, ptr %22746, i32 0, i32 6
  %22748 = load i32, ptr %45, align 4, !tbaa !9
  %22749 = zext i32 %22748 to i64
  %22750 = call i64 @i64_load(ptr noundef %22747, i64 noundef %22749)
  store i64 %22750, ptr %54, align 8, !tbaa !11
  %22751 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %22751, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %22752 = load i64, ptr %54, align 8, !tbaa !11
  %22753 = load i64, ptr %55, align 8, !tbaa !11
  %22754 = icmp ugt i64 %22752, %22753
  %22755 = zext i1 %22754 to i32
  store i32 %22755, ptr %45, align 4, !tbaa !9
  %22756 = load i32, ptr %45, align 4, !tbaa !9
  %22757 = icmp ne i32 %22756, 0
  br i1 %22757, label %22758, label %22759

22758:                                            ; preds = %22730
  br label %22842

22759:                                            ; preds = %22730
  %22760 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22760, ptr %45, align 4, !tbaa !9
  %22761 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22761, ptr %46, align 4, !tbaa !9
  %22762 = load ptr, ptr %5, align 8, !tbaa !5
  %22763 = getelementptr inbounds %struct.w2c_hermes, ptr %22762, i32 0, i32 6
  %22764 = load i32, ptr %46, align 4, !tbaa !9
  %22765 = zext i32 %22764 to i64
  %22766 = add i64 %22765, 3
  %22767 = call i32 @i32_load8_u(ptr noundef %22763, i64 noundef %22766)
  store i32 %22767, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22768 = load i32, ptr %47, align 4, !tbaa !9
  %22769 = and i32 %22768, 31
  %22770 = load i32, ptr %46, align 4, !tbaa !9
  %22771 = shl i32 %22770, %22769
  store i32 %22771, ptr %46, align 4, !tbaa !9
  %22772 = load i32, ptr %46, align 4, !tbaa !9
  %22773 = load i32, ptr %45, align 4, !tbaa !9
  %22774 = add i32 %22773, %22772
  store i32 %22774, ptr %45, align 4, !tbaa !9
  %22775 = load ptr, ptr %5, align 8, !tbaa !5
  %22776 = getelementptr inbounds %struct.w2c_hermes, ptr %22775, i32 0, i32 6
  %22777 = load i32, ptr %45, align 4, !tbaa !9
  %22778 = zext i32 %22777 to i64
  %22779 = call i64 @i64_load(ptr noundef %22776, i64 noundef %22778)
  store i64 %22779, ptr %54, align 8, !tbaa !11
  %22780 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %22780, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %22781 = load i64, ptr %54, align 8, !tbaa !11
  %22782 = load i64, ptr %55, align 8, !tbaa !11
  %22783 = icmp ugt i64 %22781, %22782
  %22784 = zext i1 %22783 to i32
  store i32 %22784, ptr %45, align 4, !tbaa !9
  %22785 = load i32, ptr %45, align 4, !tbaa !9
  %22786 = icmp ne i32 %22785, 0
  br i1 %22786, label %22787, label %22788

22787:                                            ; preds = %22759
  br label %22842

22788:                                            ; preds = %22759
  %22789 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %22789, ptr %54, align 8, !tbaa !11
  %22790 = load i64, ptr %54, align 8, !tbaa !11
  %22791 = call double @f64_reinterpret_i64(i64 noundef %22790)
  store double %22791, ptr %60, align 8, !tbaa !13
  %22792 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %22792, ptr %55, align 8, !tbaa !11
  %22793 = load i64, ptr %55, align 8, !tbaa !11
  %22794 = call double @f64_reinterpret_i64(i64 noundef %22793)
  store double %22794, ptr %61, align 8, !tbaa !13
  %22795 = load ptr, ptr %5, align 8, !tbaa !5
  %22796 = load double, ptr %60, align 8, !tbaa !13
  %22797 = load double, ptr %61, align 8, !tbaa !13
  %22798 = call double @w2c_hermes_fmod(ptr noundef %22795, double noundef %22796, double noundef %22797)
  store double %22798, ptr %60, align 8, !tbaa !13
  %22799 = load double, ptr %60, align 8, !tbaa !13
  store double %22799, ptr %43, align 8, !tbaa !13
  %22800 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22800, ptr %45, align 4, !tbaa !9
  %22801 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22801, ptr %46, align 4, !tbaa !9
  %22802 = load ptr, ptr %5, align 8, !tbaa !5
  %22803 = getelementptr inbounds %struct.w2c_hermes, ptr %22802, i32 0, i32 6
  %22804 = load i32, ptr %46, align 4, !tbaa !9
  %22805 = zext i32 %22804 to i64
  %22806 = add i64 %22805, 1
  %22807 = call i32 @i32_load8_u(ptr noundef %22803, i64 noundef %22806)
  store i32 %22807, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22808 = load i32, ptr %47, align 4, !tbaa !9
  %22809 = and i32 %22808, 31
  %22810 = load i32, ptr %46, align 4, !tbaa !9
  %22811 = shl i32 %22810, %22809
  store i32 %22811, ptr %46, align 4, !tbaa !9
  %22812 = load i32, ptr %46, align 4, !tbaa !9
  %22813 = load i32, ptr %45, align 4, !tbaa !9
  %22814 = add i32 %22813, %22812
  store i32 %22814, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %22815 = load double, ptr %43, align 8, !tbaa !13
  store double %22815, ptr %62, align 8, !tbaa !13
  %22816 = load double, ptr %62, align 8, !tbaa !13
  %22817 = call i64 @i64_reinterpret_f64(double noundef %22816)
  store i64 %22817, ptr %56, align 8, !tbaa !11
  %22818 = load double, ptr %43, align 8, !tbaa !13
  store double %22818, ptr %63, align 8, !tbaa !13
  %22819 = load double, ptr %43, align 8, !tbaa !13
  store double %22819, ptr %64, align 8, !tbaa !13
  %22820 = load double, ptr %63, align 8, !tbaa !13
  %22821 = load double, ptr %64, align 8, !tbaa !13
  %22822 = fcmp une double %22820, %22821
  %22823 = zext i1 %22822 to i32
  store i32 %22823, ptr %48, align 4, !tbaa !9
  %22824 = load i32, ptr %48, align 4, !tbaa !9
  %22825 = icmp ne i32 %22824, 0
  br i1 %22825, label %22826, label %22828

22826:                                            ; preds = %22788
  %22827 = load i64, ptr %55, align 8, !tbaa !11
  br label %22830

22828:                                            ; preds = %22788
  %22829 = load i64, ptr %56, align 8, !tbaa !11
  br label %22830

22830:                                            ; preds = %22828, %22826
  %22831 = phi i64 [ %22827, %22826 ], [ %22829, %22828 ]
  store i64 %22831, ptr %55, align 8, !tbaa !11
  %22832 = load ptr, ptr %5, align 8, !tbaa !5
  %22833 = getelementptr inbounds %struct.w2c_hermes, ptr %22832, i32 0, i32 6
  %22834 = load i32, ptr %45, align 4, !tbaa !9
  %22835 = zext i32 %22834 to i64
  %22836 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22833, i64 noundef %22835, i64 noundef %22836)
  %22837 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22837, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %22838 = load i32, ptr %46, align 4, !tbaa !9
  %22839 = load i32, ptr %45, align 4, !tbaa !9
  %22840 = add i32 %22839, %22838
  store i32 %22840, ptr %45, align 4, !tbaa !9
  %22841 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22841, ptr %6, align 4, !tbaa !9
  br label %2945

22842:                                            ; preds = %22787, %22758
  %22843 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22843, ptr %45, align 4, !tbaa !9
  %22844 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22844, ptr %46, align 4, !tbaa !9
  %22845 = load ptr, ptr %5, align 8, !tbaa !5
  %22846 = getelementptr inbounds %struct.w2c_hermes, ptr %22845, i32 0, i32 6
  %22847 = load i32, ptr %45, align 4, !tbaa !9
  %22848 = zext i32 %22847 to i64
  %22849 = add i64 %22848, 5808
  %22850 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22846, i64 noundef %22849, i32 noundef %22850)
  %22851 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %22851, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %22852 = load i32, ptr %46, align 4, !tbaa !9
  %22853 = load i32, ptr %45, align 4, !tbaa !9
  %22854 = add i32 %22853, %22852
  store i32 %22854, ptr %45, align 4, !tbaa !9
  %22855 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22855, ptr %12, align 4, !tbaa !9
  %22856 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22856, ptr %45, align 4, !tbaa !9
  %22857 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22857, ptr %46, align 4, !tbaa !9
  %22858 = load ptr, ptr %5, align 8, !tbaa !5
  %22859 = getelementptr inbounds %struct.w2c_hermes, ptr %22858, i32 0, i32 6
  %22860 = load i32, ptr %46, align 4, !tbaa !9
  %22861 = zext i32 %22860 to i64
  %22862 = add i64 %22861, 2
  %22863 = call i32 @i32_load8_u(ptr noundef %22859, i64 noundef %22862)
  store i32 %22863, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22864 = load i32, ptr %47, align 4, !tbaa !9
  %22865 = and i32 %22864, 31
  %22866 = load i32, ptr %46, align 4, !tbaa !9
  %22867 = shl i32 %22866, %22865
  store i32 %22867, ptr %46, align 4, !tbaa !9
  %22868 = load i32, ptr %46, align 4, !tbaa !9
  %22869 = load i32, ptr %45, align 4, !tbaa !9
  %22870 = add i32 %22869, %22868
  store i32 %22870, ptr %45, align 4, !tbaa !9
  %22871 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22871, ptr %7, align 4, !tbaa !9
  %22872 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %22872, ptr %45, align 4, !tbaa !9
  %22873 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22873, ptr %46, align 4, !tbaa !9
  %22874 = load ptr, ptr %5, align 8, !tbaa !5
  %22875 = getelementptr inbounds %struct.w2c_hermes, ptr %22874, i32 0, i32 6
  %22876 = load i32, ptr %46, align 4, !tbaa !9
  %22877 = zext i32 %22876 to i64
  %22878 = add i64 %22877, 3
  %22879 = call i32 @i32_load8_u(ptr noundef %22875, i64 noundef %22878)
  store i32 %22879, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %22880 = load i32, ptr %47, align 4, !tbaa !9
  %22881 = and i32 %22880, 31
  %22882 = load i32, ptr %46, align 4, !tbaa !9
  %22883 = shl i32 %22882, %22881
  store i32 %22883, ptr %46, align 4, !tbaa !9
  %22884 = load i32, ptr %46, align 4, !tbaa !9
  %22885 = load i32, ptr %45, align 4, !tbaa !9
  %22886 = add i32 %22885, %22884
  store i32 %22886, ptr %45, align 4, !tbaa !9
  %22887 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22887, ptr %8, align 4, !tbaa !9
  %22888 = load ptr, ptr %5, align 8, !tbaa !5
  %22889 = getelementptr inbounds %struct.w2c_hermes, ptr %22888, i32 0, i32 3
  %22890 = load i32, ptr %22889, align 8, !tbaa !15
  store i32 %22890, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %22891 = load i32, ptr %46, align 4, !tbaa !9
  %22892 = load i32, ptr %45, align 4, !tbaa !9
  %22893 = sub i32 %22892, %22891
  store i32 %22893, ptr %45, align 4, !tbaa !9
  %22894 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22894, ptr %13, align 4, !tbaa !9
  %22895 = load i32, ptr %45, align 4, !tbaa !9
  %22896 = load ptr, ptr %5, align 8, !tbaa !5
  %22897 = getelementptr inbounds %struct.w2c_hermes, ptr %22896, i32 0, i32 3
  store i32 %22895, ptr %22897, align 8, !tbaa !15
  %22898 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22898, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %22899 = load i32, ptr %46, align 4, !tbaa !9
  %22900 = load i32, ptr %45, align 4, !tbaa !9
  %22901 = add i32 %22900, %22899
  store i32 %22901, ptr %45, align 4, !tbaa !9
  %22902 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22902, ptr %46, align 4, !tbaa !9
  %22903 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22903, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %22904 = load ptr, ptr %5, align 8, !tbaa !5
  %22905 = load i32, ptr %45, align 4, !tbaa !9
  %22906 = load i32, ptr %46, align 4, !tbaa !9
  %22907 = load i32, ptr %47, align 4, !tbaa !9
  %22908 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %22904, i32 noundef %22905, i32 noundef %22906, i32 noundef %22907, i32 noundef %22908)
  %22909 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22909, ptr %45, align 4, !tbaa !9
  %22910 = load ptr, ptr %5, align 8, !tbaa !5
  %22911 = getelementptr inbounds %struct.w2c_hermes, ptr %22910, i32 0, i32 6
  %22912 = load i32, ptr %45, align 4, !tbaa !9
  %22913 = zext i32 %22912 to i64
  %22914 = add i64 %22913, 16
  %22915 = call i32 @i32_load(ptr noundef %22911, i64 noundef %22914)
  store i32 %22915, ptr %45, align 4, !tbaa !9
  %22916 = load i32, ptr %45, align 4, !tbaa !9
  %22917 = icmp ne i32 %22916, 0
  %22918 = xor i1 %22917, true
  %22919 = zext i1 %22918 to i32
  store i32 %22919, ptr %45, align 4, !tbaa !9
  %22920 = load i32, ptr %45, align 4, !tbaa !9
  %22921 = icmp ne i32 %22920, 0
  br i1 %22921, label %22922, label %22929

22922:                                            ; preds = %22842
  %22923 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %22923, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %22924 = load ptr, ptr %5, align 8, !tbaa !5
  %22925 = getelementptr inbounds %struct.w2c_hermes, ptr %22924, i32 0, i32 6
  %22926 = load i32, ptr %45, align 4, !tbaa !9
  %22927 = zext i32 %22926 to i64
  %22928 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22925, i64 noundef %22927, i32 noundef %22928)
  br label %23149

22929:                                            ; preds = %22842
  %22930 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %22930, ptr %45, align 4, !tbaa !9
  %22931 = load ptr, ptr %5, align 8, !tbaa !5
  %22932 = getelementptr inbounds %struct.w2c_hermes, ptr %22931, i32 0, i32 6
  %22933 = load i32, ptr %45, align 4, !tbaa !9
  %22934 = zext i32 %22933 to i64
  %22935 = add i64 %22934, 24
  %22936 = call i64 @i64_load(ptr noundef %22932, i64 noundef %22935)
  store i64 %22936, ptr %54, align 8, !tbaa !11
  %22937 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %22937, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %22938 = load i64, ptr %54, align 8, !tbaa !11
  %22939 = load i64, ptr %55, align 8, !tbaa !11
  %22940 = and i64 %22939, 63
  %22941 = ashr i64 %22938, %22940
  store i64 %22941, ptr %54, align 8, !tbaa !11
  %22942 = load i64, ptr %54, align 8, !tbaa !11
  %22943 = trunc i64 %22942 to i32
  store i32 %22943, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %22944 = load i32, ptr %45, align 4, !tbaa !9
  %22945 = load i32, ptr %46, align 4, !tbaa !9
  %22946 = icmp ne i32 %22944, %22945
  %22947 = zext i1 %22946 to i32
  store i32 %22947, ptr %45, align 4, !tbaa !9
  %22948 = load i32, ptr %45, align 4, !tbaa !9
  %22949 = icmp ne i32 %22948, 0
  br i1 %22949, label %22950, label %23131

22950:                                            ; preds = %22929
  %22951 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %22951, ptr %45, align 4, !tbaa !9
  %22952 = load ptr, ptr %5, align 8, !tbaa !5
  %22953 = getelementptr inbounds %struct.w2c_hermes, ptr %22952, i32 0, i32 6
  %22954 = load i32, ptr %45, align 4, !tbaa !9
  %22955 = zext i32 %22954 to i64
  %22956 = add i64 %22955, 4
  %22957 = call i32 @i32_load(ptr noundef %22953, i64 noundef %22956)
  store i32 %22957, ptr %45, align 4, !tbaa !9
  %22958 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22958, ptr %6, align 4, !tbaa !9
  %22959 = load ptr, ptr %5, align 8, !tbaa !5
  %22960 = getelementptr inbounds %struct.w2c_hermes, ptr %22959, i32 0, i32 6
  %22961 = load i32, ptr %45, align 4, !tbaa !9
  %22962 = zext i32 %22961 to i64
  %22963 = add i64 %22962, 164
  %22964 = call i32 @i32_load(ptr noundef %22960, i64 noundef %22963)
  store i32 %22964, ptr %45, align 4, !tbaa !9
  %22965 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %22965, ptr %7, align 4, !tbaa !9
  %22966 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22966, ptr %46, align 4, !tbaa !9
  %22967 = load ptr, ptr %5, align 8, !tbaa !5
  %22968 = getelementptr inbounds %struct.w2c_hermes, ptr %22967, i32 0, i32 6
  %22969 = load i32, ptr %46, align 4, !tbaa !9
  %22970 = zext i32 %22969 to i64
  %22971 = add i64 %22970, 168
  %22972 = call i32 @i32_load(ptr noundef %22968, i64 noundef %22971)
  store i32 %22972, ptr %46, align 4, !tbaa !9
  %22973 = load i32, ptr %45, align 4, !tbaa !9
  %22974 = load i32, ptr %46, align 4, !tbaa !9
  %22975 = icmp ult i32 %22973, %22974
  %22976 = zext i1 %22975 to i32
  store i32 %22976, ptr %45, align 4, !tbaa !9
  %22977 = load i32, ptr %45, align 4, !tbaa !9
  %22978 = icmp ne i32 %22977, 0
  br i1 %22978, label %22979, label %22998

22979:                                            ; preds = %22950
  %22980 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22980, ptr %45, align 4, !tbaa !9
  %22981 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22981, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %22982 = load i32, ptr %47, align 4, !tbaa !9
  %22983 = load i32, ptr %46, align 4, !tbaa !9
  %22984 = add i32 %22983, %22982
  store i32 %22984, ptr %46, align 4, !tbaa !9
  %22985 = load ptr, ptr %5, align 8, !tbaa !5
  %22986 = getelementptr inbounds %struct.w2c_hermes, ptr %22985, i32 0, i32 6
  %22987 = load i32, ptr %45, align 4, !tbaa !9
  %22988 = zext i32 %22987 to i64
  %22989 = add i64 %22988, 164
  %22990 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %22986, i64 noundef %22989, i32 noundef %22990)
  %22991 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %22991, ptr %45, align 4, !tbaa !9
  %22992 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %22992, ptr %55, align 8, !tbaa !11
  %22993 = load ptr, ptr %5, align 8, !tbaa !5
  %22994 = getelementptr inbounds %struct.w2c_hermes, ptr %22993, i32 0, i32 6
  %22995 = load i32, ptr %45, align 4, !tbaa !9
  %22996 = zext i32 %22995 to i64
  %22997 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %22994, i64 noundef %22996, i64 noundef %22997)
  br label %23006

22998:                                            ; preds = %22950
  %22999 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %22999, ptr %45, align 4, !tbaa !9
  %23000 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %23000, ptr %55, align 8, !tbaa !11
  %23001 = load ptr, ptr %5, align 8, !tbaa !5
  %23002 = load i32, ptr %45, align 4, !tbaa !9
  %23003 = load i64, ptr %55, align 8, !tbaa !11
  %23004 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %23001, i32 noundef %23002, i64 noundef %23003)
  store i32 %23004, ptr %45, align 4, !tbaa !9
  %23005 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23005, ptr %7, align 4, !tbaa !9
  br label %23006

23006:                                            ; preds = %22998, %22979
  %23007 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23007, ptr %45, align 4, !tbaa !9
  %23008 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23008, ptr %46, align 4, !tbaa !9
  %23009 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23009, ptr %47, align 4, !tbaa !9
  %23010 = load ptr, ptr %5, align 8, !tbaa !5
  %23011 = load i32, ptr %45, align 4, !tbaa !9
  %23012 = load i32, ptr %46, align 4, !tbaa !9
  %23013 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %23010, i32 noundef %23011, i32 noundef %23012, i32 noundef %23013)
  %23014 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23014, ptr %45, align 4, !tbaa !9
  %23015 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23015, ptr %46, align 4, !tbaa !9
  %23016 = load ptr, ptr %5, align 8, !tbaa !5
  %23017 = getelementptr inbounds %struct.w2c_hermes, ptr %23016, i32 0, i32 6
  %23018 = load i32, ptr %46, align 4, !tbaa !9
  %23019 = zext i32 %23018 to i64
  %23020 = call i32 @i32_load(ptr noundef %23017, i64 noundef %23019)
  store i32 %23020, ptr %46, align 4, !tbaa !9
  %23021 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %23021, ptr %6, align 4, !tbaa !9
  %23022 = load ptr, ptr %5, align 8, !tbaa !5
  %23023 = getelementptr inbounds %struct.w2c_hermes, ptr %23022, i32 0, i32 6
  %23024 = load i32, ptr %45, align 4, !tbaa !9
  %23025 = zext i32 %23024 to i64
  %23026 = add i64 %23025, 16
  %23027 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23023, i64 noundef %23026, i32 noundef %23027)
  %23028 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23028, ptr %45, align 4, !tbaa !9
  %23029 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23029, ptr %46, align 4, !tbaa !9
  %23030 = load ptr, ptr %5, align 8, !tbaa !5
  %23031 = getelementptr inbounds %struct.w2c_hermes, ptr %23030, i32 0, i32 6
  %23032 = load i32, ptr %46, align 4, !tbaa !9
  %23033 = zext i32 %23032 to i64
  %23034 = add i64 %23033, 8
  %23035 = call i64 @i64_load(ptr noundef %23031, i64 noundef %23034)
  store i64 %23035, ptr %55, align 8, !tbaa !11
  %23036 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %23036, ptr %39, align 8, !tbaa !11
  %23037 = load ptr, ptr %5, align 8, !tbaa !5
  %23038 = getelementptr inbounds %struct.w2c_hermes, ptr %23037, i32 0, i32 6
  %23039 = load i32, ptr %45, align 4, !tbaa !9
  %23040 = zext i32 %23039 to i64
  %23041 = add i64 %23040, 24
  %23042 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23038, i64 noundef %23041, i64 noundef %23042)
  %23043 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23043, ptr %45, align 4, !tbaa !9
  %23044 = load i32, ptr %45, align 4, !tbaa !9
  %23045 = icmp ne i32 %23044, 0
  %23046 = xor i1 %23045, true
  %23047 = zext i1 %23046 to i32
  store i32 %23047, ptr %45, align 4, !tbaa !9
  %23048 = load i32, ptr %45, align 4, !tbaa !9
  %23049 = icmp ne i32 %23048, 0
  br i1 %23049, label %23050, label %23057

23050:                                            ; preds = %23006
  %23051 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23051, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23052 = load ptr, ptr %5, align 8, !tbaa !5
  %23053 = getelementptr inbounds %struct.w2c_hermes, ptr %23052, i32 0, i32 6
  %23054 = load i32, ptr %45, align 4, !tbaa !9
  %23055 = zext i32 %23054 to i64
  %23056 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23053, i64 noundef %23055, i32 noundef %23056)
  br label %23149

23057:                                            ; preds = %23006
  %23058 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23058, ptr %45, align 4, !tbaa !9
  %23059 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23059, ptr %46, align 4, !tbaa !9
  %23060 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %23060, ptr %47, align 4, !tbaa !9
  %23061 = load ptr, ptr %5, align 8, !tbaa !5
  %23062 = load i32, ptr %45, align 4, !tbaa !9
  %23063 = load i32, ptr %46, align 4, !tbaa !9
  %23064 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %23061, i32 noundef %23062, i32 noundef %23063, i32 noundef %23064)
  %23065 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23065, ptr %45, align 4, !tbaa !9
  %23066 = load ptr, ptr %5, align 8, !tbaa !5
  %23067 = getelementptr inbounds %struct.w2c_hermes, ptr %23066, i32 0, i32 6
  %23068 = load i32, ptr %45, align 4, !tbaa !9
  %23069 = zext i32 %23068 to i64
  %23070 = call i32 @i32_load(ptr noundef %23067, i64 noundef %23069)
  store i32 %23070, ptr %45, align 4, !tbaa !9
  %23071 = load i32, ptr %45, align 4, !tbaa !9
  %23072 = icmp ne i32 %23071, 0
  %23073 = xor i1 %23072, true
  %23074 = zext i1 %23073 to i32
  store i32 %23074, ptr %45, align 4, !tbaa !9
  %23075 = load i32, ptr %45, align 4, !tbaa !9
  %23076 = icmp ne i32 %23075, 0
  br i1 %23076, label %23077, label %23084

23077:                                            ; preds = %23057
  %23078 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23078, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23079 = load ptr, ptr %5, align 8, !tbaa !5
  %23080 = getelementptr inbounds %struct.w2c_hermes, ptr %23079, i32 0, i32 6
  %23081 = load i32, ptr %45, align 4, !tbaa !9
  %23082 = zext i32 %23081 to i64
  %23083 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23080, i64 noundef %23082, i32 noundef %23083)
  br label %23149

23084:                                            ; preds = %23057
  %23085 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23085, ptr %45, align 4, !tbaa !9
  %23086 = load ptr, ptr %5, align 8, !tbaa !5
  %23087 = getelementptr inbounds %struct.w2c_hermes, ptr %23086, i32 0, i32 6
  %23088 = load i32, ptr %45, align 4, !tbaa !9
  %23089 = zext i32 %23088 to i64
  %23090 = add i64 %23089, 8
  %23091 = call double @f64_load(ptr noundef %23087, i64 noundef %23090)
  store double %23091, ptr %60, align 8, !tbaa !13
  %23092 = load double, ptr %60, align 8, !tbaa !13
  store double %23092, ptr %43, align 8, !tbaa !13
  %23093 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23093, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %23094 = load ptr, ptr %5, align 8, !tbaa !5
  %23095 = getelementptr inbounds %struct.w2c_hermes, ptr %23094, i32 0, i32 6
  %23096 = load i32, ptr %45, align 4, !tbaa !9
  %23097 = zext i32 %23096 to i64
  %23098 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23095, i64 noundef %23097, i32 noundef %23098)
  %23099 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23099, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %23100 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %23100, ptr %56, align 8, !tbaa !11
  %23101 = load i64, ptr %56, align 8, !tbaa !11
  %23102 = call double @f64_reinterpret_i64(i64 noundef %23101)
  store double %23102, ptr %62, align 8, !tbaa !13
  %23103 = load double, ptr %43, align 8, !tbaa !13
  store double %23103, ptr %63, align 8, !tbaa !13
  %23104 = load ptr, ptr %5, align 8, !tbaa !5
  %23105 = load double, ptr %62, align 8, !tbaa !13
  %23106 = load double, ptr %63, align 8, !tbaa !13
  %23107 = call double @w2c_hermes_fmod(ptr noundef %23104, double noundef %23105, double noundef %23106)
  store double %23107, ptr %62, align 8, !tbaa !13
  %23108 = load double, ptr %62, align 8, !tbaa !13
  store double %23108, ptr %43, align 8, !tbaa !13
  %23109 = load double, ptr %62, align 8, !tbaa !13
  %23110 = call i64 @i64_reinterpret_f64(double noundef %23109)
  store i64 %23110, ptr %56, align 8, !tbaa !11
  %23111 = load double, ptr %43, align 8, !tbaa !13
  store double %23111, ptr %63, align 8, !tbaa !13
  %23112 = load double, ptr %43, align 8, !tbaa !13
  store double %23112, ptr %64, align 8, !tbaa !13
  %23113 = load double, ptr %63, align 8, !tbaa !13
  %23114 = load double, ptr %64, align 8, !tbaa !13
  %23115 = fcmp une double %23113, %23114
  %23116 = zext i1 %23115 to i32
  store i32 %23116, ptr %48, align 4, !tbaa !9
  %23117 = load i32, ptr %48, align 4, !tbaa !9
  %23118 = icmp ne i32 %23117, 0
  br i1 %23118, label %23119, label %23121

23119:                                            ; preds = %23084
  %23120 = load i64, ptr %55, align 8, !tbaa !11
  br label %23123

23121:                                            ; preds = %23084
  %23122 = load i64, ptr %56, align 8, !tbaa !11
  br label %23123

23123:                                            ; preds = %23121, %23119
  %23124 = phi i64 [ %23120, %23119 ], [ %23122, %23121 ]
  store i64 %23124, ptr %55, align 8, !tbaa !11
  %23125 = load ptr, ptr %5, align 8, !tbaa !5
  %23126 = getelementptr inbounds %struct.w2c_hermes, ptr %23125, i32 0, i32 6
  %23127 = load i32, ptr %45, align 4, !tbaa !9
  %23128 = zext i32 %23127 to i64
  %23129 = add i64 %23128, 8
  %23130 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23126, i64 noundef %23129, i64 noundef %23130)
  br label %23149

23131:                                            ; preds = %22929
  %23132 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23132, ptr %45, align 4, !tbaa !9
  %23133 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23133, ptr %46, align 4, !tbaa !9
  store i32 542, ptr %47, align 4, !tbaa !9
  %23134 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23134, ptr %48, align 4, !tbaa !9
  %23135 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %23135, ptr %58, align 8, !tbaa !11
  %23136 = load i64, ptr %58, align 8, !tbaa !11
  %23137 = trunc i64 %23136 to i32
  store i32 %23137, ptr %49, align 4, !tbaa !9
  %23138 = load ptr, ptr %5, align 8, !tbaa !5
  %23139 = load i32, ptr %48, align 4, !tbaa !9
  %23140 = load i32, ptr %49, align 4, !tbaa !9
  %23141 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %23138, i32 noundef %23139, i32 noundef %23140)
  store i32 %23141, ptr %48, align 4, !tbaa !9
  %23142 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %23142, ptr %49, align 4, !tbaa !9
  %23143 = load ptr, ptr %5, align 8, !tbaa !5
  %23144 = load i32, ptr %45, align 4, !tbaa !9
  %23145 = load i32, ptr %46, align 4, !tbaa !9
  %23146 = load i32, ptr %47, align 4, !tbaa !9
  %23147 = load i32, ptr %48, align 4, !tbaa !9
  %23148 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %23143, i32 noundef %23144, i32 noundef %23145, i32 noundef %23146, i32 noundef %23147, i32 noundef %23148)
  br label %23149

23149:                                            ; preds = %23131, %23123, %23077, %23050, %22922
  %23150 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23150, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %23151 = load i32, ptr %46, align 4, !tbaa !9
  %23152 = load i32, ptr %45, align 4, !tbaa !9
  %23153 = add i32 %23152, %23151
  store i32 %23153, ptr %45, align 4, !tbaa !9
  %23154 = load i32, ptr %45, align 4, !tbaa !9
  %23155 = load ptr, ptr %5, align 8, !tbaa !5
  %23156 = getelementptr inbounds %struct.w2c_hermes, ptr %23155, i32 0, i32 3
  store i32 %23154, ptr %23156, align 8, !tbaa !15
  %23157 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23157, ptr %45, align 4, !tbaa !9
  %23158 = load ptr, ptr %5, align 8, !tbaa !5
  %23159 = getelementptr inbounds %struct.w2c_hermes, ptr %23158, i32 0, i32 6
  %23160 = load i32, ptr %45, align 4, !tbaa !9
  %23161 = zext i32 %23160 to i64
  %23162 = add i64 %23161, 5808
  %23163 = call i32 @i32_load(ptr noundef %23159, i64 noundef %23162)
  store i32 %23163, ptr %45, align 4, !tbaa !9
  %23164 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23164, ptr %6, align 4, !tbaa !9
  %23165 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23165, ptr %45, align 4, !tbaa !9
  %23166 = load ptr, ptr %5, align 8, !tbaa !5
  %23167 = getelementptr inbounds %struct.w2c_hermes, ptr %23166, i32 0, i32 6
  %23168 = load i32, ptr %45, align 4, !tbaa !9
  %23169 = zext i32 %23168 to i64
  %23170 = add i64 %23169, 304
  %23171 = call i32 @i32_load(ptr noundef %23167, i64 noundef %23170)
  store i32 %23171, ptr %45, align 4, !tbaa !9
  %23172 = load i32, ptr %45, align 4, !tbaa !9
  %23173 = icmp ne i32 %23172, 0
  %23174 = xor i1 %23173, true
  %23175 = zext i1 %23174 to i32
  store i32 %23175, ptr %45, align 4, !tbaa !9
  %23176 = load i32, ptr %45, align 4, !tbaa !9
  %23177 = icmp ne i32 %23176, 0
  br i1 %23177, label %23178, label %23179

23178:                                            ; preds = %23149
  br label %43136

23179:                                            ; preds = %23149
  %23180 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23180, ptr %45, align 4, !tbaa !9
  %23181 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23181, ptr %46, align 4, !tbaa !9
  %23182 = load ptr, ptr %5, align 8, !tbaa !5
  %23183 = getelementptr inbounds %struct.w2c_hermes, ptr %23182, i32 0, i32 6
  %23184 = load i32, ptr %46, align 4, !tbaa !9
  %23185 = zext i32 %23184 to i64
  %23186 = add i64 %23185, 1
  %23187 = call i32 @i32_load8_u(ptr noundef %23183, i64 noundef %23186)
  store i32 %23187, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23188 = load i32, ptr %47, align 4, !tbaa !9
  %23189 = and i32 %23188, 31
  %23190 = load i32, ptr %46, align 4, !tbaa !9
  %23191 = shl i32 %23190, %23189
  store i32 %23191, ptr %46, align 4, !tbaa !9
  %23192 = load i32, ptr %46, align 4, !tbaa !9
  %23193 = load i32, ptr %45, align 4, !tbaa !9
  %23194 = add i32 %23193, %23192
  store i32 %23194, ptr %45, align 4, !tbaa !9
  %23195 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23195, ptr %46, align 4, !tbaa !9
  %23196 = load ptr, ptr %5, align 8, !tbaa !5
  %23197 = getelementptr inbounds %struct.w2c_hermes, ptr %23196, i32 0, i32 6
  %23198 = load i32, ptr %46, align 4, !tbaa !9
  %23199 = zext i32 %23198 to i64
  %23200 = add i64 %23199, 312
  %23201 = call i64 @i64_load(ptr noundef %23197, i64 noundef %23200)
  store i64 %23201, ptr %55, align 8, !tbaa !11
  %23202 = load ptr, ptr %5, align 8, !tbaa !5
  %23203 = getelementptr inbounds %struct.w2c_hermes, ptr %23202, i32 0, i32 6
  %23204 = load i32, ptr %45, align 4, !tbaa !9
  %23205 = zext i32 %23204 to i64
  %23206 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23203, i64 noundef %23205, i64 noundef %23206)
  %23207 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23207, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23208 = load ptr, ptr %5, align 8, !tbaa !5
  %23209 = getelementptr inbounds %struct.w2c_hermes, ptr %23208, i32 0, i32 6
  %23210 = load i32, ptr %45, align 4, !tbaa !9
  %23211 = zext i32 %23210 to i64
  %23212 = add i64 %23211, 516
  %23213 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23209, i64 noundef %23212, i32 noundef %23213)
  %23214 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23214, ptr %45, align 4, !tbaa !9
  %23215 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %23215, ptr %46, align 4, !tbaa !9
  %23216 = load ptr, ptr %5, align 8, !tbaa !5
  %23217 = getelementptr inbounds %struct.w2c_hermes, ptr %23216, i32 0, i32 6
  %23218 = load i32, ptr %45, align 4, !tbaa !9
  %23219 = zext i32 %23218 to i64
  %23220 = add i64 %23219, 512
  %23221 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23217, i64 noundef %23220, i32 noundef %23221)
  %23222 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23222, ptr %45, align 4, !tbaa !9
  %23223 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %23223, ptr %46, align 4, !tbaa !9
  %23224 = load ptr, ptr %5, align 8, !tbaa !5
  %23225 = getelementptr inbounds %struct.w2c_hermes, ptr %23224, i32 0, i32 6
  %23226 = load i32, ptr %45, align 4, !tbaa !9
  %23227 = zext i32 %23226 to i64
  %23228 = add i64 %23227, 508
  %23229 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23225, i64 noundef %23228, i32 noundef %23229)
  %23230 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23230, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %23231 = load i32, ptr %46, align 4, !tbaa !9
  %23232 = load i32, ptr %45, align 4, !tbaa !9
  %23233 = add i32 %23232, %23231
  store i32 %23233, ptr %45, align 4, !tbaa !9
  %23234 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23234, ptr %6, align 4, !tbaa !9
  br label %2945

23235:                                            ; preds = %3071
  %23236 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23236, ptr %45, align 4, !tbaa !9
  %23237 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23237, ptr %46, align 4, !tbaa !9
  %23238 = load ptr, ptr %5, align 8, !tbaa !5
  %23239 = getelementptr inbounds %struct.w2c_hermes, ptr %23238, i32 0, i32 6
  %23240 = load i32, ptr %45, align 4, !tbaa !9
  %23241 = zext i32 %23240 to i64
  %23242 = add i64 %23241, 5808
  %23243 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23239, i64 noundef %23242, i32 noundef %23243)
  %23244 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23244, ptr %45, align 4, !tbaa !9
  store i32 208, ptr %46, align 4, !tbaa !9
  %23245 = load i32, ptr %46, align 4, !tbaa !9
  %23246 = load i32, ptr %45, align 4, !tbaa !9
  %23247 = add i32 %23246, %23245
  store i32 %23247, ptr %45, align 4, !tbaa !9
  %23248 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23248, ptr %46, align 4, !tbaa !9
  %23249 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23249, ptr %47, align 4, !tbaa !9
  %23250 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23250, ptr %48, align 4, !tbaa !9
  %23251 = load ptr, ptr %5, align 8, !tbaa !5
  %23252 = getelementptr inbounds %struct.w2c_hermes, ptr %23251, i32 0, i32 6
  %23253 = load i32, ptr %48, align 4, !tbaa !9
  %23254 = zext i32 %23253 to i64
  %23255 = add i64 %23254, 2
  %23256 = call i32 @i32_load8_u(ptr noundef %23252, i64 noundef %23255)
  store i32 %23256, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %23257 = load i32, ptr %49, align 4, !tbaa !9
  %23258 = and i32 %23257, 31
  %23259 = load i32, ptr %48, align 4, !tbaa !9
  %23260 = shl i32 %23259, %23258
  store i32 %23260, ptr %48, align 4, !tbaa !9
  %23261 = load i32, ptr %48, align 4, !tbaa !9
  %23262 = load i32, ptr %47, align 4, !tbaa !9
  %23263 = add i32 %23262, %23261
  store i32 %23263, ptr %47, align 4, !tbaa !9
  %23264 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23264, ptr %48, align 4, !tbaa !9
  %23265 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23265, ptr %49, align 4, !tbaa !9
  %23266 = load ptr, ptr %5, align 8, !tbaa !5
  %23267 = getelementptr inbounds %struct.w2c_hermes, ptr %23266, i32 0, i32 6
  %23268 = load i32, ptr %49, align 4, !tbaa !9
  %23269 = zext i32 %23268 to i64
  %23270 = add i64 %23269, 3
  %23271 = call i32 @i32_load8_u(ptr noundef %23267, i64 noundef %23270)
  store i32 %23271, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %23272 = load i32, ptr %50, align 4, !tbaa !9
  %23273 = and i32 %23272, 31
  %23274 = load i32, ptr %49, align 4, !tbaa !9
  %23275 = shl i32 %23274, %23273
  store i32 %23275, ptr %49, align 4, !tbaa !9
  %23276 = load i32, ptr %49, align 4, !tbaa !9
  %23277 = load i32, ptr %48, align 4, !tbaa !9
  %23278 = add i32 %23277, %23276
  store i32 %23278, ptr %48, align 4, !tbaa !9
  %23279 = load ptr, ptr %5, align 8, !tbaa !5
  %23280 = load i32, ptr %45, align 4, !tbaa !9
  %23281 = load i32, ptr %46, align 4, !tbaa !9
  %23282 = load i32, ptr %47, align 4, !tbaa !9
  %23283 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AinstanceOfOperator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %23279, i32 noundef %23280, i32 noundef %23281, i32 noundef %23282, i32 noundef %23283)
  %23284 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23284, ptr %45, align 4, !tbaa !9
  %23285 = load ptr, ptr %5, align 8, !tbaa !5
  %23286 = getelementptr inbounds %struct.w2c_hermes, ptr %23285, i32 0, i32 6
  %23287 = load i32, ptr %45, align 4, !tbaa !9
  %23288 = zext i32 %23287 to i64
  %23289 = add i64 %23288, 5808
  %23290 = call i32 @i32_load(ptr noundef %23286, i64 noundef %23289)
  store i32 %23290, ptr %45, align 4, !tbaa !9
  %23291 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23291, ptr %6, align 4, !tbaa !9
  %23292 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23292, ptr %45, align 4, !tbaa !9
  %23293 = load ptr, ptr %5, align 8, !tbaa !5
  %23294 = getelementptr inbounds %struct.w2c_hermes, ptr %23293, i32 0, i32 6
  %23295 = load i32, ptr %45, align 4, !tbaa !9
  %23296 = zext i32 %23295 to i64
  %23297 = add i64 %23296, 208
  %23298 = call i32 @i32_load16_u(ptr noundef %23294, i64 noundef %23297)
  store i32 %23298, ptr %45, align 4, !tbaa !9
  %23299 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23299, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %23300 = load i32, ptr %46, align 4, !tbaa !9
  %23301 = load i32, ptr %45, align 4, !tbaa !9
  %23302 = and i32 %23301, %23300
  store i32 %23302, ptr %45, align 4, !tbaa !9
  %23303 = load i32, ptr %45, align 4, !tbaa !9
  %23304 = icmp ne i32 %23303, 0
  %23305 = xor i1 %23304, true
  %23306 = zext i1 %23305 to i32
  store i32 %23306, ptr %45, align 4, !tbaa !9
  %23307 = load i32, ptr %45, align 4, !tbaa !9
  %23308 = icmp ne i32 %23307, 0
  br i1 %23308, label %23309, label %23310

23309:                                            ; preds = %23235
  br label %43136

23310:                                            ; preds = %23235
  %23311 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23311, ptr %45, align 4, !tbaa !9
  %23312 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23312, ptr %46, align 4, !tbaa !9
  %23313 = load ptr, ptr %5, align 8, !tbaa !5
  %23314 = getelementptr inbounds %struct.w2c_hermes, ptr %23313, i32 0, i32 6
  %23315 = load i32, ptr %46, align 4, !tbaa !9
  %23316 = zext i32 %23315 to i64
  %23317 = add i64 %23316, 1
  %23318 = call i32 @i32_load8_u(ptr noundef %23314, i64 noundef %23317)
  store i32 %23318, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23319 = load i32, ptr %47, align 4, !tbaa !9
  %23320 = and i32 %23319, 31
  %23321 = load i32, ptr %46, align 4, !tbaa !9
  %23322 = shl i32 %23321, %23320
  store i32 %23322, ptr %46, align 4, !tbaa !9
  %23323 = load i32, ptr %46, align 4, !tbaa !9
  %23324 = load i32, ptr %45, align 4, !tbaa !9
  %23325 = add i32 %23324, %23323
  store i32 %23325, ptr %45, align 4, !tbaa !9
  %23326 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23326, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %23327 = load i32, ptr %47, align 4, !tbaa !9
  %23328 = and i32 %23327, 31
  %23329 = load i32, ptr %46, align 4, !tbaa !9
  %23330 = lshr i32 %23329, %23328
  store i32 %23330, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %23331 = load i32, ptr %47, align 4, !tbaa !9
  %23332 = load i32, ptr %46, align 4, !tbaa !9
  %23333 = and i32 %23332, %23331
  store i32 %23333, ptr %46, align 4, !tbaa !9
  %23334 = load i32, ptr %46, align 4, !tbaa !9
  %23335 = zext i32 %23334 to i64
  store i64 %23335, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %23336 = load i64, ptr %56, align 8, !tbaa !11
  %23337 = load i64, ptr %55, align 8, !tbaa !11
  %23338 = or i64 %23337, %23336
  store i64 %23338, ptr %55, align 8, !tbaa !11
  %23339 = load ptr, ptr %5, align 8, !tbaa !5
  %23340 = getelementptr inbounds %struct.w2c_hermes, ptr %23339, i32 0, i32 6
  %23341 = load i32, ptr %45, align 4, !tbaa !9
  %23342 = zext i32 %23341 to i64
  %23343 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23340, i64 noundef %23342, i64 noundef %23343)
  %23344 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23344, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23345 = load ptr, ptr %5, align 8, !tbaa !5
  %23346 = getelementptr inbounds %struct.w2c_hermes, ptr %23345, i32 0, i32 6
  %23347 = load i32, ptr %45, align 4, !tbaa !9
  %23348 = zext i32 %23347 to i64
  %23349 = add i64 %23348, 516
  %23350 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23346, i64 noundef %23349, i32 noundef %23350)
  %23351 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23351, ptr %45, align 4, !tbaa !9
  %23352 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %23352, ptr %46, align 4, !tbaa !9
  %23353 = load ptr, ptr %5, align 8, !tbaa !5
  %23354 = getelementptr inbounds %struct.w2c_hermes, ptr %23353, i32 0, i32 6
  %23355 = load i32, ptr %45, align 4, !tbaa !9
  %23356 = zext i32 %23355 to i64
  %23357 = add i64 %23356, 512
  %23358 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23354, i64 noundef %23357, i32 noundef %23358)
  %23359 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23359, ptr %45, align 4, !tbaa !9
  %23360 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %23360, ptr %46, align 4, !tbaa !9
  %23361 = load ptr, ptr %5, align 8, !tbaa !5
  %23362 = getelementptr inbounds %struct.w2c_hermes, ptr %23361, i32 0, i32 6
  %23363 = load i32, ptr %45, align 4, !tbaa !9
  %23364 = zext i32 %23363 to i64
  %23365 = add i64 %23364, 508
  %23366 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23362, i64 noundef %23365, i32 noundef %23366)
  %23367 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23367, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %23368 = load i32, ptr %46, align 4, !tbaa !9
  %23369 = load i32, ptr %45, align 4, !tbaa !9
  %23370 = add i32 %23369, %23368
  store i32 %23370, ptr %45, align 4, !tbaa !9
  %23371 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23371, ptr %6, align 4, !tbaa !9
  br label %2945

23372:                                            ; preds = %3072
  %23373 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23373, ptr %45, align 4, !tbaa !9
  %23374 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23374, ptr %46, align 4, !tbaa !9
  %23375 = load ptr, ptr %5, align 8, !tbaa !5
  %23376 = getelementptr inbounds %struct.w2c_hermes, ptr %23375, i32 0, i32 6
  %23377 = load i32, ptr %46, align 4, !tbaa !9
  %23378 = zext i32 %23377 to i64
  %23379 = add i64 %23378, 3
  %23380 = call i32 @i32_load8_u(ptr noundef %23376, i64 noundef %23379)
  store i32 %23380, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23381 = load i32, ptr %47, align 4, !tbaa !9
  %23382 = and i32 %23381, 31
  %23383 = load i32, ptr %46, align 4, !tbaa !9
  %23384 = shl i32 %23383, %23382
  store i32 %23384, ptr %46, align 4, !tbaa !9
  %23385 = load i32, ptr %46, align 4, !tbaa !9
  %23386 = load i32, ptr %45, align 4, !tbaa !9
  %23387 = add i32 %23386, %23385
  store i32 %23387, ptr %45, align 4, !tbaa !9
  %23388 = load ptr, ptr %5, align 8, !tbaa !5
  %23389 = getelementptr inbounds %struct.w2c_hermes, ptr %23388, i32 0, i32 6
  %23390 = load i32, ptr %45, align 4, !tbaa !9
  %23391 = zext i32 %23390 to i64
  %23392 = add i64 %23391, 6
  %23393 = call i32 @i32_load16_s(ptr noundef %23389, i64 noundef %23392)
  store i32 %23393, ptr %45, align 4, !tbaa !9
  %23394 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23394, ptr %7, align 4, !tbaa !9
  %23395 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23395, ptr %45, align 4, !tbaa !9
  %23396 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23396, ptr %46, align 4, !tbaa !9
  %23397 = load ptr, ptr %5, align 8, !tbaa !5
  %23398 = getelementptr inbounds %struct.w2c_hermes, ptr %23397, i32 0, i32 6
  %23399 = load i32, ptr %45, align 4, !tbaa !9
  %23400 = zext i32 %23399 to i64
  %23401 = add i64 %23400, 5808
  %23402 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23398, i64 noundef %23401, i32 noundef %23402)
  %23403 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23403, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %23404 = load i32, ptr %45, align 4, !tbaa !9
  %23405 = load i32, ptr %46, align 4, !tbaa !9
  %23406 = icmp ne i32 %23404, %23405
  %23407 = zext i1 %23406 to i32
  store i32 %23407, ptr %45, align 4, !tbaa !9
  %23408 = load i32, ptr %45, align 4, !tbaa !9
  %23409 = icmp ne i32 %23408, 0
  br i1 %23409, label %23410, label %23456

23410:                                            ; preds = %23372
  %23411 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23411, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23412 = load ptr, ptr %5, align 8, !tbaa !5
  %23413 = getelementptr inbounds %struct.w2c_hermes, ptr %23412, i32 0, i32 6
  %23414 = load i32, ptr %45, align 4, !tbaa !9
  %23415 = zext i32 %23414 to i64
  %23416 = add i64 %23415, 336
  %23417 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23413, i64 noundef %23416, i32 noundef %23417)
  %23418 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23418, ptr %45, align 4, !tbaa !9
  store i64 163208757249, ptr %55, align 8, !tbaa !11
  %23419 = load ptr, ptr %5, align 8, !tbaa !5
  %23420 = getelementptr inbounds %struct.w2c_hermes, ptr %23419, i32 0, i32 6
  %23421 = load i32, ptr %45, align 4, !tbaa !9
  %23422 = zext i32 %23421 to i64
  %23423 = add i64 %23422, 328
  %23424 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23420, i64 noundef %23423, i64 noundef %23424)
  %23425 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23425, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %23426 = load ptr, ptr %5, align 8, !tbaa !5
  %23427 = getelementptr inbounds %struct.w2c_hermes, ptr %23426, i32 0, i32 6
  %23428 = load i32, ptr %45, align 4, !tbaa !9
  %23429 = zext i32 %23428 to i64
  %23430 = add i64 %23429, 312
  %23431 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23427, i64 noundef %23430, i32 noundef %23431)
  %23432 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23432, ptr %45, align 4, !tbaa !9
  store i32 31290, ptr %46, align 4, !tbaa !9
  %23433 = load ptr, ptr %5, align 8, !tbaa !5
  %23434 = getelementptr inbounds %struct.w2c_hermes, ptr %23433, i32 0, i32 6
  %23435 = load i32, ptr %45, align 4, !tbaa !9
  %23436 = zext i32 %23435 to i64
  %23437 = add i64 %23436, 304
  %23438 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23434, i64 noundef %23437, i32 noundef %23438)
  %23439 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23439, ptr %45, align 4, !tbaa !9
  %23440 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23440, ptr %46, align 4, !tbaa !9
  store i32 304, ptr %47, align 4, !tbaa !9
  %23441 = load i32, ptr %47, align 4, !tbaa !9
  %23442 = load i32, ptr %46, align 4, !tbaa !9
  %23443 = add i32 %23442, %23441
  store i32 %23443, ptr %46, align 4, !tbaa !9
  %23444 = load ptr, ptr %5, align 8, !tbaa !5
  %23445 = load i32, ptr %45, align 4, !tbaa !9
  %23446 = load i32, ptr %46, align 4, !tbaa !9
  %23447 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %23444, i32 noundef %23445, i32 noundef %23446)
  store i32 %23447, ptr %45, align 4, !tbaa !9
  %23448 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23448, ptr %45, align 4, !tbaa !9
  %23449 = load ptr, ptr %5, align 8, !tbaa !5
  %23450 = getelementptr inbounds %struct.w2c_hermes, ptr %23449, i32 0, i32 6
  %23451 = load i32, ptr %45, align 4, !tbaa !9
  %23452 = zext i32 %23451 to i64
  %23453 = add i64 %23452, 5808
  %23454 = call i32 @i32_load(ptr noundef %23450, i64 noundef %23453)
  store i32 %23454, ptr %45, align 4, !tbaa !9
  %23455 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23455, ptr %6, align 4, !tbaa !9
  br label %43136

23456:                                            ; preds = %23372
  %23457 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23457, ptr %45, align 4, !tbaa !9
  store i32 204, ptr %46, align 4, !tbaa !9
  %23458 = load i32, ptr %46, align 4, !tbaa !9
  %23459 = load i32, ptr %45, align 4, !tbaa !9
  %23460 = add i32 %23459, %23458
  store i32 %23460, ptr %45, align 4, !tbaa !9
  %23461 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23461, ptr %46, align 4, !tbaa !9
  %23462 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23462, ptr %47, align 4, !tbaa !9
  %23463 = load ptr, ptr %5, align 8, !tbaa !5
  %23464 = getelementptr inbounds %struct.w2c_hermes, ptr %23463, i32 0, i32 6
  %23465 = load i32, ptr %47, align 4, !tbaa !9
  %23466 = zext i32 %23465 to i64
  %23467 = add i64 %23466, 3
  %23468 = call i32 @i32_load8_u(ptr noundef %23464, i64 noundef %23467)
  store i32 %23468, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %23469 = load i32, ptr %48, align 4, !tbaa !9
  %23470 = and i32 %23469, 31
  %23471 = load i32, ptr %47, align 4, !tbaa !9
  %23472 = shl i32 %23471, %23470
  store i32 %23472, ptr %47, align 4, !tbaa !9
  %23473 = load i32, ptr %47, align 4, !tbaa !9
  %23474 = load i32, ptr %46, align 4, !tbaa !9
  %23475 = add i32 %23474, %23473
  store i32 %23475, ptr %46, align 4, !tbaa !9
  %23476 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23476, ptr %47, align 4, !tbaa !9
  %23477 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23477, ptr %48, align 4, !tbaa !9
  %23478 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23478, ptr %49, align 4, !tbaa !9
  %23479 = load ptr, ptr %5, align 8, !tbaa !5
  %23480 = getelementptr inbounds %struct.w2c_hermes, ptr %23479, i32 0, i32 6
  %23481 = load i32, ptr %49, align 4, !tbaa !9
  %23482 = zext i32 %23481 to i64
  %23483 = add i64 %23482, 2
  %23484 = call i32 @i32_load8_u(ptr noundef %23480, i64 noundef %23483)
  store i32 %23484, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %23485 = load i32, ptr %50, align 4, !tbaa !9
  %23486 = and i32 %23485, 31
  %23487 = load i32, ptr %49, align 4, !tbaa !9
  %23488 = shl i32 %23487, %23486
  store i32 %23488, ptr %49, align 4, !tbaa !9
  %23489 = load i32, ptr %49, align 4, !tbaa !9
  %23490 = load i32, ptr %48, align 4, !tbaa !9
  %23491 = add i32 %23490, %23489
  store i32 %23491, ptr %48, align 4, !tbaa !9
  %23492 = load ptr, ptr %5, align 8, !tbaa !5
  %23493 = load i32, ptr %45, align 4, !tbaa !9
  %23494 = load i32, ptr %46, align 4, !tbaa !9
  %23495 = load i32, ptr %47, align 4, !tbaa !9
  %23496 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AhasComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %23492, i32 noundef %23493, i32 noundef %23494, i32 noundef %23495, i32 noundef %23496)
  %23497 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23497, ptr %45, align 4, !tbaa !9
  %23498 = load ptr, ptr %5, align 8, !tbaa !5
  %23499 = getelementptr inbounds %struct.w2c_hermes, ptr %23498, i32 0, i32 6
  %23500 = load i32, ptr %45, align 4, !tbaa !9
  %23501 = zext i32 %23500 to i64
  %23502 = add i64 %23501, 5808
  %23503 = call i32 @i32_load(ptr noundef %23499, i64 noundef %23502)
  store i32 %23503, ptr %45, align 4, !tbaa !9
  %23504 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23504, ptr %6, align 4, !tbaa !9
  %23505 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23505, ptr %45, align 4, !tbaa !9
  %23506 = load ptr, ptr %5, align 8, !tbaa !5
  %23507 = getelementptr inbounds %struct.w2c_hermes, ptr %23506, i32 0, i32 6
  %23508 = load i32, ptr %45, align 4, !tbaa !9
  %23509 = zext i32 %23508 to i64
  %23510 = add i64 %23509, 204
  %23511 = call i32 @i32_load16_u(ptr noundef %23507, i64 noundef %23510)
  store i32 %23511, ptr %45, align 4, !tbaa !9
  %23512 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23512, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %23513 = load i32, ptr %46, align 4, !tbaa !9
  %23514 = load i32, ptr %45, align 4, !tbaa !9
  %23515 = and i32 %23514, %23513
  store i32 %23515, ptr %45, align 4, !tbaa !9
  %23516 = load i32, ptr %45, align 4, !tbaa !9
  %23517 = icmp ne i32 %23516, 0
  %23518 = xor i1 %23517, true
  %23519 = zext i1 %23518 to i32
  store i32 %23519, ptr %45, align 4, !tbaa !9
  %23520 = load i32, ptr %45, align 4, !tbaa !9
  %23521 = icmp ne i32 %23520, 0
  br i1 %23521, label %23522, label %23523

23522:                                            ; preds = %23456
  br label %43136

23523:                                            ; preds = %23456
  %23524 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23524, ptr %45, align 4, !tbaa !9
  %23525 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23525, ptr %46, align 4, !tbaa !9
  %23526 = load ptr, ptr %5, align 8, !tbaa !5
  %23527 = getelementptr inbounds %struct.w2c_hermes, ptr %23526, i32 0, i32 6
  %23528 = load i32, ptr %46, align 4, !tbaa !9
  %23529 = zext i32 %23528 to i64
  %23530 = add i64 %23529, 1
  %23531 = call i32 @i32_load8_u(ptr noundef %23527, i64 noundef %23530)
  store i32 %23531, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23532 = load i32, ptr %47, align 4, !tbaa !9
  %23533 = and i32 %23532, 31
  %23534 = load i32, ptr %46, align 4, !tbaa !9
  %23535 = shl i32 %23534, %23533
  store i32 %23535, ptr %46, align 4, !tbaa !9
  %23536 = load i32, ptr %46, align 4, !tbaa !9
  %23537 = load i32, ptr %45, align 4, !tbaa !9
  %23538 = add i32 %23537, %23536
  store i32 %23538, ptr %45, align 4, !tbaa !9
  %23539 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23539, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %23540 = load i32, ptr %47, align 4, !tbaa !9
  %23541 = and i32 %23540, 31
  %23542 = load i32, ptr %46, align 4, !tbaa !9
  %23543 = lshr i32 %23542, %23541
  store i32 %23543, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %23544 = load i32, ptr %47, align 4, !tbaa !9
  %23545 = load i32, ptr %46, align 4, !tbaa !9
  %23546 = and i32 %23545, %23544
  store i32 %23546, ptr %46, align 4, !tbaa !9
  %23547 = load i32, ptr %46, align 4, !tbaa !9
  %23548 = zext i32 %23547 to i64
  store i64 %23548, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %23549 = load i64, ptr %56, align 8, !tbaa !11
  %23550 = load i64, ptr %55, align 8, !tbaa !11
  %23551 = or i64 %23550, %23549
  store i64 %23551, ptr %55, align 8, !tbaa !11
  %23552 = load ptr, ptr %5, align 8, !tbaa !5
  %23553 = getelementptr inbounds %struct.w2c_hermes, ptr %23552, i32 0, i32 6
  %23554 = load i32, ptr %45, align 4, !tbaa !9
  %23555 = zext i32 %23554 to i64
  %23556 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23553, i64 noundef %23555, i64 noundef %23556)
  %23557 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23557, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23558 = load ptr, ptr %5, align 8, !tbaa !5
  %23559 = getelementptr inbounds %struct.w2c_hermes, ptr %23558, i32 0, i32 6
  %23560 = load i32, ptr %45, align 4, !tbaa !9
  %23561 = zext i32 %23560 to i64
  %23562 = add i64 %23561, 516
  %23563 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23559, i64 noundef %23562, i32 noundef %23563)
  %23564 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23564, ptr %45, align 4, !tbaa !9
  %23565 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %23565, ptr %46, align 4, !tbaa !9
  %23566 = load ptr, ptr %5, align 8, !tbaa !5
  %23567 = getelementptr inbounds %struct.w2c_hermes, ptr %23566, i32 0, i32 6
  %23568 = load i32, ptr %45, align 4, !tbaa !9
  %23569 = zext i32 %23568 to i64
  %23570 = add i64 %23569, 512
  %23571 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23567, i64 noundef %23570, i32 noundef %23571)
  %23572 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23572, ptr %45, align 4, !tbaa !9
  %23573 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %23573, ptr %46, align 4, !tbaa !9
  %23574 = load ptr, ptr %5, align 8, !tbaa !5
  %23575 = getelementptr inbounds %struct.w2c_hermes, ptr %23574, i32 0, i32 6
  %23576 = load i32, ptr %45, align 4, !tbaa !9
  %23577 = zext i32 %23576 to i64
  %23578 = add i64 %23577, 508
  %23579 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23575, i64 noundef %23578, i32 noundef %23579)
  %23580 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23580, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %23581 = load i32, ptr %46, align 4, !tbaa !9
  %23582 = load i32, ptr %45, align 4, !tbaa !9
  %23583 = add i32 %23582, %23581
  store i32 %23583, ptr %45, align 4, !tbaa !9
  %23584 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23584, ptr %6, align 4, !tbaa !9
  br label %2945

23585:                                            ; preds = %3073
  %23586 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23586, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %23587 = load i32, ptr %46, align 4, !tbaa !9
  %23588 = load i32, ptr %45, align 4, !tbaa !9
  %23589 = add i32 %23588, %23587
  store i32 %23589, ptr %45, align 4, !tbaa !9
  %23590 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23590, ptr %8, align 4, !tbaa !9
  %23591 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23591, ptr %45, align 4, !tbaa !9
  %23592 = load ptr, ptr %5, align 8, !tbaa !5
  %23593 = getelementptr inbounds %struct.w2c_hermes, ptr %23592, i32 0, i32 6
  %23594 = load i32, ptr %45, align 4, !tbaa !9
  %23595 = zext i32 %23594 to i64
  %23596 = add i64 %23595, 3
  %23597 = call i32 @i32_load8_u(ptr noundef %23593, i64 noundef %23596)
  store i32 %23597, ptr %45, align 4, !tbaa !9
  br label %23624

23598:                                            ; preds = %3074
  %23599 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23599, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %23600 = load i32, ptr %46, align 4, !tbaa !9
  %23601 = load i32, ptr %45, align 4, !tbaa !9
  %23602 = add i32 %23601, %23600
  store i32 %23602, ptr %45, align 4, !tbaa !9
  %23603 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23603, ptr %8, align 4, !tbaa !9
  %23604 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23604, ptr %45, align 4, !tbaa !9
  %23605 = load ptr, ptr %5, align 8, !tbaa !5
  %23606 = getelementptr inbounds %struct.w2c_hermes, ptr %23605, i32 0, i32 6
  %23607 = load i32, ptr %45, align 4, !tbaa !9
  %23608 = zext i32 %23607 to i64
  %23609 = add i64 %23608, 3
  %23610 = call i32 @i32_load(ptr noundef %23606, i64 noundef %23609)
  store i32 %23610, ptr %45, align 4, !tbaa !9
  br label %23624

23611:                                            ; preds = %3075
  %23612 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23612, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %23613 = load i32, ptr %46, align 4, !tbaa !9
  %23614 = load i32, ptr %45, align 4, !tbaa !9
  %23615 = add i32 %23614, %23613
  store i32 %23615, ptr %45, align 4, !tbaa !9
  %23616 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23616, ptr %8, align 4, !tbaa !9
  %23617 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23617, ptr %45, align 4, !tbaa !9
  %23618 = load ptr, ptr %5, align 8, !tbaa !5
  %23619 = getelementptr inbounds %struct.w2c_hermes, ptr %23618, i32 0, i32 6
  %23620 = load i32, ptr %45, align 4, !tbaa !9
  %23621 = zext i32 %23620 to i64
  %23622 = add i64 %23621, 3
  %23623 = call i32 @i32_load16_u(ptr noundef %23619, i64 noundef %23622)
  store i32 %23623, ptr %45, align 4, !tbaa !9
  br label %23624

23624:                                            ; preds = %23611, %23598, %23585
  %23625 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23625, ptr %7, align 4, !tbaa !9
  %23626 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23626, ptr %45, align 4, !tbaa !9
  %23627 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23627, ptr %46, align 4, !tbaa !9
  %23628 = load ptr, ptr %5, align 8, !tbaa !5
  %23629 = getelementptr inbounds %struct.w2c_hermes, ptr %23628, i32 0, i32 6
  %23630 = load i32, ptr %45, align 4, !tbaa !9
  %23631 = zext i32 %23630 to i64
  %23632 = add i64 %23631, 5808
  %23633 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23629, i64 noundef %23632, i32 noundef %23633)
  %23634 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %23634, ptr %45, align 4, !tbaa !9
  %23635 = load ptr, ptr %5, align 8, !tbaa !5
  %23636 = getelementptr inbounds %struct.w2c_hermes, ptr %23635, i32 0, i32 6
  %23637 = load i32, ptr %45, align 4, !tbaa !9
  %23638 = zext i32 %23637 to i64
  %23639 = call i32 @i32_load(ptr noundef %23636, i64 noundef %23638)
  store i32 %23639, ptr %45, align 4, !tbaa !9
  %23640 = load ptr, ptr %5, align 8, !tbaa !5
  %23641 = getelementptr inbounds %struct.w2c_hermes, ptr %23640, i32 0, i32 6
  %23642 = load i32, ptr %45, align 4, !tbaa !9
  %23643 = zext i32 %23642 to i64
  %23644 = add i64 %23643, 12
  %23645 = call i32 @i32_load(ptr noundef %23641, i64 noundef %23644)
  store i32 %23645, ptr %45, align 4, !tbaa !9
  %23646 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23646, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %23647 = load i32, ptr %47, align 4, !tbaa !9
  %23648 = and i32 %23647, 31
  %23649 = load i32, ptr %46, align 4, !tbaa !9
  %23650 = shl i32 %23649, %23648
  store i32 %23650, ptr %46, align 4, !tbaa !9
  %23651 = load i32, ptr %46, align 4, !tbaa !9
  %23652 = load i32, ptr %45, align 4, !tbaa !9
  %23653 = add i32 %23652, %23651
  store i32 %23653, ptr %45, align 4, !tbaa !9
  %23654 = load ptr, ptr %5, align 8, !tbaa !5
  %23655 = getelementptr inbounds %struct.w2c_hermes, ptr %23654, i32 0, i32 6
  %23656 = load i32, ptr %45, align 4, !tbaa !9
  %23657 = zext i32 %23656 to i64
  %23658 = call i32 @i32_load(ptr noundef %23655, i64 noundef %23657)
  store i32 %23658, ptr %45, align 4, !tbaa !9
  %23659 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23659, ptr %13, align 4, !tbaa !9
  %23660 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23660, ptr %45, align 4, !tbaa !9
  %23661 = load ptr, ptr %5, align 8, !tbaa !5
  %23662 = getelementptr inbounds %struct.w2c_hermes, ptr %23661, i32 0, i32 6
  %23663 = load i32, ptr %45, align 4, !tbaa !9
  %23664 = zext i32 %23663 to i64
  %23665 = add i64 %23664, 1
  %23666 = call i32 @i32_load8_u(ptr noundef %23662, i64 noundef %23665)
  store i32 %23666, ptr %45, align 4, !tbaa !9
  %23667 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23667, ptr %12, align 4, !tbaa !9
  %23668 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23668, ptr %45, align 4, !tbaa !9
  store i32 14, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %23669 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23669, ptr %48, align 4, !tbaa !9
  %23670 = load ptr, ptr %5, align 8, !tbaa !5
  %23671 = getelementptr inbounds %struct.w2c_hermes, ptr %23670, i32 0, i32 6
  %23672 = load i32, ptr %48, align 4, !tbaa !9
  %23673 = zext i32 %23672 to i64
  %23674 = call i32 @i32_load8_u(ptr noundef %23671, i64 noundef %23673)
  store i32 %23674, ptr %48, align 4, !tbaa !9
  store i32 66, ptr %49, align 4, !tbaa !9
  %23675 = load i32, ptr %48, align 4, !tbaa !9
  %23676 = load i32, ptr %49, align 4, !tbaa !9
  %23677 = icmp ult i32 %23675, %23676
  %23678 = zext i1 %23677 to i32
  store i32 %23678, ptr %48, align 4, !tbaa !9
  %23679 = load i32, ptr %48, align 4, !tbaa !9
  %23680 = icmp ne i32 %23679, 0
  br i1 %23680, label %23681, label %23683

23681:                                            ; preds = %23624
  %23682 = load i32, ptr %46, align 4, !tbaa !9
  br label %23685

23683:                                            ; preds = %23624
  %23684 = load i32, ptr %47, align 4, !tbaa !9
  br label %23685

23685:                                            ; preds = %23683, %23681
  %23686 = phi i32 [ %23682, %23681 ], [ %23684, %23683 ]
  store i32 %23686, ptr %46, align 4, !tbaa !9
  %23687 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %23687, ptr %7, align 4, !tbaa !9
  %23688 = load ptr, ptr %5, align 8, !tbaa !5
  %23689 = getelementptr inbounds %struct.w2c_hermes, ptr %23688, i32 0, i32 6
  %23690 = load i32, ptr %45, align 4, !tbaa !9
  %23691 = zext i32 %23690 to i64
  %23692 = add i64 %23691, 202
  %23693 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %23689, i64 noundef %23692, i32 noundef %23693)
  %23694 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23694, ptr %45, align 4, !tbaa !9
  %23695 = load ptr, ptr %5, align 8, !tbaa !5
  %23696 = getelementptr inbounds %struct.w2c_hermes, ptr %23695, i32 0, i32 6
  %23697 = load i32, ptr %45, align 4, !tbaa !9
  %23698 = zext i32 %23697 to i64
  %23699 = add i64 %23698, 2
  %23700 = call i32 @i32_load8_u(ptr noundef %23696, i64 noundef %23699)
  store i32 %23700, ptr %45, align 4, !tbaa !9
  %23701 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23701, ptr %6, align 4, !tbaa !9
  %23702 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23702, ptr %45, align 4, !tbaa !9
  %23703 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23703, ptr %46, align 4, !tbaa !9
  %23704 = load ptr, ptr %5, align 8, !tbaa !5
  %23705 = getelementptr inbounds %struct.w2c_hermes, ptr %23704, i32 0, i32 6
  %23706 = load i32, ptr %45, align 4, !tbaa !9
  %23707 = zext i32 %23706 to i64
  %23708 = add i64 %23707, 58
  %23709 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %23705, i64 noundef %23708, i32 noundef %23709)
  %23710 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23710, ptr %45, align 4, !tbaa !9
  %23711 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23711, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23712 = load i32, ptr %47, align 4, !tbaa !9
  %23713 = and i32 %23712, 31
  %23714 = load i32, ptr %46, align 4, !tbaa !9
  %23715 = shl i32 %23714, %23713
  store i32 %23715, ptr %46, align 4, !tbaa !9
  %23716 = load i32, ptr %46, align 4, !tbaa !9
  %23717 = load i32, ptr %45, align 4, !tbaa !9
  %23718 = add i32 %23717, %23716
  store i32 %23718, ptr %45, align 4, !tbaa !9
  %23719 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23719, ptr %46, align 4, !tbaa !9
  %23720 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %23720, ptr %47, align 4, !tbaa !9
  %23721 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23721, ptr %48, align 4, !tbaa !9
  store i32 58, ptr %49, align 4, !tbaa !9
  %23722 = load i32, ptr %49, align 4, !tbaa !9
  %23723 = load i32, ptr %48, align 4, !tbaa !9
  %23724 = add i32 %23723, %23722
  store i32 %23724, ptr %48, align 4, !tbaa !9
  %23725 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23725, ptr %49, align 4, !tbaa !9
  %23726 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23726, ptr %50, align 4, !tbaa !9
  store i32 3, ptr %51, align 4, !tbaa !9
  %23727 = load i32, ptr %51, align 4, !tbaa !9
  %23728 = and i32 %23727, 31
  %23729 = load i32, ptr %50, align 4, !tbaa !9
  %23730 = shl i32 %23729, %23728
  store i32 %23730, ptr %50, align 4, !tbaa !9
  %23731 = load i32, ptr %50, align 4, !tbaa !9
  %23732 = load i32, ptr %49, align 4, !tbaa !9
  %23733 = add i32 %23732, %23731
  store i32 %23733, ptr %49, align 4, !tbaa !9
  %23734 = load ptr, ptr %5, align 8, !tbaa !5
  %23735 = load i32, ptr %45, align 4, !tbaa !9
  %23736 = load i32, ptr %46, align 4, !tbaa !9
  %23737 = load i32, ptr %47, align 4, !tbaa !9
  %23738 = load i32, ptr %48, align 4, !tbaa !9
  %23739 = load i32, ptr %49, align 4, !tbaa !9
  %23740 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineNewOwnProperty0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %23734, i32 noundef %23735, i32 noundef %23736, i32 noundef %23737, i32 noundef %23738, i32 noundef %23739)
  store i32 %23740, ptr %45, align 4, !tbaa !9
  %23741 = load i32, ptr %45, align 4, !tbaa !9
  %23742 = icmp ne i32 %23741, 0
  %23743 = xor i1 %23742, true
  %23744 = zext i1 %23743 to i32
  store i32 %23744, ptr %45, align 4, !tbaa !9
  %23745 = load i32, ptr %45, align 4, !tbaa !9
  %23746 = icmp ne i32 %23745, 0
  br i1 %23746, label %23747, label %23756

23747:                                            ; preds = %23685
  %23748 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23748, ptr %45, align 4, !tbaa !9
  %23749 = load ptr, ptr %5, align 8, !tbaa !5
  %23750 = getelementptr inbounds %struct.w2c_hermes, ptr %23749, i32 0, i32 6
  %23751 = load i32, ptr %45, align 4, !tbaa !9
  %23752 = zext i32 %23751 to i64
  %23753 = add i64 %23752, 5808
  %23754 = call i32 @i32_load(ptr noundef %23750, i64 noundef %23753)
  store i32 %23754, ptr %45, align 4, !tbaa !9
  %23755 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23755, ptr %6, align 4, !tbaa !9
  br label %43136

23756:                                            ; preds = %23685
  %23757 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23757, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %23758 = load ptr, ptr %5, align 8, !tbaa !5
  %23759 = getelementptr inbounds %struct.w2c_hermes, ptr %23758, i32 0, i32 6
  %23760 = load i32, ptr %45, align 4, !tbaa !9
  %23761 = zext i32 %23760 to i64
  %23762 = add i64 %23761, 516
  %23763 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23759, i64 noundef %23762, i32 noundef %23763)
  %23764 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23764, ptr %45, align 4, !tbaa !9
  %23765 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %23765, ptr %46, align 4, !tbaa !9
  %23766 = load ptr, ptr %5, align 8, !tbaa !5
  %23767 = getelementptr inbounds %struct.w2c_hermes, ptr %23766, i32 0, i32 6
  %23768 = load i32, ptr %45, align 4, !tbaa !9
  %23769 = zext i32 %23768 to i64
  %23770 = add i64 %23769, 512
  %23771 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23767, i64 noundef %23770, i32 noundef %23771)
  %23772 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23772, ptr %45, align 4, !tbaa !9
  %23773 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %23773, ptr %46, align 4, !tbaa !9
  %23774 = load ptr, ptr %5, align 8, !tbaa !5
  %23775 = getelementptr inbounds %struct.w2c_hermes, ptr %23774, i32 0, i32 6
  %23776 = load i32, ptr %45, align 4, !tbaa !9
  %23777 = zext i32 %23776 to i64
  %23778 = add i64 %23777, 508
  %23779 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23775, i64 noundef %23778, i32 noundef %23779)
  %23780 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %23780, ptr %45, align 4, !tbaa !9
  %23781 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23781, ptr %6, align 4, !tbaa !9
  br label %2945

23782:                                            ; preds = %3076
  %23783 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23783, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %23784 = load i32, ptr %46, align 4, !tbaa !9
  %23785 = load i32, ptr %45, align 4, !tbaa !9
  %23786 = add i32 %23785, %23784
  store i32 %23786, ptr %45, align 4, !tbaa !9
  %23787 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23787, ptr %8, align 4, !tbaa !9
  %23788 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23788, ptr %45, align 4, !tbaa !9
  %23789 = load ptr, ptr %5, align 8, !tbaa !5
  %23790 = getelementptr inbounds %struct.w2c_hermes, ptr %23789, i32 0, i32 6
  %23791 = load i32, ptr %45, align 4, !tbaa !9
  %23792 = zext i32 %23791 to i64
  %23793 = add i64 %23792, 3
  %23794 = call i32 @i32_load(ptr noundef %23790, i64 noundef %23793)
  store i32 %23794, ptr %45, align 4, !tbaa !9
  br label %23808

23795:                                            ; preds = %3077
  %23796 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23796, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %23797 = load i32, ptr %46, align 4, !tbaa !9
  %23798 = load i32, ptr %45, align 4, !tbaa !9
  %23799 = add i32 %23798, %23797
  store i32 %23799, ptr %45, align 4, !tbaa !9
  %23800 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23800, ptr %8, align 4, !tbaa !9
  %23801 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23801, ptr %45, align 4, !tbaa !9
  %23802 = load ptr, ptr %5, align 8, !tbaa !5
  %23803 = getelementptr inbounds %struct.w2c_hermes, ptr %23802, i32 0, i32 6
  %23804 = load i32, ptr %45, align 4, !tbaa !9
  %23805 = zext i32 %23804 to i64
  %23806 = add i64 %23805, 3
  %23807 = call i32 @i32_load16_u(ptr noundef %23803, i64 noundef %23806)
  store i32 %23807, ptr %45, align 4, !tbaa !9
  br label %23808

23808:                                            ; preds = %23795, %23782
  %23809 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23809, ptr %12, align 4, !tbaa !9
  %23810 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23810, ptr %45, align 4, !tbaa !9
  %23811 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23811, ptr %46, align 4, !tbaa !9
  %23812 = load ptr, ptr %5, align 8, !tbaa !5
  %23813 = getelementptr inbounds %struct.w2c_hermes, ptr %23812, i32 0, i32 6
  %23814 = load i32, ptr %46, align 4, !tbaa !9
  %23815 = zext i32 %23814 to i64
  %23816 = add i64 %23815, 2
  %23817 = call i32 @i32_load8_u(ptr noundef %23813, i64 noundef %23816)
  store i32 %23817, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23818 = load i32, ptr %47, align 4, !tbaa !9
  %23819 = and i32 %23818, 31
  %23820 = load i32, ptr %46, align 4, !tbaa !9
  %23821 = shl i32 %23820, %23819
  store i32 %23821, ptr %46, align 4, !tbaa !9
  %23822 = load i32, ptr %46, align 4, !tbaa !9
  %23823 = load i32, ptr %45, align 4, !tbaa !9
  %23824 = add i32 %23823, %23822
  store i32 %23824, ptr %45, align 4, !tbaa !9
  %23825 = load ptr, ptr %5, align 8, !tbaa !5
  %23826 = getelementptr inbounds %struct.w2c_hermes, ptr %23825, i32 0, i32 6
  %23827 = load i32, ptr %45, align 4, !tbaa !9
  %23828 = zext i32 %23827 to i64
  %23829 = add i64 %23828, 6
  %23830 = call i32 @i32_load16_s(ptr noundef %23826, i64 noundef %23829)
  store i32 %23830, ptr %45, align 4, !tbaa !9
  %23831 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23831, ptr %7, align 4, !tbaa !9
  %23832 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23832, ptr %45, align 4, !tbaa !9
  %23833 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23833, ptr %46, align 4, !tbaa !9
  %23834 = load ptr, ptr %5, align 8, !tbaa !5
  %23835 = getelementptr inbounds %struct.w2c_hermes, ptr %23834, i32 0, i32 6
  %23836 = load i32, ptr %45, align 4, !tbaa !9
  %23837 = zext i32 %23836 to i64
  %23838 = add i64 %23837, 5808
  %23839 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23835, i64 noundef %23838, i32 noundef %23839)
  %23840 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23840, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %23841 = load i32, ptr %45, align 4, !tbaa !9
  %23842 = load i32, ptr %46, align 4, !tbaa !9
  %23843 = icmp eq i32 %23841, %23842
  %23844 = zext i1 %23843 to i32
  store i32 %23844, ptr %45, align 4, !tbaa !9
  %23845 = load i32, ptr %45, align 4, !tbaa !9
  %23846 = icmp ne i32 %23845, 0
  br i1 %23846, label %23847, label %23983

23847:                                            ; preds = %23808
  %23848 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %23848, ptr %45, align 4, !tbaa !9
  %23849 = load ptr, ptr %5, align 8, !tbaa !5
  %23850 = getelementptr inbounds %struct.w2c_hermes, ptr %23849, i32 0, i32 6
  %23851 = load i32, ptr %45, align 4, !tbaa !9
  %23852 = zext i32 %23851 to i64
  %23853 = call i32 @i32_load(ptr noundef %23850, i64 noundef %23852)
  store i32 %23853, ptr %45, align 4, !tbaa !9
  %23854 = load ptr, ptr %5, align 8, !tbaa !5
  %23855 = getelementptr inbounds %struct.w2c_hermes, ptr %23854, i32 0, i32 6
  %23856 = load i32, ptr %45, align 4, !tbaa !9
  %23857 = zext i32 %23856 to i64
  %23858 = add i64 %23857, 12
  %23859 = call i32 @i32_load(ptr noundef %23855, i64 noundef %23858)
  store i32 %23859, ptr %45, align 4, !tbaa !9
  %23860 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %23860, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %23861 = load i32, ptr %47, align 4, !tbaa !9
  %23862 = and i32 %23861, 31
  %23863 = load i32, ptr %46, align 4, !tbaa !9
  %23864 = shl i32 %23863, %23862
  store i32 %23864, ptr %46, align 4, !tbaa !9
  %23865 = load i32, ptr %46, align 4, !tbaa !9
  %23866 = load i32, ptr %45, align 4, !tbaa !9
  %23867 = add i32 %23866, %23865
  store i32 %23867, ptr %45, align 4, !tbaa !9
  %23868 = load ptr, ptr %5, align 8, !tbaa !5
  %23869 = getelementptr inbounds %struct.w2c_hermes, ptr %23868, i32 0, i32 6
  %23870 = load i32, ptr %45, align 4, !tbaa !9
  %23871 = zext i32 %23870 to i64
  %23872 = call i32 @i32_load(ptr noundef %23869, i64 noundef %23871)
  store i32 %23872, ptr %45, align 4, !tbaa !9
  %23873 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23873, ptr %7, align 4, !tbaa !9
  %23874 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23874, ptr %45, align 4, !tbaa !9
  %23875 = load ptr, ptr %5, align 8, !tbaa !5
  %23876 = getelementptr inbounds %struct.w2c_hermes, ptr %23875, i32 0, i32 6
  %23877 = load i32, ptr %45, align 4, !tbaa !9
  %23878 = zext i32 %23877 to i64
  %23879 = add i64 %23878, 2
  %23880 = call i32 @i32_load8_u(ptr noundef %23876, i64 noundef %23879)
  store i32 %23880, ptr %45, align 4, !tbaa !9
  %23881 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23881, ptr %6, align 4, !tbaa !9
  %23882 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23882, ptr %45, align 4, !tbaa !9
  %23883 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %23883, ptr %46, align 4, !tbaa !9
  %23884 = load ptr, ptr %5, align 8, !tbaa !5
  %23885 = getelementptr inbounds %struct.w2c_hermes, ptr %23884, i32 0, i32 6
  %23886 = load i32, ptr %45, align 4, !tbaa !9
  %23887 = zext i32 %23886 to i64
  %23888 = add i64 %23887, 60
  %23889 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23885, i64 noundef %23888, i32 noundef %23889)
  %23890 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23890, ptr %45, align 4, !tbaa !9
  %23891 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %23891, ptr %46, align 4, !tbaa !9
  %23892 = load ptr, ptr %5, align 8, !tbaa !5
  %23893 = getelementptr inbounds %struct.w2c_hermes, ptr %23892, i32 0, i32 6
  %23894 = load i32, ptr %45, align 4, !tbaa !9
  %23895 = zext i32 %23894 to i64
  %23896 = add i64 %23895, 192
  %23897 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %23893, i64 noundef %23896, i32 noundef %23897)
  %23898 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23898, ptr %45, align 4, !tbaa !9
  store i32 196, ptr %46, align 4, !tbaa !9
  %23899 = load i32, ptr %46, align 4, !tbaa !9
  %23900 = load i32, ptr %45, align 4, !tbaa !9
  %23901 = add i32 %23900, %23899
  store i32 %23901, ptr %45, align 4, !tbaa !9
  %23902 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23902, ptr %46, align 4, !tbaa !9
  %23903 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23903, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %23904 = load i32, ptr %48, align 4, !tbaa !9
  %23905 = and i32 %23904, 31
  %23906 = load i32, ptr %47, align 4, !tbaa !9
  %23907 = shl i32 %23906, %23905
  store i32 %23907, ptr %47, align 4, !tbaa !9
  %23908 = load i32, ptr %47, align 4, !tbaa !9
  %23909 = load i32, ptr %46, align 4, !tbaa !9
  %23910 = add i32 %23909, %23908
  store i32 %23910, ptr %46, align 4, !tbaa !9
  %23911 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23911, ptr %47, align 4, !tbaa !9
  %23912 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23912, ptr %48, align 4, !tbaa !9
  %23913 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23913, ptr %49, align 4, !tbaa !9
  store i32 60, ptr %50, align 4, !tbaa !9
  %23914 = load i32, ptr %50, align 4, !tbaa !9
  %23915 = load i32, ptr %49, align 4, !tbaa !9
  %23916 = add i32 %23915, %23914
  store i32 %23916, ptr %49, align 4, !tbaa !9
  %23917 = load ptr, ptr %5, align 8, !tbaa !5
  %23918 = load i32, ptr %45, align 4, !tbaa !9
  %23919 = load i32, ptr %46, align 4, !tbaa !9
  %23920 = load i32, ptr %47, align 4, !tbaa !9
  %23921 = load i32, ptr %48, align 4, !tbaa !9
  %23922 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteNamed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %23917, i32 noundef %23918, i32 noundef %23919, i32 noundef %23920, i32 noundef %23921, i32 noundef %23922)
  %23923 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23923, ptr %45, align 4, !tbaa !9
  %23924 = load ptr, ptr %5, align 8, !tbaa !5
  %23925 = getelementptr inbounds %struct.w2c_hermes, ptr %23924, i32 0, i32 6
  %23926 = load i32, ptr %45, align 4, !tbaa !9
  %23927 = zext i32 %23926 to i64
  %23928 = add i64 %23927, 5808
  %23929 = call i32 @i32_load(ptr noundef %23925, i64 noundef %23928)
  store i32 %23929, ptr %45, align 4, !tbaa !9
  %23930 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23930, ptr %6, align 4, !tbaa !9
  %23931 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23931, ptr %45, align 4, !tbaa !9
  %23932 = load ptr, ptr %5, align 8, !tbaa !5
  %23933 = getelementptr inbounds %struct.w2c_hermes, ptr %23932, i32 0, i32 6
  %23934 = load i32, ptr %45, align 4, !tbaa !9
  %23935 = zext i32 %23934 to i64
  %23936 = add i64 %23935, 196
  %23937 = call i32 @i32_load16_u(ptr noundef %23933, i64 noundef %23936)
  store i32 %23937, ptr %45, align 4, !tbaa !9
  %23938 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %23938, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %23939 = load i32, ptr %46, align 4, !tbaa !9
  %23940 = load i32, ptr %45, align 4, !tbaa !9
  %23941 = and i32 %23940, %23939
  store i32 %23941, ptr %45, align 4, !tbaa !9
  %23942 = load i32, ptr %45, align 4, !tbaa !9
  %23943 = icmp ne i32 %23942, 0
  %23944 = xor i1 %23943, true
  %23945 = zext i1 %23944 to i32
  store i32 %23945, ptr %45, align 4, !tbaa !9
  %23946 = load i32, ptr %45, align 4, !tbaa !9
  %23947 = icmp ne i32 %23946, 0
  br i1 %23947, label %23948, label %23949

23948:                                            ; preds = %23847
  br label %43136

23949:                                            ; preds = %23847
  %23950 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23950, ptr %45, align 4, !tbaa !9
  %23951 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23951, ptr %46, align 4, !tbaa !9
  %23952 = load ptr, ptr %5, align 8, !tbaa !5
  %23953 = getelementptr inbounds %struct.w2c_hermes, ptr %23952, i32 0, i32 6
  %23954 = load i32, ptr %46, align 4, !tbaa !9
  %23955 = zext i32 %23954 to i64
  %23956 = add i64 %23955, 1
  %23957 = call i32 @i32_load8_u(ptr noundef %23953, i64 noundef %23956)
  store i32 %23957, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %23958 = load i32, ptr %47, align 4, !tbaa !9
  %23959 = and i32 %23958, 31
  %23960 = load i32, ptr %46, align 4, !tbaa !9
  %23961 = shl i32 %23960, %23959
  store i32 %23961, ptr %46, align 4, !tbaa !9
  %23962 = load i32, ptr %46, align 4, !tbaa !9
  %23963 = load i32, ptr %45, align 4, !tbaa !9
  %23964 = add i32 %23963, %23962
  store i32 %23964, ptr %45, align 4, !tbaa !9
  %23965 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %23965, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %23966 = load i32, ptr %47, align 4, !tbaa !9
  %23967 = and i32 %23966, 31
  %23968 = load i32, ptr %46, align 4, !tbaa !9
  %23969 = lshr i32 %23968, %23967
  store i32 %23969, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %23970 = load i32, ptr %47, align 4, !tbaa !9
  %23971 = load i32, ptr %46, align 4, !tbaa !9
  %23972 = and i32 %23971, %23970
  store i32 %23972, ptr %46, align 4, !tbaa !9
  %23973 = load i32, ptr %46, align 4, !tbaa !9
  %23974 = zext i32 %23973 to i64
  store i64 %23974, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %23975 = load i64, ptr %56, align 8, !tbaa !11
  %23976 = load i64, ptr %55, align 8, !tbaa !11
  %23977 = or i64 %23976, %23975
  store i64 %23977, ptr %55, align 8, !tbaa !11
  %23978 = load ptr, ptr %5, align 8, !tbaa !5
  %23979 = getelementptr inbounds %struct.w2c_hermes, ptr %23978, i32 0, i32 6
  %23980 = load i32, ptr %45, align 4, !tbaa !9
  %23981 = zext i32 %23980 to i64
  %23982 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %23979, i64 noundef %23981, i64 noundef %23982)
  br label %24260

23983:                                            ; preds = %23808
  %23984 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %23984, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %23985 = load i32, ptr %46, align 4, !tbaa !9
  %23986 = load i32, ptr %45, align 4, !tbaa !9
  %23987 = add i32 %23986, %23985
  store i32 %23987, ptr %45, align 4, !tbaa !9
  %23988 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %23988, ptr %46, align 4, !tbaa !9
  %23989 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %23989, ptr %47, align 4, !tbaa !9
  %23990 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %23990, ptr %48, align 4, !tbaa !9
  %23991 = load ptr, ptr %5, align 8, !tbaa !5
  %23992 = getelementptr inbounds %struct.w2c_hermes, ptr %23991, i32 0, i32 6
  %23993 = load i32, ptr %48, align 4, !tbaa !9
  %23994 = zext i32 %23993 to i64
  %23995 = add i64 %23994, 2
  %23996 = call i32 @i32_load8_u(ptr noundef %23992, i64 noundef %23995)
  store i32 %23996, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %23997 = load i32, ptr %49, align 4, !tbaa !9
  %23998 = and i32 %23997, 31
  %23999 = load i32, ptr %48, align 4, !tbaa !9
  %24000 = shl i32 %23999, %23998
  store i32 %24000, ptr %48, align 4, !tbaa !9
  %24001 = load i32, ptr %48, align 4, !tbaa !9
  %24002 = load i32, ptr %47, align 4, !tbaa !9
  %24003 = add i32 %24002, %24001
  store i32 %24003, ptr %47, align 4, !tbaa !9
  %24004 = load ptr, ptr %5, align 8, !tbaa !5
  %24005 = load i32, ptr %45, align 4, !tbaa !9
  %24006 = load i32, ptr %46, align 4, !tbaa !9
  %24007 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %24004, i32 noundef %24005, i32 noundef %24006, i32 noundef %24007)
  %24008 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24008, ptr %45, align 4, !tbaa !9
  %24009 = load ptr, ptr %5, align 8, !tbaa !5
  %24010 = getelementptr inbounds %struct.w2c_hermes, ptr %24009, i32 0, i32 6
  %24011 = load i32, ptr %45, align 4, !tbaa !9
  %24012 = zext i32 %24011 to i64
  %24013 = add i64 %24012, 304
  %24014 = call i32 @i32_load(ptr noundef %24010, i64 noundef %24013)
  store i32 %24014, ptr %45, align 4, !tbaa !9
  %24015 = load i32, ptr %45, align 4, !tbaa !9
  %24016 = icmp ne i32 %24015, 0
  %24017 = xor i1 %24016, true
  %24018 = zext i1 %24017 to i32
  store i32 %24018, ptr %45, align 4, !tbaa !9
  %24019 = load i32, ptr %45, align 4, !tbaa !9
  %24020 = icmp ne i32 %24019, 0
  br i1 %24020, label %24021, label %24119

24021:                                            ; preds = %23983
  %24022 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24022, ptr %45, align 4, !tbaa !9
  %24023 = load ptr, ptr %5, align 8, !tbaa !5
  %24024 = getelementptr inbounds %struct.w2c_hermes, ptr %24023, i32 0, i32 6
  %24025 = load i32, ptr %45, align 4, !tbaa !9
  %24026 = zext i32 %24025 to i64
  %24027 = add i64 %24026, 5808
  %24028 = call i32 @i32_load(ptr noundef %24024, i64 noundef %24027)
  store i32 %24028, ptr %45, align 4, !tbaa !9
  %24029 = load ptr, ptr %5, align 8, !tbaa !5
  %24030 = getelementptr inbounds %struct.w2c_hermes, ptr %24029, i32 0, i32 6
  %24031 = load i32, ptr %45, align 4, !tbaa !9
  %24032 = zext i32 %24031 to i64
  %24033 = add i64 %24032, 2
  %24034 = call i32 @i32_load8_u(ptr noundef %24030, i64 noundef %24033)
  store i32 %24034, ptr %45, align 4, !tbaa !9
  %24035 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24035, ptr %7, align 4, !tbaa !9
  %24036 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24036, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %24037 = load ptr, ptr %5, align 8, !tbaa !5
  %24038 = getelementptr inbounds %struct.w2c_hermes, ptr %24037, i32 0, i32 6
  %24039 = load i32, ptr %45, align 4, !tbaa !9
  %24040 = zext i32 %24039 to i64
  %24041 = add i64 %24040, 188
  %24042 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24038, i64 noundef %24041, i32 noundef %24042)
  %24043 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24043, ptr %45, align 4, !tbaa !9
  store i32 46931, ptr %46, align 4, !tbaa !9
  %24044 = load ptr, ptr %5, align 8, !tbaa !5
  %24045 = getelementptr inbounds %struct.w2c_hermes, ptr %24044, i32 0, i32 6
  %24046 = load i32, ptr %45, align 4, !tbaa !9
  %24047 = zext i32 %24046 to i64
  %24048 = add i64 %24047, 184
  %24049 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24045, i64 noundef %24048, i32 noundef %24049)
  %24050 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %24050, ptr %45, align 4, !tbaa !9
  %24051 = load ptr, ptr %5, align 8, !tbaa !5
  %24052 = getelementptr inbounds %struct.w2c_hermes, ptr %24051, i32 0, i32 6
  %24053 = load i32, ptr %45, align 4, !tbaa !9
  %24054 = zext i32 %24053 to i64
  %24055 = call i32 @i32_load(ptr noundef %24052, i64 noundef %24054)
  store i32 %24055, ptr %45, align 4, !tbaa !9
  %24056 = load ptr, ptr %5, align 8, !tbaa !5
  %24057 = getelementptr inbounds %struct.w2c_hermes, ptr %24056, i32 0, i32 6
  %24058 = load i32, ptr %45, align 4, !tbaa !9
  %24059 = zext i32 %24058 to i64
  %24060 = add i64 %24059, 12
  %24061 = call i32 @i32_load(ptr noundef %24057, i64 noundef %24060)
  store i32 %24061, ptr %45, align 4, !tbaa !9
  %24062 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %24062, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %24063 = load i32, ptr %47, align 4, !tbaa !9
  %24064 = and i32 %24063, 31
  %24065 = load i32, ptr %46, align 4, !tbaa !9
  %24066 = shl i32 %24065, %24064
  store i32 %24066, ptr %46, align 4, !tbaa !9
  %24067 = load i32, ptr %46, align 4, !tbaa !9
  %24068 = load i32, ptr %45, align 4, !tbaa !9
  %24069 = add i32 %24068, %24067
  store i32 %24069, ptr %45, align 4, !tbaa !9
  %24070 = load ptr, ptr %5, align 8, !tbaa !5
  %24071 = getelementptr inbounds %struct.w2c_hermes, ptr %24070, i32 0, i32 6
  %24072 = load i32, ptr %45, align 4, !tbaa !9
  %24073 = zext i32 %24072 to i64
  %24074 = call i32 @i32_load(ptr noundef %24071, i64 noundef %24073)
  store i32 %24074, ptr %45, align 4, !tbaa !9
  %24075 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24075, ptr %6, align 4, !tbaa !9
  %24076 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24076, ptr %45, align 4, !tbaa !9
  %24077 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24077, ptr %46, align 4, !tbaa !9
  %24078 = load ptr, ptr %5, align 8, !tbaa !5
  %24079 = getelementptr inbounds %struct.w2c_hermes, ptr %24078, i32 0, i32 6
  %24080 = load i32, ptr %46, align 4, !tbaa !9
  %24081 = zext i32 %24080 to i64
  %24082 = add i64 %24081, 184
  %24083 = call i64 @i64_load(ptr noundef %24079, i64 noundef %24082)
  store i64 %24083, ptr %55, align 8, !tbaa !11
  %24084 = load ptr, ptr %5, align 8, !tbaa !5
  %24085 = getelementptr inbounds %struct.w2c_hermes, ptr %24084, i32 0, i32 6
  %24086 = load i32, ptr %45, align 4, !tbaa !9
  %24087 = zext i32 %24086 to i64
  %24088 = add i64 %24087, 64
  %24089 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24085, i64 noundef %24088, i64 noundef %24089)
  %24090 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24090, ptr %45, align 4, !tbaa !9
  %24091 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24091, ptr %46, align 4, !tbaa !9
  %24092 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24092, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %24093 = load i32, ptr %48, align 4, !tbaa !9
  %24094 = and i32 %24093, 31
  %24095 = load i32, ptr %47, align 4, !tbaa !9
  %24096 = shl i32 %24095, %24094
  store i32 %24096, ptr %47, align 4, !tbaa !9
  %24097 = load i32, ptr %47, align 4, !tbaa !9
  %24098 = load i32, ptr %46, align 4, !tbaa !9
  %24099 = add i32 %24098, %24097
  store i32 %24099, ptr %46, align 4, !tbaa !9
  %24100 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24100, ptr %47, align 4, !tbaa !9
  store i32 -64, ptr %48, align 4, !tbaa !9
  %24101 = load i32, ptr %48, align 4, !tbaa !9
  %24102 = load i32, ptr %47, align 4, !tbaa !9
  %24103 = sub i32 %24102, %24101
  store i32 %24103, ptr %47, align 4, !tbaa !9
  %24104 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24104, ptr %48, align 4, !tbaa !9
  %24105 = load ptr, ptr %5, align 8, !tbaa !5
  %24106 = load i32, ptr %45, align 4, !tbaa !9
  %24107 = load i32, ptr %46, align 4, !tbaa !9
  %24108 = load i32, ptr %47, align 4, !tbaa !9
  %24109 = load i32, ptr %48, align 4, !tbaa !9
  %24110 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AamendPropAccessErrorMsgWithPropName0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x29(ptr noundef %24105, i32 noundef %24106, i32 noundef %24107, i32 noundef %24108, i32 noundef %24109)
  store i32 %24110, ptr %45, align 4, !tbaa !9
  %24111 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24111, ptr %45, align 4, !tbaa !9
  %24112 = load ptr, ptr %5, align 8, !tbaa !5
  %24113 = getelementptr inbounds %struct.w2c_hermes, ptr %24112, i32 0, i32 6
  %24114 = load i32, ptr %45, align 4, !tbaa !9
  %24115 = zext i32 %24114 to i64
  %24116 = add i64 %24115, 5808
  %24117 = call i32 @i32_load(ptr noundef %24113, i64 noundef %24116)
  store i32 %24117, ptr %45, align 4, !tbaa !9
  %24118 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24118, ptr %6, align 4, !tbaa !9
  br label %43136

24119:                                            ; preds = %23983
  %24120 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24120, ptr %45, align 4, !tbaa !9
  %24121 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24121, ptr %46, align 4, !tbaa !9
  %24122 = load ptr, ptr %5, align 8, !tbaa !5
  %24123 = getelementptr inbounds %struct.w2c_hermes, ptr %24122, i32 0, i32 6
  %24124 = load i32, ptr %46, align 4, !tbaa !9
  %24125 = zext i32 %24124 to i64
  %24126 = add i64 %24125, 312
  %24127 = call i64 @i64_load(ptr noundef %24123, i64 noundef %24126)
  store i64 %24127, ptr %55, align 8, !tbaa !11
  %24128 = load ptr, ptr %5, align 8, !tbaa !5
  %24129 = getelementptr inbounds %struct.w2c_hermes, ptr %24128, i32 0, i32 6
  %24130 = load i32, ptr %45, align 4, !tbaa !9
  %24131 = zext i32 %24130 to i64
  %24132 = add i64 %24131, 352
  %24133 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24129, i64 noundef %24132, i64 noundef %24133)
  %24134 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %24134, ptr %45, align 4, !tbaa !9
  %24135 = load ptr, ptr %5, align 8, !tbaa !5
  %24136 = getelementptr inbounds %struct.w2c_hermes, ptr %24135, i32 0, i32 6
  %24137 = load i32, ptr %45, align 4, !tbaa !9
  %24138 = zext i32 %24137 to i64
  %24139 = call i32 @i32_load(ptr noundef %24136, i64 noundef %24138)
  store i32 %24139, ptr %45, align 4, !tbaa !9
  %24140 = load ptr, ptr %5, align 8, !tbaa !5
  %24141 = getelementptr inbounds %struct.w2c_hermes, ptr %24140, i32 0, i32 6
  %24142 = load i32, ptr %45, align 4, !tbaa !9
  %24143 = zext i32 %24142 to i64
  %24144 = add i64 %24143, 12
  %24145 = call i32 @i32_load(ptr noundef %24141, i64 noundef %24144)
  store i32 %24145, ptr %45, align 4, !tbaa !9
  %24146 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %24146, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %24147 = load i32, ptr %47, align 4, !tbaa !9
  %24148 = and i32 %24147, 31
  %24149 = load i32, ptr %46, align 4, !tbaa !9
  %24150 = shl i32 %24149, %24148
  store i32 %24150, ptr %46, align 4, !tbaa !9
  %24151 = load i32, ptr %46, align 4, !tbaa !9
  %24152 = load i32, ptr %45, align 4, !tbaa !9
  %24153 = add i32 %24152, %24151
  store i32 %24153, ptr %45, align 4, !tbaa !9
  %24154 = load ptr, ptr %5, align 8, !tbaa !5
  %24155 = getelementptr inbounds %struct.w2c_hermes, ptr %24154, i32 0, i32 6
  %24156 = load i32, ptr %45, align 4, !tbaa !9
  %24157 = zext i32 %24156 to i64
  %24158 = call i32 @i32_load(ptr noundef %24155, i64 noundef %24157)
  store i32 %24158, ptr %45, align 4, !tbaa !9
  %24159 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24159, ptr %6, align 4, !tbaa !9
  %24160 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24160, ptr %45, align 4, !tbaa !9
  %24161 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %24161, ptr %46, align 4, !tbaa !9
  %24162 = load ptr, ptr %5, align 8, !tbaa !5
  %24163 = getelementptr inbounds %struct.w2c_hermes, ptr %24162, i32 0, i32 6
  %24164 = load i32, ptr %45, align 4, !tbaa !9
  %24165 = zext i32 %24164 to i64
  %24166 = add i64 %24165, 76
  %24167 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24163, i64 noundef %24166, i32 noundef %24167)
  %24168 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24168, ptr %45, align 4, !tbaa !9
  %24169 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %24169, ptr %46, align 4, !tbaa !9
  %24170 = load ptr, ptr %5, align 8, !tbaa !5
  %24171 = getelementptr inbounds %struct.w2c_hermes, ptr %24170, i32 0, i32 6
  %24172 = load i32, ptr %45, align 4, !tbaa !9
  %24173 = zext i32 %24172 to i64
  %24174 = add i64 %24173, 176
  %24175 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24171, i64 noundef %24174, i32 noundef %24175)
  %24176 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24176, ptr %45, align 4, !tbaa !9
  store i32 180, ptr %46, align 4, !tbaa !9
  %24177 = load i32, ptr %46, align 4, !tbaa !9
  %24178 = load i32, ptr %45, align 4, !tbaa !9
  %24179 = add i32 %24178, %24177
  store i32 %24179, ptr %45, align 4, !tbaa !9
  %24180 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %24180, ptr %46, align 4, !tbaa !9
  %24181 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24181, ptr %47, align 4, !tbaa !9
  %24182 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24182, ptr %48, align 4, !tbaa !9
  %24183 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24183, ptr %49, align 4, !tbaa !9
  store i32 76, ptr %50, align 4, !tbaa !9
  %24184 = load i32, ptr %50, align 4, !tbaa !9
  %24185 = load i32, ptr %49, align 4, !tbaa !9
  %24186 = add i32 %24185, %24184
  store i32 %24186, ptr %49, align 4, !tbaa !9
  %24187 = load ptr, ptr %5, align 8, !tbaa !5
  %24188 = load i32, ptr %45, align 4, !tbaa !9
  %24189 = load i32, ptr %46, align 4, !tbaa !9
  %24190 = load i32, ptr %47, align 4, !tbaa !9
  %24191 = load i32, ptr %48, align 4, !tbaa !9
  %24192 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteNamed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %24187, i32 noundef %24188, i32 noundef %24189, i32 noundef %24190, i32 noundef %24191, i32 noundef %24192)
  %24193 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24193, ptr %45, align 4, !tbaa !9
  %24194 = load ptr, ptr %5, align 8, !tbaa !5
  %24195 = getelementptr inbounds %struct.w2c_hermes, ptr %24194, i32 0, i32 6
  %24196 = load i32, ptr %45, align 4, !tbaa !9
  %24197 = zext i32 %24196 to i64
  %24198 = add i64 %24197, 5808
  %24199 = call i32 @i32_load(ptr noundef %24195, i64 noundef %24198)
  store i32 %24199, ptr %45, align 4, !tbaa !9
  %24200 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24200, ptr %6, align 4, !tbaa !9
  %24201 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24201, ptr %45, align 4, !tbaa !9
  %24202 = load ptr, ptr %5, align 8, !tbaa !5
  %24203 = getelementptr inbounds %struct.w2c_hermes, ptr %24202, i32 0, i32 6
  %24204 = load i32, ptr %45, align 4, !tbaa !9
  %24205 = zext i32 %24204 to i64
  %24206 = add i64 %24205, 180
  %24207 = call i32 @i32_load16_u(ptr noundef %24203, i64 noundef %24206)
  store i32 %24207, ptr %45, align 4, !tbaa !9
  %24208 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24208, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %24209 = load i32, ptr %46, align 4, !tbaa !9
  %24210 = load i32, ptr %45, align 4, !tbaa !9
  %24211 = and i32 %24210, %24209
  store i32 %24211, ptr %45, align 4, !tbaa !9
  %24212 = load i32, ptr %45, align 4, !tbaa !9
  %24213 = icmp ne i32 %24212, 0
  %24214 = xor i1 %24213, true
  %24215 = zext i1 %24214 to i32
  store i32 %24215, ptr %45, align 4, !tbaa !9
  %24216 = load i32, ptr %45, align 4, !tbaa !9
  %24217 = icmp ne i32 %24216, 0
  br i1 %24217, label %24218, label %24219

24218:                                            ; preds = %24119
  br label %43136

24219:                                            ; preds = %24119
  %24220 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24220, ptr %45, align 4, !tbaa !9
  %24221 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24221, ptr %46, align 4, !tbaa !9
  %24222 = load ptr, ptr %5, align 8, !tbaa !5
  %24223 = getelementptr inbounds %struct.w2c_hermes, ptr %24222, i32 0, i32 6
  %24224 = load i32, ptr %46, align 4, !tbaa !9
  %24225 = zext i32 %24224 to i64
  %24226 = add i64 %24225, 1
  %24227 = call i32 @i32_load8_u(ptr noundef %24223, i64 noundef %24226)
  store i32 %24227, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %24228 = load i32, ptr %47, align 4, !tbaa !9
  %24229 = and i32 %24228, 31
  %24230 = load i32, ptr %46, align 4, !tbaa !9
  %24231 = shl i32 %24230, %24229
  store i32 %24231, ptr %46, align 4, !tbaa !9
  %24232 = load i32, ptr %46, align 4, !tbaa !9
  %24233 = load i32, ptr %45, align 4, !tbaa !9
  %24234 = add i32 %24233, %24232
  store i32 %24234, ptr %45, align 4, !tbaa !9
  %24235 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24235, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %24236 = load i32, ptr %47, align 4, !tbaa !9
  %24237 = and i32 %24236, 31
  %24238 = load i32, ptr %46, align 4, !tbaa !9
  %24239 = lshr i32 %24238, %24237
  store i32 %24239, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %24240 = load i32, ptr %47, align 4, !tbaa !9
  %24241 = load i32, ptr %46, align 4, !tbaa !9
  %24242 = and i32 %24241, %24240
  store i32 %24242, ptr %46, align 4, !tbaa !9
  %24243 = load i32, ptr %46, align 4, !tbaa !9
  %24244 = zext i32 %24243 to i64
  store i64 %24244, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %24245 = load i64, ptr %56, align 8, !tbaa !11
  %24246 = load i64, ptr %55, align 8, !tbaa !11
  %24247 = or i64 %24246, %24245
  store i64 %24247, ptr %55, align 8, !tbaa !11
  %24248 = load ptr, ptr %5, align 8, !tbaa !5
  %24249 = getelementptr inbounds %struct.w2c_hermes, ptr %24248, i32 0, i32 6
  %24250 = load i32, ptr %45, align 4, !tbaa !9
  %24251 = zext i32 %24250 to i64
  %24252 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24249, i64 noundef %24251, i64 noundef %24252)
  %24253 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24253, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %24254 = load ptr, ptr %5, align 8, !tbaa !5
  %24255 = getelementptr inbounds %struct.w2c_hermes, ptr %24254, i32 0, i32 6
  %24256 = load i32, ptr %45, align 4, !tbaa !9
  %24257 = zext i32 %24256 to i64
  %24258 = add i64 %24257, 352
  %24259 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24255, i64 noundef %24258, i64 noundef %24259)
  br label %24260

24260:                                            ; preds = %24219, %23949
  %24261 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24261, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %24262 = load ptr, ptr %5, align 8, !tbaa !5
  %24263 = getelementptr inbounds %struct.w2c_hermes, ptr %24262, i32 0, i32 6
  %24264 = load i32, ptr %45, align 4, !tbaa !9
  %24265 = zext i32 %24264 to i64
  %24266 = add i64 %24265, 516
  %24267 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24263, i64 noundef %24266, i32 noundef %24267)
  %24268 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24268, ptr %45, align 4, !tbaa !9
  %24269 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %24269, ptr %46, align 4, !tbaa !9
  %24270 = load ptr, ptr %5, align 8, !tbaa !5
  %24271 = getelementptr inbounds %struct.w2c_hermes, ptr %24270, i32 0, i32 6
  %24272 = load i32, ptr %45, align 4, !tbaa !9
  %24273 = zext i32 %24272 to i64
  %24274 = add i64 %24273, 512
  %24275 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24271, i64 noundef %24274, i32 noundef %24275)
  %24276 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24276, ptr %45, align 4, !tbaa !9
  %24277 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %24277, ptr %46, align 4, !tbaa !9
  %24278 = load ptr, ptr %5, align 8, !tbaa !5
  %24279 = getelementptr inbounds %struct.w2c_hermes, ptr %24278, i32 0, i32 6
  %24280 = load i32, ptr %45, align 4, !tbaa !9
  %24281 = zext i32 %24280 to i64
  %24282 = add i64 %24281, 508
  %24283 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24279, i64 noundef %24282, i32 noundef %24283)
  %24284 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24284, ptr %45, align 4, !tbaa !9
  %24285 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24285, ptr %6, align 4, !tbaa !9
  br label %2945

24286:                                            ; preds = %3078
  %24287 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24287, ptr %45, align 4, !tbaa !9
  %24288 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24288, ptr %46, align 4, !tbaa !9
  %24289 = load ptr, ptr %5, align 8, !tbaa !5
  %24290 = getelementptr inbounds %struct.w2c_hermes, ptr %24289, i32 0, i32 6
  %24291 = load i32, ptr %46, align 4, !tbaa !9
  %24292 = zext i32 %24291 to i64
  %24293 = add i64 %24292, 2
  %24294 = call i32 @i32_load8_u(ptr noundef %24290, i64 noundef %24293)
  store i32 %24294, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %24295 = load i32, ptr %47, align 4, !tbaa !9
  %24296 = and i32 %24295, 31
  %24297 = load i32, ptr %46, align 4, !tbaa !9
  %24298 = shl i32 %24297, %24296
  store i32 %24298, ptr %46, align 4, !tbaa !9
  %24299 = load i32, ptr %46, align 4, !tbaa !9
  %24300 = load i32, ptr %45, align 4, !tbaa !9
  %24301 = add i32 %24300, %24299
  store i32 %24301, ptr %45, align 4, !tbaa !9
  %24302 = load ptr, ptr %5, align 8, !tbaa !5
  %24303 = getelementptr inbounds %struct.w2c_hermes, ptr %24302, i32 0, i32 6
  %24304 = load i32, ptr %45, align 4, !tbaa !9
  %24305 = zext i32 %24304 to i64
  %24306 = add i64 %24305, 6
  %24307 = call i32 @i32_load16_s(ptr noundef %24303, i64 noundef %24306)
  store i32 %24307, ptr %45, align 4, !tbaa !9
  %24308 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24308, ptr %7, align 4, !tbaa !9
  %24309 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24309, ptr %45, align 4, !tbaa !9
  %24310 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24310, ptr %46, align 4, !tbaa !9
  %24311 = load ptr, ptr %5, align 8, !tbaa !5
  %24312 = getelementptr inbounds %struct.w2c_hermes, ptr %24311, i32 0, i32 6
  %24313 = load i32, ptr %45, align 4, !tbaa !9
  %24314 = zext i32 %24313 to i64
  %24315 = add i64 %24314, 5808
  %24316 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24312, i64 noundef %24315, i32 noundef %24316)
  %24317 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24317, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %24318 = load i32, ptr %45, align 4, !tbaa !9
  %24319 = load i32, ptr %46, align 4, !tbaa !9
  %24320 = icmp eq i32 %24318, %24319
  %24321 = zext i1 %24320 to i32
  store i32 %24321, ptr %45, align 4, !tbaa !9
  %24322 = load i32, ptr %45, align 4, !tbaa !9
  %24323 = icmp ne i32 %24322, 0
  br i1 %24323, label %24324, label %24413

24324:                                            ; preds = %24286
  %24325 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24325, ptr %45, align 4, !tbaa !9
  %24326 = load ptr, ptr %5, align 8, !tbaa !5
  %24327 = getelementptr inbounds %struct.w2c_hermes, ptr %24326, i32 0, i32 6
  %24328 = load i32, ptr %45, align 4, !tbaa !9
  %24329 = zext i32 %24328 to i64
  %24330 = add i64 %24329, 2
  %24331 = call i32 @i32_load8_u(ptr noundef %24327, i64 noundef %24330)
  store i32 %24331, ptr %45, align 4, !tbaa !9
  %24332 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24332, ptr %7, align 4, !tbaa !9
  %24333 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24333, ptr %45, align 4, !tbaa !9
  %24334 = load ptr, ptr %5, align 8, !tbaa !5
  %24335 = getelementptr inbounds %struct.w2c_hermes, ptr %24334, i32 0, i32 6
  %24336 = load i32, ptr %45, align 4, !tbaa !9
  %24337 = zext i32 %24336 to i64
  %24338 = add i64 %24337, 3
  %24339 = call i32 @i32_load8_u(ptr noundef %24335, i64 noundef %24338)
  store i32 %24339, ptr %45, align 4, !tbaa !9
  %24340 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24340, ptr %6, align 4, !tbaa !9
  %24341 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24341, ptr %45, align 4, !tbaa !9
  %24342 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %24342, ptr %46, align 4, !tbaa !9
  %24343 = load ptr, ptr %5, align 8, !tbaa !5
  %24344 = getelementptr inbounds %struct.w2c_hermes, ptr %24343, i32 0, i32 6
  %24345 = load i32, ptr %45, align 4, !tbaa !9
  %24346 = zext i32 %24345 to i64
  %24347 = add i64 %24346, 80
  %24348 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24344, i64 noundef %24347, i32 noundef %24348)
  %24349 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24349, ptr %45, align 4, !tbaa !9
  %24350 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %24350, ptr %46, align 4, !tbaa !9
  %24351 = load ptr, ptr %5, align 8, !tbaa !5
  %24352 = getelementptr inbounds %struct.w2c_hermes, ptr %24351, i32 0, i32 6
  %24353 = load i32, ptr %45, align 4, !tbaa !9
  %24354 = zext i32 %24353 to i64
  %24355 = add i64 %24354, 168
  %24356 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24352, i64 noundef %24355, i32 noundef %24356)
  %24357 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24357, ptr %45, align 4, !tbaa !9
  store i32 172, ptr %46, align 4, !tbaa !9
  %24358 = load i32, ptr %46, align 4, !tbaa !9
  %24359 = load i32, ptr %45, align 4, !tbaa !9
  %24360 = add i32 %24359, %24358
  store i32 %24360, ptr %45, align 4, !tbaa !9
  %24361 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24361, ptr %46, align 4, !tbaa !9
  %24362 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24362, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %24363 = load i32, ptr %48, align 4, !tbaa !9
  %24364 = and i32 %24363, 31
  %24365 = load i32, ptr %47, align 4, !tbaa !9
  %24366 = shl i32 %24365, %24364
  store i32 %24366, ptr %47, align 4, !tbaa !9
  %24367 = load i32, ptr %47, align 4, !tbaa !9
  %24368 = load i32, ptr %46, align 4, !tbaa !9
  %24369 = add i32 %24368, %24367
  store i32 %24369, ptr %46, align 4, !tbaa !9
  %24370 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24370, ptr %47, align 4, !tbaa !9
  %24371 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24371, ptr %48, align 4, !tbaa !9
  %24372 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24372, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %24373 = load i32, ptr %50, align 4, !tbaa !9
  %24374 = and i32 %24373, 31
  %24375 = load i32, ptr %49, align 4, !tbaa !9
  %24376 = shl i32 %24375, %24374
  store i32 %24376, ptr %49, align 4, !tbaa !9
  %24377 = load i32, ptr %49, align 4, !tbaa !9
  %24378 = load i32, ptr %48, align 4, !tbaa !9
  %24379 = add i32 %24378, %24377
  store i32 %24379, ptr %48, align 4, !tbaa !9
  %24380 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24380, ptr %49, align 4, !tbaa !9
  store i32 80, ptr %50, align 4, !tbaa !9
  %24381 = load i32, ptr %50, align 4, !tbaa !9
  %24382 = load i32, ptr %49, align 4, !tbaa !9
  %24383 = add i32 %24382, %24381
  store i32 %24383, ptr %49, align 4, !tbaa !9
  %24384 = load ptr, ptr %5, align 8, !tbaa !5
  %24385 = load i32, ptr %45, align 4, !tbaa !9
  %24386 = load i32, ptr %46, align 4, !tbaa !9
  %24387 = load i32, ptr %47, align 4, !tbaa !9
  %24388 = load i32, ptr %48, align 4, !tbaa !9
  %24389 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %24384, i32 noundef %24385, i32 noundef %24386, i32 noundef %24387, i32 noundef %24388, i32 noundef %24389)
  %24390 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24390, ptr %45, align 4, !tbaa !9
  %24391 = load ptr, ptr %5, align 8, !tbaa !5
  %24392 = getelementptr inbounds %struct.w2c_hermes, ptr %24391, i32 0, i32 6
  %24393 = load i32, ptr %45, align 4, !tbaa !9
  %24394 = zext i32 %24393 to i64
  %24395 = add i64 %24394, 5808
  %24396 = call i32 @i32_load(ptr noundef %24392, i64 noundef %24395)
  store i32 %24396, ptr %45, align 4, !tbaa !9
  %24397 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24397, ptr %6, align 4, !tbaa !9
  %24398 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24398, ptr %45, align 4, !tbaa !9
  %24399 = load ptr, ptr %5, align 8, !tbaa !5
  %24400 = getelementptr inbounds %struct.w2c_hermes, ptr %24399, i32 0, i32 6
  %24401 = load i32, ptr %45, align 4, !tbaa !9
  %24402 = zext i32 %24401 to i64
  %24403 = add i64 %24402, 172
  %24404 = call i32 @i32_load16_u(ptr noundef %24400, i64 noundef %24403)
  store i32 %24404, ptr %45, align 4, !tbaa !9
  %24405 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24405, ptr %12, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %24406 = load i32, ptr %46, align 4, !tbaa !9
  %24407 = load i32, ptr %45, align 4, !tbaa !9
  %24408 = and i32 %24407, %24406
  store i32 %24408, ptr %45, align 4, !tbaa !9
  %24409 = load i32, ptr %45, align 4, !tbaa !9
  %24410 = icmp ne i32 %24409, 0
  br i1 %24410, label %24411, label %24412

24411:                                            ; preds = %24324
  br label %24551

24412:                                            ; preds = %24324
  br label %43136

24413:                                            ; preds = %24286
  %24414 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24414, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %24415 = load i32, ptr %46, align 4, !tbaa !9
  %24416 = load i32, ptr %45, align 4, !tbaa !9
  %24417 = add i32 %24416, %24415
  store i32 %24417, ptr %45, align 4, !tbaa !9
  %24418 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24418, ptr %46, align 4, !tbaa !9
  %24419 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24419, ptr %47, align 4, !tbaa !9
  %24420 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24420, ptr %48, align 4, !tbaa !9
  %24421 = load ptr, ptr %5, align 8, !tbaa !5
  %24422 = getelementptr inbounds %struct.w2c_hermes, ptr %24421, i32 0, i32 6
  %24423 = load i32, ptr %48, align 4, !tbaa !9
  %24424 = zext i32 %24423 to i64
  %24425 = add i64 %24424, 2
  %24426 = call i32 @i32_load8_u(ptr noundef %24422, i64 noundef %24425)
  store i32 %24426, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %24427 = load i32, ptr %49, align 4, !tbaa !9
  %24428 = and i32 %24427, 31
  %24429 = load i32, ptr %48, align 4, !tbaa !9
  %24430 = shl i32 %24429, %24428
  store i32 %24430, ptr %48, align 4, !tbaa !9
  %24431 = load i32, ptr %48, align 4, !tbaa !9
  %24432 = load i32, ptr %47, align 4, !tbaa !9
  %24433 = add i32 %24432, %24431
  store i32 %24433, ptr %47, align 4, !tbaa !9
  %24434 = load ptr, ptr %5, align 8, !tbaa !5
  %24435 = load i32, ptr %45, align 4, !tbaa !9
  %24436 = load i32, ptr %46, align 4, !tbaa !9
  %24437 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %24434, i32 noundef %24435, i32 noundef %24436, i32 noundef %24437)
  %24438 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24438, ptr %45, align 4, !tbaa !9
  %24439 = load ptr, ptr %5, align 8, !tbaa !5
  %24440 = getelementptr inbounds %struct.w2c_hermes, ptr %24439, i32 0, i32 6
  %24441 = load i32, ptr %45, align 4, !tbaa !9
  %24442 = zext i32 %24441 to i64
  %24443 = add i64 %24442, 5808
  %24444 = call i32 @i32_load(ptr noundef %24440, i64 noundef %24443)
  store i32 %24444, ptr %45, align 4, !tbaa !9
  %24445 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24445, ptr %6, align 4, !tbaa !9
  %24446 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24446, ptr %45, align 4, !tbaa !9
  %24447 = load ptr, ptr %5, align 8, !tbaa !5
  %24448 = getelementptr inbounds %struct.w2c_hermes, ptr %24447, i32 0, i32 6
  %24449 = load i32, ptr %45, align 4, !tbaa !9
  %24450 = zext i32 %24449 to i64
  %24451 = add i64 %24450, 304
  %24452 = call i32 @i32_load(ptr noundef %24448, i64 noundef %24451)
  store i32 %24452, ptr %45, align 4, !tbaa !9
  %24453 = load i32, ptr %45, align 4, !tbaa !9
  %24454 = icmp ne i32 %24453, 0
  %24455 = xor i1 %24454, true
  %24456 = zext i1 %24455 to i32
  store i32 %24456, ptr %45, align 4, !tbaa !9
  %24457 = load i32, ptr %45, align 4, !tbaa !9
  %24458 = icmp ne i32 %24457, 0
  br i1 %24458, label %24459, label %24460

24459:                                            ; preds = %24413
  br label %43136

24460:                                            ; preds = %24413
  %24461 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24461, ptr %45, align 4, !tbaa !9
  %24462 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24462, ptr %46, align 4, !tbaa !9
  %24463 = load ptr, ptr %5, align 8, !tbaa !5
  %24464 = getelementptr inbounds %struct.w2c_hermes, ptr %24463, i32 0, i32 6
  %24465 = load i32, ptr %46, align 4, !tbaa !9
  %24466 = zext i32 %24465 to i64
  %24467 = add i64 %24466, 312
  %24468 = call i64 @i64_load(ptr noundef %24464, i64 noundef %24467)
  store i64 %24468, ptr %55, align 8, !tbaa !11
  %24469 = load ptr, ptr %5, align 8, !tbaa !5
  %24470 = getelementptr inbounds %struct.w2c_hermes, ptr %24469, i32 0, i32 6
  %24471 = load i32, ptr %45, align 4, !tbaa !9
  %24472 = zext i32 %24471 to i64
  %24473 = add i64 %24472, 352
  %24474 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24470, i64 noundef %24473, i64 noundef %24474)
  %24475 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24475, ptr %45, align 4, !tbaa !9
  %24476 = load ptr, ptr %5, align 8, !tbaa !5
  %24477 = getelementptr inbounds %struct.w2c_hermes, ptr %24476, i32 0, i32 6
  %24478 = load i32, ptr %45, align 4, !tbaa !9
  %24479 = zext i32 %24478 to i64
  %24480 = add i64 %24479, 3
  %24481 = call i32 @i32_load8_u(ptr noundef %24477, i64 noundef %24480)
  store i32 %24481, ptr %45, align 4, !tbaa !9
  %24482 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24482, ptr %6, align 4, !tbaa !9
  %24483 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24483, ptr %45, align 4, !tbaa !9
  %24484 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %24484, ptr %46, align 4, !tbaa !9
  %24485 = load ptr, ptr %5, align 8, !tbaa !5
  %24486 = getelementptr inbounds %struct.w2c_hermes, ptr %24485, i32 0, i32 6
  %24487 = load i32, ptr %45, align 4, !tbaa !9
  %24488 = zext i32 %24487 to i64
  %24489 = add i64 %24488, 84
  %24490 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24486, i64 noundef %24489, i32 noundef %24490)
  %24491 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24491, ptr %45, align 4, !tbaa !9
  %24492 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %24492, ptr %46, align 4, !tbaa !9
  %24493 = load ptr, ptr %5, align 8, !tbaa !5
  %24494 = getelementptr inbounds %struct.w2c_hermes, ptr %24493, i32 0, i32 6
  %24495 = load i32, ptr %45, align 4, !tbaa !9
  %24496 = zext i32 %24495 to i64
  %24497 = add i64 %24496, 160
  %24498 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24494, i64 noundef %24497, i32 noundef %24498)
  %24499 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24499, ptr %45, align 4, !tbaa !9
  store i32 164, ptr %46, align 4, !tbaa !9
  %24500 = load i32, ptr %46, align 4, !tbaa !9
  %24501 = load i32, ptr %45, align 4, !tbaa !9
  %24502 = add i32 %24501, %24500
  store i32 %24502, ptr %45, align 4, !tbaa !9
  %24503 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %24503, ptr %46, align 4, !tbaa !9
  %24504 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24504, ptr %47, align 4, !tbaa !9
  %24505 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24505, ptr %48, align 4, !tbaa !9
  %24506 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24506, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %24507 = load i32, ptr %50, align 4, !tbaa !9
  %24508 = and i32 %24507, 31
  %24509 = load i32, ptr %49, align 4, !tbaa !9
  %24510 = shl i32 %24509, %24508
  store i32 %24510, ptr %49, align 4, !tbaa !9
  %24511 = load i32, ptr %49, align 4, !tbaa !9
  %24512 = load i32, ptr %48, align 4, !tbaa !9
  %24513 = add i32 %24512, %24511
  store i32 %24513, ptr %48, align 4, !tbaa !9
  %24514 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24514, ptr %49, align 4, !tbaa !9
  store i32 84, ptr %50, align 4, !tbaa !9
  %24515 = load i32, ptr %50, align 4, !tbaa !9
  %24516 = load i32, ptr %49, align 4, !tbaa !9
  %24517 = add i32 %24516, %24515
  store i32 %24517, ptr %49, align 4, !tbaa !9
  %24518 = load ptr, ptr %5, align 8, !tbaa !5
  %24519 = load i32, ptr %45, align 4, !tbaa !9
  %24520 = load i32, ptr %46, align 4, !tbaa !9
  %24521 = load i32, ptr %47, align 4, !tbaa !9
  %24522 = load i32, ptr %48, align 4, !tbaa !9
  %24523 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %24518, i32 noundef %24519, i32 noundef %24520, i32 noundef %24521, i32 noundef %24522, i32 noundef %24523)
  %24524 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24524, ptr %45, align 4, !tbaa !9
  %24525 = load ptr, ptr %5, align 8, !tbaa !5
  %24526 = getelementptr inbounds %struct.w2c_hermes, ptr %24525, i32 0, i32 6
  %24527 = load i32, ptr %45, align 4, !tbaa !9
  %24528 = zext i32 %24527 to i64
  %24529 = add i64 %24528, 5808
  %24530 = call i32 @i32_load(ptr noundef %24526, i64 noundef %24529)
  store i32 %24530, ptr %45, align 4, !tbaa !9
  %24531 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24531, ptr %6, align 4, !tbaa !9
  %24532 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24532, ptr %45, align 4, !tbaa !9
  %24533 = load ptr, ptr %5, align 8, !tbaa !5
  %24534 = getelementptr inbounds %struct.w2c_hermes, ptr %24533, i32 0, i32 6
  %24535 = load i32, ptr %45, align 4, !tbaa !9
  %24536 = zext i32 %24535 to i64
  %24537 = add i64 %24536, 164
  %24538 = call i32 @i32_load16_u(ptr noundef %24534, i64 noundef %24537)
  store i32 %24538, ptr %45, align 4, !tbaa !9
  %24539 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24539, ptr %12, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %24540 = load i32, ptr %46, align 4, !tbaa !9
  %24541 = load i32, ptr %45, align 4, !tbaa !9
  %24542 = and i32 %24541, %24540
  store i32 %24542, ptr %45, align 4, !tbaa !9
  %24543 = load i32, ptr %45, align 4, !tbaa !9
  %24544 = icmp ne i32 %24543, 0
  %24545 = xor i1 %24544, true
  %24546 = zext i1 %24545 to i32
  store i32 %24546, ptr %45, align 4, !tbaa !9
  %24547 = load i32, ptr %45, align 4, !tbaa !9
  %24548 = icmp ne i32 %24547, 0
  br i1 %24548, label %24549, label %24550

24549:                                            ; preds = %24460
  br label %43136

24550:                                            ; preds = %24460
  br label %24551

24551:                                            ; preds = %24550, %24411
  %24552 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24552, ptr %45, align 4, !tbaa !9
  %24553 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24553, ptr %46, align 4, !tbaa !9
  %24554 = load ptr, ptr %5, align 8, !tbaa !5
  %24555 = getelementptr inbounds %struct.w2c_hermes, ptr %24554, i32 0, i32 6
  %24556 = load i32, ptr %46, align 4, !tbaa !9
  %24557 = zext i32 %24556 to i64
  %24558 = add i64 %24557, 1
  %24559 = call i32 @i32_load8_u(ptr noundef %24555, i64 noundef %24558)
  store i32 %24559, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %24560 = load i32, ptr %47, align 4, !tbaa !9
  %24561 = and i32 %24560, 31
  %24562 = load i32, ptr %46, align 4, !tbaa !9
  %24563 = shl i32 %24562, %24561
  store i32 %24563, ptr %46, align 4, !tbaa !9
  %24564 = load i32, ptr %46, align 4, !tbaa !9
  %24565 = load i32, ptr %45, align 4, !tbaa !9
  %24566 = add i32 %24565, %24564
  store i32 %24566, ptr %45, align 4, !tbaa !9
  %24567 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %24567, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %24568 = load i32, ptr %47, align 4, !tbaa !9
  %24569 = and i32 %24568, 31
  %24570 = load i32, ptr %46, align 4, !tbaa !9
  %24571 = lshr i32 %24570, %24569
  store i32 %24571, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %24572 = load i32, ptr %47, align 4, !tbaa !9
  %24573 = load i32, ptr %46, align 4, !tbaa !9
  %24574 = and i32 %24573, %24572
  store i32 %24574, ptr %46, align 4, !tbaa !9
  %24575 = load i32, ptr %46, align 4, !tbaa !9
  %24576 = zext i32 %24575 to i64
  store i64 %24576, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %24577 = load i64, ptr %56, align 8, !tbaa !11
  %24578 = load i64, ptr %55, align 8, !tbaa !11
  %24579 = or i64 %24578, %24577
  store i64 %24579, ptr %55, align 8, !tbaa !11
  %24580 = load ptr, ptr %5, align 8, !tbaa !5
  %24581 = getelementptr inbounds %struct.w2c_hermes, ptr %24580, i32 0, i32 6
  %24582 = load i32, ptr %45, align 4, !tbaa !9
  %24583 = zext i32 %24582 to i64
  %24584 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24581, i64 noundef %24583, i64 noundef %24584)
  %24585 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24585, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %24586 = load ptr, ptr %5, align 8, !tbaa !5
  %24587 = getelementptr inbounds %struct.w2c_hermes, ptr %24586, i32 0, i32 6
  %24588 = load i32, ptr %45, align 4, !tbaa !9
  %24589 = zext i32 %24588 to i64
  %24590 = add i64 %24589, 516
  %24591 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24587, i64 noundef %24590, i32 noundef %24591)
  %24592 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24592, ptr %45, align 4, !tbaa !9
  %24593 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %24593, ptr %46, align 4, !tbaa !9
  %24594 = load ptr, ptr %5, align 8, !tbaa !5
  %24595 = getelementptr inbounds %struct.w2c_hermes, ptr %24594, i32 0, i32 6
  %24596 = load i32, ptr %45, align 4, !tbaa !9
  %24597 = zext i32 %24596 to i64
  %24598 = add i64 %24597, 512
  %24599 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24595, i64 noundef %24598, i32 noundef %24599)
  %24600 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24600, ptr %45, align 4, !tbaa !9
  %24601 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %24601, ptr %46, align 4, !tbaa !9
  %24602 = load ptr, ptr %5, align 8, !tbaa !5
  %24603 = getelementptr inbounds %struct.w2c_hermes, ptr %24602, i32 0, i32 6
  %24604 = load i32, ptr %45, align 4, !tbaa !9
  %24605 = zext i32 %24604 to i64
  %24606 = add i64 %24605, 508
  %24607 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24603, i64 noundef %24606, i32 noundef %24607)
  %24608 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24608, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %24609 = load ptr, ptr %5, align 8, !tbaa !5
  %24610 = getelementptr inbounds %struct.w2c_hermes, ptr %24609, i32 0, i32 6
  %24611 = load i32, ptr %45, align 4, !tbaa !9
  %24612 = zext i32 %24611 to i64
  %24613 = add i64 %24612, 352
  %24614 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24610, i64 noundef %24613, i64 noundef %24614)
  %24615 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24615, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %24616 = load i32, ptr %46, align 4, !tbaa !9
  %24617 = load i32, ptr %45, align 4, !tbaa !9
  %24618 = add i32 %24617, %24616
  store i32 %24618, ptr %45, align 4, !tbaa !9
  %24619 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24619, ptr %6, align 4, !tbaa !9
  br label %2945

24620:                                            ; preds = %3079
  %24621 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24621, ptr %45, align 4, !tbaa !9
  %24622 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24622, ptr %46, align 4, !tbaa !9
  %24623 = load ptr, ptr %5, align 8, !tbaa !5
  %24624 = getelementptr inbounds %struct.w2c_hermes, ptr %24623, i32 0, i32 6
  %24625 = load i32, ptr %45, align 4, !tbaa !9
  %24626 = zext i32 %24625 to i64
  %24627 = add i64 %24626, 5808
  %24628 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24624, i64 noundef %24627, i32 noundef %24628)
  %24629 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24629, ptr %45, align 4, !tbaa !9
  %24630 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %24630, ptr %46, align 4, !tbaa !9
  %24631 = load ptr, ptr %5, align 8, !tbaa !5
  %24632 = load i32, ptr %45, align 4, !tbaa !9
  %24633 = load i32, ptr %46, align 4, !tbaa !9
  %24634 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSRegExp0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x29(ptr noundef %24631, i32 noundef %24632, i32 noundef %24633)
  store i32 %24634, ptr %45, align 4, !tbaa !9
  %24635 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24635, ptr %7, align 4, !tbaa !9
  %24636 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24636, ptr %45, align 4, !tbaa !9
  %24637 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24637, ptr %46, align 4, !tbaa !9
  %24638 = load ptr, ptr %5, align 8, !tbaa !5
  %24639 = getelementptr inbounds %struct.w2c_hermes, ptr %24638, i32 0, i32 6
  %24640 = load i32, ptr %46, align 4, !tbaa !9
  %24641 = zext i32 %24640 to i64
  %24642 = add i64 %24641, 1
  %24643 = call i32 @i32_load8_u(ptr noundef %24639, i64 noundef %24642)
  store i32 %24643, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %24644 = load i32, ptr %47, align 4, !tbaa !9
  %24645 = and i32 %24644, 31
  %24646 = load i32, ptr %46, align 4, !tbaa !9
  %24647 = shl i32 %24646, %24645
  store i32 %24647, ptr %46, align 4, !tbaa !9
  %24648 = load i32, ptr %46, align 4, !tbaa !9
  %24649 = load i32, ptr %45, align 4, !tbaa !9
  %24650 = add i32 %24649, %24648
  store i32 %24650, ptr %45, align 4, !tbaa !9
  %24651 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24651, ptr %46, align 4, !tbaa !9
  %24652 = load i32, ptr %46, align 4, !tbaa !9
  %24653 = zext i32 %24652 to i64
  store i64 %24653, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %24654 = load i64, ptr %56, align 8, !tbaa !11
  %24655 = load i64, ptr %55, align 8, !tbaa !11
  %24656 = or i64 %24655, %24654
  store i64 %24656, ptr %55, align 8, !tbaa !11
  %24657 = load ptr, ptr %5, align 8, !tbaa !5
  %24658 = getelementptr inbounds %struct.w2c_hermes, ptr %24657, i32 0, i32 6
  %24659 = load i32, ptr %45, align 4, !tbaa !9
  %24660 = zext i32 %24659 to i64
  %24661 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24658, i64 noundef %24660, i64 noundef %24661)
  %24662 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24662, ptr %45, align 4, !tbaa !9
  %24663 = load ptr, ptr %5, align 8, !tbaa !5
  %24664 = getelementptr inbounds %struct.w2c_hermes, ptr %24663, i32 0, i32 6
  %24665 = load i32, ptr %45, align 4, !tbaa !9
  %24666 = zext i32 %24665 to i64
  %24667 = add i64 %24666, 5808
  %24668 = call i32 @i32_load(ptr noundef %24664, i64 noundef %24667)
  store i32 %24668, ptr %45, align 4, !tbaa !9
  %24669 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24669, ptr %6, align 4, !tbaa !9
  %24670 = load ptr, ptr %5, align 8, !tbaa !5
  %24671 = getelementptr inbounds %struct.w2c_hermes, ptr %24670, i32 0, i32 6
  %24672 = load i32, ptr %45, align 4, !tbaa !9
  %24673 = zext i32 %24672 to i64
  %24674 = add i64 %24673, 1
  %24675 = call i32 @i32_load8_u(ptr noundef %24671, i64 noundef %24674)
  store i32 %24675, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %24676 = load i32, ptr %46, align 4, !tbaa !9
  %24677 = and i32 %24676, 31
  %24678 = load i32, ptr %45, align 4, !tbaa !9
  %24679 = shl i32 %24678, %24677
  store i32 %24679, ptr %45, align 4, !tbaa !9
  %24680 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24680, ptr %7, align 4, !tbaa !9
  %24681 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %24681, ptr %45, align 4, !tbaa !9
  %24682 = load ptr, ptr %5, align 8, !tbaa !5
  %24683 = getelementptr inbounds %struct.w2c_hermes, ptr %24682, i32 0, i32 6
  %24684 = load i32, ptr %45, align 4, !tbaa !9
  %24685 = zext i32 %24684 to i64
  %24686 = call i32 @i32_load(ptr noundef %24683, i64 noundef %24685)
  store i32 %24686, ptr %45, align 4, !tbaa !9
  %24687 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24687, ptr %46, align 4, !tbaa !9
  %24688 = load ptr, ptr %5, align 8, !tbaa !5
  %24689 = getelementptr inbounds %struct.w2c_hermes, ptr %24688, i32 0, i32 6
  %24690 = load i32, ptr %46, align 4, !tbaa !9
  %24691 = zext i32 %24690 to i64
  %24692 = add i64 %24691, 2
  %24693 = call i32 @i32_load(ptr noundef %24689, i64 noundef %24692)
  store i32 %24693, ptr %46, align 4, !tbaa !9
  %24694 = load ptr, ptr %5, align 8, !tbaa !5
  %24695 = load i32, ptr %45, align 4, !tbaa !9
  %24696 = load i32, ptr %46, align 4, !tbaa !9
  %24697 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %24694, i32 noundef %24695, i32 noundef %24696)
  store i32 %24697, ptr %45, align 4, !tbaa !9
  %24698 = load i32, ptr %45, align 4, !tbaa !9
  %24699 = zext i32 %24698 to i64
  store i64 %24699, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %24700 = load i64, ptr %55, align 8, !tbaa !11
  %24701 = load i64, ptr %54, align 8, !tbaa !11
  %24702 = or i64 %24701, %24700
  store i64 %24702, ptr %54, align 8, !tbaa !11
  %24703 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %24703, ptr %39, align 8, !tbaa !11
  %24704 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24704, ptr %45, align 4, !tbaa !9
  %24705 = load ptr, ptr %5, align 8, !tbaa !5
  %24706 = getelementptr inbounds %struct.w2c_hermes, ptr %24705, i32 0, i32 6
  %24707 = load i32, ptr %45, align 4, !tbaa !9
  %24708 = zext i32 %24707 to i64
  %24709 = add i64 %24708, 4
  %24710 = call i32 @i32_load(ptr noundef %24706, i64 noundef %24709)
  store i32 %24710, ptr %45, align 4, !tbaa !9
  %24711 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24711, ptr %8, align 4, !tbaa !9
  %24712 = load ptr, ptr %5, align 8, !tbaa !5
  %24713 = getelementptr inbounds %struct.w2c_hermes, ptr %24712, i32 0, i32 6
  %24714 = load i32, ptr %45, align 4, !tbaa !9
  %24715 = zext i32 %24714 to i64
  %24716 = add i64 %24715, 164
  %24717 = call i32 @i32_load(ptr noundef %24713, i64 noundef %24716)
  store i32 %24717, ptr %45, align 4, !tbaa !9
  %24718 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24718, ptr %6, align 4, !tbaa !9
  %24719 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24719, ptr %46, align 4, !tbaa !9
  %24720 = load ptr, ptr %5, align 8, !tbaa !5
  %24721 = getelementptr inbounds %struct.w2c_hermes, ptr %24720, i32 0, i32 6
  %24722 = load i32, ptr %46, align 4, !tbaa !9
  %24723 = zext i32 %24722 to i64
  %24724 = add i64 %24723, 168
  %24725 = call i32 @i32_load(ptr noundef %24721, i64 noundef %24724)
  store i32 %24725, ptr %46, align 4, !tbaa !9
  %24726 = load i32, ptr %45, align 4, !tbaa !9
  %24727 = load i32, ptr %46, align 4, !tbaa !9
  %24728 = icmp ult i32 %24726, %24727
  %24729 = zext i1 %24728 to i32
  store i32 %24729, ptr %45, align 4, !tbaa !9
  %24730 = load i32, ptr %45, align 4, !tbaa !9
  %24731 = icmp ne i32 %24730, 0
  br i1 %24731, label %24732, label %24751

24732:                                            ; preds = %24620
  %24733 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24733, ptr %45, align 4, !tbaa !9
  %24734 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24734, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %24735 = load i32, ptr %47, align 4, !tbaa !9
  %24736 = load i32, ptr %46, align 4, !tbaa !9
  %24737 = add i32 %24736, %24735
  store i32 %24737, ptr %46, align 4, !tbaa !9
  %24738 = load ptr, ptr %5, align 8, !tbaa !5
  %24739 = getelementptr inbounds %struct.w2c_hermes, ptr %24738, i32 0, i32 6
  %24740 = load i32, ptr %45, align 4, !tbaa !9
  %24741 = zext i32 %24740 to i64
  %24742 = add i64 %24741, 164
  %24743 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24739, i64 noundef %24742, i32 noundef %24743)
  %24744 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24744, ptr %45, align 4, !tbaa !9
  %24745 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %24745, ptr %55, align 8, !tbaa !11
  %24746 = load ptr, ptr %5, align 8, !tbaa !5
  %24747 = getelementptr inbounds %struct.w2c_hermes, ptr %24746, i32 0, i32 6
  %24748 = load i32, ptr %45, align 4, !tbaa !9
  %24749 = zext i32 %24748 to i64
  %24750 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24747, i64 noundef %24749, i64 noundef %24750)
  br label %24759

24751:                                            ; preds = %24620
  %24752 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24752, ptr %45, align 4, !tbaa !9
  %24753 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %24753, ptr %55, align 8, !tbaa !11
  %24754 = load ptr, ptr %5, align 8, !tbaa !5
  %24755 = load i32, ptr %45, align 4, !tbaa !9
  %24756 = load i64, ptr %55, align 8, !tbaa !11
  %24757 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %24754, i32 noundef %24755, i64 noundef %24756)
  store i32 %24757, ptr %45, align 4, !tbaa !9
  %24758 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24758, ptr %6, align 4, !tbaa !9
  br label %24759

24759:                                            ; preds = %24751, %24732
  %24760 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24760, ptr %45, align 4, !tbaa !9
  %24761 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %24761, ptr %46, align 4, !tbaa !9
  %24762 = load i32, ptr %46, align 4, !tbaa !9
  %24763 = load i32, ptr %45, align 4, !tbaa !9
  %24764 = add i32 %24763, %24762
  store i32 %24764, ptr %45, align 4, !tbaa !9
  %24765 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24765, ptr %13, align 4, !tbaa !9
  %24766 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %24766, ptr %45, align 4, !tbaa !9
  %24767 = load ptr, ptr %5, align 8, !tbaa !5
  %24768 = getelementptr inbounds %struct.w2c_hermes, ptr %24767, i32 0, i32 6
  %24769 = load i32, ptr %45, align 4, !tbaa !9
  %24770 = zext i32 %24769 to i64
  %24771 = call i32 @i32_load(ptr noundef %24768, i64 noundef %24770)
  store i32 %24771, ptr %45, align 4, !tbaa !9
  %24772 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24772, ptr %46, align 4, !tbaa !9
  %24773 = load ptr, ptr %5, align 8, !tbaa !5
  %24774 = getelementptr inbounds %struct.w2c_hermes, ptr %24773, i32 0, i32 6
  %24775 = load i32, ptr %46, align 4, !tbaa !9
  %24776 = zext i32 %24775 to i64
  %24777 = add i64 %24776, 5808
  %24778 = call i32 @i32_load(ptr noundef %24774, i64 noundef %24777)
  store i32 %24778, ptr %46, align 4, !tbaa !9
  %24779 = load ptr, ptr %5, align 8, !tbaa !5
  %24780 = getelementptr inbounds %struct.w2c_hermes, ptr %24779, i32 0, i32 6
  %24781 = load i32, ptr %46, align 4, !tbaa !9
  %24782 = zext i32 %24781 to i64
  %24783 = add i64 %24782, 6
  %24784 = call i32 @i32_load(ptr noundef %24780, i64 noundef %24783)
  store i32 %24784, ptr %46, align 4, !tbaa !9
  %24785 = load ptr, ptr %5, align 8, !tbaa !5
  %24786 = load i32, ptr %45, align 4, !tbaa !9
  %24787 = load i32, ptr %46, align 4, !tbaa !9
  %24788 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %24785, i32 noundef %24786, i32 noundef %24787)
  store i32 %24788, ptr %45, align 4, !tbaa !9
  %24789 = load i32, ptr %45, align 4, !tbaa !9
  %24790 = zext i32 %24789 to i64
  store i64 %24790, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %24791 = load i64, ptr %55, align 8, !tbaa !11
  %24792 = load i64, ptr %54, align 8, !tbaa !11
  %24793 = or i64 %24792, %24791
  store i64 %24793, ptr %54, align 8, !tbaa !11
  %24794 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %24794, ptr %39, align 8, !tbaa !11
  %24795 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24795, ptr %45, align 4, !tbaa !9
  %24796 = load ptr, ptr %5, align 8, !tbaa !5
  %24797 = getelementptr inbounds %struct.w2c_hermes, ptr %24796, i32 0, i32 6
  %24798 = load i32, ptr %45, align 4, !tbaa !9
  %24799 = zext i32 %24798 to i64
  %24800 = add i64 %24799, 4
  %24801 = call i32 @i32_load(ptr noundef %24797, i64 noundef %24800)
  store i32 %24801, ptr %45, align 4, !tbaa !9
  %24802 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24802, ptr %8, align 4, !tbaa !9
  %24803 = load ptr, ptr %5, align 8, !tbaa !5
  %24804 = getelementptr inbounds %struct.w2c_hermes, ptr %24803, i32 0, i32 6
  %24805 = load i32, ptr %45, align 4, !tbaa !9
  %24806 = zext i32 %24805 to i64
  %24807 = add i64 %24806, 164
  %24808 = call i32 @i32_load(ptr noundef %24804, i64 noundef %24807)
  store i32 %24808, ptr %45, align 4, !tbaa !9
  %24809 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24809, ptr %7, align 4, !tbaa !9
  %24810 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24810, ptr %46, align 4, !tbaa !9
  %24811 = load ptr, ptr %5, align 8, !tbaa !5
  %24812 = getelementptr inbounds %struct.w2c_hermes, ptr %24811, i32 0, i32 6
  %24813 = load i32, ptr %46, align 4, !tbaa !9
  %24814 = zext i32 %24813 to i64
  %24815 = add i64 %24814, 168
  %24816 = call i32 @i32_load(ptr noundef %24812, i64 noundef %24815)
  store i32 %24816, ptr %46, align 4, !tbaa !9
  %24817 = load i32, ptr %45, align 4, !tbaa !9
  %24818 = load i32, ptr %46, align 4, !tbaa !9
  %24819 = icmp ult i32 %24817, %24818
  %24820 = zext i1 %24819 to i32
  store i32 %24820, ptr %45, align 4, !tbaa !9
  %24821 = load i32, ptr %45, align 4, !tbaa !9
  %24822 = icmp ne i32 %24821, 0
  br i1 %24822, label %24823, label %24842

24823:                                            ; preds = %24759
  %24824 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24824, ptr %45, align 4, !tbaa !9
  %24825 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24825, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %24826 = load i32, ptr %47, align 4, !tbaa !9
  %24827 = load i32, ptr %46, align 4, !tbaa !9
  %24828 = add i32 %24827, %24826
  store i32 %24828, ptr %46, align 4, !tbaa !9
  %24829 = load ptr, ptr %5, align 8, !tbaa !5
  %24830 = getelementptr inbounds %struct.w2c_hermes, ptr %24829, i32 0, i32 6
  %24831 = load i32, ptr %45, align 4, !tbaa !9
  %24832 = zext i32 %24831 to i64
  %24833 = add i64 %24832, 164
  %24834 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24830, i64 noundef %24833, i32 noundef %24834)
  %24835 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24835, ptr %45, align 4, !tbaa !9
  %24836 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %24836, ptr %55, align 8, !tbaa !11
  %24837 = load ptr, ptr %5, align 8, !tbaa !5
  %24838 = getelementptr inbounds %struct.w2c_hermes, ptr %24837, i32 0, i32 6
  %24839 = load i32, ptr %45, align 4, !tbaa !9
  %24840 = zext i32 %24839 to i64
  %24841 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24838, i64 noundef %24840, i64 noundef %24841)
  br label %24849

24842:                                            ; preds = %24759
  %24843 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24843, ptr %45, align 4, !tbaa !9
  %24844 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %24844, ptr %55, align 8, !tbaa !11
  %24845 = load ptr, ptr %5, align 8, !tbaa !5
  %24846 = load i32, ptr %45, align 4, !tbaa !9
  %24847 = load i64, ptr %55, align 8, !tbaa !11
  %24848 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %24845, i32 noundef %24846, i64 noundef %24847)
  store i32 %24848, ptr %45, align 4, !tbaa !9
  br label %24849

24849:                                            ; preds = %24842, %24823
  %24850 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %24850, ptr %45, align 4, !tbaa !9
  %24851 = load ptr, ptr %5, align 8, !tbaa !5
  %24852 = getelementptr inbounds %struct.w2c_hermes, ptr %24851, i32 0, i32 6
  %24853 = load i32, ptr %45, align 4, !tbaa !9
  %24854 = zext i32 %24853 to i64
  %24855 = call i32 @i32_load(ptr noundef %24852, i64 noundef %24854)
  store i32 %24855, ptr %45, align 4, !tbaa !9
  %24856 = load ptr, ptr %5, align 8, !tbaa !5
  %24857 = getelementptr inbounds %struct.w2c_hermes, ptr %24856, i32 0, i32 6
  %24858 = load i32, ptr %45, align 4, !tbaa !9
  %24859 = zext i32 %24858 to i64
  %24860 = add i64 %24859, 40
  %24861 = call i32 @i32_load(ptr noundef %24857, i64 noundef %24860)
  store i32 %24861, ptr %45, align 4, !tbaa !9
  %24862 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24862, ptr %7, align 4, !tbaa !9
  %24863 = load ptr, ptr %5, align 8, !tbaa !5
  %24864 = getelementptr inbounds %struct.w2c_hermes, ptr %24863, i32 0, i32 6
  %24865 = load i32, ptr %45, align 4, !tbaa !9
  %24866 = zext i32 %24865 to i64
  %24867 = add i64 %24866, 84
  %24868 = call i32 @i32_load(ptr noundef %24864, i64 noundef %24867)
  store i32 %24868, ptr %45, align 4, !tbaa !9
  %24869 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24869, ptr %46, align 4, !tbaa !9
  %24870 = load ptr, ptr %5, align 8, !tbaa !5
  %24871 = getelementptr inbounds %struct.w2c_hermes, ptr %24870, i32 0, i32 6
  %24872 = load i32, ptr %46, align 4, !tbaa !9
  %24873 = zext i32 %24872 to i64
  %24874 = add i64 %24873, 5808
  %24875 = call i32 @i32_load(ptr noundef %24871, i64 noundef %24874)
  store i32 %24875, ptr %46, align 4, !tbaa !9
  %24876 = load ptr, ptr %5, align 8, !tbaa !5
  %24877 = getelementptr inbounds %struct.w2c_hermes, ptr %24876, i32 0, i32 6
  %24878 = load i32, ptr %46, align 4, !tbaa !9
  %24879 = zext i32 %24878 to i64
  %24880 = add i64 %24879, 10
  %24881 = call i32 @i32_load(ptr noundef %24877, i64 noundef %24880)
  store i32 %24881, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %24882 = load i32, ptr %47, align 4, !tbaa !9
  %24883 = and i32 %24882, 31
  %24884 = load i32, ptr %46, align 4, !tbaa !9
  %24885 = shl i32 %24884, %24883
  store i32 %24885, ptr %46, align 4, !tbaa !9
  %24886 = load i32, ptr %46, align 4, !tbaa !9
  %24887 = load i32, ptr %45, align 4, !tbaa !9
  %24888 = add i32 %24887, %24886
  store i32 %24888, ptr %45, align 4, !tbaa !9
  %24889 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24889, ptr %12, align 4, !tbaa !9
  %24890 = load ptr, ptr %5, align 8, !tbaa !5
  %24891 = getelementptr inbounds %struct.w2c_hermes, ptr %24890, i32 0, i32 6
  %24892 = load i32, ptr %45, align 4, !tbaa !9
  %24893 = zext i32 %24892 to i64
  %24894 = call i32 @i32_load(ptr noundef %24891, i64 noundef %24893)
  store i32 %24894, ptr %45, align 4, !tbaa !9
  %24895 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24895, ptr %8, align 4, !tbaa !9
  %24896 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24896, ptr %45, align 4, !tbaa !9
  %24897 = load ptr, ptr %5, align 8, !tbaa !5
  %24898 = getelementptr inbounds %struct.w2c_hermes, ptr %24897, i32 0, i32 6
  %24899 = load i32, ptr %45, align 4, !tbaa !9
  %24900 = zext i32 %24899 to i64
  %24901 = add i64 %24900, 92
  %24902 = call i32 @i32_load(ptr noundef %24898, i64 noundef %24901)
  store i32 %24902, ptr %45, align 4, !tbaa !9
  %24903 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24903, ptr %7, align 4, !tbaa !9
  %24904 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24904, ptr %45, align 4, !tbaa !9
  %24905 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %24905, ptr %46, align 4, !tbaa !9
  %24906 = load ptr, ptr %5, align 8, !tbaa !5
  %24907 = getelementptr inbounds %struct.w2c_hermes, ptr %24906, i32 0, i32 6
  %24908 = load i32, ptr %46, align 4, !tbaa !9
  %24909 = zext i32 %24908 to i64
  %24910 = add i64 %24909, 4
  %24911 = call i32 @i32_load(ptr noundef %24907, i64 noundef %24910)
  store i32 %24911, ptr %46, align 4, !tbaa !9
  %24912 = load ptr, ptr %5, align 8, !tbaa !5
  %24913 = getelementptr inbounds %struct.w2c_hermes, ptr %24912, i32 0, i32 6
  %24914 = load i32, ptr %45, align 4, !tbaa !9
  %24915 = zext i32 %24914 to i64
  %24916 = add i64 %24915, 156
  %24917 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24913, i64 noundef %24916, i32 noundef %24917)
  %24918 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24918, ptr %45, align 4, !tbaa !9
  %24919 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %24919, ptr %46, align 4, !tbaa !9
  %24920 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %24920, ptr %47, align 4, !tbaa !9
  %24921 = load i32, ptr %47, align 4, !tbaa !9
  %24922 = load i32, ptr %46, align 4, !tbaa !9
  %24923 = add i32 %24922, %24921
  store i32 %24923, ptr %46, align 4, !tbaa !9
  %24924 = load ptr, ptr %5, align 8, !tbaa !5
  %24925 = getelementptr inbounds %struct.w2c_hermes, ptr %24924, i32 0, i32 6
  %24926 = load i32, ptr %45, align 4, !tbaa !9
  %24927 = zext i32 %24926 to i64
  %24928 = add i64 %24927, 152
  %24929 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %24925, i64 noundef %24928, i32 noundef %24929)
  %24930 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24930, ptr %45, align 4, !tbaa !9
  %24931 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24931, ptr %46, align 4, !tbaa !9
  %24932 = load ptr, ptr %5, align 8, !tbaa !5
  %24933 = getelementptr inbounds %struct.w2c_hermes, ptr %24932, i32 0, i32 6
  %24934 = load i32, ptr %46, align 4, !tbaa !9
  %24935 = zext i32 %24934 to i64
  %24936 = add i64 %24935, 152
  %24937 = call i64 @i64_load(ptr noundef %24933, i64 noundef %24936)
  store i64 %24937, ptr %55, align 8, !tbaa !11
  %24938 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %24938, ptr %39, align 8, !tbaa !11
  %24939 = load ptr, ptr %5, align 8, !tbaa !5
  %24940 = getelementptr inbounds %struct.w2c_hermes, ptr %24939, i32 0, i32 6
  %24941 = load i32, ptr %45, align 4, !tbaa !9
  %24942 = zext i32 %24941 to i64
  %24943 = add i64 %24942, 144
  %24944 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24940, i64 noundef %24943, i64 noundef %24944)
  %24945 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %24945, ptr %45, align 4, !tbaa !9
  %24946 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %24946, ptr %55, align 8, !tbaa !11
  %24947 = load ptr, ptr %5, align 8, !tbaa !5
  %24948 = getelementptr inbounds %struct.w2c_hermes, ptr %24947, i32 0, i32 6
  %24949 = load i32, ptr %45, align 4, !tbaa !9
  %24950 = zext i32 %24949 to i64
  %24951 = add i64 %24950, 88
  %24952 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %24948, i64 noundef %24951, i64 noundef %24952)
  %24953 = load ptr, ptr %5, align 8, !tbaa !5
  %24954 = getelementptr inbounds %struct.w2c_hermes, ptr %24953, i32 0, i32 3
  %24955 = load i32, ptr %24954, align 8, !tbaa !15
  store i32 %24955, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %24956 = load i32, ptr %46, align 4, !tbaa !9
  %24957 = load i32, ptr %45, align 4, !tbaa !9
  %24958 = sub i32 %24957, %24956
  store i32 %24958, ptr %45, align 4, !tbaa !9
  %24959 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24959, ptr %14, align 4, !tbaa !9
  %24960 = load i32, ptr %45, align 4, !tbaa !9
  %24961 = load ptr, ptr %5, align 8, !tbaa !5
  %24962 = getelementptr inbounds %struct.w2c_hermes, ptr %24961, i32 0, i32 3
  store i32 %24960, ptr %24962, align 8, !tbaa !15
  %24963 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %24963, ptr %45, align 4, !tbaa !9
  %24964 = load ptr, ptr %5, align 8, !tbaa !5
  %24965 = getelementptr inbounds %struct.w2c_hermes, ptr %24964, i32 0, i32 6
  %24966 = load i32, ptr %45, align 4, !tbaa !9
  %24967 = zext i32 %24966 to i64
  %24968 = call i32 @i32_load(ptr noundef %24965, i64 noundef %24967)
  store i32 %24968, ptr %45, align 4, !tbaa !9
  %24969 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %24969, ptr %7, align 4, !tbaa !9
  %24970 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24970, ptr %45, align 4, !tbaa !9
  store i32 1356, ptr %46, align 4, !tbaa !9
  %24971 = load i32, ptr %46, align 4, !tbaa !9
  %24972 = load i32, ptr %45, align 4, !tbaa !9
  %24973 = add i32 %24972, %24971
  store i32 %24973, ptr %45, align 4, !tbaa !9
  %24974 = load ptr, ptr %5, align 8, !tbaa !5
  %24975 = getelementptr inbounds %struct.w2c_hermes, ptr %24974, i32 0, i32 6
  %24976 = load i32, ptr %45, align 4, !tbaa !9
  %24977 = zext i32 %24976 to i64
  %24978 = call i32 @i32_load(ptr noundef %24975, i64 noundef %24977)
  store i32 %24978, ptr %45, align 4, !tbaa !9
  %24979 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %24979, ptr %46, align 4, !tbaa !9
  %24980 = load ptr, ptr %5, align 8, !tbaa !5
  %24981 = getelementptr inbounds %struct.w2c_hermes, ptr %24980, i32 0, i32 6
  %24982 = load i32, ptr %46, align 4, !tbaa !9
  %24983 = zext i32 %24982 to i64
  %24984 = call i32 @i32_load(ptr noundef %24981, i64 noundef %24983)
  store i32 %24984, ptr %46, align 4, !tbaa !9
  store i32 20, ptr %47, align 4, !tbaa !9
  %24985 = load i32, ptr %47, align 4, !tbaa !9
  %24986 = load i32, ptr %46, align 4, !tbaa !9
  %24987 = add i32 %24986, %24985
  store i32 %24987, ptr %46, align 4, !tbaa !9
  %24988 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %24988, ptr %6, align 4, !tbaa !9
  store i32 -4194304, ptr %47, align 4, !tbaa !9
  %24989 = load i32, ptr %47, align 4, !tbaa !9
  %24990 = load i32, ptr %46, align 4, !tbaa !9
  %24991 = and i32 %24990, %24989
  store i32 %24991, ptr %46, align 4, !tbaa !9
  %24992 = load i32, ptr %45, align 4, !tbaa !9
  %24993 = load i32, ptr %46, align 4, !tbaa !9
  %24994 = icmp ne i32 %24992, %24993
  %24995 = zext i1 %24994 to i32
  store i32 %24995, ptr %45, align 4, !tbaa !9
  %24996 = load i32, ptr %45, align 4, !tbaa !9
  %24997 = icmp ne i32 %24996, 0
  br i1 %24997, label %24998, label %25009

24998:                                            ; preds = %24849
  %24999 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %24999, ptr %45, align 4, !tbaa !9
  store i32 808, ptr %46, align 4, !tbaa !9
  %25000 = load i32, ptr %46, align 4, !tbaa !9
  %25001 = load i32, ptr %45, align 4, !tbaa !9
  %25002 = add i32 %25001, %25000
  store i32 %25002, ptr %45, align 4, !tbaa !9
  %25003 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25003, ptr %46, align 4, !tbaa !9
  %25004 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25004, ptr %47, align 4, !tbaa !9
  %25005 = load ptr, ptr %5, align 8, !tbaa !5
  %25006 = load i32, ptr %45, align 4, !tbaa !9
  %25007 = load i32, ptr %46, align 4, !tbaa !9
  %25008 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCPointerBase0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AGCCell0x20const0x2A0x29(ptr noundef %25005, i32 noundef %25006, i32 noundef %25007, i32 noundef %25008)
  br label %25009

25009:                                            ; preds = %24998, %24849
  %25010 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25010, ptr %45, align 4, !tbaa !9
  %25011 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25011, ptr %46, align 4, !tbaa !9
  %25012 = load ptr, ptr %5, align 8, !tbaa !5
  %25013 = getelementptr inbounds %struct.w2c_hermes, ptr %25012, i32 0, i32 6
  %25014 = load i32, ptr %45, align 4, !tbaa !9
  %25015 = zext i32 %25014 to i64
  %25016 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25013, i64 noundef %25015, i32 noundef %25016)
  %25017 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25017, ptr %45, align 4, !tbaa !9
  store i32 314, ptr %46, align 4, !tbaa !9
  %25018 = load ptr, ptr %5, align 8, !tbaa !5
  %25019 = getelementptr inbounds %struct.w2c_hermes, ptr %25018, i32 0, i32 6
  %25020 = load i32, ptr %45, align 4, !tbaa !9
  %25021 = zext i32 %25020 to i64
  %25022 = add i64 %25021, 16
  %25023 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25019, i64 noundef %25022, i32 noundef %25023)
  %25024 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25024, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %25025 = load ptr, ptr %5, align 8, !tbaa !5
  %25026 = getelementptr inbounds %struct.w2c_hermes, ptr %25025, i32 0, i32 6
  %25027 = load i32, ptr %45, align 4, !tbaa !9
  %25028 = zext i32 %25027 to i64
  %25029 = add i64 %25028, 12
  %25030 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25026, i64 noundef %25029, i32 noundef %25030)
  %25031 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25031, ptr %45, align 4, !tbaa !9
  store i32 314, ptr %46, align 4, !tbaa !9
  %25032 = load ptr, ptr %5, align 8, !tbaa !5
  %25033 = getelementptr inbounds %struct.w2c_hermes, ptr %25032, i32 0, i32 6
  %25034 = load i32, ptr %45, align 4, !tbaa !9
  %25035 = zext i32 %25034 to i64
  %25036 = add i64 %25035, 28
  %25037 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25033, i64 noundef %25036, i32 noundef %25037)
  %25038 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25038, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %25039 = load ptr, ptr %5, align 8, !tbaa !5
  %25040 = getelementptr inbounds %struct.w2c_hermes, ptr %25039, i32 0, i32 6
  %25041 = load i32, ptr %45, align 4, !tbaa !9
  %25042 = zext i32 %25041 to i64
  %25043 = add i64 %25042, 24
  %25044 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25040, i64 noundef %25043, i32 noundef %25044)
  %25045 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25045, ptr %45, align 4, !tbaa !9
  store i32 20, ptr %46, align 4, !tbaa !9
  %25046 = load i32, ptr %46, align 4, !tbaa !9
  %25047 = load i32, ptr %45, align 4, !tbaa !9
  %25048 = add i32 %25047, %25046
  store i32 %25048, ptr %45, align 4, !tbaa !9
  %25049 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %25049, ptr %46, align 4, !tbaa !9
  %25050 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25050, ptr %47, align 4, !tbaa !9
  store i32 342, ptr %48, align 4, !tbaa !9
  %25051 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25051, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %25052 = load i32, ptr %50, align 4, !tbaa !9
  %25053 = load i32, ptr %49, align 4, !tbaa !9
  %25054 = add i32 %25053, %25052
  store i32 %25054, ptr %49, align 4, !tbaa !9
  store i32 67248, ptr %50, align 4, !tbaa !9
  %25055 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25055, ptr %51, align 4, !tbaa !9
  store i32 12, ptr %52, align 4, !tbaa !9
  %25056 = load i32, ptr %52, align 4, !tbaa !9
  %25057 = load i32, ptr %51, align 4, !tbaa !9
  %25058 = add i32 %25057, %25056
  store i32 %25058, ptr %51, align 4, !tbaa !9
  %25059 = load ptr, ptr %5, align 8, !tbaa !5
  %25060 = load i32, ptr %45, align 4, !tbaa !9
  %25061 = load i32, ptr %46, align 4, !tbaa !9
  %25062 = load i32, ptr %47, align 4, !tbaa !9
  %25063 = load i32, ptr %48, align 4, !tbaa !9
  %25064 = load i32, ptr %49, align 4, !tbaa !9
  %25065 = load i32, ptr %50, align 4, !tbaa !9
  %25066 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnPropertyInternal0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %25059, i32 noundef %25060, i32 noundef %25061, i32 noundef %25062, i32 noundef %25063, i32 noundef %25064, i32 noundef %25065, i32 noundef %25066)
  %25067 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25067, ptr %45, align 4, !tbaa !9
  %25068 = load ptr, ptr %5, align 8, !tbaa !5
  %25069 = getelementptr inbounds %struct.w2c_hermes, ptr %25068, i32 0, i32 6
  %25070 = load i32, ptr %45, align 4, !tbaa !9
  %25071 = zext i32 %25070 to i64
  %25072 = add i64 %25071, 88
  %25073 = call i64 @i64_load(ptr noundef %25069, i64 noundef %25072)
  store i64 %25073, ptr %54, align 8, !tbaa !11
  %25074 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %25074, ptr %39, align 8, !tbaa !11
  %25075 = load i64, ptr %54, align 8, !tbaa !11
  %25076 = trunc i64 %25075 to i32
  store i32 %25076, ptr %45, align 4, !tbaa !9
  %25077 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25077, ptr %7, align 4, !tbaa !9
  %25078 = load ptr, ptr %5, align 8, !tbaa !5
  %25079 = getelementptr inbounds %struct.w2c_hermes, ptr %25078, i32 0, i32 6
  %25080 = load i32, ptr %45, align 4, !tbaa !9
  %25081 = zext i32 %25080 to i64
  %25082 = add i64 %25081, 4
  %25083 = call i32 @i32_load8_u(ptr noundef %25079, i64 noundef %25082)
  store i32 %25083, ptr %45, align 4, !tbaa !9
  %25084 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25084, ptr %6, align 4, !tbaa !9
  %25085 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %25085, ptr %45, align 4, !tbaa !9
  %25086 = load ptr, ptr %5, align 8, !tbaa !5
  %25087 = getelementptr inbounds %struct.w2c_hermes, ptr %25086, i32 0, i32 6
  %25088 = load i32, ptr %45, align 4, !tbaa !9
  %25089 = zext i32 %25088 to i64
  %25090 = call i32 @i32_load(ptr noundef %25087, i64 noundef %25089)
  store i32 %25090, ptr %45, align 4, !tbaa !9
  %25091 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25091, ptr %12, align 4, !tbaa !9
  %25092 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %25092, ptr %55, align 8, !tbaa !11
  store i64 32, ptr %56, align 8, !tbaa !11
  %25093 = load i64, ptr %56, align 8, !tbaa !11
  %25094 = and i64 %25093, 63
  %25095 = load i64, ptr %55, align 8, !tbaa !11
  %25096 = lshr i64 %25095, %25094
  store i64 %25096, ptr %55, align 8, !tbaa !11
  %25097 = load i64, ptr %55, align 8, !tbaa !11
  %25098 = trunc i64 %25097 to i32
  store i32 %25098, ptr %46, align 4, !tbaa !9
  %25099 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %25099, ptr %8, align 4, !tbaa !9
  %25100 = load ptr, ptr %5, align 8, !tbaa !5
  %25101 = getelementptr inbounds %struct.w2c_hermes, ptr %25100, i32 0, i32 6
  %25102 = load i32, ptr %45, align 4, !tbaa !9
  %25103 = zext i32 %25102 to i64
  %25104 = add i64 %25103, 28
  %25105 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25101, i64 noundef %25104, i32 noundef %25105)
  %25106 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %25106, ptr %45, align 4, !tbaa !9
  %25107 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25107, ptr %46, align 4, !tbaa !9
  store i32 127, ptr %47, align 4, !tbaa !9
  %25108 = load i32, ptr %47, align 4, !tbaa !9
  %25109 = load i32, ptr %46, align 4, !tbaa !9
  %25110 = and i32 %25109, %25108
  store i32 %25110, ptr %46, align 4, !tbaa !9
  %25111 = load ptr, ptr %5, align 8, !tbaa !5
  %25112 = getelementptr inbounds %struct.w2c_hermes, ptr %25111, i32 0, i32 6
  %25113 = load i32, ptr %45, align 4, !tbaa !9
  %25114 = zext i32 %25113 to i64
  %25115 = add i64 %25114, 32
  %25116 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %25112, i64 noundef %25115, i32 noundef %25116)
  %25117 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %25117, ptr %45, align 4, !tbaa !9
  %25118 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %25118, ptr %46, align 4, !tbaa !9
  %25119 = load ptr, ptr %5, align 8, !tbaa !5
  %25120 = load i32, ptr %46, align 4, !tbaa !9
  %25121 = call i32 @w2c_hermes_hermes0x3A0x3AcheckedMalloc0x28unsigned0x20long0x29(ptr noundef %25119, i32 noundef %25120)
  store i32 %25121, ptr %46, align 4, !tbaa !9
  %25122 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %25122, ptr %6, align 4, !tbaa !9
  %25123 = load ptr, ptr %5, align 8, !tbaa !5
  %25124 = getelementptr inbounds %struct.w2c_hermes, ptr %25123, i32 0, i32 6
  %25125 = load i32, ptr %45, align 4, !tbaa !9
  %25126 = zext i32 %25125 to i64
  %25127 = add i64 %25126, 24
  %25128 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25124, i64 noundef %25127, i32 noundef %25128)
  %25129 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25129, ptr %45, align 4, !tbaa !9
  %25130 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25130, ptr %46, align 4, !tbaa !9
  %25131 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %25131, ptr %47, align 4, !tbaa !9
  %25132 = load ptr, ptr %5, align 8, !tbaa !5
  %25133 = load i32, ptr %45, align 4, !tbaa !9
  %25134 = load i32, ptr %46, align 4, !tbaa !9
  %25135 = load i32, ptr %47, align 4, !tbaa !9
  %25136 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %25132, i32 noundef %25133, i32 noundef %25134, i32 noundef %25135)
  store i32 %25136, ptr %45, align 4, !tbaa !9
  %25137 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %25137, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %25138 = load i32, ptr %46, align 4, !tbaa !9
  %25139 = load i32, ptr %45, align 4, !tbaa !9
  %25140 = add i32 %25139, %25138
  store i32 %25140, ptr %45, align 4, !tbaa !9
  %25141 = load i32, ptr %45, align 4, !tbaa !9
  %25142 = load ptr, ptr %5, align 8, !tbaa !5
  %25143 = getelementptr inbounds %struct.w2c_hermes, ptr %25142, i32 0, i32 3
  store i32 %25141, ptr %25143, align 8, !tbaa !15
  %25144 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25144, ptr %45, align 4, !tbaa !9
  %25145 = load ptr, ptr %5, align 8, !tbaa !5
  %25146 = getelementptr inbounds %struct.w2c_hermes, ptr %25145, i32 0, i32 6
  %25147 = load i32, ptr %45, align 4, !tbaa !9
  %25148 = zext i32 %25147 to i64
  %25149 = add i64 %25148, 5808
  %25150 = call i32 @i32_load(ptr noundef %25146, i64 noundef %25149)
  store i32 %25150, ptr %45, align 4, !tbaa !9
  %25151 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25151, ptr %6, align 4, !tbaa !9
  %25152 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25152, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %25153 = load ptr, ptr %5, align 8, !tbaa !5
  %25154 = getelementptr inbounds %struct.w2c_hermes, ptr %25153, i32 0, i32 6
  %25155 = load i32, ptr %45, align 4, !tbaa !9
  %25156 = zext i32 %25155 to i64
  %25157 = add i64 %25156, 516
  %25158 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25154, i64 noundef %25157, i32 noundef %25158)
  %25159 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25159, ptr %45, align 4, !tbaa !9
  %25160 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %25160, ptr %46, align 4, !tbaa !9
  %25161 = load ptr, ptr %5, align 8, !tbaa !5
  %25162 = getelementptr inbounds %struct.w2c_hermes, ptr %25161, i32 0, i32 6
  %25163 = load i32, ptr %45, align 4, !tbaa !9
  %25164 = zext i32 %25163 to i64
  %25165 = add i64 %25164, 512
  %25166 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25162, i64 noundef %25165, i32 noundef %25166)
  %25167 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25167, ptr %45, align 4, !tbaa !9
  %25168 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %25168, ptr %46, align 4, !tbaa !9
  %25169 = load ptr, ptr %5, align 8, !tbaa !5
  %25170 = getelementptr inbounds %struct.w2c_hermes, ptr %25169, i32 0, i32 6
  %25171 = load i32, ptr %45, align 4, !tbaa !9
  %25172 = zext i32 %25171 to i64
  %25173 = add i64 %25172, 508
  %25174 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25170, i64 noundef %25173, i32 noundef %25174)
  %25175 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25175, ptr %45, align 4, !tbaa !9
  store i32 14, ptr %46, align 4, !tbaa !9
  %25176 = load i32, ptr %46, align 4, !tbaa !9
  %25177 = load i32, ptr %45, align 4, !tbaa !9
  %25178 = add i32 %25177, %25176
  store i32 %25178, ptr %45, align 4, !tbaa !9
  %25179 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25179, ptr %6, align 4, !tbaa !9
  br label %2945

25180:                                            ; preds = %3080
  %25181 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25181, ptr %45, align 4, !tbaa !9
  %25182 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25182, ptr %46, align 4, !tbaa !9
  %25183 = load ptr, ptr %5, align 8, !tbaa !5
  %25184 = getelementptr inbounds %struct.w2c_hermes, ptr %25183, i32 0, i32 6
  %25185 = load i32, ptr %46, align 4, !tbaa !9
  %25186 = zext i32 %25185 to i64
  %25187 = add i64 %25186, 1
  %25188 = call i32 @i32_load8_u(ptr noundef %25184, i64 noundef %25187)
  store i32 %25188, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25189 = load i32, ptr %47, align 4, !tbaa !9
  %25190 = and i32 %25189, 31
  %25191 = load i32, ptr %46, align 4, !tbaa !9
  %25192 = shl i32 %25191, %25190
  store i32 %25192, ptr %46, align 4, !tbaa !9
  %25193 = load i32, ptr %46, align 4, !tbaa !9
  %25194 = load i32, ptr %45, align 4, !tbaa !9
  %25195 = add i32 %25194, %25193
  store i32 %25195, ptr %45, align 4, !tbaa !9
  %25196 = load ptr, ptr %5, align 8, !tbaa !5
  %25197 = getelementptr inbounds %struct.w2c_hermes, ptr %25196, i32 0, i32 6
  %25198 = load i32, ptr %45, align 4, !tbaa !9
  %25199 = zext i32 %25198 to i64
  %25200 = call i64 @i64_load(ptr noundef %25197, i64 noundef %25199)
  store i64 %25200, ptr %54, align 8, !tbaa !11
  %25201 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %25201, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %25202 = load i64, ptr %54, align 8, !tbaa !11
  %25203 = load i64, ptr %55, align 8, !tbaa !11
  %25204 = icmp ugt i64 %25202, %25203
  %25205 = zext i1 %25204 to i32
  store i32 %25205, ptr %45, align 4, !tbaa !9
  %25206 = load i32, ptr %45, align 4, !tbaa !9
  %25207 = icmp ne i32 %25206, 0
  br i1 %25207, label %25208, label %25209

25208:                                            ; preds = %25180
  br label %25355

25209:                                            ; preds = %25180
  %25210 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %25210, ptr %54, align 8, !tbaa !11
  %25211 = load i64, ptr %54, align 8, !tbaa !11
  %25212 = call double @f64_reinterpret_i64(i64 noundef %25211)
  store double %25212, ptr %60, align 8, !tbaa !13
  %25213 = load double, ptr %60, align 8, !tbaa !13
  store double %25213, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %25214 = load double, ptr %60, align 8, !tbaa !13
  %25215 = load double, ptr %61, align 8, !tbaa !13
  %25216 = fcmp olt double %25214, %25215
  %25217 = zext i1 %25216 to i32
  store i32 %25217, ptr %45, align 4, !tbaa !9
  %25218 = load double, ptr %43, align 8, !tbaa !13
  store double %25218, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %25219 = load double, ptr %61, align 8, !tbaa !13
  %25220 = load double, ptr %62, align 8, !tbaa !13
  %25221 = fcmp oge double %25219, %25220
  %25222 = zext i1 %25221 to i32
  store i32 %25222, ptr %46, align 4, !tbaa !9
  %25223 = load i32, ptr %46, align 4, !tbaa !9
  %25224 = load i32, ptr %45, align 4, !tbaa !9
  %25225 = and i32 %25224, %25223
  store i32 %25225, ptr %45, align 4, !tbaa !9
  %25226 = load i32, ptr %45, align 4, !tbaa !9
  %25227 = icmp ne i32 %25226, 0
  br i1 %25227, label %25228, label %25265

25228:                                            ; preds = %25209
  %25229 = load double, ptr %43, align 8, !tbaa !13
  store double %25229, ptr %60, align 8, !tbaa !13
  %25230 = load double, ptr %60, align 8, !tbaa !13
  %25231 = load double, ptr %60, align 8, !tbaa !13
  %25232 = fcmp une double %25230, %25231
  %25233 = xor i1 %25232, true
  %25234 = xor i1 %25233, true
  %25235 = zext i1 %25234 to i32
  %25236 = sext i32 %25235 to i64
  %25237 = call i64 @llvm.expect.i64(i64 %25236, i64 0)
  %25238 = icmp ne i64 %25237, 0
  br i1 %25238, label %25239, label %25241

25239:                                            ; preds = %25228
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

25240:                                            ; No predecessors!
  br label %25263

25241:                                            ; preds = %25228
  %25242 = load double, ptr %60, align 8, !tbaa !13
  %25243 = fcmp ogt double %25242, -1.000000e+00
  br i1 %25243, label %25244, label %25247

25244:                                            ; preds = %25241
  %25245 = load double, ptr %60, align 8, !tbaa !13
  %25246 = fcmp olt double %25245, 0x41F0000000000000
  br label %25247

25247:                                            ; preds = %25244, %25241
  %25248 = phi i1 [ false, %25241 ], [ %25246, %25244 ]
  %25249 = xor i1 %25248, true
  %25250 = xor i1 %25249, true
  %25251 = xor i1 %25250, true
  %25252 = zext i1 %25251 to i32
  %25253 = sext i32 %25252 to i64
  %25254 = call i64 @llvm.expect.i64(i64 %25253, i64 0)
  %25255 = icmp ne i64 %25254, 0
  br i1 %25255, label %25256, label %25258

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

25257:                                            ; No predecessors!
  br label %25261

25258:                                            ; preds = %25247
  %25259 = load double, ptr %60, align 8, !tbaa !13
  %25260 = fptoui double %25259 to i32
  br label %25261

25261:                                            ; preds = %25258, %25257
  %25262 = phi i32 [ 0, %25257 ], [ %25260, %25258 ]
  br label %25263

25263:                                            ; preds = %25261, %25240
  %25264 = phi i32 [ 0, %25240 ], [ %25262, %25261 ]
  store i32 %25264, ptr %45, align 4, !tbaa !9
  br label %25266

25265:                                            ; preds = %25209
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %25266

25266:                                            ; preds = %25265, %25263
  %25267 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25267, ptr %8, align 4, !tbaa !9
  %25268 = load i32, ptr %45, align 4, !tbaa !9
  %25269 = uitofp i32 %25268 to double
  store double %25269, ptr %60, align 8, !tbaa !13
  %25270 = load double, ptr %43, align 8, !tbaa !13
  store double %25270, ptr %61, align 8, !tbaa !13
  %25271 = load double, ptr %60, align 8, !tbaa !13
  %25272 = load double, ptr %61, align 8, !tbaa !13
  %25273 = fcmp une double %25271, %25272
  %25274 = zext i1 %25273 to i32
  store i32 %25274, ptr %45, align 4, !tbaa !9
  %25275 = load i32, ptr %45, align 4, !tbaa !9
  %25276 = icmp ne i32 %25275, 0
  br i1 %25276, label %25277, label %25278

25277:                                            ; preds = %25266
  br label %25355

25278:                                            ; preds = %25266
  %25279 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25279, ptr %45, align 4, !tbaa !9
  %25280 = load ptr, ptr %5, align 8, !tbaa !5
  %25281 = getelementptr inbounds %struct.w2c_hermes, ptr %25280, i32 0, i32 6
  %25282 = load i32, ptr %45, align 4, !tbaa !9
  %25283 = zext i32 %25282 to i64
  %25284 = add i64 %25283, 10
  %25285 = call i32 @i32_load(ptr noundef %25281, i64 noundef %25284)
  store i32 %25285, ptr %45, align 4, !tbaa !9
  %25286 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25286, ptr %7, align 4, !tbaa !9
  %25287 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %25287, ptr %46, align 4, !tbaa !9
  %25288 = load i32, ptr %45, align 4, !tbaa !9
  %25289 = load i32, ptr %46, align 4, !tbaa !9
  %25290 = icmp ugt i32 %25288, %25289
  %25291 = zext i1 %25290 to i32
  store i32 %25291, ptr %45, align 4, !tbaa !9
  %25292 = load i32, ptr %45, align 4, !tbaa !9
  %25293 = icmp ne i32 %25292, 0
  br i1 %25293, label %25294, label %25295

25294:                                            ; preds = %25278
  br label %25355

25295:                                            ; preds = %25278
  %25296 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25296, ptr %45, align 4, !tbaa !9
  %25297 = load ptr, ptr %5, align 8, !tbaa !5
  %25298 = getelementptr inbounds %struct.w2c_hermes, ptr %25297, i32 0, i32 6
  %25299 = load i32, ptr %45, align 4, !tbaa !9
  %25300 = zext i32 %25299 to i64
  %25301 = add i64 %25300, 14
  %25302 = call i32 @i32_load(ptr noundef %25298, i64 noundef %25301)
  store i32 %25302, ptr %45, align 4, !tbaa !9
  %25303 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %25303, ptr %46, align 4, !tbaa !9
  %25304 = load i32, ptr %45, align 4, !tbaa !9
  %25305 = load i32, ptr %46, align 4, !tbaa !9
  %25306 = icmp ult i32 %25304, %25305
  %25307 = zext i1 %25306 to i32
  store i32 %25307, ptr %45, align 4, !tbaa !9
  %25308 = load i32, ptr %45, align 4, !tbaa !9
  %25309 = icmp ne i32 %25308, 0
  br i1 %25309, label %25310, label %25311

25310:                                            ; preds = %25295
  br label %25355

25311:                                            ; preds = %25295
  %25312 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25312, ptr %45, align 4, !tbaa !9
  %25313 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25313, ptr %46, align 4, !tbaa !9
  %25314 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25314, ptr %47, align 4, !tbaa !9
  %25315 = load ptr, ptr %5, align 8, !tbaa !5
  %25316 = getelementptr inbounds %struct.w2c_hermes, ptr %25315, i32 0, i32 6
  %25317 = load i32, ptr %47, align 4, !tbaa !9
  %25318 = zext i32 %25317 to i64
  %25319 = add i64 %25318, 2
  %25320 = call i32 @i32_load(ptr noundef %25316, i64 noundef %25319)
  store i32 %25320, ptr %47, align 4, !tbaa !9
  %25321 = load i32, ptr %47, align 4, !tbaa !9
  %25322 = load i32, ptr %46, align 4, !tbaa !9
  %25323 = add i32 %25322, %25321
  store i32 %25323, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25324 = load i32, ptr %47, align 4, !tbaa !9
  %25325 = load i32, ptr %46, align 4, !tbaa !9
  %25326 = add i32 %25325, %25324
  store i32 %25326, ptr %46, align 4, !tbaa !9
  store i32 -4, ptr %47, align 4, !tbaa !9
  %25327 = load i32, ptr %47, align 4, !tbaa !9
  %25328 = load i32, ptr %46, align 4, !tbaa !9
  %25329 = and i32 %25328, %25327
  store i32 %25329, ptr %46, align 4, !tbaa !9
  %25330 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %25330, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %25331 = load i32, ptr %48, align 4, !tbaa !9
  %25332 = and i32 %25331, 31
  %25333 = load i32, ptr %47, align 4, !tbaa !9
  %25334 = shl i32 %25333, %25332
  store i32 %25334, ptr %47, align 4, !tbaa !9
  %25335 = load i32, ptr %47, align 4, !tbaa !9
  %25336 = load i32, ptr %46, align 4, !tbaa !9
  %25337 = add i32 %25336, %25335
  store i32 %25337, ptr %46, align 4, !tbaa !9
  %25338 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25338, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %25339 = load i32, ptr %48, align 4, !tbaa !9
  %25340 = and i32 %25339, 31
  %25341 = load i32, ptr %47, align 4, !tbaa !9
  %25342 = shl i32 %25341, %25340
  store i32 %25342, ptr %47, align 4, !tbaa !9
  %25343 = load i32, ptr %47, align 4, !tbaa !9
  %25344 = load i32, ptr %46, align 4, !tbaa !9
  %25345 = sub i32 %25344, %25343
  store i32 %25345, ptr %46, align 4, !tbaa !9
  %25346 = load ptr, ptr %5, align 8, !tbaa !5
  %25347 = getelementptr inbounds %struct.w2c_hermes, ptr %25346, i32 0, i32 6
  %25348 = load i32, ptr %46, align 4, !tbaa !9
  %25349 = zext i32 %25348 to i64
  %25350 = call i32 @i32_load(ptr noundef %25347, i64 noundef %25349)
  store i32 %25350, ptr %46, align 4, !tbaa !9
  %25351 = load i32, ptr %46, align 4, !tbaa !9
  %25352 = load i32, ptr %45, align 4, !tbaa !9
  %25353 = add i32 %25352, %25351
  store i32 %25353, ptr %45, align 4, !tbaa !9
  %25354 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25354, ptr %6, align 4, !tbaa !9
  br label %2945

25355:                                            ; preds = %25310, %25294, %25277, %25208
  %25356 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25356, ptr %45, align 4, !tbaa !9
  %25357 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25357, ptr %46, align 4, !tbaa !9
  %25358 = load ptr, ptr %5, align 8, !tbaa !5
  %25359 = getelementptr inbounds %struct.w2c_hermes, ptr %25358, i32 0, i32 6
  %25360 = load i32, ptr %46, align 4, !tbaa !9
  %25361 = zext i32 %25360 to i64
  %25362 = add i64 %25361, 6
  %25363 = call i32 @i32_load(ptr noundef %25359, i64 noundef %25362)
  store i32 %25363, ptr %46, align 4, !tbaa !9
  %25364 = load i32, ptr %46, align 4, !tbaa !9
  %25365 = load i32, ptr %45, align 4, !tbaa !9
  %25366 = add i32 %25365, %25364
  store i32 %25366, ptr %45, align 4, !tbaa !9
  %25367 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25367, ptr %6, align 4, !tbaa !9
  br label %2945

25368:                                            ; preds = %3081
  %25369 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25369, ptr %45, align 4, !tbaa !9
  %25370 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25370, ptr %46, align 4, !tbaa !9
  %25371 = load ptr, ptr %5, align 8, !tbaa !5
  %25372 = getelementptr inbounds %struct.w2c_hermes, ptr %25371, i32 0, i32 6
  %25373 = load i32, ptr %46, align 4, !tbaa !9
  %25374 = zext i32 %25373 to i64
  %25375 = add i64 %25374, 1
  %25376 = call i32 @i32_load8_u(ptr noundef %25372, i64 noundef %25375)
  store i32 %25376, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25377 = load i32, ptr %47, align 4, !tbaa !9
  %25378 = and i32 %25377, 31
  %25379 = load i32, ptr %46, align 4, !tbaa !9
  %25380 = shl i32 %25379, %25378
  store i32 %25380, ptr %46, align 4, !tbaa !9
  %25381 = load i32, ptr %46, align 4, !tbaa !9
  %25382 = load i32, ptr %45, align 4, !tbaa !9
  %25383 = add i32 %25382, %25381
  store i32 %25383, ptr %45, align 4, !tbaa !9
  %25384 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25384, ptr %46, align 4, !tbaa !9
  %25385 = load ptr, ptr %5, align 8, !tbaa !5
  %25386 = getelementptr inbounds %struct.w2c_hermes, ptr %25385, i32 0, i32 6
  %25387 = load i32, ptr %46, align 4, !tbaa !9
  %25388 = zext i32 %25387 to i64
  %25389 = add i64 %25388, 2
  %25390 = call i32 @i32_load8_u(ptr noundef %25386, i64 noundef %25389)
  store i32 %25390, ptr %46, align 4, !tbaa !9
  %25391 = load i32, ptr %46, align 4, !tbaa !9
  %25392 = uitofp i32 %25391 to double
  store double %25392, ptr %61, align 8, !tbaa !13
  %25393 = load ptr, ptr %5, align 8, !tbaa !5
  %25394 = getelementptr inbounds %struct.w2c_hermes, ptr %25393, i32 0, i32 6
  %25395 = load i32, ptr %45, align 4, !tbaa !9
  %25396 = zext i32 %25395 to i64
  %25397 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %25394, i64 noundef %25396, double noundef %25397)
  %25398 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25398, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %25399 = load i32, ptr %46, align 4, !tbaa !9
  %25400 = load i32, ptr %45, align 4, !tbaa !9
  %25401 = add i32 %25400, %25399
  store i32 %25401, ptr %45, align 4, !tbaa !9
  %25402 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25402, ptr %6, align 4, !tbaa !9
  br label %2945

25403:                                            ; preds = %3082
  %25404 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25404, ptr %45, align 4, !tbaa !9
  %25405 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25405, ptr %46, align 4, !tbaa !9
  %25406 = load ptr, ptr %5, align 8, !tbaa !5
  %25407 = getelementptr inbounds %struct.w2c_hermes, ptr %25406, i32 0, i32 6
  %25408 = load i32, ptr %46, align 4, !tbaa !9
  %25409 = zext i32 %25408 to i64
  %25410 = add i64 %25409, 1
  %25411 = call i32 @i32_load8_u(ptr noundef %25407, i64 noundef %25410)
  store i32 %25411, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25412 = load i32, ptr %47, align 4, !tbaa !9
  %25413 = and i32 %25412, 31
  %25414 = load i32, ptr %46, align 4, !tbaa !9
  %25415 = shl i32 %25414, %25413
  store i32 %25415, ptr %46, align 4, !tbaa !9
  %25416 = load i32, ptr %46, align 4, !tbaa !9
  %25417 = load i32, ptr %45, align 4, !tbaa !9
  %25418 = add i32 %25417, %25416
  store i32 %25418, ptr %45, align 4, !tbaa !9
  %25419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25419, ptr %46, align 4, !tbaa !9
  %25420 = load ptr, ptr %5, align 8, !tbaa !5
  %25421 = getelementptr inbounds %struct.w2c_hermes, ptr %25420, i32 0, i32 6
  %25422 = load i32, ptr %46, align 4, !tbaa !9
  %25423 = zext i32 %25422 to i64
  %25424 = add i64 %25423, 2
  %25425 = call i32 @i32_load(ptr noundef %25421, i64 noundef %25424)
  store i32 %25425, ptr %46, align 4, !tbaa !9
  %25426 = load i32, ptr %46, align 4, !tbaa !9
  %25427 = sitofp i32 %25426 to double
  store double %25427, ptr %61, align 8, !tbaa !13
  %25428 = load ptr, ptr %5, align 8, !tbaa !5
  %25429 = getelementptr inbounds %struct.w2c_hermes, ptr %25428, i32 0, i32 6
  %25430 = load i32, ptr %45, align 4, !tbaa !9
  %25431 = zext i32 %25430 to i64
  %25432 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %25429, i64 noundef %25431, double noundef %25432)
  %25433 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25433, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %25434 = load i32, ptr %46, align 4, !tbaa !9
  %25435 = load i32, ptr %45, align 4, !tbaa !9
  %25436 = add i32 %25435, %25434
  store i32 %25436, ptr %45, align 4, !tbaa !9
  %25437 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25437, ptr %6, align 4, !tbaa !9
  br label %2945

25438:                                            ; preds = %3083
  %25439 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25439, ptr %45, align 4, !tbaa !9
  %25440 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25440, ptr %46, align 4, !tbaa !9
  %25441 = load ptr, ptr %5, align 8, !tbaa !5
  %25442 = getelementptr inbounds %struct.w2c_hermes, ptr %25441, i32 0, i32 6
  %25443 = load i32, ptr %46, align 4, !tbaa !9
  %25444 = zext i32 %25443 to i64
  %25445 = add i64 %25444, 1
  %25446 = call i32 @i32_load8_u(ptr noundef %25442, i64 noundef %25445)
  store i32 %25446, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25447 = load i32, ptr %47, align 4, !tbaa !9
  %25448 = and i32 %25447, 31
  %25449 = load i32, ptr %46, align 4, !tbaa !9
  %25450 = shl i32 %25449, %25448
  store i32 %25450, ptr %46, align 4, !tbaa !9
  %25451 = load i32, ptr %46, align 4, !tbaa !9
  %25452 = load i32, ptr %45, align 4, !tbaa !9
  %25453 = add i32 %25452, %25451
  store i32 %25453, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %25454 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25454, ptr %47, align 4, !tbaa !9
  %25455 = load ptr, ptr %5, align 8, !tbaa !5
  %25456 = getelementptr inbounds %struct.w2c_hermes, ptr %25455, i32 0, i32 6
  %25457 = load i32, ptr %47, align 4, !tbaa !9
  %25458 = zext i32 %25457 to i64
  %25459 = add i64 %25458, 2
  %25460 = call double @f64_load(ptr noundef %25456, i64 noundef %25459)
  store double %25460, ptr %62, align 8, !tbaa !13
  %25461 = load double, ptr %62, align 8, !tbaa !13
  store double %25461, ptr %43, align 8, !tbaa !13
  %25462 = load double, ptr %62, align 8, !tbaa !13
  %25463 = call i64 @i64_reinterpret_f64(double noundef %25462)
  store i64 %25463, ptr %56, align 8, !tbaa !11
  %25464 = load double, ptr %43, align 8, !tbaa !13
  store double %25464, ptr %63, align 8, !tbaa !13
  %25465 = load double, ptr %43, align 8, !tbaa !13
  store double %25465, ptr %64, align 8, !tbaa !13
  %25466 = load double, ptr %63, align 8, !tbaa !13
  %25467 = load double, ptr %64, align 8, !tbaa !13
  %25468 = fcmp une double %25466, %25467
  %25469 = zext i1 %25468 to i32
  store i32 %25469, ptr %48, align 4, !tbaa !9
  %25470 = load i32, ptr %48, align 4, !tbaa !9
  %25471 = icmp ne i32 %25470, 0
  br i1 %25471, label %25472, label %25474

25472:                                            ; preds = %25438
  %25473 = load i64, ptr %55, align 8, !tbaa !11
  br label %25476

25474:                                            ; preds = %25438
  %25475 = load i64, ptr %56, align 8, !tbaa !11
  br label %25476

25476:                                            ; preds = %25474, %25472
  %25477 = phi i64 [ %25473, %25472 ], [ %25475, %25474 ]
  store i64 %25477, ptr %55, align 8, !tbaa !11
  %25478 = load ptr, ptr %5, align 8, !tbaa !5
  %25479 = getelementptr inbounds %struct.w2c_hermes, ptr %25478, i32 0, i32 6
  %25480 = load i32, ptr %45, align 4, !tbaa !9
  %25481 = zext i32 %25480 to i64
  %25482 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25479, i64 noundef %25481, i64 noundef %25482)
  %25483 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25483, ptr %45, align 4, !tbaa !9
  store i32 10, ptr %46, align 4, !tbaa !9
  %25484 = load i32, ptr %46, align 4, !tbaa !9
  %25485 = load i32, ptr %45, align 4, !tbaa !9
  %25486 = add i32 %25485, %25484
  store i32 %25486, ptr %45, align 4, !tbaa !9
  %25487 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25487, ptr %6, align 4, !tbaa !9
  br label %2945

25488:                                            ; preds = %3084
  %25489 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25489, ptr %45, align 4, !tbaa !9
  %25490 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25490, ptr %46, align 4, !tbaa !9
  %25491 = load ptr, ptr %5, align 8, !tbaa !5
  %25492 = getelementptr inbounds %struct.w2c_hermes, ptr %25491, i32 0, i32 6
  %25493 = load i32, ptr %45, align 4, !tbaa !9
  %25494 = zext i32 %25493 to i64
  %25495 = add i64 %25494, 5808
  %25496 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25492, i64 noundef %25495, i32 noundef %25496)
  %25497 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %25497, ptr %45, align 4, !tbaa !9
  %25498 = load ptr, ptr %5, align 8, !tbaa !5
  %25499 = getelementptr inbounds %struct.w2c_hermes, ptr %25498, i32 0, i32 6
  %25500 = load i32, ptr %45, align 4, !tbaa !9
  %25501 = zext i32 %25500 to i64
  %25502 = call i32 @i32_load(ptr noundef %25499, i64 noundef %25501)
  store i32 %25502, ptr %45, align 4, !tbaa !9
  %25503 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25503, ptr %46, align 4, !tbaa !9
  %25504 = load ptr, ptr %5, align 8, !tbaa !5
  %25505 = getelementptr inbounds %struct.w2c_hermes, ptr %25504, i32 0, i32 6
  %25506 = load i32, ptr %46, align 4, !tbaa !9
  %25507 = zext i32 %25506 to i64
  %25508 = add i64 %25507, 2
  %25509 = call i32 @i32_load16_u(ptr noundef %25505, i64 noundef %25508)
  store i32 %25509, ptr %46, align 4, !tbaa !9
  %25510 = load ptr, ptr %5, align 8, !tbaa !5
  %25511 = load i32, ptr %45, align 4, !tbaa !9
  %25512 = load i32, ptr %46, align 4, !tbaa !9
  %25513 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %25510, i32 noundef %25511, i32 noundef %25512)
  store i32 %25513, ptr %45, align 4, !tbaa !9
  %25514 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25514, ptr %7, align 4, !tbaa !9
  %25515 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25515, ptr %45, align 4, !tbaa !9
  %25516 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25516, ptr %46, align 4, !tbaa !9
  %25517 = load ptr, ptr %5, align 8, !tbaa !5
  %25518 = getelementptr inbounds %struct.w2c_hermes, ptr %25517, i32 0, i32 6
  %25519 = load i32, ptr %46, align 4, !tbaa !9
  %25520 = zext i32 %25519 to i64
  %25521 = add i64 %25520, 1
  %25522 = call i32 @i32_load8_u(ptr noundef %25518, i64 noundef %25521)
  store i32 %25522, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25523 = load i32, ptr %47, align 4, !tbaa !9
  %25524 = and i32 %25523, 31
  %25525 = load i32, ptr %46, align 4, !tbaa !9
  %25526 = shl i32 %25525, %25524
  store i32 %25526, ptr %46, align 4, !tbaa !9
  %25527 = load i32, ptr %46, align 4, !tbaa !9
  %25528 = load i32, ptr %45, align 4, !tbaa !9
  %25529 = add i32 %25528, %25527
  store i32 %25529, ptr %45, align 4, !tbaa !9
  %25530 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25530, ptr %46, align 4, !tbaa !9
  %25531 = load i32, ptr %46, align 4, !tbaa !9
  %25532 = zext i32 %25531 to i64
  store i64 %25532, ptr %55, align 8, !tbaa !11
  store i64 -844424930131968, ptr %56, align 8, !tbaa !11
  %25533 = load i64, ptr %56, align 8, !tbaa !11
  %25534 = load i64, ptr %55, align 8, !tbaa !11
  %25535 = or i64 %25534, %25533
  store i64 %25535, ptr %55, align 8, !tbaa !11
  %25536 = load ptr, ptr %5, align 8, !tbaa !5
  %25537 = getelementptr inbounds %struct.w2c_hermes, ptr %25536, i32 0, i32 6
  %25538 = load i32, ptr %45, align 4, !tbaa !9
  %25539 = zext i32 %25538 to i64
  %25540 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25537, i64 noundef %25539, i64 noundef %25540)
  %25541 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25541, ptr %45, align 4, !tbaa !9
  %25542 = load ptr, ptr %5, align 8, !tbaa !5
  %25543 = getelementptr inbounds %struct.w2c_hermes, ptr %25542, i32 0, i32 6
  %25544 = load i32, ptr %45, align 4, !tbaa !9
  %25545 = zext i32 %25544 to i64
  %25546 = add i64 %25545, 5808
  %25547 = call i32 @i32_load(ptr noundef %25543, i64 noundef %25546)
  store i32 %25547, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %25548 = load i32, ptr %46, align 4, !tbaa !9
  %25549 = load i32, ptr %45, align 4, !tbaa !9
  %25550 = add i32 %25549, %25548
  store i32 %25550, ptr %45, align 4, !tbaa !9
  %25551 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25551, ptr %6, align 4, !tbaa !9
  br label %2945

25552:                                            ; preds = %3085
  %25553 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25553, ptr %45, align 4, !tbaa !9
  %25554 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25554, ptr %46, align 4, !tbaa !9
  %25555 = load ptr, ptr %5, align 8, !tbaa !5
  %25556 = getelementptr inbounds %struct.w2c_hermes, ptr %25555, i32 0, i32 6
  %25557 = load i32, ptr %45, align 4, !tbaa !9
  %25558 = zext i32 %25557 to i64
  %25559 = add i64 %25558, 5808
  %25560 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25556, i64 noundef %25559, i32 noundef %25560)
  %25561 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %25561, ptr %45, align 4, !tbaa !9
  %25562 = load ptr, ptr %5, align 8, !tbaa !5
  %25563 = getelementptr inbounds %struct.w2c_hermes, ptr %25562, i32 0, i32 6
  %25564 = load i32, ptr %45, align 4, !tbaa !9
  %25565 = zext i32 %25564 to i64
  %25566 = call i32 @i32_load(ptr noundef %25563, i64 noundef %25565)
  store i32 %25566, ptr %45, align 4, !tbaa !9
  %25567 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25567, ptr %46, align 4, !tbaa !9
  %25568 = load ptr, ptr %5, align 8, !tbaa !5
  %25569 = getelementptr inbounds %struct.w2c_hermes, ptr %25568, i32 0, i32 6
  %25570 = load i32, ptr %46, align 4, !tbaa !9
  %25571 = zext i32 %25570 to i64
  %25572 = add i64 %25571, 2
  %25573 = call i32 @i32_load(ptr noundef %25569, i64 noundef %25572)
  store i32 %25573, ptr %46, align 4, !tbaa !9
  %25574 = load ptr, ptr %5, align 8, !tbaa !5
  %25575 = load i32, ptr %45, align 4, !tbaa !9
  %25576 = load i32, ptr %46, align 4, !tbaa !9
  %25577 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %25574, i32 noundef %25575, i32 noundef %25576)
  store i32 %25577, ptr %45, align 4, !tbaa !9
  %25578 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25578, ptr %7, align 4, !tbaa !9
  %25579 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25579, ptr %45, align 4, !tbaa !9
  %25580 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25580, ptr %46, align 4, !tbaa !9
  %25581 = load ptr, ptr %5, align 8, !tbaa !5
  %25582 = getelementptr inbounds %struct.w2c_hermes, ptr %25581, i32 0, i32 6
  %25583 = load i32, ptr %46, align 4, !tbaa !9
  %25584 = zext i32 %25583 to i64
  %25585 = add i64 %25584, 1
  %25586 = call i32 @i32_load8_u(ptr noundef %25582, i64 noundef %25585)
  store i32 %25586, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25587 = load i32, ptr %47, align 4, !tbaa !9
  %25588 = and i32 %25587, 31
  %25589 = load i32, ptr %46, align 4, !tbaa !9
  %25590 = shl i32 %25589, %25588
  store i32 %25590, ptr %46, align 4, !tbaa !9
  %25591 = load i32, ptr %46, align 4, !tbaa !9
  %25592 = load i32, ptr %45, align 4, !tbaa !9
  %25593 = add i32 %25592, %25591
  store i32 %25593, ptr %45, align 4, !tbaa !9
  %25594 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25594, ptr %46, align 4, !tbaa !9
  %25595 = load i32, ptr %46, align 4, !tbaa !9
  %25596 = zext i32 %25595 to i64
  store i64 %25596, ptr %55, align 8, !tbaa !11
  store i64 -844424930131968, ptr %56, align 8, !tbaa !11
  %25597 = load i64, ptr %56, align 8, !tbaa !11
  %25598 = load i64, ptr %55, align 8, !tbaa !11
  %25599 = or i64 %25598, %25597
  store i64 %25599, ptr %55, align 8, !tbaa !11
  %25600 = load ptr, ptr %5, align 8, !tbaa !5
  %25601 = getelementptr inbounds %struct.w2c_hermes, ptr %25600, i32 0, i32 6
  %25602 = load i32, ptr %45, align 4, !tbaa !9
  %25603 = zext i32 %25602 to i64
  %25604 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25601, i64 noundef %25603, i64 noundef %25604)
  %25605 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25605, ptr %45, align 4, !tbaa !9
  %25606 = load ptr, ptr %5, align 8, !tbaa !5
  %25607 = getelementptr inbounds %struct.w2c_hermes, ptr %25606, i32 0, i32 6
  %25608 = load i32, ptr %45, align 4, !tbaa !9
  %25609 = zext i32 %25608 to i64
  %25610 = add i64 %25609, 5808
  %25611 = call i32 @i32_load(ptr noundef %25607, i64 noundef %25610)
  store i32 %25611, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %25612 = load i32, ptr %46, align 4, !tbaa !9
  %25613 = load i32, ptr %45, align 4, !tbaa !9
  %25614 = add i32 %25613, %25612
  store i32 %25614, ptr %45, align 4, !tbaa !9
  %25615 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25615, ptr %6, align 4, !tbaa !9
  br label %2945

25616:                                            ; preds = %3086
  %25617 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25617, ptr %45, align 4, !tbaa !9
  %25618 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25618, ptr %46, align 4, !tbaa !9
  %25619 = load ptr, ptr %5, align 8, !tbaa !5
  %25620 = getelementptr inbounds %struct.w2c_hermes, ptr %25619, i32 0, i32 6
  %25621 = load i32, ptr %46, align 4, !tbaa !9
  %25622 = zext i32 %25621 to i64
  %25623 = add i64 %25622, 1
  %25624 = call i32 @i32_load8_u(ptr noundef %25620, i64 noundef %25623)
  store i32 %25624, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25625 = load i32, ptr %47, align 4, !tbaa !9
  %25626 = and i32 %25625, 31
  %25627 = load i32, ptr %46, align 4, !tbaa !9
  %25628 = shl i32 %25627, %25626
  store i32 %25628, ptr %46, align 4, !tbaa !9
  %25629 = load i32, ptr %46, align 4, !tbaa !9
  %25630 = load i32, ptr %45, align 4, !tbaa !9
  %25631 = add i32 %25630, %25629
  store i32 %25631, ptr %45, align 4, !tbaa !9
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %25632 = load ptr, ptr %5, align 8, !tbaa !5
  %25633 = getelementptr inbounds %struct.w2c_hermes, ptr %25632, i32 0, i32 6
  %25634 = load i32, ptr %45, align 4, !tbaa !9
  %25635 = zext i32 %25634 to i64
  %25636 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25633, i64 noundef %25635, i64 noundef %25636)
  %25637 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25637, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %25638 = load i32, ptr %46, align 4, !tbaa !9
  %25639 = load i32, ptr %45, align 4, !tbaa !9
  %25640 = add i32 %25639, %25638
  store i32 %25640, ptr %45, align 4, !tbaa !9
  %25641 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25641, ptr %6, align 4, !tbaa !9
  br label %2945

25642:                                            ; preds = %3087
  %25643 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25643, ptr %45, align 4, !tbaa !9
  %25644 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25644, ptr %46, align 4, !tbaa !9
  %25645 = load ptr, ptr %5, align 8, !tbaa !5
  %25646 = getelementptr inbounds %struct.w2c_hermes, ptr %25645, i32 0, i32 6
  %25647 = load i32, ptr %46, align 4, !tbaa !9
  %25648 = zext i32 %25647 to i64
  %25649 = add i64 %25648, 1
  %25650 = call i32 @i32_load8_u(ptr noundef %25646, i64 noundef %25649)
  store i32 %25650, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25651 = load i32, ptr %47, align 4, !tbaa !9
  %25652 = and i32 %25651, 31
  %25653 = load i32, ptr %46, align 4, !tbaa !9
  %25654 = shl i32 %25653, %25652
  store i32 %25654, ptr %46, align 4, !tbaa !9
  %25655 = load i32, ptr %46, align 4, !tbaa !9
  %25656 = load i32, ptr %45, align 4, !tbaa !9
  %25657 = add i32 %25656, %25655
  store i32 %25657, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %25658 = load ptr, ptr %5, align 8, !tbaa !5
  %25659 = getelementptr inbounds %struct.w2c_hermes, ptr %25658, i32 0, i32 6
  %25660 = load i32, ptr %45, align 4, !tbaa !9
  %25661 = zext i32 %25660 to i64
  %25662 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25659, i64 noundef %25661, i64 noundef %25662)
  %25663 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25663, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %25664 = load i32, ptr %46, align 4, !tbaa !9
  %25665 = load i32, ptr %45, align 4, !tbaa !9
  %25666 = add i32 %25665, %25664
  store i32 %25666, ptr %45, align 4, !tbaa !9
  %25667 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25667, ptr %6, align 4, !tbaa !9
  br label %2945

25668:                                            ; preds = %3088
  %25669 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25669, ptr %45, align 4, !tbaa !9
  %25670 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25670, ptr %46, align 4, !tbaa !9
  %25671 = load ptr, ptr %5, align 8, !tbaa !5
  %25672 = getelementptr inbounds %struct.w2c_hermes, ptr %25671, i32 0, i32 6
  %25673 = load i32, ptr %46, align 4, !tbaa !9
  %25674 = zext i32 %25673 to i64
  %25675 = add i64 %25674, 1
  %25676 = call i32 @i32_load8_u(ptr noundef %25672, i64 noundef %25675)
  store i32 %25676, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25677 = load i32, ptr %47, align 4, !tbaa !9
  %25678 = and i32 %25677, 31
  %25679 = load i32, ptr %46, align 4, !tbaa !9
  %25680 = shl i32 %25679, %25678
  store i32 %25680, ptr %46, align 4, !tbaa !9
  %25681 = load i32, ptr %46, align 4, !tbaa !9
  %25682 = load i32, ptr %45, align 4, !tbaa !9
  %25683 = add i32 %25682, %25681
  store i32 %25683, ptr %45, align 4, !tbaa !9
  store i64 -1548112371908608, ptr %55, align 8, !tbaa !11
  %25684 = load ptr, ptr %5, align 8, !tbaa !5
  %25685 = getelementptr inbounds %struct.w2c_hermes, ptr %25684, i32 0, i32 6
  %25686 = load i32, ptr %45, align 4, !tbaa !9
  %25687 = zext i32 %25686 to i64
  %25688 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25685, i64 noundef %25687, i64 noundef %25688)
  %25689 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25689, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %25690 = load i32, ptr %46, align 4, !tbaa !9
  %25691 = load i32, ptr %45, align 4, !tbaa !9
  %25692 = add i32 %25691, %25690
  store i32 %25692, ptr %45, align 4, !tbaa !9
  %25693 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25693, ptr %6, align 4, !tbaa !9
  br label %2945

25694:                                            ; preds = %3089
  %25695 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25695, ptr %45, align 4, !tbaa !9
  %25696 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25696, ptr %46, align 4, !tbaa !9
  %25697 = load ptr, ptr %5, align 8, !tbaa !5
  %25698 = getelementptr inbounds %struct.w2c_hermes, ptr %25697, i32 0, i32 6
  %25699 = load i32, ptr %46, align 4, !tbaa !9
  %25700 = zext i32 %25699 to i64
  %25701 = add i64 %25700, 1
  %25702 = call i32 @i32_load8_u(ptr noundef %25698, i64 noundef %25701)
  store i32 %25702, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25703 = load i32, ptr %47, align 4, !tbaa !9
  %25704 = and i32 %25703, 31
  %25705 = load i32, ptr %46, align 4, !tbaa !9
  %25706 = shl i32 %25705, %25704
  store i32 %25706, ptr %46, align 4, !tbaa !9
  %25707 = load i32, ptr %46, align 4, !tbaa !9
  %25708 = load i32, ptr %45, align 4, !tbaa !9
  %25709 = add i32 %25708, %25707
  store i32 %25709, ptr %45, align 4, !tbaa !9
  store i64 -1407374883553279, ptr %55, align 8, !tbaa !11
  %25710 = load ptr, ptr %5, align 8, !tbaa !5
  %25711 = getelementptr inbounds %struct.w2c_hermes, ptr %25710, i32 0, i32 6
  %25712 = load i32, ptr %45, align 4, !tbaa !9
  %25713 = zext i32 %25712 to i64
  %25714 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25711, i64 noundef %25713, i64 noundef %25714)
  %25715 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25715, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %25716 = load i32, ptr %46, align 4, !tbaa !9
  %25717 = load i32, ptr %45, align 4, !tbaa !9
  %25718 = add i32 %25717, %25716
  store i32 %25718, ptr %45, align 4, !tbaa !9
  %25719 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25719, ptr %6, align 4, !tbaa !9
  br label %2945

25720:                                            ; preds = %3090
  %25721 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25721, ptr %45, align 4, !tbaa !9
  %25722 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25722, ptr %46, align 4, !tbaa !9
  %25723 = load ptr, ptr %5, align 8, !tbaa !5
  %25724 = getelementptr inbounds %struct.w2c_hermes, ptr %25723, i32 0, i32 6
  %25725 = load i32, ptr %46, align 4, !tbaa !9
  %25726 = zext i32 %25725 to i64
  %25727 = add i64 %25726, 1
  %25728 = call i32 @i32_load8_u(ptr noundef %25724, i64 noundef %25727)
  store i32 %25728, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25729 = load i32, ptr %47, align 4, !tbaa !9
  %25730 = and i32 %25729, 31
  %25731 = load i32, ptr %46, align 4, !tbaa !9
  %25732 = shl i32 %25731, %25730
  store i32 %25732, ptr %46, align 4, !tbaa !9
  %25733 = load i32, ptr %46, align 4, !tbaa !9
  %25734 = load i32, ptr %45, align 4, !tbaa !9
  %25735 = add i32 %25734, %25733
  store i32 %25735, ptr %45, align 4, !tbaa !9
  store i64 -1407374883553280, ptr %55, align 8, !tbaa !11
  %25736 = load ptr, ptr %5, align 8, !tbaa !5
  %25737 = getelementptr inbounds %struct.w2c_hermes, ptr %25736, i32 0, i32 6
  %25738 = load i32, ptr %45, align 4, !tbaa !9
  %25739 = zext i32 %25738 to i64
  %25740 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25737, i64 noundef %25739, i64 noundef %25740)
  %25741 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25741, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %25742 = load i32, ptr %46, align 4, !tbaa !9
  %25743 = load i32, ptr %45, align 4, !tbaa !9
  %25744 = add i32 %25743, %25742
  store i32 %25744, ptr %45, align 4, !tbaa !9
  %25745 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25745, ptr %6, align 4, !tbaa !9
  br label %2945

25746:                                            ; preds = %3091
  %25747 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25747, ptr %45, align 4, !tbaa !9
  %25748 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25748, ptr %46, align 4, !tbaa !9
  %25749 = load ptr, ptr %5, align 8, !tbaa !5
  %25750 = getelementptr inbounds %struct.w2c_hermes, ptr %25749, i32 0, i32 6
  %25751 = load i32, ptr %46, align 4, !tbaa !9
  %25752 = zext i32 %25751 to i64
  %25753 = add i64 %25752, 1
  %25754 = call i32 @i32_load8_u(ptr noundef %25750, i64 noundef %25753)
  store i32 %25754, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25755 = load i32, ptr %47, align 4, !tbaa !9
  %25756 = and i32 %25755, 31
  %25757 = load i32, ptr %46, align 4, !tbaa !9
  %25758 = shl i32 %25757, %25756
  store i32 %25758, ptr %46, align 4, !tbaa !9
  %25759 = load i32, ptr %46, align 4, !tbaa !9
  %25760 = load i32, ptr %45, align 4, !tbaa !9
  %25761 = add i32 %25760, %25759
  store i32 %25761, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %25762 = load ptr, ptr %5, align 8, !tbaa !5
  %25763 = getelementptr inbounds %struct.w2c_hermes, ptr %25762, i32 0, i32 6
  %25764 = load i32, ptr %45, align 4, !tbaa !9
  %25765 = zext i32 %25764 to i64
  %25766 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25763, i64 noundef %25765, i64 noundef %25766)
  %25767 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25767, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %25768 = load i32, ptr %46, align 4, !tbaa !9
  %25769 = load i32, ptr %45, align 4, !tbaa !9
  %25770 = add i32 %25769, %25768
  store i32 %25770, ptr %45, align 4, !tbaa !9
  %25771 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25771, ptr %6, align 4, !tbaa !9
  br label %2945

25772:                                            ; preds = %3092
  %25773 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25773, ptr %45, align 4, !tbaa !9
  %25774 = load ptr, ptr %5, align 8, !tbaa !5
  %25775 = getelementptr inbounds %struct.w2c_hermes, ptr %25774, i32 0, i32 6
  %25776 = load i32, ptr %45, align 4, !tbaa !9
  %25777 = zext i32 %25776 to i64
  %25778 = add i64 %25777, 2
  %25779 = call i32 @i32_load16_u(ptr noundef %25775, i64 noundef %25778)
  store i32 %25779, ptr %45, align 4, !tbaa !9
  %25780 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25780, ptr %12, align 4, !tbaa !9
  %25781 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25781, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %25782 = load i32, ptr %46, align 4, !tbaa !9
  %25783 = load i32, ptr %45, align 4, !tbaa !9
  %25784 = add i32 %25783, %25782
  store i32 %25784, ptr %45, align 4, !tbaa !9
  br label %25798

25785:                                            ; preds = %3093
  %25786 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25786, ptr %45, align 4, !tbaa !9
  %25787 = load ptr, ptr %5, align 8, !tbaa !5
  %25788 = getelementptr inbounds %struct.w2c_hermes, ptr %25787, i32 0, i32 6
  %25789 = load i32, ptr %45, align 4, !tbaa !9
  %25790 = zext i32 %25789 to i64
  %25791 = add i64 %25790, 2
  %25792 = call i32 @i32_load(ptr noundef %25788, i64 noundef %25791)
  store i32 %25792, ptr %45, align 4, !tbaa !9
  %25793 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25793, ptr %12, align 4, !tbaa !9
  %25794 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25794, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %25795 = load i32, ptr %46, align 4, !tbaa !9
  %25796 = load i32, ptr %45, align 4, !tbaa !9
  %25797 = add i32 %25796, %25795
  store i32 %25797, ptr %45, align 4, !tbaa !9
  br label %25798

25798:                                            ; preds = %25785, %25772
  %25799 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25799, ptr %7, align 4, !tbaa !9
  %25800 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25800, ptr %45, align 4, !tbaa !9
  %25801 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25801, ptr %46, align 4, !tbaa !9
  %25802 = load ptr, ptr %5, align 8, !tbaa !5
  %25803 = getelementptr inbounds %struct.w2c_hermes, ptr %25802, i32 0, i32 6
  %25804 = load i32, ptr %45, align 4, !tbaa !9
  %25805 = zext i32 %25804 to i64
  %25806 = add i64 %25805, 5808
  %25807 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25803, i64 noundef %25806, i32 noundef %25807)
  %25808 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %25808, ptr %45, align 4, !tbaa !9
  %25809 = load ptr, ptr %5, align 8, !tbaa !5
  %25810 = getelementptr inbounds %struct.w2c_hermes, ptr %25809, i32 0, i32 6
  %25811 = load i32, ptr %45, align 4, !tbaa !9
  %25812 = zext i32 %25811 to i64
  %25813 = call i32 @i32_load(ptr noundef %25810, i64 noundef %25812)
  store i32 %25813, ptr %45, align 4, !tbaa !9
  %25814 = load ptr, ptr %5, align 8, !tbaa !5
  %25815 = getelementptr inbounds %struct.w2c_hermes, ptr %25814, i32 0, i32 6
  %25816 = load i32, ptr %45, align 4, !tbaa !9
  %25817 = zext i32 %25816 to i64
  %25818 = add i64 %25817, 40
  %25819 = call i32 @i32_load(ptr noundef %25815, i64 noundef %25818)
  store i32 %25819, ptr %45, align 4, !tbaa !9
  %25820 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25820, ptr %6, align 4, !tbaa !9
  %25821 = load ptr, ptr %5, align 8, !tbaa !5
  %25822 = getelementptr inbounds %struct.w2c_hermes, ptr %25821, i32 0, i32 6
  %25823 = load i32, ptr %45, align 4, !tbaa !9
  %25824 = zext i32 %25823 to i64
  %25825 = add i64 %25824, 68
  %25826 = call i32 @i32_load(ptr noundef %25822, i64 noundef %25825)
  store i32 %25826, ptr %45, align 4, !tbaa !9
  %25827 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %25827, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25828 = load i32, ptr %47, align 4, !tbaa !9
  %25829 = and i32 %25828, 31
  %25830 = load i32, ptr %46, align 4, !tbaa !9
  %25831 = shl i32 %25830, %25829
  store i32 %25831, ptr %46, align 4, !tbaa !9
  %25832 = load i32, ptr %46, align 4, !tbaa !9
  %25833 = load i32, ptr %45, align 4, !tbaa !9
  %25834 = add i32 %25833, %25832
  store i32 %25834, ptr %45, align 4, !tbaa !9
  %25835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25835, ptr %12, align 4, !tbaa !9
  %25836 = load ptr, ptr %5, align 8, !tbaa !5
  %25837 = getelementptr inbounds %struct.w2c_hermes, ptr %25836, i32 0, i32 6
  %25838 = load i32, ptr %45, align 4, !tbaa !9
  %25839 = zext i32 %25838 to i64
  %25840 = call i32 @i32_load(ptr noundef %25837, i64 noundef %25839)
  store i32 %25840, ptr %45, align 4, !tbaa !9
  %25841 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25841, ptr %8, align 4, !tbaa !9
  %25842 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25842, ptr %45, align 4, !tbaa !9
  %25843 = load ptr, ptr %5, align 8, !tbaa !5
  %25844 = getelementptr inbounds %struct.w2c_hermes, ptr %25843, i32 0, i32 6
  %25845 = load i32, ptr %45, align 4, !tbaa !9
  %25846 = zext i32 %25845 to i64
  %25847 = add i64 %25846, 76
  %25848 = call i32 @i32_load(ptr noundef %25844, i64 noundef %25847)
  store i32 %25848, ptr %45, align 4, !tbaa !9
  %25849 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25849, ptr %6, align 4, !tbaa !9
  %25850 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25850, ptr %45, align 4, !tbaa !9
  %25851 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %25851, ptr %46, align 4, !tbaa !9
  %25852 = load ptr, ptr %5, align 8, !tbaa !5
  %25853 = getelementptr inbounds %struct.w2c_hermes, ptr %25852, i32 0, i32 6
  %25854 = load i32, ptr %46, align 4, !tbaa !9
  %25855 = zext i32 %25854 to i64
  %25856 = add i64 %25855, 4
  %25857 = call i32 @i32_load(ptr noundef %25853, i64 noundef %25856)
  store i32 %25857, ptr %46, align 4, !tbaa !9
  %25858 = load ptr, ptr %5, align 8, !tbaa !5
  %25859 = getelementptr inbounds %struct.w2c_hermes, ptr %25858, i32 0, i32 6
  %25860 = load i32, ptr %45, align 4, !tbaa !9
  %25861 = zext i32 %25860 to i64
  %25862 = add i64 %25861, 124
  %25863 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25859, i64 noundef %25862, i32 noundef %25863)
  %25864 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25864, ptr %45, align 4, !tbaa !9
  %25865 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25865, ptr %46, align 4, !tbaa !9
  %25866 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %25866, ptr %47, align 4, !tbaa !9
  %25867 = load i32, ptr %47, align 4, !tbaa !9
  %25868 = load i32, ptr %46, align 4, !tbaa !9
  %25869 = add i32 %25868, %25867
  store i32 %25869, ptr %46, align 4, !tbaa !9
  %25870 = load ptr, ptr %5, align 8, !tbaa !5
  %25871 = getelementptr inbounds %struct.w2c_hermes, ptr %25870, i32 0, i32 6
  %25872 = load i32, ptr %45, align 4, !tbaa !9
  %25873 = zext i32 %25872 to i64
  %25874 = add i64 %25873, 120
  %25875 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %25871, i64 noundef %25874, i32 noundef %25875)
  %25876 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25876, ptr %45, align 4, !tbaa !9
  %25877 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25877, ptr %46, align 4, !tbaa !9
  %25878 = load ptr, ptr %5, align 8, !tbaa !5
  %25879 = getelementptr inbounds %struct.w2c_hermes, ptr %25878, i32 0, i32 6
  %25880 = load i32, ptr %46, align 4, !tbaa !9
  %25881 = zext i32 %25880 to i64
  %25882 = add i64 %25881, 120
  %25883 = call i64 @i64_load(ptr noundef %25879, i64 noundef %25882)
  store i64 %25883, ptr %55, align 8, !tbaa !11
  %25884 = load ptr, ptr %5, align 8, !tbaa !5
  %25885 = getelementptr inbounds %struct.w2c_hermes, ptr %25884, i32 0, i32 6
  %25886 = load i32, ptr %45, align 4, !tbaa !9
  %25887 = zext i32 %25886 to i64
  %25888 = add i64 %25887, 96
  %25889 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25885, i64 noundef %25888, i64 noundef %25889)
  %25890 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25890, ptr %45, align 4, !tbaa !9
  store i32 128, ptr %46, align 4, !tbaa !9
  %25891 = load i32, ptr %46, align 4, !tbaa !9
  %25892 = load i32, ptr %45, align 4, !tbaa !9
  %25893 = add i32 %25892, %25891
  store i32 %25893, ptr %45, align 4, !tbaa !9
  %25894 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25894, ptr %46, align 4, !tbaa !9
  %25895 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25895, ptr %47, align 4, !tbaa !9
  store i32 96, ptr %48, align 4, !tbaa !9
  %25896 = load i32, ptr %48, align 4, !tbaa !9
  %25897 = load i32, ptr %47, align 4, !tbaa !9
  %25898 = add i32 %25897, %25896
  store i32 %25898, ptr %47, align 4, !tbaa !9
  %25899 = load ptr, ptr %5, align 8, !tbaa !5
  %25900 = load i32, ptr %45, align 4, !tbaa !9
  %25901 = load i32, ptr %46, align 4, !tbaa !9
  %25902 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AfromBytes0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x29(ptr noundef %25899, i32 noundef %25900, i32 noundef %25901, i32 noundef %25902)
  %25903 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %25903, ptr %45, align 4, !tbaa !9
  %25904 = load ptr, ptr %5, align 8, !tbaa !5
  %25905 = getelementptr inbounds %struct.w2c_hermes, ptr %25904, i32 0, i32 6
  %25906 = load i32, ptr %45, align 4, !tbaa !9
  %25907 = zext i32 %25906 to i64
  %25908 = add i64 %25907, 5808
  %25909 = call i32 @i32_load(ptr noundef %25905, i64 noundef %25908)
  store i32 %25909, ptr %45, align 4, !tbaa !9
  %25910 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25910, ptr %6, align 4, !tbaa !9
  %25911 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25911, ptr %45, align 4, !tbaa !9
  %25912 = load ptr, ptr %5, align 8, !tbaa !5
  %25913 = getelementptr inbounds %struct.w2c_hermes, ptr %25912, i32 0, i32 6
  %25914 = load i32, ptr %45, align 4, !tbaa !9
  %25915 = zext i32 %25914 to i64
  %25916 = add i64 %25915, 128
  %25917 = call i32 @i32_load(ptr noundef %25913, i64 noundef %25916)
  store i32 %25917, ptr %45, align 4, !tbaa !9
  %25918 = load i32, ptr %45, align 4, !tbaa !9
  %25919 = icmp ne i32 %25918, 0
  %25920 = xor i1 %25919, true
  %25921 = zext i1 %25920 to i32
  store i32 %25921, ptr %45, align 4, !tbaa !9
  %25922 = load i32, ptr %45, align 4, !tbaa !9
  %25923 = icmp ne i32 %25922, 0
  br i1 %25923, label %25924, label %25925

25924:                                            ; preds = %25798
  br label %43136

25925:                                            ; preds = %25798
  %25926 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25926, ptr %45, align 4, !tbaa !9
  %25927 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25927, ptr %46, align 4, !tbaa !9
  %25928 = load ptr, ptr %5, align 8, !tbaa !5
  %25929 = getelementptr inbounds %struct.w2c_hermes, ptr %25928, i32 0, i32 6
  %25930 = load i32, ptr %46, align 4, !tbaa !9
  %25931 = zext i32 %25930 to i64
  %25932 = add i64 %25931, 1
  %25933 = call i32 @i32_load8_u(ptr noundef %25929, i64 noundef %25932)
  store i32 %25933, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25934 = load i32, ptr %47, align 4, !tbaa !9
  %25935 = and i32 %25934, 31
  %25936 = load i32, ptr %46, align 4, !tbaa !9
  %25937 = shl i32 %25936, %25935
  store i32 %25937, ptr %46, align 4, !tbaa !9
  %25938 = load i32, ptr %46, align 4, !tbaa !9
  %25939 = load i32, ptr %45, align 4, !tbaa !9
  %25940 = add i32 %25939, %25938
  store i32 %25940, ptr %45, align 4, !tbaa !9
  %25941 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %25941, ptr %46, align 4, !tbaa !9
  %25942 = load ptr, ptr %5, align 8, !tbaa !5
  %25943 = getelementptr inbounds %struct.w2c_hermes, ptr %25942, i32 0, i32 6
  %25944 = load i32, ptr %46, align 4, !tbaa !9
  %25945 = zext i32 %25944 to i64
  %25946 = add i64 %25945, 136
  %25947 = call i64 @i64_load(ptr noundef %25943, i64 noundef %25946)
  store i64 %25947, ptr %55, align 8, !tbaa !11
  %25948 = load ptr, ptr %5, align 8, !tbaa !5
  %25949 = getelementptr inbounds %struct.w2c_hermes, ptr %25948, i32 0, i32 6
  %25950 = load i32, ptr %45, align 4, !tbaa !9
  %25951 = zext i32 %25950 to i64
  %25952 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %25949, i64 noundef %25951, i64 noundef %25952)
  %25953 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %25953, ptr %45, align 4, !tbaa !9
  %25954 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %25954, ptr %6, align 4, !tbaa !9
  br label %2945

25955:                                            ; preds = %3094
  %25956 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25956, ptr %45, align 4, !tbaa !9
  %25957 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25957, ptr %46, align 4, !tbaa !9
  %25958 = load ptr, ptr %5, align 8, !tbaa !5
  %25959 = getelementptr inbounds %struct.w2c_hermes, ptr %25958, i32 0, i32 6
  %25960 = load i32, ptr %46, align 4, !tbaa !9
  %25961 = zext i32 %25960 to i64
  %25962 = add i64 %25961, 2
  %25963 = call i32 @i32_load8_u(ptr noundef %25959, i64 noundef %25962)
  store i32 %25963, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25964 = load i32, ptr %47, align 4, !tbaa !9
  %25965 = and i32 %25964, 31
  %25966 = load i32, ptr %46, align 4, !tbaa !9
  %25967 = shl i32 %25966, %25965
  store i32 %25967, ptr %46, align 4, !tbaa !9
  %25968 = load i32, ptr %46, align 4, !tbaa !9
  %25969 = load i32, ptr %45, align 4, !tbaa !9
  %25970 = add i32 %25969, %25968
  store i32 %25970, ptr %45, align 4, !tbaa !9
  %25971 = load ptr, ptr %5, align 8, !tbaa !5
  %25972 = getelementptr inbounds %struct.w2c_hermes, ptr %25971, i32 0, i32 6
  %25973 = load i32, ptr %45, align 4, !tbaa !9
  %25974 = zext i32 %25973 to i64
  %25975 = call i64 @i64_load(ptr noundef %25972, i64 noundef %25974)
  store i64 %25975, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %25976 = load i64, ptr %54, align 8, !tbaa !11
  %25977 = load i64, ptr %55, align 8, !tbaa !11
  %25978 = icmp ugt i64 %25976, %25977
  %25979 = zext i1 %25978 to i32
  store i32 %25979, ptr %45, align 4, !tbaa !9
  %25980 = load i32, ptr %45, align 4, !tbaa !9
  %25981 = icmp ne i32 %25980, 0
  br i1 %25981, label %25982, label %25983

25982:                                            ; preds = %25955
  br label %26081

25983:                                            ; preds = %25955
  %25984 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %25984, ptr %45, align 4, !tbaa !9
  %25985 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %25985, ptr %46, align 4, !tbaa !9
  %25986 = load ptr, ptr %5, align 8, !tbaa !5
  %25987 = getelementptr inbounds %struct.w2c_hermes, ptr %25986, i32 0, i32 6
  %25988 = load i32, ptr %46, align 4, !tbaa !9
  %25989 = zext i32 %25988 to i64
  %25990 = add i64 %25989, 3
  %25991 = call i32 @i32_load8_u(ptr noundef %25987, i64 noundef %25990)
  store i32 %25991, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %25992 = load i32, ptr %47, align 4, !tbaa !9
  %25993 = and i32 %25992, 31
  %25994 = load i32, ptr %46, align 4, !tbaa !9
  %25995 = shl i32 %25994, %25993
  store i32 %25995, ptr %46, align 4, !tbaa !9
  %25996 = load i32, ptr %46, align 4, !tbaa !9
  %25997 = load i32, ptr %45, align 4, !tbaa !9
  %25998 = add i32 %25997, %25996
  store i32 %25998, ptr %45, align 4, !tbaa !9
  %25999 = load ptr, ptr %5, align 8, !tbaa !5
  %26000 = getelementptr inbounds %struct.w2c_hermes, ptr %25999, i32 0, i32 6
  %26001 = load i32, ptr %45, align 4, !tbaa !9
  %26002 = zext i32 %26001 to i64
  %26003 = call i64 @i64_load(ptr noundef %26000, i64 noundef %26002)
  store i64 %26003, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %26004 = load i64, ptr %54, align 8, !tbaa !11
  %26005 = load i64, ptr %55, align 8, !tbaa !11
  %26006 = icmp ugt i64 %26004, %26005
  %26007 = zext i1 %26006 to i32
  store i32 %26007, ptr %45, align 4, !tbaa !9
  %26008 = load i32, ptr %45, align 4, !tbaa !9
  %26009 = icmp ne i32 %26008, 0
  br i1 %26009, label %26010, label %26011

26010:                                            ; preds = %25983
  br label %26081

26011:                                            ; preds = %25983
  br label %26012

26012:                                            ; preds = %26011, %3095
  %26013 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26013, ptr %45, align 4, !tbaa !9
  %26014 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26014, ptr %46, align 4, !tbaa !9
  %26015 = load ptr, ptr %5, align 8, !tbaa !5
  %26016 = getelementptr inbounds %struct.w2c_hermes, ptr %26015, i32 0, i32 6
  %26017 = load i32, ptr %46, align 4, !tbaa !9
  %26018 = zext i32 %26017 to i64
  %26019 = add i64 %26018, 1
  %26020 = call i32 @i32_load8_u(ptr noundef %26016, i64 noundef %26019)
  store i32 %26020, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26021 = load i32, ptr %47, align 4, !tbaa !9
  %26022 = and i32 %26021, 31
  %26023 = load i32, ptr %46, align 4, !tbaa !9
  %26024 = shl i32 %26023, %26022
  store i32 %26024, ptr %46, align 4, !tbaa !9
  %26025 = load i32, ptr %46, align 4, !tbaa !9
  %26026 = load i32, ptr %45, align 4, !tbaa !9
  %26027 = add i32 %26026, %26025
  store i32 %26027, ptr %45, align 4, !tbaa !9
  %26028 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26028, ptr %46, align 4, !tbaa !9
  %26029 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26029, ptr %47, align 4, !tbaa !9
  %26030 = load ptr, ptr %5, align 8, !tbaa !5
  %26031 = getelementptr inbounds %struct.w2c_hermes, ptr %26030, i32 0, i32 6
  %26032 = load i32, ptr %47, align 4, !tbaa !9
  %26033 = zext i32 %26032 to i64
  %26034 = add i64 %26033, 2
  %26035 = call i32 @i32_load8_u(ptr noundef %26031, i64 noundef %26034)
  store i32 %26035, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %26036 = load i32, ptr %48, align 4, !tbaa !9
  %26037 = and i32 %26036, 31
  %26038 = load i32, ptr %47, align 4, !tbaa !9
  %26039 = shl i32 %26038, %26037
  store i32 %26039, ptr %47, align 4, !tbaa !9
  %26040 = load i32, ptr %47, align 4, !tbaa !9
  %26041 = load i32, ptr %46, align 4, !tbaa !9
  %26042 = add i32 %26041, %26040
  store i32 %26042, ptr %46, align 4, !tbaa !9
  %26043 = load ptr, ptr %5, align 8, !tbaa !5
  %26044 = getelementptr inbounds %struct.w2c_hermes, ptr %26043, i32 0, i32 6
  %26045 = load i32, ptr %46, align 4, !tbaa !9
  %26046 = zext i32 %26045 to i64
  %26047 = call double @f64_load(ptr noundef %26044, i64 noundef %26046)
  store double %26047, ptr %61, align 8, !tbaa !13
  %26048 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26048, ptr %47, align 4, !tbaa !9
  %26049 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26049, ptr %48, align 4, !tbaa !9
  %26050 = load ptr, ptr %5, align 8, !tbaa !5
  %26051 = getelementptr inbounds %struct.w2c_hermes, ptr %26050, i32 0, i32 6
  %26052 = load i32, ptr %48, align 4, !tbaa !9
  %26053 = zext i32 %26052 to i64
  %26054 = add i64 %26053, 3
  %26055 = call i32 @i32_load8_u(ptr noundef %26051, i64 noundef %26054)
  store i32 %26055, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %26056 = load i32, ptr %49, align 4, !tbaa !9
  %26057 = and i32 %26056, 31
  %26058 = load i32, ptr %48, align 4, !tbaa !9
  %26059 = shl i32 %26058, %26057
  store i32 %26059, ptr %48, align 4, !tbaa !9
  %26060 = load i32, ptr %48, align 4, !tbaa !9
  %26061 = load i32, ptr %47, align 4, !tbaa !9
  %26062 = add i32 %26061, %26060
  store i32 %26062, ptr %47, align 4, !tbaa !9
  %26063 = load ptr, ptr %5, align 8, !tbaa !5
  %26064 = getelementptr inbounds %struct.w2c_hermes, ptr %26063, i32 0, i32 6
  %26065 = load i32, ptr %47, align 4, !tbaa !9
  %26066 = zext i32 %26065 to i64
  %26067 = call double @f64_load(ptr noundef %26064, i64 noundef %26066)
  store double %26067, ptr %62, align 8, !tbaa !13
  %26068 = load double, ptr %62, align 8, !tbaa !13
  %26069 = load double, ptr %61, align 8, !tbaa !13
  %26070 = fsub double %26069, %26068
  store double %26070, ptr %61, align 8, !tbaa !13
  %26071 = load ptr, ptr %5, align 8, !tbaa !5
  %26072 = getelementptr inbounds %struct.w2c_hermes, ptr %26071, i32 0, i32 6
  %26073 = load i32, ptr %45, align 4, !tbaa !9
  %26074 = zext i32 %26073 to i64
  %26075 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %26072, i64 noundef %26074, double noundef %26075)
  %26076 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26076, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %26077 = load i32, ptr %46, align 4, !tbaa !9
  %26078 = load i32, ptr %45, align 4, !tbaa !9
  %26079 = add i32 %26078, %26077
  store i32 %26079, ptr %45, align 4, !tbaa !9
  %26080 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26080, ptr %6, align 4, !tbaa !9
  br label %2945

26081:                                            ; preds = %26010, %25982
  %26082 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26082, ptr %45, align 4, !tbaa !9
  %26083 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26083, ptr %46, align 4, !tbaa !9
  %26084 = load ptr, ptr %5, align 8, !tbaa !5
  %26085 = getelementptr inbounds %struct.w2c_hermes, ptr %26084, i32 0, i32 6
  %26086 = load i32, ptr %45, align 4, !tbaa !9
  %26087 = zext i32 %26086 to i64
  %26088 = add i64 %26087, 5808
  %26089 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26085, i64 noundef %26088, i32 noundef %26089)
  %26090 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26090, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %26091 = load i32, ptr %46, align 4, !tbaa !9
  %26092 = load i32, ptr %45, align 4, !tbaa !9
  %26093 = add i32 %26092, %26091
  store i32 %26093, ptr %45, align 4, !tbaa !9
  %26094 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26094, ptr %12, align 4, !tbaa !9
  %26095 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26095, ptr %45, align 4, !tbaa !9
  %26096 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26096, ptr %46, align 4, !tbaa !9
  %26097 = load ptr, ptr %5, align 8, !tbaa !5
  %26098 = getelementptr inbounds %struct.w2c_hermes, ptr %26097, i32 0, i32 6
  %26099 = load i32, ptr %46, align 4, !tbaa !9
  %26100 = zext i32 %26099 to i64
  %26101 = add i64 %26100, 2
  %26102 = call i32 @i32_load8_u(ptr noundef %26098, i64 noundef %26101)
  store i32 %26102, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26103 = load i32, ptr %47, align 4, !tbaa !9
  %26104 = and i32 %26103, 31
  %26105 = load i32, ptr %46, align 4, !tbaa !9
  %26106 = shl i32 %26105, %26104
  store i32 %26106, ptr %46, align 4, !tbaa !9
  %26107 = load i32, ptr %46, align 4, !tbaa !9
  %26108 = load i32, ptr %45, align 4, !tbaa !9
  %26109 = add i32 %26108, %26107
  store i32 %26109, ptr %45, align 4, !tbaa !9
  %26110 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26110, ptr %7, align 4, !tbaa !9
  %26111 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26111, ptr %45, align 4, !tbaa !9
  %26112 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26112, ptr %46, align 4, !tbaa !9
  %26113 = load ptr, ptr %5, align 8, !tbaa !5
  %26114 = getelementptr inbounds %struct.w2c_hermes, ptr %26113, i32 0, i32 6
  %26115 = load i32, ptr %46, align 4, !tbaa !9
  %26116 = zext i32 %26115 to i64
  %26117 = add i64 %26116, 3
  %26118 = call i32 @i32_load8_u(ptr noundef %26114, i64 noundef %26117)
  store i32 %26118, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26119 = load i32, ptr %47, align 4, !tbaa !9
  %26120 = and i32 %26119, 31
  %26121 = load i32, ptr %46, align 4, !tbaa !9
  %26122 = shl i32 %26121, %26120
  store i32 %26122, ptr %46, align 4, !tbaa !9
  %26123 = load i32, ptr %46, align 4, !tbaa !9
  %26124 = load i32, ptr %45, align 4, !tbaa !9
  %26125 = add i32 %26124, %26123
  store i32 %26125, ptr %45, align 4, !tbaa !9
  %26126 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26126, ptr %8, align 4, !tbaa !9
  %26127 = load ptr, ptr %5, align 8, !tbaa !5
  %26128 = getelementptr inbounds %struct.w2c_hermes, ptr %26127, i32 0, i32 3
  %26129 = load i32, ptr %26128, align 8, !tbaa !15
  store i32 %26129, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %26130 = load i32, ptr %46, align 4, !tbaa !9
  %26131 = load i32, ptr %45, align 4, !tbaa !9
  %26132 = sub i32 %26131, %26130
  store i32 %26132, ptr %45, align 4, !tbaa !9
  %26133 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26133, ptr %13, align 4, !tbaa !9
  %26134 = load i32, ptr %45, align 4, !tbaa !9
  %26135 = load ptr, ptr %5, align 8, !tbaa !5
  %26136 = getelementptr inbounds %struct.w2c_hermes, ptr %26135, i32 0, i32 3
  store i32 %26134, ptr %26136, align 8, !tbaa !15
  %26137 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26137, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %26138 = load i32, ptr %46, align 4, !tbaa !9
  %26139 = load i32, ptr %45, align 4, !tbaa !9
  %26140 = add i32 %26139, %26138
  store i32 %26140, ptr %45, align 4, !tbaa !9
  %26141 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26141, ptr %46, align 4, !tbaa !9
  %26142 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26142, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %26143 = load ptr, ptr %5, align 8, !tbaa !5
  %26144 = load i32, ptr %45, align 4, !tbaa !9
  %26145 = load i32, ptr %46, align 4, !tbaa !9
  %26146 = load i32, ptr %47, align 4, !tbaa !9
  %26147 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %26143, i32 noundef %26144, i32 noundef %26145, i32 noundef %26146, i32 noundef %26147)
  %26148 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26148, ptr %45, align 4, !tbaa !9
  %26149 = load ptr, ptr %5, align 8, !tbaa !5
  %26150 = getelementptr inbounds %struct.w2c_hermes, ptr %26149, i32 0, i32 6
  %26151 = load i32, ptr %45, align 4, !tbaa !9
  %26152 = zext i32 %26151 to i64
  %26153 = add i64 %26152, 16
  %26154 = call i32 @i32_load(ptr noundef %26150, i64 noundef %26153)
  store i32 %26154, ptr %45, align 4, !tbaa !9
  %26155 = load i32, ptr %45, align 4, !tbaa !9
  %26156 = icmp ne i32 %26155, 0
  %26157 = xor i1 %26156, true
  %26158 = zext i1 %26157 to i32
  store i32 %26158, ptr %45, align 4, !tbaa !9
  %26159 = load i32, ptr %45, align 4, !tbaa !9
  %26160 = icmp ne i32 %26159, 0
  br i1 %26160, label %26161, label %26168

26161:                                            ; preds = %26081
  %26162 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26162, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26163 = load ptr, ptr %5, align 8, !tbaa !5
  %26164 = getelementptr inbounds %struct.w2c_hermes, ptr %26163, i32 0, i32 6
  %26165 = load i32, ptr %45, align 4, !tbaa !9
  %26166 = zext i32 %26165 to i64
  %26167 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26164, i64 noundef %26166, i32 noundef %26167)
  br label %26387

26168:                                            ; preds = %26081
  %26169 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26169, ptr %45, align 4, !tbaa !9
  %26170 = load ptr, ptr %5, align 8, !tbaa !5
  %26171 = getelementptr inbounds %struct.w2c_hermes, ptr %26170, i32 0, i32 6
  %26172 = load i32, ptr %45, align 4, !tbaa !9
  %26173 = zext i32 %26172 to i64
  %26174 = add i64 %26173, 24
  %26175 = call i64 @i64_load(ptr noundef %26171, i64 noundef %26174)
  store i64 %26175, ptr %54, align 8, !tbaa !11
  %26176 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %26176, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %26177 = load i64, ptr %54, align 8, !tbaa !11
  %26178 = load i64, ptr %55, align 8, !tbaa !11
  %26179 = and i64 %26178, 63
  %26180 = ashr i64 %26177, %26179
  store i64 %26180, ptr %54, align 8, !tbaa !11
  %26181 = load i64, ptr %54, align 8, !tbaa !11
  %26182 = trunc i64 %26181 to i32
  store i32 %26182, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %26183 = load i32, ptr %45, align 4, !tbaa !9
  %26184 = load i32, ptr %46, align 4, !tbaa !9
  %26185 = icmp ne i32 %26183, %26184
  %26186 = zext i1 %26185 to i32
  store i32 %26186, ptr %45, align 4, !tbaa !9
  %26187 = load i32, ptr %45, align 4, !tbaa !9
  %26188 = icmp ne i32 %26187, 0
  br i1 %26188, label %26189, label %26369

26189:                                            ; preds = %26168
  %26190 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26190, ptr %45, align 4, !tbaa !9
  %26191 = load ptr, ptr %5, align 8, !tbaa !5
  %26192 = getelementptr inbounds %struct.w2c_hermes, ptr %26191, i32 0, i32 6
  %26193 = load i32, ptr %45, align 4, !tbaa !9
  %26194 = zext i32 %26193 to i64
  %26195 = add i64 %26194, 4
  %26196 = call i32 @i32_load(ptr noundef %26192, i64 noundef %26195)
  store i32 %26196, ptr %45, align 4, !tbaa !9
  %26197 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26197, ptr %6, align 4, !tbaa !9
  %26198 = load ptr, ptr %5, align 8, !tbaa !5
  %26199 = getelementptr inbounds %struct.w2c_hermes, ptr %26198, i32 0, i32 6
  %26200 = load i32, ptr %45, align 4, !tbaa !9
  %26201 = zext i32 %26200 to i64
  %26202 = add i64 %26201, 164
  %26203 = call i32 @i32_load(ptr noundef %26199, i64 noundef %26202)
  store i32 %26203, ptr %45, align 4, !tbaa !9
  %26204 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26204, ptr %7, align 4, !tbaa !9
  %26205 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26205, ptr %46, align 4, !tbaa !9
  %26206 = load ptr, ptr %5, align 8, !tbaa !5
  %26207 = getelementptr inbounds %struct.w2c_hermes, ptr %26206, i32 0, i32 6
  %26208 = load i32, ptr %46, align 4, !tbaa !9
  %26209 = zext i32 %26208 to i64
  %26210 = add i64 %26209, 168
  %26211 = call i32 @i32_load(ptr noundef %26207, i64 noundef %26210)
  store i32 %26211, ptr %46, align 4, !tbaa !9
  %26212 = load i32, ptr %45, align 4, !tbaa !9
  %26213 = load i32, ptr %46, align 4, !tbaa !9
  %26214 = icmp ult i32 %26212, %26213
  %26215 = zext i1 %26214 to i32
  store i32 %26215, ptr %45, align 4, !tbaa !9
  %26216 = load i32, ptr %45, align 4, !tbaa !9
  %26217 = icmp ne i32 %26216, 0
  br i1 %26217, label %26218, label %26237

26218:                                            ; preds = %26189
  %26219 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26219, ptr %45, align 4, !tbaa !9
  %26220 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26220, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %26221 = load i32, ptr %47, align 4, !tbaa !9
  %26222 = load i32, ptr %46, align 4, !tbaa !9
  %26223 = add i32 %26222, %26221
  store i32 %26223, ptr %46, align 4, !tbaa !9
  %26224 = load ptr, ptr %5, align 8, !tbaa !5
  %26225 = getelementptr inbounds %struct.w2c_hermes, ptr %26224, i32 0, i32 6
  %26226 = load i32, ptr %45, align 4, !tbaa !9
  %26227 = zext i32 %26226 to i64
  %26228 = add i64 %26227, 164
  %26229 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26225, i64 noundef %26228, i32 noundef %26229)
  %26230 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26230, ptr %45, align 4, !tbaa !9
  %26231 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26231, ptr %55, align 8, !tbaa !11
  %26232 = load ptr, ptr %5, align 8, !tbaa !5
  %26233 = getelementptr inbounds %struct.w2c_hermes, ptr %26232, i32 0, i32 6
  %26234 = load i32, ptr %45, align 4, !tbaa !9
  %26235 = zext i32 %26234 to i64
  %26236 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26233, i64 noundef %26235, i64 noundef %26236)
  br label %26245

26237:                                            ; preds = %26189
  %26238 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26238, ptr %45, align 4, !tbaa !9
  %26239 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26239, ptr %55, align 8, !tbaa !11
  %26240 = load ptr, ptr %5, align 8, !tbaa !5
  %26241 = load i32, ptr %45, align 4, !tbaa !9
  %26242 = load i64, ptr %55, align 8, !tbaa !11
  %26243 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %26240, i32 noundef %26241, i64 noundef %26242)
  store i32 %26243, ptr %45, align 4, !tbaa !9
  %26244 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26244, ptr %7, align 4, !tbaa !9
  br label %26245

26245:                                            ; preds = %26237, %26218
  %26246 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26246, ptr %45, align 4, !tbaa !9
  %26247 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26247, ptr %46, align 4, !tbaa !9
  %26248 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26248, ptr %47, align 4, !tbaa !9
  %26249 = load ptr, ptr %5, align 8, !tbaa !5
  %26250 = load i32, ptr %45, align 4, !tbaa !9
  %26251 = load i32, ptr %46, align 4, !tbaa !9
  %26252 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %26249, i32 noundef %26250, i32 noundef %26251, i32 noundef %26252)
  %26253 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26253, ptr %45, align 4, !tbaa !9
  %26254 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26254, ptr %46, align 4, !tbaa !9
  %26255 = load ptr, ptr %5, align 8, !tbaa !5
  %26256 = getelementptr inbounds %struct.w2c_hermes, ptr %26255, i32 0, i32 6
  %26257 = load i32, ptr %46, align 4, !tbaa !9
  %26258 = zext i32 %26257 to i64
  %26259 = call i32 @i32_load(ptr noundef %26256, i64 noundef %26258)
  store i32 %26259, ptr %46, align 4, !tbaa !9
  %26260 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %26260, ptr %6, align 4, !tbaa !9
  %26261 = load ptr, ptr %5, align 8, !tbaa !5
  %26262 = getelementptr inbounds %struct.w2c_hermes, ptr %26261, i32 0, i32 6
  %26263 = load i32, ptr %45, align 4, !tbaa !9
  %26264 = zext i32 %26263 to i64
  %26265 = add i64 %26264, 16
  %26266 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26262, i64 noundef %26265, i32 noundef %26266)
  %26267 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26267, ptr %45, align 4, !tbaa !9
  %26268 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26268, ptr %46, align 4, !tbaa !9
  %26269 = load ptr, ptr %5, align 8, !tbaa !5
  %26270 = getelementptr inbounds %struct.w2c_hermes, ptr %26269, i32 0, i32 6
  %26271 = load i32, ptr %46, align 4, !tbaa !9
  %26272 = zext i32 %26271 to i64
  %26273 = add i64 %26272, 8
  %26274 = call i64 @i64_load(ptr noundef %26270, i64 noundef %26273)
  store i64 %26274, ptr %55, align 8, !tbaa !11
  %26275 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %26275, ptr %39, align 8, !tbaa !11
  %26276 = load ptr, ptr %5, align 8, !tbaa !5
  %26277 = getelementptr inbounds %struct.w2c_hermes, ptr %26276, i32 0, i32 6
  %26278 = load i32, ptr %45, align 4, !tbaa !9
  %26279 = zext i32 %26278 to i64
  %26280 = add i64 %26279, 24
  %26281 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26277, i64 noundef %26280, i64 noundef %26281)
  %26282 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26282, ptr %45, align 4, !tbaa !9
  %26283 = load i32, ptr %45, align 4, !tbaa !9
  %26284 = icmp ne i32 %26283, 0
  %26285 = xor i1 %26284, true
  %26286 = zext i1 %26285 to i32
  store i32 %26286, ptr %45, align 4, !tbaa !9
  %26287 = load i32, ptr %45, align 4, !tbaa !9
  %26288 = icmp ne i32 %26287, 0
  br i1 %26288, label %26289, label %26296

26289:                                            ; preds = %26245
  %26290 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26290, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26291 = load ptr, ptr %5, align 8, !tbaa !5
  %26292 = getelementptr inbounds %struct.w2c_hermes, ptr %26291, i32 0, i32 6
  %26293 = load i32, ptr %45, align 4, !tbaa !9
  %26294 = zext i32 %26293 to i64
  %26295 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26292, i64 noundef %26294, i32 noundef %26295)
  br label %26387

26296:                                            ; preds = %26245
  %26297 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26297, ptr %45, align 4, !tbaa !9
  %26298 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26298, ptr %46, align 4, !tbaa !9
  %26299 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %26299, ptr %47, align 4, !tbaa !9
  %26300 = load ptr, ptr %5, align 8, !tbaa !5
  %26301 = load i32, ptr %45, align 4, !tbaa !9
  %26302 = load i32, ptr %46, align 4, !tbaa !9
  %26303 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %26300, i32 noundef %26301, i32 noundef %26302, i32 noundef %26303)
  %26304 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26304, ptr %45, align 4, !tbaa !9
  %26305 = load ptr, ptr %5, align 8, !tbaa !5
  %26306 = getelementptr inbounds %struct.w2c_hermes, ptr %26305, i32 0, i32 6
  %26307 = load i32, ptr %45, align 4, !tbaa !9
  %26308 = zext i32 %26307 to i64
  %26309 = call i32 @i32_load(ptr noundef %26306, i64 noundef %26308)
  store i32 %26309, ptr %45, align 4, !tbaa !9
  %26310 = load i32, ptr %45, align 4, !tbaa !9
  %26311 = icmp ne i32 %26310, 0
  %26312 = xor i1 %26311, true
  %26313 = zext i1 %26312 to i32
  store i32 %26313, ptr %45, align 4, !tbaa !9
  %26314 = load i32, ptr %45, align 4, !tbaa !9
  %26315 = icmp ne i32 %26314, 0
  br i1 %26315, label %26316, label %26323

26316:                                            ; preds = %26296
  %26317 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26317, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26318 = load ptr, ptr %5, align 8, !tbaa !5
  %26319 = getelementptr inbounds %struct.w2c_hermes, ptr %26318, i32 0, i32 6
  %26320 = load i32, ptr %45, align 4, !tbaa !9
  %26321 = zext i32 %26320 to i64
  %26322 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26319, i64 noundef %26321, i32 noundef %26322)
  br label %26387

26323:                                            ; preds = %26296
  %26324 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26324, ptr %45, align 4, !tbaa !9
  %26325 = load ptr, ptr %5, align 8, !tbaa !5
  %26326 = getelementptr inbounds %struct.w2c_hermes, ptr %26325, i32 0, i32 6
  %26327 = load i32, ptr %45, align 4, !tbaa !9
  %26328 = zext i32 %26327 to i64
  %26329 = add i64 %26328, 8
  %26330 = call double @f64_load(ptr noundef %26326, i64 noundef %26329)
  store double %26330, ptr %60, align 8, !tbaa !13
  %26331 = load double, ptr %60, align 8, !tbaa !13
  store double %26331, ptr %43, align 8, !tbaa !13
  %26332 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26332, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %26333 = load ptr, ptr %5, align 8, !tbaa !5
  %26334 = getelementptr inbounds %struct.w2c_hermes, ptr %26333, i32 0, i32 6
  %26335 = load i32, ptr %45, align 4, !tbaa !9
  %26336 = zext i32 %26335 to i64
  %26337 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26334, i64 noundef %26336, i32 noundef %26337)
  %26338 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26338, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %26339 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26339, ptr %56, align 8, !tbaa !11
  %26340 = load i64, ptr %56, align 8, !tbaa !11
  %26341 = call double @f64_reinterpret_i64(i64 noundef %26340)
  store double %26341, ptr %62, align 8, !tbaa !13
  %26342 = load double, ptr %43, align 8, !tbaa !13
  store double %26342, ptr %63, align 8, !tbaa !13
  %26343 = load double, ptr %63, align 8, !tbaa !13
  %26344 = load double, ptr %62, align 8, !tbaa !13
  %26345 = fsub double %26344, %26343
  store double %26345, ptr %62, align 8, !tbaa !13
  %26346 = load double, ptr %62, align 8, !tbaa !13
  store double %26346, ptr %43, align 8, !tbaa !13
  %26347 = load double, ptr %62, align 8, !tbaa !13
  %26348 = call i64 @i64_reinterpret_f64(double noundef %26347)
  store i64 %26348, ptr %56, align 8, !tbaa !11
  %26349 = load double, ptr %43, align 8, !tbaa !13
  store double %26349, ptr %63, align 8, !tbaa !13
  %26350 = load double, ptr %43, align 8, !tbaa !13
  store double %26350, ptr %64, align 8, !tbaa !13
  %26351 = load double, ptr %63, align 8, !tbaa !13
  %26352 = load double, ptr %64, align 8, !tbaa !13
  %26353 = fcmp une double %26351, %26352
  %26354 = zext i1 %26353 to i32
  store i32 %26354, ptr %48, align 4, !tbaa !9
  %26355 = load i32, ptr %48, align 4, !tbaa !9
  %26356 = icmp ne i32 %26355, 0
  br i1 %26356, label %26357, label %26359

26357:                                            ; preds = %26323
  %26358 = load i64, ptr %55, align 8, !tbaa !11
  br label %26361

26359:                                            ; preds = %26323
  %26360 = load i64, ptr %56, align 8, !tbaa !11
  br label %26361

26361:                                            ; preds = %26359, %26357
  %26362 = phi i64 [ %26358, %26357 ], [ %26360, %26359 ]
  store i64 %26362, ptr %55, align 8, !tbaa !11
  %26363 = load ptr, ptr %5, align 8, !tbaa !5
  %26364 = getelementptr inbounds %struct.w2c_hermes, ptr %26363, i32 0, i32 6
  %26365 = load i32, ptr %45, align 4, !tbaa !9
  %26366 = zext i32 %26365 to i64
  %26367 = add i64 %26366, 8
  %26368 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26364, i64 noundef %26367, i64 noundef %26368)
  br label %26387

26369:                                            ; preds = %26168
  %26370 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26370, ptr %45, align 4, !tbaa !9
  %26371 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26371, ptr %46, align 4, !tbaa !9
  store i32 544, ptr %47, align 4, !tbaa !9
  %26372 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26372, ptr %48, align 4, !tbaa !9
  %26373 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26373, ptr %58, align 8, !tbaa !11
  %26374 = load i64, ptr %58, align 8, !tbaa !11
  %26375 = trunc i64 %26374 to i32
  store i32 %26375, ptr %49, align 4, !tbaa !9
  %26376 = load ptr, ptr %5, align 8, !tbaa !5
  %26377 = load i32, ptr %48, align 4, !tbaa !9
  %26378 = load i32, ptr %49, align 4, !tbaa !9
  %26379 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %26376, i32 noundef %26377, i32 noundef %26378)
  store i32 %26379, ptr %48, align 4, !tbaa !9
  %26380 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %26380, ptr %49, align 4, !tbaa !9
  %26381 = load ptr, ptr %5, align 8, !tbaa !5
  %26382 = load i32, ptr %45, align 4, !tbaa !9
  %26383 = load i32, ptr %46, align 4, !tbaa !9
  %26384 = load i32, ptr %47, align 4, !tbaa !9
  %26385 = load i32, ptr %48, align 4, !tbaa !9
  %26386 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %26381, i32 noundef %26382, i32 noundef %26383, i32 noundef %26384, i32 noundef %26385, i32 noundef %26386)
  br label %26387

26387:                                            ; preds = %26369, %26361, %26316, %26289, %26161
  %26388 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26388, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %26389 = load i32, ptr %46, align 4, !tbaa !9
  %26390 = load i32, ptr %45, align 4, !tbaa !9
  %26391 = add i32 %26390, %26389
  store i32 %26391, ptr %45, align 4, !tbaa !9
  %26392 = load i32, ptr %45, align 4, !tbaa !9
  %26393 = load ptr, ptr %5, align 8, !tbaa !5
  %26394 = getelementptr inbounds %struct.w2c_hermes, ptr %26393, i32 0, i32 3
  store i32 %26392, ptr %26394, align 8, !tbaa !15
  %26395 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26395, ptr %45, align 4, !tbaa !9
  %26396 = load ptr, ptr %5, align 8, !tbaa !5
  %26397 = getelementptr inbounds %struct.w2c_hermes, ptr %26396, i32 0, i32 6
  %26398 = load i32, ptr %45, align 4, !tbaa !9
  %26399 = zext i32 %26398 to i64
  %26400 = add i64 %26399, 5808
  %26401 = call i32 @i32_load(ptr noundef %26397, i64 noundef %26400)
  store i32 %26401, ptr %45, align 4, !tbaa !9
  %26402 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26402, ptr %6, align 4, !tbaa !9
  %26403 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26403, ptr %45, align 4, !tbaa !9
  %26404 = load ptr, ptr %5, align 8, !tbaa !5
  %26405 = getelementptr inbounds %struct.w2c_hermes, ptr %26404, i32 0, i32 6
  %26406 = load i32, ptr %45, align 4, !tbaa !9
  %26407 = zext i32 %26406 to i64
  %26408 = add i64 %26407, 304
  %26409 = call i32 @i32_load(ptr noundef %26405, i64 noundef %26408)
  store i32 %26409, ptr %45, align 4, !tbaa !9
  %26410 = load i32, ptr %45, align 4, !tbaa !9
  %26411 = icmp ne i32 %26410, 0
  %26412 = xor i1 %26411, true
  %26413 = zext i1 %26412 to i32
  store i32 %26413, ptr %45, align 4, !tbaa !9
  %26414 = load i32, ptr %45, align 4, !tbaa !9
  %26415 = icmp ne i32 %26414, 0
  br i1 %26415, label %26416, label %26417

26416:                                            ; preds = %26387
  br label %43136

26417:                                            ; preds = %26387
  %26418 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26418, ptr %45, align 4, !tbaa !9
  %26419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26419, ptr %46, align 4, !tbaa !9
  %26420 = load ptr, ptr %5, align 8, !tbaa !5
  %26421 = getelementptr inbounds %struct.w2c_hermes, ptr %26420, i32 0, i32 6
  %26422 = load i32, ptr %46, align 4, !tbaa !9
  %26423 = zext i32 %26422 to i64
  %26424 = add i64 %26423, 1
  %26425 = call i32 @i32_load8_u(ptr noundef %26421, i64 noundef %26424)
  store i32 %26425, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26426 = load i32, ptr %47, align 4, !tbaa !9
  %26427 = and i32 %26426, 31
  %26428 = load i32, ptr %46, align 4, !tbaa !9
  %26429 = shl i32 %26428, %26427
  store i32 %26429, ptr %46, align 4, !tbaa !9
  %26430 = load i32, ptr %46, align 4, !tbaa !9
  %26431 = load i32, ptr %45, align 4, !tbaa !9
  %26432 = add i32 %26431, %26430
  store i32 %26432, ptr %45, align 4, !tbaa !9
  %26433 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26433, ptr %46, align 4, !tbaa !9
  %26434 = load ptr, ptr %5, align 8, !tbaa !5
  %26435 = getelementptr inbounds %struct.w2c_hermes, ptr %26434, i32 0, i32 6
  %26436 = load i32, ptr %46, align 4, !tbaa !9
  %26437 = zext i32 %26436 to i64
  %26438 = add i64 %26437, 312
  %26439 = call i64 @i64_load(ptr noundef %26435, i64 noundef %26438)
  store i64 %26439, ptr %55, align 8, !tbaa !11
  %26440 = load ptr, ptr %5, align 8, !tbaa !5
  %26441 = getelementptr inbounds %struct.w2c_hermes, ptr %26440, i32 0, i32 6
  %26442 = load i32, ptr %45, align 4, !tbaa !9
  %26443 = zext i32 %26442 to i64
  %26444 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26441, i64 noundef %26443, i64 noundef %26444)
  %26445 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26445, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26446 = load ptr, ptr %5, align 8, !tbaa !5
  %26447 = getelementptr inbounds %struct.w2c_hermes, ptr %26446, i32 0, i32 6
  %26448 = load i32, ptr %45, align 4, !tbaa !9
  %26449 = zext i32 %26448 to i64
  %26450 = add i64 %26449, 516
  %26451 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26447, i64 noundef %26450, i32 noundef %26451)
  %26452 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26452, ptr %45, align 4, !tbaa !9
  %26453 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %26453, ptr %46, align 4, !tbaa !9
  %26454 = load ptr, ptr %5, align 8, !tbaa !5
  %26455 = getelementptr inbounds %struct.w2c_hermes, ptr %26454, i32 0, i32 6
  %26456 = load i32, ptr %45, align 4, !tbaa !9
  %26457 = zext i32 %26456 to i64
  %26458 = add i64 %26457, 512
  %26459 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26455, i64 noundef %26458, i32 noundef %26459)
  %26460 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26460, ptr %45, align 4, !tbaa !9
  %26461 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %26461, ptr %46, align 4, !tbaa !9
  %26462 = load ptr, ptr %5, align 8, !tbaa !5
  %26463 = getelementptr inbounds %struct.w2c_hermes, ptr %26462, i32 0, i32 6
  %26464 = load i32, ptr %45, align 4, !tbaa !9
  %26465 = zext i32 %26464 to i64
  %26466 = add i64 %26465, 508
  %26467 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26463, i64 noundef %26466, i32 noundef %26467)
  %26468 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26468, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %26469 = load i32, ptr %46, align 4, !tbaa !9
  %26470 = load i32, ptr %45, align 4, !tbaa !9
  %26471 = add i32 %26470, %26469
  store i32 %26471, ptr %45, align 4, !tbaa !9
  %26472 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26472, ptr %6, align 4, !tbaa !9
  br label %2945

26473:                                            ; preds = %3096
  %26474 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26474, ptr %45, align 4, !tbaa !9
  %26475 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26475, ptr %46, align 4, !tbaa !9
  %26476 = load ptr, ptr %5, align 8, !tbaa !5
  %26477 = getelementptr inbounds %struct.w2c_hermes, ptr %26476, i32 0, i32 6
  %26478 = load i32, ptr %46, align 4, !tbaa !9
  %26479 = zext i32 %26478 to i64
  %26480 = add i64 %26479, 2
  %26481 = call i32 @i32_load8_u(ptr noundef %26477, i64 noundef %26480)
  store i32 %26481, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26482 = load i32, ptr %47, align 4, !tbaa !9
  %26483 = and i32 %26482, 31
  %26484 = load i32, ptr %46, align 4, !tbaa !9
  %26485 = shl i32 %26484, %26483
  store i32 %26485, ptr %46, align 4, !tbaa !9
  %26486 = load i32, ptr %46, align 4, !tbaa !9
  %26487 = load i32, ptr %45, align 4, !tbaa !9
  %26488 = add i32 %26487, %26486
  store i32 %26488, ptr %45, align 4, !tbaa !9
  %26489 = load ptr, ptr %5, align 8, !tbaa !5
  %26490 = getelementptr inbounds %struct.w2c_hermes, ptr %26489, i32 0, i32 6
  %26491 = load i32, ptr %45, align 4, !tbaa !9
  %26492 = zext i32 %26491 to i64
  %26493 = call i64 @i64_load(ptr noundef %26490, i64 noundef %26492)
  store i64 %26493, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %26494 = load i64, ptr %54, align 8, !tbaa !11
  %26495 = load i64, ptr %55, align 8, !tbaa !11
  %26496 = icmp ugt i64 %26494, %26495
  %26497 = zext i1 %26496 to i32
  store i32 %26497, ptr %45, align 4, !tbaa !9
  %26498 = load i32, ptr %45, align 4, !tbaa !9
  %26499 = icmp ne i32 %26498, 0
  br i1 %26499, label %26500, label %26501

26500:                                            ; preds = %26473
  br label %26599

26501:                                            ; preds = %26473
  %26502 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26502, ptr %45, align 4, !tbaa !9
  %26503 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26503, ptr %46, align 4, !tbaa !9
  %26504 = load ptr, ptr %5, align 8, !tbaa !5
  %26505 = getelementptr inbounds %struct.w2c_hermes, ptr %26504, i32 0, i32 6
  %26506 = load i32, ptr %46, align 4, !tbaa !9
  %26507 = zext i32 %26506 to i64
  %26508 = add i64 %26507, 3
  %26509 = call i32 @i32_load8_u(ptr noundef %26505, i64 noundef %26508)
  store i32 %26509, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26510 = load i32, ptr %47, align 4, !tbaa !9
  %26511 = and i32 %26510, 31
  %26512 = load i32, ptr %46, align 4, !tbaa !9
  %26513 = shl i32 %26512, %26511
  store i32 %26513, ptr %46, align 4, !tbaa !9
  %26514 = load i32, ptr %46, align 4, !tbaa !9
  %26515 = load i32, ptr %45, align 4, !tbaa !9
  %26516 = add i32 %26515, %26514
  store i32 %26516, ptr %45, align 4, !tbaa !9
  %26517 = load ptr, ptr %5, align 8, !tbaa !5
  %26518 = getelementptr inbounds %struct.w2c_hermes, ptr %26517, i32 0, i32 6
  %26519 = load i32, ptr %45, align 4, !tbaa !9
  %26520 = zext i32 %26519 to i64
  %26521 = call i64 @i64_load(ptr noundef %26518, i64 noundef %26520)
  store i64 %26521, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %26522 = load i64, ptr %54, align 8, !tbaa !11
  %26523 = load i64, ptr %55, align 8, !tbaa !11
  %26524 = icmp ugt i64 %26522, %26523
  %26525 = zext i1 %26524 to i32
  store i32 %26525, ptr %45, align 4, !tbaa !9
  %26526 = load i32, ptr %45, align 4, !tbaa !9
  %26527 = icmp ne i32 %26526, 0
  br i1 %26527, label %26528, label %26529

26528:                                            ; preds = %26501
  br label %26599

26529:                                            ; preds = %26501
  br label %26530

26530:                                            ; preds = %26529, %3097
  %26531 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26531, ptr %45, align 4, !tbaa !9
  %26532 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26532, ptr %46, align 4, !tbaa !9
  %26533 = load ptr, ptr %5, align 8, !tbaa !5
  %26534 = getelementptr inbounds %struct.w2c_hermes, ptr %26533, i32 0, i32 6
  %26535 = load i32, ptr %46, align 4, !tbaa !9
  %26536 = zext i32 %26535 to i64
  %26537 = add i64 %26536, 1
  %26538 = call i32 @i32_load8_u(ptr noundef %26534, i64 noundef %26537)
  store i32 %26538, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26539 = load i32, ptr %47, align 4, !tbaa !9
  %26540 = and i32 %26539, 31
  %26541 = load i32, ptr %46, align 4, !tbaa !9
  %26542 = shl i32 %26541, %26540
  store i32 %26542, ptr %46, align 4, !tbaa !9
  %26543 = load i32, ptr %46, align 4, !tbaa !9
  %26544 = load i32, ptr %45, align 4, !tbaa !9
  %26545 = add i32 %26544, %26543
  store i32 %26545, ptr %45, align 4, !tbaa !9
  %26546 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26546, ptr %46, align 4, !tbaa !9
  %26547 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26547, ptr %47, align 4, !tbaa !9
  %26548 = load ptr, ptr %5, align 8, !tbaa !5
  %26549 = getelementptr inbounds %struct.w2c_hermes, ptr %26548, i32 0, i32 6
  %26550 = load i32, ptr %47, align 4, !tbaa !9
  %26551 = zext i32 %26550 to i64
  %26552 = add i64 %26551, 2
  %26553 = call i32 @i32_load8_u(ptr noundef %26549, i64 noundef %26552)
  store i32 %26553, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %26554 = load i32, ptr %48, align 4, !tbaa !9
  %26555 = and i32 %26554, 31
  %26556 = load i32, ptr %47, align 4, !tbaa !9
  %26557 = shl i32 %26556, %26555
  store i32 %26557, ptr %47, align 4, !tbaa !9
  %26558 = load i32, ptr %47, align 4, !tbaa !9
  %26559 = load i32, ptr %46, align 4, !tbaa !9
  %26560 = add i32 %26559, %26558
  store i32 %26560, ptr %46, align 4, !tbaa !9
  %26561 = load ptr, ptr %5, align 8, !tbaa !5
  %26562 = getelementptr inbounds %struct.w2c_hermes, ptr %26561, i32 0, i32 6
  %26563 = load i32, ptr %46, align 4, !tbaa !9
  %26564 = zext i32 %26563 to i64
  %26565 = call double @f64_load(ptr noundef %26562, i64 noundef %26564)
  store double %26565, ptr %61, align 8, !tbaa !13
  %26566 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26566, ptr %47, align 4, !tbaa !9
  %26567 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26567, ptr %48, align 4, !tbaa !9
  %26568 = load ptr, ptr %5, align 8, !tbaa !5
  %26569 = getelementptr inbounds %struct.w2c_hermes, ptr %26568, i32 0, i32 6
  %26570 = load i32, ptr %48, align 4, !tbaa !9
  %26571 = zext i32 %26570 to i64
  %26572 = add i64 %26571, 3
  %26573 = call i32 @i32_load8_u(ptr noundef %26569, i64 noundef %26572)
  store i32 %26573, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %26574 = load i32, ptr %49, align 4, !tbaa !9
  %26575 = and i32 %26574, 31
  %26576 = load i32, ptr %48, align 4, !tbaa !9
  %26577 = shl i32 %26576, %26575
  store i32 %26577, ptr %48, align 4, !tbaa !9
  %26578 = load i32, ptr %48, align 4, !tbaa !9
  %26579 = load i32, ptr %47, align 4, !tbaa !9
  %26580 = add i32 %26579, %26578
  store i32 %26580, ptr %47, align 4, !tbaa !9
  %26581 = load ptr, ptr %5, align 8, !tbaa !5
  %26582 = getelementptr inbounds %struct.w2c_hermes, ptr %26581, i32 0, i32 6
  %26583 = load i32, ptr %47, align 4, !tbaa !9
  %26584 = zext i32 %26583 to i64
  %26585 = call double @f64_load(ptr noundef %26582, i64 noundef %26584)
  store double %26585, ptr %62, align 8, !tbaa !13
  %26586 = load double, ptr %62, align 8, !tbaa !13
  %26587 = load double, ptr %61, align 8, !tbaa !13
  %26588 = fmul double %26587, %26586
  store double %26588, ptr %61, align 8, !tbaa !13
  %26589 = load ptr, ptr %5, align 8, !tbaa !5
  %26590 = getelementptr inbounds %struct.w2c_hermes, ptr %26589, i32 0, i32 6
  %26591 = load i32, ptr %45, align 4, !tbaa !9
  %26592 = zext i32 %26591 to i64
  %26593 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %26590, i64 noundef %26592, double noundef %26593)
  %26594 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26594, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %26595 = load i32, ptr %46, align 4, !tbaa !9
  %26596 = load i32, ptr %45, align 4, !tbaa !9
  %26597 = add i32 %26596, %26595
  store i32 %26597, ptr %45, align 4, !tbaa !9
  %26598 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26598, ptr %6, align 4, !tbaa !9
  br label %2945

26599:                                            ; preds = %26528, %26500
  %26600 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26600, ptr %45, align 4, !tbaa !9
  %26601 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26601, ptr %46, align 4, !tbaa !9
  %26602 = load ptr, ptr %5, align 8, !tbaa !5
  %26603 = getelementptr inbounds %struct.w2c_hermes, ptr %26602, i32 0, i32 6
  %26604 = load i32, ptr %45, align 4, !tbaa !9
  %26605 = zext i32 %26604 to i64
  %26606 = add i64 %26605, 5808
  %26607 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26603, i64 noundef %26606, i32 noundef %26607)
  %26608 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26608, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %26609 = load i32, ptr %46, align 4, !tbaa !9
  %26610 = load i32, ptr %45, align 4, !tbaa !9
  %26611 = add i32 %26610, %26609
  store i32 %26611, ptr %45, align 4, !tbaa !9
  %26612 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26612, ptr %12, align 4, !tbaa !9
  %26613 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26613, ptr %45, align 4, !tbaa !9
  %26614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26614, ptr %46, align 4, !tbaa !9
  %26615 = load ptr, ptr %5, align 8, !tbaa !5
  %26616 = getelementptr inbounds %struct.w2c_hermes, ptr %26615, i32 0, i32 6
  %26617 = load i32, ptr %46, align 4, !tbaa !9
  %26618 = zext i32 %26617 to i64
  %26619 = add i64 %26618, 2
  %26620 = call i32 @i32_load8_u(ptr noundef %26616, i64 noundef %26619)
  store i32 %26620, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26621 = load i32, ptr %47, align 4, !tbaa !9
  %26622 = and i32 %26621, 31
  %26623 = load i32, ptr %46, align 4, !tbaa !9
  %26624 = shl i32 %26623, %26622
  store i32 %26624, ptr %46, align 4, !tbaa !9
  %26625 = load i32, ptr %46, align 4, !tbaa !9
  %26626 = load i32, ptr %45, align 4, !tbaa !9
  %26627 = add i32 %26626, %26625
  store i32 %26627, ptr %45, align 4, !tbaa !9
  %26628 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26628, ptr %7, align 4, !tbaa !9
  %26629 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26629, ptr %45, align 4, !tbaa !9
  %26630 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26630, ptr %46, align 4, !tbaa !9
  %26631 = load ptr, ptr %5, align 8, !tbaa !5
  %26632 = getelementptr inbounds %struct.w2c_hermes, ptr %26631, i32 0, i32 6
  %26633 = load i32, ptr %46, align 4, !tbaa !9
  %26634 = zext i32 %26633 to i64
  %26635 = add i64 %26634, 3
  %26636 = call i32 @i32_load8_u(ptr noundef %26632, i64 noundef %26635)
  store i32 %26636, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26637 = load i32, ptr %47, align 4, !tbaa !9
  %26638 = and i32 %26637, 31
  %26639 = load i32, ptr %46, align 4, !tbaa !9
  %26640 = shl i32 %26639, %26638
  store i32 %26640, ptr %46, align 4, !tbaa !9
  %26641 = load i32, ptr %46, align 4, !tbaa !9
  %26642 = load i32, ptr %45, align 4, !tbaa !9
  %26643 = add i32 %26642, %26641
  store i32 %26643, ptr %45, align 4, !tbaa !9
  %26644 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26644, ptr %8, align 4, !tbaa !9
  %26645 = load ptr, ptr %5, align 8, !tbaa !5
  %26646 = getelementptr inbounds %struct.w2c_hermes, ptr %26645, i32 0, i32 3
  %26647 = load i32, ptr %26646, align 8, !tbaa !15
  store i32 %26647, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %26648 = load i32, ptr %46, align 4, !tbaa !9
  %26649 = load i32, ptr %45, align 4, !tbaa !9
  %26650 = sub i32 %26649, %26648
  store i32 %26650, ptr %45, align 4, !tbaa !9
  %26651 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26651, ptr %13, align 4, !tbaa !9
  %26652 = load i32, ptr %45, align 4, !tbaa !9
  %26653 = load ptr, ptr %5, align 8, !tbaa !5
  %26654 = getelementptr inbounds %struct.w2c_hermes, ptr %26653, i32 0, i32 3
  store i32 %26652, ptr %26654, align 8, !tbaa !15
  %26655 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26655, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %26656 = load i32, ptr %46, align 4, !tbaa !9
  %26657 = load i32, ptr %45, align 4, !tbaa !9
  %26658 = add i32 %26657, %26656
  store i32 %26658, ptr %45, align 4, !tbaa !9
  %26659 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26659, ptr %46, align 4, !tbaa !9
  %26660 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26660, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %26661 = load ptr, ptr %5, align 8, !tbaa !5
  %26662 = load i32, ptr %45, align 4, !tbaa !9
  %26663 = load i32, ptr %46, align 4, !tbaa !9
  %26664 = load i32, ptr %47, align 4, !tbaa !9
  %26665 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %26661, i32 noundef %26662, i32 noundef %26663, i32 noundef %26664, i32 noundef %26665)
  %26666 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26666, ptr %45, align 4, !tbaa !9
  %26667 = load ptr, ptr %5, align 8, !tbaa !5
  %26668 = getelementptr inbounds %struct.w2c_hermes, ptr %26667, i32 0, i32 6
  %26669 = load i32, ptr %45, align 4, !tbaa !9
  %26670 = zext i32 %26669 to i64
  %26671 = add i64 %26670, 16
  %26672 = call i32 @i32_load(ptr noundef %26668, i64 noundef %26671)
  store i32 %26672, ptr %45, align 4, !tbaa !9
  %26673 = load i32, ptr %45, align 4, !tbaa !9
  %26674 = icmp ne i32 %26673, 0
  %26675 = xor i1 %26674, true
  %26676 = zext i1 %26675 to i32
  store i32 %26676, ptr %45, align 4, !tbaa !9
  %26677 = load i32, ptr %45, align 4, !tbaa !9
  %26678 = icmp ne i32 %26677, 0
  br i1 %26678, label %26679, label %26686

26679:                                            ; preds = %26599
  %26680 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26680, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26681 = load ptr, ptr %5, align 8, !tbaa !5
  %26682 = getelementptr inbounds %struct.w2c_hermes, ptr %26681, i32 0, i32 6
  %26683 = load i32, ptr %45, align 4, !tbaa !9
  %26684 = zext i32 %26683 to i64
  %26685 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26682, i64 noundef %26684, i32 noundef %26685)
  br label %26905

26686:                                            ; preds = %26599
  %26687 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26687, ptr %45, align 4, !tbaa !9
  %26688 = load ptr, ptr %5, align 8, !tbaa !5
  %26689 = getelementptr inbounds %struct.w2c_hermes, ptr %26688, i32 0, i32 6
  %26690 = load i32, ptr %45, align 4, !tbaa !9
  %26691 = zext i32 %26690 to i64
  %26692 = add i64 %26691, 24
  %26693 = call i64 @i64_load(ptr noundef %26689, i64 noundef %26692)
  store i64 %26693, ptr %54, align 8, !tbaa !11
  %26694 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %26694, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %26695 = load i64, ptr %54, align 8, !tbaa !11
  %26696 = load i64, ptr %55, align 8, !tbaa !11
  %26697 = and i64 %26696, 63
  %26698 = ashr i64 %26695, %26697
  store i64 %26698, ptr %54, align 8, !tbaa !11
  %26699 = load i64, ptr %54, align 8, !tbaa !11
  %26700 = trunc i64 %26699 to i32
  store i32 %26700, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %26701 = load i32, ptr %45, align 4, !tbaa !9
  %26702 = load i32, ptr %46, align 4, !tbaa !9
  %26703 = icmp ne i32 %26701, %26702
  %26704 = zext i1 %26703 to i32
  store i32 %26704, ptr %45, align 4, !tbaa !9
  %26705 = load i32, ptr %45, align 4, !tbaa !9
  %26706 = icmp ne i32 %26705, 0
  br i1 %26706, label %26707, label %26887

26707:                                            ; preds = %26686
  %26708 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26708, ptr %45, align 4, !tbaa !9
  %26709 = load ptr, ptr %5, align 8, !tbaa !5
  %26710 = getelementptr inbounds %struct.w2c_hermes, ptr %26709, i32 0, i32 6
  %26711 = load i32, ptr %45, align 4, !tbaa !9
  %26712 = zext i32 %26711 to i64
  %26713 = add i64 %26712, 4
  %26714 = call i32 @i32_load(ptr noundef %26710, i64 noundef %26713)
  store i32 %26714, ptr %45, align 4, !tbaa !9
  %26715 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26715, ptr %6, align 4, !tbaa !9
  %26716 = load ptr, ptr %5, align 8, !tbaa !5
  %26717 = getelementptr inbounds %struct.w2c_hermes, ptr %26716, i32 0, i32 6
  %26718 = load i32, ptr %45, align 4, !tbaa !9
  %26719 = zext i32 %26718 to i64
  %26720 = add i64 %26719, 164
  %26721 = call i32 @i32_load(ptr noundef %26717, i64 noundef %26720)
  store i32 %26721, ptr %45, align 4, !tbaa !9
  %26722 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26722, ptr %7, align 4, !tbaa !9
  %26723 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26723, ptr %46, align 4, !tbaa !9
  %26724 = load ptr, ptr %5, align 8, !tbaa !5
  %26725 = getelementptr inbounds %struct.w2c_hermes, ptr %26724, i32 0, i32 6
  %26726 = load i32, ptr %46, align 4, !tbaa !9
  %26727 = zext i32 %26726 to i64
  %26728 = add i64 %26727, 168
  %26729 = call i32 @i32_load(ptr noundef %26725, i64 noundef %26728)
  store i32 %26729, ptr %46, align 4, !tbaa !9
  %26730 = load i32, ptr %45, align 4, !tbaa !9
  %26731 = load i32, ptr %46, align 4, !tbaa !9
  %26732 = icmp ult i32 %26730, %26731
  %26733 = zext i1 %26732 to i32
  store i32 %26733, ptr %45, align 4, !tbaa !9
  %26734 = load i32, ptr %45, align 4, !tbaa !9
  %26735 = icmp ne i32 %26734, 0
  br i1 %26735, label %26736, label %26755

26736:                                            ; preds = %26707
  %26737 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26737, ptr %45, align 4, !tbaa !9
  %26738 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26738, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %26739 = load i32, ptr %47, align 4, !tbaa !9
  %26740 = load i32, ptr %46, align 4, !tbaa !9
  %26741 = add i32 %26740, %26739
  store i32 %26741, ptr %46, align 4, !tbaa !9
  %26742 = load ptr, ptr %5, align 8, !tbaa !5
  %26743 = getelementptr inbounds %struct.w2c_hermes, ptr %26742, i32 0, i32 6
  %26744 = load i32, ptr %45, align 4, !tbaa !9
  %26745 = zext i32 %26744 to i64
  %26746 = add i64 %26745, 164
  %26747 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26743, i64 noundef %26746, i32 noundef %26747)
  %26748 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26748, ptr %45, align 4, !tbaa !9
  %26749 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26749, ptr %55, align 8, !tbaa !11
  %26750 = load ptr, ptr %5, align 8, !tbaa !5
  %26751 = getelementptr inbounds %struct.w2c_hermes, ptr %26750, i32 0, i32 6
  %26752 = load i32, ptr %45, align 4, !tbaa !9
  %26753 = zext i32 %26752 to i64
  %26754 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26751, i64 noundef %26753, i64 noundef %26754)
  br label %26763

26755:                                            ; preds = %26707
  %26756 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26756, ptr %45, align 4, !tbaa !9
  %26757 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26757, ptr %55, align 8, !tbaa !11
  %26758 = load ptr, ptr %5, align 8, !tbaa !5
  %26759 = load i32, ptr %45, align 4, !tbaa !9
  %26760 = load i64, ptr %55, align 8, !tbaa !11
  %26761 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %26758, i32 noundef %26759, i64 noundef %26760)
  store i32 %26761, ptr %45, align 4, !tbaa !9
  %26762 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26762, ptr %7, align 4, !tbaa !9
  br label %26763

26763:                                            ; preds = %26755, %26736
  %26764 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26764, ptr %45, align 4, !tbaa !9
  %26765 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26765, ptr %46, align 4, !tbaa !9
  %26766 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %26766, ptr %47, align 4, !tbaa !9
  %26767 = load ptr, ptr %5, align 8, !tbaa !5
  %26768 = load i32, ptr %45, align 4, !tbaa !9
  %26769 = load i32, ptr %46, align 4, !tbaa !9
  %26770 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %26767, i32 noundef %26768, i32 noundef %26769, i32 noundef %26770)
  %26771 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26771, ptr %45, align 4, !tbaa !9
  %26772 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26772, ptr %46, align 4, !tbaa !9
  %26773 = load ptr, ptr %5, align 8, !tbaa !5
  %26774 = getelementptr inbounds %struct.w2c_hermes, ptr %26773, i32 0, i32 6
  %26775 = load i32, ptr %46, align 4, !tbaa !9
  %26776 = zext i32 %26775 to i64
  %26777 = call i32 @i32_load(ptr noundef %26774, i64 noundef %26776)
  store i32 %26777, ptr %46, align 4, !tbaa !9
  %26778 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %26778, ptr %6, align 4, !tbaa !9
  %26779 = load ptr, ptr %5, align 8, !tbaa !5
  %26780 = getelementptr inbounds %struct.w2c_hermes, ptr %26779, i32 0, i32 6
  %26781 = load i32, ptr %45, align 4, !tbaa !9
  %26782 = zext i32 %26781 to i64
  %26783 = add i64 %26782, 16
  %26784 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26780, i64 noundef %26783, i32 noundef %26784)
  %26785 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26785, ptr %45, align 4, !tbaa !9
  %26786 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26786, ptr %46, align 4, !tbaa !9
  %26787 = load ptr, ptr %5, align 8, !tbaa !5
  %26788 = getelementptr inbounds %struct.w2c_hermes, ptr %26787, i32 0, i32 6
  %26789 = load i32, ptr %46, align 4, !tbaa !9
  %26790 = zext i32 %26789 to i64
  %26791 = add i64 %26790, 8
  %26792 = call i64 @i64_load(ptr noundef %26788, i64 noundef %26791)
  store i64 %26792, ptr %55, align 8, !tbaa !11
  %26793 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %26793, ptr %39, align 8, !tbaa !11
  %26794 = load ptr, ptr %5, align 8, !tbaa !5
  %26795 = getelementptr inbounds %struct.w2c_hermes, ptr %26794, i32 0, i32 6
  %26796 = load i32, ptr %45, align 4, !tbaa !9
  %26797 = zext i32 %26796 to i64
  %26798 = add i64 %26797, 24
  %26799 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26795, i64 noundef %26798, i64 noundef %26799)
  %26800 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26800, ptr %45, align 4, !tbaa !9
  %26801 = load i32, ptr %45, align 4, !tbaa !9
  %26802 = icmp ne i32 %26801, 0
  %26803 = xor i1 %26802, true
  %26804 = zext i1 %26803 to i32
  store i32 %26804, ptr %45, align 4, !tbaa !9
  %26805 = load i32, ptr %45, align 4, !tbaa !9
  %26806 = icmp ne i32 %26805, 0
  br i1 %26806, label %26807, label %26814

26807:                                            ; preds = %26763
  %26808 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26808, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26809 = load ptr, ptr %5, align 8, !tbaa !5
  %26810 = getelementptr inbounds %struct.w2c_hermes, ptr %26809, i32 0, i32 6
  %26811 = load i32, ptr %45, align 4, !tbaa !9
  %26812 = zext i32 %26811 to i64
  %26813 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26810, i64 noundef %26812, i32 noundef %26813)
  br label %26905

26814:                                            ; preds = %26763
  %26815 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26815, ptr %45, align 4, !tbaa !9
  %26816 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26816, ptr %46, align 4, !tbaa !9
  %26817 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %26817, ptr %47, align 4, !tbaa !9
  %26818 = load ptr, ptr %5, align 8, !tbaa !5
  %26819 = load i32, ptr %45, align 4, !tbaa !9
  %26820 = load i32, ptr %46, align 4, !tbaa !9
  %26821 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %26818, i32 noundef %26819, i32 noundef %26820, i32 noundef %26821)
  %26822 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26822, ptr %45, align 4, !tbaa !9
  %26823 = load ptr, ptr %5, align 8, !tbaa !5
  %26824 = getelementptr inbounds %struct.w2c_hermes, ptr %26823, i32 0, i32 6
  %26825 = load i32, ptr %45, align 4, !tbaa !9
  %26826 = zext i32 %26825 to i64
  %26827 = call i32 @i32_load(ptr noundef %26824, i64 noundef %26826)
  store i32 %26827, ptr %45, align 4, !tbaa !9
  %26828 = load i32, ptr %45, align 4, !tbaa !9
  %26829 = icmp ne i32 %26828, 0
  %26830 = xor i1 %26829, true
  %26831 = zext i1 %26830 to i32
  store i32 %26831, ptr %45, align 4, !tbaa !9
  %26832 = load i32, ptr %45, align 4, !tbaa !9
  %26833 = icmp ne i32 %26832, 0
  br i1 %26833, label %26834, label %26841

26834:                                            ; preds = %26814
  %26835 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26835, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26836 = load ptr, ptr %5, align 8, !tbaa !5
  %26837 = getelementptr inbounds %struct.w2c_hermes, ptr %26836, i32 0, i32 6
  %26838 = load i32, ptr %45, align 4, !tbaa !9
  %26839 = zext i32 %26838 to i64
  %26840 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26837, i64 noundef %26839, i32 noundef %26840)
  br label %26905

26841:                                            ; preds = %26814
  %26842 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26842, ptr %45, align 4, !tbaa !9
  %26843 = load ptr, ptr %5, align 8, !tbaa !5
  %26844 = getelementptr inbounds %struct.w2c_hermes, ptr %26843, i32 0, i32 6
  %26845 = load i32, ptr %45, align 4, !tbaa !9
  %26846 = zext i32 %26845 to i64
  %26847 = add i64 %26846, 8
  %26848 = call double @f64_load(ptr noundef %26844, i64 noundef %26847)
  store double %26848, ptr %60, align 8, !tbaa !13
  %26849 = load double, ptr %60, align 8, !tbaa !13
  store double %26849, ptr %43, align 8, !tbaa !13
  %26850 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26850, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %26851 = load ptr, ptr %5, align 8, !tbaa !5
  %26852 = getelementptr inbounds %struct.w2c_hermes, ptr %26851, i32 0, i32 6
  %26853 = load i32, ptr %45, align 4, !tbaa !9
  %26854 = zext i32 %26853 to i64
  %26855 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26852, i64 noundef %26854, i32 noundef %26855)
  %26856 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26856, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %26857 = load double, ptr %43, align 8, !tbaa !13
  store double %26857, ptr %62, align 8, !tbaa !13
  %26858 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26858, ptr %57, align 8, !tbaa !11
  %26859 = load i64, ptr %57, align 8, !tbaa !11
  %26860 = call double @f64_reinterpret_i64(i64 noundef %26859)
  store double %26860, ptr %63, align 8, !tbaa !13
  %26861 = load double, ptr %63, align 8, !tbaa !13
  %26862 = load double, ptr %62, align 8, !tbaa !13
  %26863 = fmul double %26862, %26861
  store double %26863, ptr %62, align 8, !tbaa !13
  %26864 = load double, ptr %62, align 8, !tbaa !13
  store double %26864, ptr %43, align 8, !tbaa !13
  %26865 = load double, ptr %62, align 8, !tbaa !13
  %26866 = call i64 @i64_reinterpret_f64(double noundef %26865)
  store i64 %26866, ptr %56, align 8, !tbaa !11
  %26867 = load double, ptr %43, align 8, !tbaa !13
  store double %26867, ptr %63, align 8, !tbaa !13
  %26868 = load double, ptr %43, align 8, !tbaa !13
  store double %26868, ptr %64, align 8, !tbaa !13
  %26869 = load double, ptr %63, align 8, !tbaa !13
  %26870 = load double, ptr %64, align 8, !tbaa !13
  %26871 = fcmp une double %26869, %26870
  %26872 = zext i1 %26871 to i32
  store i32 %26872, ptr %48, align 4, !tbaa !9
  %26873 = load i32, ptr %48, align 4, !tbaa !9
  %26874 = icmp ne i32 %26873, 0
  br i1 %26874, label %26875, label %26877

26875:                                            ; preds = %26841
  %26876 = load i64, ptr %55, align 8, !tbaa !11
  br label %26879

26877:                                            ; preds = %26841
  %26878 = load i64, ptr %56, align 8, !tbaa !11
  br label %26879

26879:                                            ; preds = %26877, %26875
  %26880 = phi i64 [ %26876, %26875 ], [ %26878, %26877 ]
  store i64 %26880, ptr %55, align 8, !tbaa !11
  %26881 = load ptr, ptr %5, align 8, !tbaa !5
  %26882 = getelementptr inbounds %struct.w2c_hermes, ptr %26881, i32 0, i32 6
  %26883 = load i32, ptr %45, align 4, !tbaa !9
  %26884 = zext i32 %26883 to i64
  %26885 = add i64 %26884, 8
  %26886 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26882, i64 noundef %26885, i64 noundef %26886)
  br label %26905

26887:                                            ; preds = %26686
  %26888 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %26888, ptr %45, align 4, !tbaa !9
  %26889 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26889, ptr %46, align 4, !tbaa !9
  store i32 543, ptr %47, align 4, !tbaa !9
  %26890 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26890, ptr %48, align 4, !tbaa !9
  %26891 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %26891, ptr %58, align 8, !tbaa !11
  %26892 = load i64, ptr %58, align 8, !tbaa !11
  %26893 = trunc i64 %26892 to i32
  store i32 %26893, ptr %49, align 4, !tbaa !9
  %26894 = load ptr, ptr %5, align 8, !tbaa !5
  %26895 = load i32, ptr %48, align 4, !tbaa !9
  %26896 = load i32, ptr %49, align 4, !tbaa !9
  %26897 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %26894, i32 noundef %26895, i32 noundef %26896)
  store i32 %26897, ptr %48, align 4, !tbaa !9
  %26898 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %26898, ptr %49, align 4, !tbaa !9
  %26899 = load ptr, ptr %5, align 8, !tbaa !5
  %26900 = load i32, ptr %45, align 4, !tbaa !9
  %26901 = load i32, ptr %46, align 4, !tbaa !9
  %26902 = load i32, ptr %47, align 4, !tbaa !9
  %26903 = load i32, ptr %48, align 4, !tbaa !9
  %26904 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %26899, i32 noundef %26900, i32 noundef %26901, i32 noundef %26902, i32 noundef %26903, i32 noundef %26904)
  br label %26905

26905:                                            ; preds = %26887, %26879, %26834, %26807, %26679
  %26906 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %26906, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %26907 = load i32, ptr %46, align 4, !tbaa !9
  %26908 = load i32, ptr %45, align 4, !tbaa !9
  %26909 = add i32 %26908, %26907
  store i32 %26909, ptr %45, align 4, !tbaa !9
  %26910 = load i32, ptr %45, align 4, !tbaa !9
  %26911 = load ptr, ptr %5, align 8, !tbaa !5
  %26912 = getelementptr inbounds %struct.w2c_hermes, ptr %26911, i32 0, i32 3
  store i32 %26910, ptr %26912, align 8, !tbaa !15
  %26913 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %26913, ptr %45, align 4, !tbaa !9
  %26914 = load ptr, ptr %5, align 8, !tbaa !5
  %26915 = getelementptr inbounds %struct.w2c_hermes, ptr %26914, i32 0, i32 6
  %26916 = load i32, ptr %45, align 4, !tbaa !9
  %26917 = zext i32 %26916 to i64
  %26918 = add i64 %26917, 5808
  %26919 = call i32 @i32_load(ptr noundef %26915, i64 noundef %26918)
  store i32 %26919, ptr %45, align 4, !tbaa !9
  %26920 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26920, ptr %6, align 4, !tbaa !9
  %26921 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26921, ptr %45, align 4, !tbaa !9
  %26922 = load ptr, ptr %5, align 8, !tbaa !5
  %26923 = getelementptr inbounds %struct.w2c_hermes, ptr %26922, i32 0, i32 6
  %26924 = load i32, ptr %45, align 4, !tbaa !9
  %26925 = zext i32 %26924 to i64
  %26926 = add i64 %26925, 304
  %26927 = call i32 @i32_load(ptr noundef %26923, i64 noundef %26926)
  store i32 %26927, ptr %45, align 4, !tbaa !9
  %26928 = load i32, ptr %45, align 4, !tbaa !9
  %26929 = icmp ne i32 %26928, 0
  %26930 = xor i1 %26929, true
  %26931 = zext i1 %26930 to i32
  store i32 %26931, ptr %45, align 4, !tbaa !9
  %26932 = load i32, ptr %45, align 4, !tbaa !9
  %26933 = icmp ne i32 %26932, 0
  br i1 %26933, label %26934, label %26935

26934:                                            ; preds = %26905
  br label %43136

26935:                                            ; preds = %26905
  %26936 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26936, ptr %45, align 4, !tbaa !9
  %26937 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26937, ptr %46, align 4, !tbaa !9
  %26938 = load ptr, ptr %5, align 8, !tbaa !5
  %26939 = getelementptr inbounds %struct.w2c_hermes, ptr %26938, i32 0, i32 6
  %26940 = load i32, ptr %46, align 4, !tbaa !9
  %26941 = zext i32 %26940 to i64
  %26942 = add i64 %26941, 1
  %26943 = call i32 @i32_load8_u(ptr noundef %26939, i64 noundef %26942)
  store i32 %26943, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %26944 = load i32, ptr %47, align 4, !tbaa !9
  %26945 = and i32 %26944, 31
  %26946 = load i32, ptr %46, align 4, !tbaa !9
  %26947 = shl i32 %26946, %26945
  store i32 %26947, ptr %46, align 4, !tbaa !9
  %26948 = load i32, ptr %46, align 4, !tbaa !9
  %26949 = load i32, ptr %45, align 4, !tbaa !9
  %26950 = add i32 %26949, %26948
  store i32 %26950, ptr %45, align 4, !tbaa !9
  %26951 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26951, ptr %46, align 4, !tbaa !9
  %26952 = load ptr, ptr %5, align 8, !tbaa !5
  %26953 = getelementptr inbounds %struct.w2c_hermes, ptr %26952, i32 0, i32 6
  %26954 = load i32, ptr %46, align 4, !tbaa !9
  %26955 = zext i32 %26954 to i64
  %26956 = add i64 %26955, 312
  %26957 = call i64 @i64_load(ptr noundef %26953, i64 noundef %26956)
  store i64 %26957, ptr %55, align 8, !tbaa !11
  %26958 = load ptr, ptr %5, align 8, !tbaa !5
  %26959 = getelementptr inbounds %struct.w2c_hermes, ptr %26958, i32 0, i32 6
  %26960 = load i32, ptr %45, align 4, !tbaa !9
  %26961 = zext i32 %26960 to i64
  %26962 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %26959, i64 noundef %26961, i64 noundef %26962)
  %26963 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26963, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %26964 = load ptr, ptr %5, align 8, !tbaa !5
  %26965 = getelementptr inbounds %struct.w2c_hermes, ptr %26964, i32 0, i32 6
  %26966 = load i32, ptr %45, align 4, !tbaa !9
  %26967 = zext i32 %26966 to i64
  %26968 = add i64 %26967, 516
  %26969 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26965, i64 noundef %26968, i32 noundef %26969)
  %26970 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26970, ptr %45, align 4, !tbaa !9
  %26971 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %26971, ptr %46, align 4, !tbaa !9
  %26972 = load ptr, ptr %5, align 8, !tbaa !5
  %26973 = getelementptr inbounds %struct.w2c_hermes, ptr %26972, i32 0, i32 6
  %26974 = load i32, ptr %45, align 4, !tbaa !9
  %26975 = zext i32 %26974 to i64
  %26976 = add i64 %26975, 512
  %26977 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26973, i64 noundef %26976, i32 noundef %26977)
  %26978 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %26978, ptr %45, align 4, !tbaa !9
  %26979 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %26979, ptr %46, align 4, !tbaa !9
  %26980 = load ptr, ptr %5, align 8, !tbaa !5
  %26981 = getelementptr inbounds %struct.w2c_hermes, ptr %26980, i32 0, i32 6
  %26982 = load i32, ptr %45, align 4, !tbaa !9
  %26983 = zext i32 %26982 to i64
  %26984 = add i64 %26983, 508
  %26985 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %26981, i64 noundef %26984, i32 noundef %26985)
  %26986 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26986, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %26987 = load i32, ptr %46, align 4, !tbaa !9
  %26988 = load i32, ptr %45, align 4, !tbaa !9
  %26989 = add i32 %26988, %26987
  store i32 %26989, ptr %45, align 4, !tbaa !9
  %26990 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %26990, ptr %6, align 4, !tbaa !9
  br label %2945

26991:                                            ; preds = %3098
  %26992 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %26992, ptr %45, align 4, !tbaa !9
  %26993 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %26993, ptr %46, align 4, !tbaa !9
  %26994 = load ptr, ptr %5, align 8, !tbaa !5
  %26995 = getelementptr inbounds %struct.w2c_hermes, ptr %26994, i32 0, i32 6
  %26996 = load i32, ptr %46, align 4, !tbaa !9
  %26997 = zext i32 %26996 to i64
  %26998 = add i64 %26997, 2
  %26999 = call i32 @i32_load8_u(ptr noundef %26995, i64 noundef %26998)
  store i32 %26999, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27000 = load i32, ptr %47, align 4, !tbaa !9
  %27001 = and i32 %27000, 31
  %27002 = load i32, ptr %46, align 4, !tbaa !9
  %27003 = shl i32 %27002, %27001
  store i32 %27003, ptr %46, align 4, !tbaa !9
  %27004 = load i32, ptr %46, align 4, !tbaa !9
  %27005 = load i32, ptr %45, align 4, !tbaa !9
  %27006 = add i32 %27005, %27004
  store i32 %27006, ptr %45, align 4, !tbaa !9
  %27007 = load ptr, ptr %5, align 8, !tbaa !5
  %27008 = getelementptr inbounds %struct.w2c_hermes, ptr %27007, i32 0, i32 6
  %27009 = load i32, ptr %45, align 4, !tbaa !9
  %27010 = zext i32 %27009 to i64
  %27011 = call i64 @i64_load(ptr noundef %27008, i64 noundef %27010)
  store i64 %27011, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %27012 = load i64, ptr %54, align 8, !tbaa !11
  %27013 = load i64, ptr %55, align 8, !tbaa !11
  %27014 = icmp ugt i64 %27012, %27013
  %27015 = zext i1 %27014 to i32
  store i32 %27015, ptr %45, align 4, !tbaa !9
  %27016 = load i32, ptr %45, align 4, !tbaa !9
  %27017 = icmp ne i32 %27016, 0
  br i1 %27017, label %27018, label %27019

27018:                                            ; preds = %26991
  br label %27117

27019:                                            ; preds = %26991
  %27020 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27020, ptr %45, align 4, !tbaa !9
  %27021 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27021, ptr %46, align 4, !tbaa !9
  %27022 = load ptr, ptr %5, align 8, !tbaa !5
  %27023 = getelementptr inbounds %struct.w2c_hermes, ptr %27022, i32 0, i32 6
  %27024 = load i32, ptr %46, align 4, !tbaa !9
  %27025 = zext i32 %27024 to i64
  %27026 = add i64 %27025, 3
  %27027 = call i32 @i32_load8_u(ptr noundef %27023, i64 noundef %27026)
  store i32 %27027, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27028 = load i32, ptr %47, align 4, !tbaa !9
  %27029 = and i32 %27028, 31
  %27030 = load i32, ptr %46, align 4, !tbaa !9
  %27031 = shl i32 %27030, %27029
  store i32 %27031, ptr %46, align 4, !tbaa !9
  %27032 = load i32, ptr %46, align 4, !tbaa !9
  %27033 = load i32, ptr %45, align 4, !tbaa !9
  %27034 = add i32 %27033, %27032
  store i32 %27034, ptr %45, align 4, !tbaa !9
  %27035 = load ptr, ptr %5, align 8, !tbaa !5
  %27036 = getelementptr inbounds %struct.w2c_hermes, ptr %27035, i32 0, i32 6
  %27037 = load i32, ptr %45, align 4, !tbaa !9
  %27038 = zext i32 %27037 to i64
  %27039 = call i64 @i64_load(ptr noundef %27036, i64 noundef %27038)
  store i64 %27039, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %27040 = load i64, ptr %54, align 8, !tbaa !11
  %27041 = load i64, ptr %55, align 8, !tbaa !11
  %27042 = icmp ugt i64 %27040, %27041
  %27043 = zext i1 %27042 to i32
  store i32 %27043, ptr %45, align 4, !tbaa !9
  %27044 = load i32, ptr %45, align 4, !tbaa !9
  %27045 = icmp ne i32 %27044, 0
  br i1 %27045, label %27046, label %27047

27046:                                            ; preds = %27019
  br label %27117

27047:                                            ; preds = %27019
  br label %27048

27048:                                            ; preds = %27047, %3099
  %27049 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27049, ptr %45, align 4, !tbaa !9
  %27050 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27050, ptr %46, align 4, !tbaa !9
  %27051 = load ptr, ptr %5, align 8, !tbaa !5
  %27052 = getelementptr inbounds %struct.w2c_hermes, ptr %27051, i32 0, i32 6
  %27053 = load i32, ptr %46, align 4, !tbaa !9
  %27054 = zext i32 %27053 to i64
  %27055 = add i64 %27054, 1
  %27056 = call i32 @i32_load8_u(ptr noundef %27052, i64 noundef %27055)
  store i32 %27056, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27057 = load i32, ptr %47, align 4, !tbaa !9
  %27058 = and i32 %27057, 31
  %27059 = load i32, ptr %46, align 4, !tbaa !9
  %27060 = shl i32 %27059, %27058
  store i32 %27060, ptr %46, align 4, !tbaa !9
  %27061 = load i32, ptr %46, align 4, !tbaa !9
  %27062 = load i32, ptr %45, align 4, !tbaa !9
  %27063 = add i32 %27062, %27061
  store i32 %27063, ptr %45, align 4, !tbaa !9
  %27064 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27064, ptr %46, align 4, !tbaa !9
  %27065 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27065, ptr %47, align 4, !tbaa !9
  %27066 = load ptr, ptr %5, align 8, !tbaa !5
  %27067 = getelementptr inbounds %struct.w2c_hermes, ptr %27066, i32 0, i32 6
  %27068 = load i32, ptr %47, align 4, !tbaa !9
  %27069 = zext i32 %27068 to i64
  %27070 = add i64 %27069, 2
  %27071 = call i32 @i32_load8_u(ptr noundef %27067, i64 noundef %27070)
  store i32 %27071, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %27072 = load i32, ptr %48, align 4, !tbaa !9
  %27073 = and i32 %27072, 31
  %27074 = load i32, ptr %47, align 4, !tbaa !9
  %27075 = shl i32 %27074, %27073
  store i32 %27075, ptr %47, align 4, !tbaa !9
  %27076 = load i32, ptr %47, align 4, !tbaa !9
  %27077 = load i32, ptr %46, align 4, !tbaa !9
  %27078 = add i32 %27077, %27076
  store i32 %27078, ptr %46, align 4, !tbaa !9
  %27079 = load ptr, ptr %5, align 8, !tbaa !5
  %27080 = getelementptr inbounds %struct.w2c_hermes, ptr %27079, i32 0, i32 6
  %27081 = load i32, ptr %46, align 4, !tbaa !9
  %27082 = zext i32 %27081 to i64
  %27083 = call double @f64_load(ptr noundef %27080, i64 noundef %27082)
  store double %27083, ptr %61, align 8, !tbaa !13
  %27084 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27084, ptr %47, align 4, !tbaa !9
  %27085 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27085, ptr %48, align 4, !tbaa !9
  %27086 = load ptr, ptr %5, align 8, !tbaa !5
  %27087 = getelementptr inbounds %struct.w2c_hermes, ptr %27086, i32 0, i32 6
  %27088 = load i32, ptr %48, align 4, !tbaa !9
  %27089 = zext i32 %27088 to i64
  %27090 = add i64 %27089, 3
  %27091 = call i32 @i32_load8_u(ptr noundef %27087, i64 noundef %27090)
  store i32 %27091, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %27092 = load i32, ptr %49, align 4, !tbaa !9
  %27093 = and i32 %27092, 31
  %27094 = load i32, ptr %48, align 4, !tbaa !9
  %27095 = shl i32 %27094, %27093
  store i32 %27095, ptr %48, align 4, !tbaa !9
  %27096 = load i32, ptr %48, align 4, !tbaa !9
  %27097 = load i32, ptr %47, align 4, !tbaa !9
  %27098 = add i32 %27097, %27096
  store i32 %27098, ptr %47, align 4, !tbaa !9
  %27099 = load ptr, ptr %5, align 8, !tbaa !5
  %27100 = getelementptr inbounds %struct.w2c_hermes, ptr %27099, i32 0, i32 6
  %27101 = load i32, ptr %47, align 4, !tbaa !9
  %27102 = zext i32 %27101 to i64
  %27103 = call double @f64_load(ptr noundef %27100, i64 noundef %27102)
  store double %27103, ptr %62, align 8, !tbaa !13
  %27104 = load double, ptr %62, align 8, !tbaa !13
  %27105 = load double, ptr %61, align 8, !tbaa !13
  %27106 = fdiv double %27105, %27104
  store double %27106, ptr %61, align 8, !tbaa !13
  %27107 = load ptr, ptr %5, align 8, !tbaa !5
  %27108 = getelementptr inbounds %struct.w2c_hermes, ptr %27107, i32 0, i32 6
  %27109 = load i32, ptr %45, align 4, !tbaa !9
  %27110 = zext i32 %27109 to i64
  %27111 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %27108, i64 noundef %27110, double noundef %27111)
  %27112 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27112, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %27113 = load i32, ptr %46, align 4, !tbaa !9
  %27114 = load i32, ptr %45, align 4, !tbaa !9
  %27115 = add i32 %27114, %27113
  store i32 %27115, ptr %45, align 4, !tbaa !9
  %27116 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27116, ptr %6, align 4, !tbaa !9
  br label %2945

27117:                                            ; preds = %27046, %27018
  %27118 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27118, ptr %45, align 4, !tbaa !9
  %27119 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27119, ptr %46, align 4, !tbaa !9
  %27120 = load ptr, ptr %5, align 8, !tbaa !5
  %27121 = getelementptr inbounds %struct.w2c_hermes, ptr %27120, i32 0, i32 6
  %27122 = load i32, ptr %45, align 4, !tbaa !9
  %27123 = zext i32 %27122 to i64
  %27124 = add i64 %27123, 5808
  %27125 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27121, i64 noundef %27124, i32 noundef %27125)
  %27126 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27126, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %27127 = load i32, ptr %46, align 4, !tbaa !9
  %27128 = load i32, ptr %45, align 4, !tbaa !9
  %27129 = add i32 %27128, %27127
  store i32 %27129, ptr %45, align 4, !tbaa !9
  %27130 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27130, ptr %12, align 4, !tbaa !9
  %27131 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27131, ptr %45, align 4, !tbaa !9
  %27132 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27132, ptr %46, align 4, !tbaa !9
  %27133 = load ptr, ptr %5, align 8, !tbaa !5
  %27134 = getelementptr inbounds %struct.w2c_hermes, ptr %27133, i32 0, i32 6
  %27135 = load i32, ptr %46, align 4, !tbaa !9
  %27136 = zext i32 %27135 to i64
  %27137 = add i64 %27136, 2
  %27138 = call i32 @i32_load8_u(ptr noundef %27134, i64 noundef %27137)
  store i32 %27138, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27139 = load i32, ptr %47, align 4, !tbaa !9
  %27140 = and i32 %27139, 31
  %27141 = load i32, ptr %46, align 4, !tbaa !9
  %27142 = shl i32 %27141, %27140
  store i32 %27142, ptr %46, align 4, !tbaa !9
  %27143 = load i32, ptr %46, align 4, !tbaa !9
  %27144 = load i32, ptr %45, align 4, !tbaa !9
  %27145 = add i32 %27144, %27143
  store i32 %27145, ptr %45, align 4, !tbaa !9
  %27146 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27146, ptr %7, align 4, !tbaa !9
  %27147 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27147, ptr %45, align 4, !tbaa !9
  %27148 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27148, ptr %46, align 4, !tbaa !9
  %27149 = load ptr, ptr %5, align 8, !tbaa !5
  %27150 = getelementptr inbounds %struct.w2c_hermes, ptr %27149, i32 0, i32 6
  %27151 = load i32, ptr %46, align 4, !tbaa !9
  %27152 = zext i32 %27151 to i64
  %27153 = add i64 %27152, 3
  %27154 = call i32 @i32_load8_u(ptr noundef %27150, i64 noundef %27153)
  store i32 %27154, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27155 = load i32, ptr %47, align 4, !tbaa !9
  %27156 = and i32 %27155, 31
  %27157 = load i32, ptr %46, align 4, !tbaa !9
  %27158 = shl i32 %27157, %27156
  store i32 %27158, ptr %46, align 4, !tbaa !9
  %27159 = load i32, ptr %46, align 4, !tbaa !9
  %27160 = load i32, ptr %45, align 4, !tbaa !9
  %27161 = add i32 %27160, %27159
  store i32 %27161, ptr %45, align 4, !tbaa !9
  %27162 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27162, ptr %8, align 4, !tbaa !9
  %27163 = load ptr, ptr %5, align 8, !tbaa !5
  %27164 = getelementptr inbounds %struct.w2c_hermes, ptr %27163, i32 0, i32 3
  %27165 = load i32, ptr %27164, align 8, !tbaa !15
  store i32 %27165, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %27166 = load i32, ptr %46, align 4, !tbaa !9
  %27167 = load i32, ptr %45, align 4, !tbaa !9
  %27168 = sub i32 %27167, %27166
  store i32 %27168, ptr %45, align 4, !tbaa !9
  %27169 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27169, ptr %13, align 4, !tbaa !9
  %27170 = load i32, ptr %45, align 4, !tbaa !9
  %27171 = load ptr, ptr %5, align 8, !tbaa !5
  %27172 = getelementptr inbounds %struct.w2c_hermes, ptr %27171, i32 0, i32 3
  store i32 %27170, ptr %27172, align 8, !tbaa !15
  %27173 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27173, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %27174 = load i32, ptr %46, align 4, !tbaa !9
  %27175 = load i32, ptr %45, align 4, !tbaa !9
  %27176 = add i32 %27175, %27174
  store i32 %27176, ptr %45, align 4, !tbaa !9
  %27177 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27177, ptr %46, align 4, !tbaa !9
  %27178 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27178, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %27179 = load ptr, ptr %5, align 8, !tbaa !5
  %27180 = load i32, ptr %45, align 4, !tbaa !9
  %27181 = load i32, ptr %46, align 4, !tbaa !9
  %27182 = load i32, ptr %47, align 4, !tbaa !9
  %27183 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %27179, i32 noundef %27180, i32 noundef %27181, i32 noundef %27182, i32 noundef %27183)
  %27184 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27184, ptr %45, align 4, !tbaa !9
  %27185 = load ptr, ptr %5, align 8, !tbaa !5
  %27186 = getelementptr inbounds %struct.w2c_hermes, ptr %27185, i32 0, i32 6
  %27187 = load i32, ptr %45, align 4, !tbaa !9
  %27188 = zext i32 %27187 to i64
  %27189 = add i64 %27188, 16
  %27190 = call i32 @i32_load(ptr noundef %27186, i64 noundef %27189)
  store i32 %27190, ptr %45, align 4, !tbaa !9
  %27191 = load i32, ptr %45, align 4, !tbaa !9
  %27192 = icmp ne i32 %27191, 0
  %27193 = xor i1 %27192, true
  %27194 = zext i1 %27193 to i32
  store i32 %27194, ptr %45, align 4, !tbaa !9
  %27195 = load i32, ptr %45, align 4, !tbaa !9
  %27196 = icmp ne i32 %27195, 0
  br i1 %27196, label %27197, label %27204

27197:                                            ; preds = %27117
  %27198 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27198, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27199 = load ptr, ptr %5, align 8, !tbaa !5
  %27200 = getelementptr inbounds %struct.w2c_hermes, ptr %27199, i32 0, i32 6
  %27201 = load i32, ptr %45, align 4, !tbaa !9
  %27202 = zext i32 %27201 to i64
  %27203 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27200, i64 noundef %27202, i32 noundef %27203)
  br label %27423

27204:                                            ; preds = %27117
  %27205 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27205, ptr %45, align 4, !tbaa !9
  %27206 = load ptr, ptr %5, align 8, !tbaa !5
  %27207 = getelementptr inbounds %struct.w2c_hermes, ptr %27206, i32 0, i32 6
  %27208 = load i32, ptr %45, align 4, !tbaa !9
  %27209 = zext i32 %27208 to i64
  %27210 = add i64 %27209, 24
  %27211 = call i64 @i64_load(ptr noundef %27207, i64 noundef %27210)
  store i64 %27211, ptr %54, align 8, !tbaa !11
  %27212 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %27212, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %27213 = load i64, ptr %54, align 8, !tbaa !11
  %27214 = load i64, ptr %55, align 8, !tbaa !11
  %27215 = and i64 %27214, 63
  %27216 = ashr i64 %27213, %27215
  store i64 %27216, ptr %54, align 8, !tbaa !11
  %27217 = load i64, ptr %54, align 8, !tbaa !11
  %27218 = trunc i64 %27217 to i32
  store i32 %27218, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %27219 = load i32, ptr %45, align 4, !tbaa !9
  %27220 = load i32, ptr %46, align 4, !tbaa !9
  %27221 = icmp ne i32 %27219, %27220
  %27222 = zext i1 %27221 to i32
  store i32 %27222, ptr %45, align 4, !tbaa !9
  %27223 = load i32, ptr %45, align 4, !tbaa !9
  %27224 = icmp ne i32 %27223, 0
  br i1 %27224, label %27225, label %27405

27225:                                            ; preds = %27204
  %27226 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27226, ptr %45, align 4, !tbaa !9
  %27227 = load ptr, ptr %5, align 8, !tbaa !5
  %27228 = getelementptr inbounds %struct.w2c_hermes, ptr %27227, i32 0, i32 6
  %27229 = load i32, ptr %45, align 4, !tbaa !9
  %27230 = zext i32 %27229 to i64
  %27231 = add i64 %27230, 4
  %27232 = call i32 @i32_load(ptr noundef %27228, i64 noundef %27231)
  store i32 %27232, ptr %45, align 4, !tbaa !9
  %27233 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27233, ptr %6, align 4, !tbaa !9
  %27234 = load ptr, ptr %5, align 8, !tbaa !5
  %27235 = getelementptr inbounds %struct.w2c_hermes, ptr %27234, i32 0, i32 6
  %27236 = load i32, ptr %45, align 4, !tbaa !9
  %27237 = zext i32 %27236 to i64
  %27238 = add i64 %27237, 164
  %27239 = call i32 @i32_load(ptr noundef %27235, i64 noundef %27238)
  store i32 %27239, ptr %45, align 4, !tbaa !9
  %27240 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27240, ptr %7, align 4, !tbaa !9
  %27241 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27241, ptr %46, align 4, !tbaa !9
  %27242 = load ptr, ptr %5, align 8, !tbaa !5
  %27243 = getelementptr inbounds %struct.w2c_hermes, ptr %27242, i32 0, i32 6
  %27244 = load i32, ptr %46, align 4, !tbaa !9
  %27245 = zext i32 %27244 to i64
  %27246 = add i64 %27245, 168
  %27247 = call i32 @i32_load(ptr noundef %27243, i64 noundef %27246)
  store i32 %27247, ptr %46, align 4, !tbaa !9
  %27248 = load i32, ptr %45, align 4, !tbaa !9
  %27249 = load i32, ptr %46, align 4, !tbaa !9
  %27250 = icmp ult i32 %27248, %27249
  %27251 = zext i1 %27250 to i32
  store i32 %27251, ptr %45, align 4, !tbaa !9
  %27252 = load i32, ptr %45, align 4, !tbaa !9
  %27253 = icmp ne i32 %27252, 0
  br i1 %27253, label %27254, label %27273

27254:                                            ; preds = %27225
  %27255 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27255, ptr %45, align 4, !tbaa !9
  %27256 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27256, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %27257 = load i32, ptr %47, align 4, !tbaa !9
  %27258 = load i32, ptr %46, align 4, !tbaa !9
  %27259 = add i32 %27258, %27257
  store i32 %27259, ptr %46, align 4, !tbaa !9
  %27260 = load ptr, ptr %5, align 8, !tbaa !5
  %27261 = getelementptr inbounds %struct.w2c_hermes, ptr %27260, i32 0, i32 6
  %27262 = load i32, ptr %45, align 4, !tbaa !9
  %27263 = zext i32 %27262 to i64
  %27264 = add i64 %27263, 164
  %27265 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27261, i64 noundef %27264, i32 noundef %27265)
  %27266 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27266, ptr %45, align 4, !tbaa !9
  %27267 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27267, ptr %55, align 8, !tbaa !11
  %27268 = load ptr, ptr %5, align 8, !tbaa !5
  %27269 = getelementptr inbounds %struct.w2c_hermes, ptr %27268, i32 0, i32 6
  %27270 = load i32, ptr %45, align 4, !tbaa !9
  %27271 = zext i32 %27270 to i64
  %27272 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %27269, i64 noundef %27271, i64 noundef %27272)
  br label %27281

27273:                                            ; preds = %27225
  %27274 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27274, ptr %45, align 4, !tbaa !9
  %27275 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27275, ptr %55, align 8, !tbaa !11
  %27276 = load ptr, ptr %5, align 8, !tbaa !5
  %27277 = load i32, ptr %45, align 4, !tbaa !9
  %27278 = load i64, ptr %55, align 8, !tbaa !11
  %27279 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %27276, i32 noundef %27277, i64 noundef %27278)
  store i32 %27279, ptr %45, align 4, !tbaa !9
  %27280 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27280, ptr %7, align 4, !tbaa !9
  br label %27281

27281:                                            ; preds = %27273, %27254
  %27282 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27282, ptr %45, align 4, !tbaa !9
  %27283 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27283, ptr %46, align 4, !tbaa !9
  %27284 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27284, ptr %47, align 4, !tbaa !9
  %27285 = load ptr, ptr %5, align 8, !tbaa !5
  %27286 = load i32, ptr %45, align 4, !tbaa !9
  %27287 = load i32, ptr %46, align 4, !tbaa !9
  %27288 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %27285, i32 noundef %27286, i32 noundef %27287, i32 noundef %27288)
  %27289 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27289, ptr %45, align 4, !tbaa !9
  %27290 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27290, ptr %46, align 4, !tbaa !9
  %27291 = load ptr, ptr %5, align 8, !tbaa !5
  %27292 = getelementptr inbounds %struct.w2c_hermes, ptr %27291, i32 0, i32 6
  %27293 = load i32, ptr %46, align 4, !tbaa !9
  %27294 = zext i32 %27293 to i64
  %27295 = call i32 @i32_load(ptr noundef %27292, i64 noundef %27294)
  store i32 %27295, ptr %46, align 4, !tbaa !9
  %27296 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %27296, ptr %6, align 4, !tbaa !9
  %27297 = load ptr, ptr %5, align 8, !tbaa !5
  %27298 = getelementptr inbounds %struct.w2c_hermes, ptr %27297, i32 0, i32 6
  %27299 = load i32, ptr %45, align 4, !tbaa !9
  %27300 = zext i32 %27299 to i64
  %27301 = add i64 %27300, 16
  %27302 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27298, i64 noundef %27301, i32 noundef %27302)
  %27303 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27303, ptr %45, align 4, !tbaa !9
  %27304 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27304, ptr %46, align 4, !tbaa !9
  %27305 = load ptr, ptr %5, align 8, !tbaa !5
  %27306 = getelementptr inbounds %struct.w2c_hermes, ptr %27305, i32 0, i32 6
  %27307 = load i32, ptr %46, align 4, !tbaa !9
  %27308 = zext i32 %27307 to i64
  %27309 = add i64 %27308, 8
  %27310 = call i64 @i64_load(ptr noundef %27306, i64 noundef %27309)
  store i64 %27310, ptr %55, align 8, !tbaa !11
  %27311 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %27311, ptr %39, align 8, !tbaa !11
  %27312 = load ptr, ptr %5, align 8, !tbaa !5
  %27313 = getelementptr inbounds %struct.w2c_hermes, ptr %27312, i32 0, i32 6
  %27314 = load i32, ptr %45, align 4, !tbaa !9
  %27315 = zext i32 %27314 to i64
  %27316 = add i64 %27315, 24
  %27317 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %27313, i64 noundef %27316, i64 noundef %27317)
  %27318 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27318, ptr %45, align 4, !tbaa !9
  %27319 = load i32, ptr %45, align 4, !tbaa !9
  %27320 = icmp ne i32 %27319, 0
  %27321 = xor i1 %27320, true
  %27322 = zext i1 %27321 to i32
  store i32 %27322, ptr %45, align 4, !tbaa !9
  %27323 = load i32, ptr %45, align 4, !tbaa !9
  %27324 = icmp ne i32 %27323, 0
  br i1 %27324, label %27325, label %27332

27325:                                            ; preds = %27281
  %27326 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27326, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27327 = load ptr, ptr %5, align 8, !tbaa !5
  %27328 = getelementptr inbounds %struct.w2c_hermes, ptr %27327, i32 0, i32 6
  %27329 = load i32, ptr %45, align 4, !tbaa !9
  %27330 = zext i32 %27329 to i64
  %27331 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27328, i64 noundef %27330, i32 noundef %27331)
  br label %27423

27332:                                            ; preds = %27281
  %27333 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27333, ptr %45, align 4, !tbaa !9
  %27334 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27334, ptr %46, align 4, !tbaa !9
  %27335 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %27335, ptr %47, align 4, !tbaa !9
  %27336 = load ptr, ptr %5, align 8, !tbaa !5
  %27337 = load i32, ptr %45, align 4, !tbaa !9
  %27338 = load i32, ptr %46, align 4, !tbaa !9
  %27339 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %27336, i32 noundef %27337, i32 noundef %27338, i32 noundef %27339)
  %27340 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27340, ptr %45, align 4, !tbaa !9
  %27341 = load ptr, ptr %5, align 8, !tbaa !5
  %27342 = getelementptr inbounds %struct.w2c_hermes, ptr %27341, i32 0, i32 6
  %27343 = load i32, ptr %45, align 4, !tbaa !9
  %27344 = zext i32 %27343 to i64
  %27345 = call i32 @i32_load(ptr noundef %27342, i64 noundef %27344)
  store i32 %27345, ptr %45, align 4, !tbaa !9
  %27346 = load i32, ptr %45, align 4, !tbaa !9
  %27347 = icmp ne i32 %27346, 0
  %27348 = xor i1 %27347, true
  %27349 = zext i1 %27348 to i32
  store i32 %27349, ptr %45, align 4, !tbaa !9
  %27350 = load i32, ptr %45, align 4, !tbaa !9
  %27351 = icmp ne i32 %27350, 0
  br i1 %27351, label %27352, label %27359

27352:                                            ; preds = %27332
  %27353 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27353, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27354 = load ptr, ptr %5, align 8, !tbaa !5
  %27355 = getelementptr inbounds %struct.w2c_hermes, ptr %27354, i32 0, i32 6
  %27356 = load i32, ptr %45, align 4, !tbaa !9
  %27357 = zext i32 %27356 to i64
  %27358 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27355, i64 noundef %27357, i32 noundef %27358)
  br label %27423

27359:                                            ; preds = %27332
  %27360 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27360, ptr %45, align 4, !tbaa !9
  %27361 = load ptr, ptr %5, align 8, !tbaa !5
  %27362 = getelementptr inbounds %struct.w2c_hermes, ptr %27361, i32 0, i32 6
  %27363 = load i32, ptr %45, align 4, !tbaa !9
  %27364 = zext i32 %27363 to i64
  %27365 = add i64 %27364, 8
  %27366 = call double @f64_load(ptr noundef %27362, i64 noundef %27365)
  store double %27366, ptr %60, align 8, !tbaa !13
  %27367 = load double, ptr %60, align 8, !tbaa !13
  store double %27367, ptr %43, align 8, !tbaa !13
  %27368 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27368, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %27369 = load ptr, ptr %5, align 8, !tbaa !5
  %27370 = getelementptr inbounds %struct.w2c_hermes, ptr %27369, i32 0, i32 6
  %27371 = load i32, ptr %45, align 4, !tbaa !9
  %27372 = zext i32 %27371 to i64
  %27373 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27370, i64 noundef %27372, i32 noundef %27373)
  %27374 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27374, ptr %45, align 4, !tbaa !9
  store i64 9221120237041090560, ptr %55, align 8, !tbaa !11
  %27375 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27375, ptr %56, align 8, !tbaa !11
  %27376 = load i64, ptr %56, align 8, !tbaa !11
  %27377 = call double @f64_reinterpret_i64(i64 noundef %27376)
  store double %27377, ptr %62, align 8, !tbaa !13
  %27378 = load double, ptr %43, align 8, !tbaa !13
  store double %27378, ptr %63, align 8, !tbaa !13
  %27379 = load double, ptr %63, align 8, !tbaa !13
  %27380 = load double, ptr %62, align 8, !tbaa !13
  %27381 = fdiv double %27380, %27379
  store double %27381, ptr %62, align 8, !tbaa !13
  %27382 = load double, ptr %62, align 8, !tbaa !13
  store double %27382, ptr %43, align 8, !tbaa !13
  %27383 = load double, ptr %62, align 8, !tbaa !13
  %27384 = call i64 @i64_reinterpret_f64(double noundef %27383)
  store i64 %27384, ptr %56, align 8, !tbaa !11
  %27385 = load double, ptr %43, align 8, !tbaa !13
  store double %27385, ptr %63, align 8, !tbaa !13
  %27386 = load double, ptr %43, align 8, !tbaa !13
  store double %27386, ptr %64, align 8, !tbaa !13
  %27387 = load double, ptr %63, align 8, !tbaa !13
  %27388 = load double, ptr %64, align 8, !tbaa !13
  %27389 = fcmp une double %27387, %27388
  %27390 = zext i1 %27389 to i32
  store i32 %27390, ptr %48, align 4, !tbaa !9
  %27391 = load i32, ptr %48, align 4, !tbaa !9
  %27392 = icmp ne i32 %27391, 0
  br i1 %27392, label %27393, label %27395

27393:                                            ; preds = %27359
  %27394 = load i64, ptr %55, align 8, !tbaa !11
  br label %27397

27395:                                            ; preds = %27359
  %27396 = load i64, ptr %56, align 8, !tbaa !11
  br label %27397

27397:                                            ; preds = %27395, %27393
  %27398 = phi i64 [ %27394, %27393 ], [ %27396, %27395 ]
  store i64 %27398, ptr %55, align 8, !tbaa !11
  %27399 = load ptr, ptr %5, align 8, !tbaa !5
  %27400 = getelementptr inbounds %struct.w2c_hermes, ptr %27399, i32 0, i32 6
  %27401 = load i32, ptr %45, align 4, !tbaa !9
  %27402 = zext i32 %27401 to i64
  %27403 = add i64 %27402, 8
  %27404 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %27400, i64 noundef %27403, i64 noundef %27404)
  br label %27423

27405:                                            ; preds = %27204
  %27406 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27406, ptr %45, align 4, !tbaa !9
  %27407 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27407, ptr %46, align 4, !tbaa !9
  store i32 541, ptr %47, align 4, !tbaa !9
  %27408 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27408, ptr %48, align 4, !tbaa !9
  %27409 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27409, ptr %58, align 8, !tbaa !11
  %27410 = load i64, ptr %58, align 8, !tbaa !11
  %27411 = trunc i64 %27410 to i32
  store i32 %27411, ptr %49, align 4, !tbaa !9
  %27412 = load ptr, ptr %5, align 8, !tbaa !5
  %27413 = load i32, ptr %48, align 4, !tbaa !9
  %27414 = load i32, ptr %49, align 4, !tbaa !9
  %27415 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %27412, i32 noundef %27413, i32 noundef %27414)
  store i32 %27415, ptr %48, align 4, !tbaa !9
  %27416 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %27416, ptr %49, align 4, !tbaa !9
  %27417 = load ptr, ptr %5, align 8, !tbaa !5
  %27418 = load i32, ptr %45, align 4, !tbaa !9
  %27419 = load i32, ptr %46, align 4, !tbaa !9
  %27420 = load i32, ptr %47, align 4, !tbaa !9
  %27421 = load i32, ptr %48, align 4, !tbaa !9
  %27422 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %27417, i32 noundef %27418, i32 noundef %27419, i32 noundef %27420, i32 noundef %27421, i32 noundef %27422)
  br label %27423

27423:                                            ; preds = %27405, %27397, %27352, %27325, %27197
  %27424 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27424, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %27425 = load i32, ptr %46, align 4, !tbaa !9
  %27426 = load i32, ptr %45, align 4, !tbaa !9
  %27427 = add i32 %27426, %27425
  store i32 %27427, ptr %45, align 4, !tbaa !9
  %27428 = load i32, ptr %45, align 4, !tbaa !9
  %27429 = load ptr, ptr %5, align 8, !tbaa !5
  %27430 = getelementptr inbounds %struct.w2c_hermes, ptr %27429, i32 0, i32 3
  store i32 %27428, ptr %27430, align 8, !tbaa !15
  %27431 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27431, ptr %45, align 4, !tbaa !9
  %27432 = load ptr, ptr %5, align 8, !tbaa !5
  %27433 = getelementptr inbounds %struct.w2c_hermes, ptr %27432, i32 0, i32 6
  %27434 = load i32, ptr %45, align 4, !tbaa !9
  %27435 = zext i32 %27434 to i64
  %27436 = add i64 %27435, 5808
  %27437 = call i32 @i32_load(ptr noundef %27433, i64 noundef %27436)
  store i32 %27437, ptr %45, align 4, !tbaa !9
  %27438 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27438, ptr %6, align 4, !tbaa !9
  %27439 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27439, ptr %45, align 4, !tbaa !9
  %27440 = load ptr, ptr %5, align 8, !tbaa !5
  %27441 = getelementptr inbounds %struct.w2c_hermes, ptr %27440, i32 0, i32 6
  %27442 = load i32, ptr %45, align 4, !tbaa !9
  %27443 = zext i32 %27442 to i64
  %27444 = add i64 %27443, 304
  %27445 = call i32 @i32_load(ptr noundef %27441, i64 noundef %27444)
  store i32 %27445, ptr %45, align 4, !tbaa !9
  %27446 = load i32, ptr %45, align 4, !tbaa !9
  %27447 = icmp ne i32 %27446, 0
  %27448 = xor i1 %27447, true
  %27449 = zext i1 %27448 to i32
  store i32 %27449, ptr %45, align 4, !tbaa !9
  %27450 = load i32, ptr %45, align 4, !tbaa !9
  %27451 = icmp ne i32 %27450, 0
  br i1 %27451, label %27452, label %27453

27452:                                            ; preds = %27423
  br label %43136

27453:                                            ; preds = %27423
  %27454 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27454, ptr %45, align 4, !tbaa !9
  %27455 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27455, ptr %46, align 4, !tbaa !9
  %27456 = load ptr, ptr %5, align 8, !tbaa !5
  %27457 = getelementptr inbounds %struct.w2c_hermes, ptr %27456, i32 0, i32 6
  %27458 = load i32, ptr %46, align 4, !tbaa !9
  %27459 = zext i32 %27458 to i64
  %27460 = add i64 %27459, 1
  %27461 = call i32 @i32_load8_u(ptr noundef %27457, i64 noundef %27460)
  store i32 %27461, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27462 = load i32, ptr %47, align 4, !tbaa !9
  %27463 = and i32 %27462, 31
  %27464 = load i32, ptr %46, align 4, !tbaa !9
  %27465 = shl i32 %27464, %27463
  store i32 %27465, ptr %46, align 4, !tbaa !9
  %27466 = load i32, ptr %46, align 4, !tbaa !9
  %27467 = load i32, ptr %45, align 4, !tbaa !9
  %27468 = add i32 %27467, %27466
  store i32 %27468, ptr %45, align 4, !tbaa !9
  %27469 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27469, ptr %46, align 4, !tbaa !9
  %27470 = load ptr, ptr %5, align 8, !tbaa !5
  %27471 = getelementptr inbounds %struct.w2c_hermes, ptr %27470, i32 0, i32 6
  %27472 = load i32, ptr %46, align 4, !tbaa !9
  %27473 = zext i32 %27472 to i64
  %27474 = add i64 %27473, 312
  %27475 = call i64 @i64_load(ptr noundef %27471, i64 noundef %27474)
  store i64 %27475, ptr %55, align 8, !tbaa !11
  %27476 = load ptr, ptr %5, align 8, !tbaa !5
  %27477 = getelementptr inbounds %struct.w2c_hermes, ptr %27476, i32 0, i32 6
  %27478 = load i32, ptr %45, align 4, !tbaa !9
  %27479 = zext i32 %27478 to i64
  %27480 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %27477, i64 noundef %27479, i64 noundef %27480)
  %27481 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27481, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27482 = load ptr, ptr %5, align 8, !tbaa !5
  %27483 = getelementptr inbounds %struct.w2c_hermes, ptr %27482, i32 0, i32 6
  %27484 = load i32, ptr %45, align 4, !tbaa !9
  %27485 = zext i32 %27484 to i64
  %27486 = add i64 %27485, 516
  %27487 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27483, i64 noundef %27486, i32 noundef %27487)
  %27488 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27488, ptr %45, align 4, !tbaa !9
  %27489 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %27489, ptr %46, align 4, !tbaa !9
  %27490 = load ptr, ptr %5, align 8, !tbaa !5
  %27491 = getelementptr inbounds %struct.w2c_hermes, ptr %27490, i32 0, i32 6
  %27492 = load i32, ptr %45, align 4, !tbaa !9
  %27493 = zext i32 %27492 to i64
  %27494 = add i64 %27493, 512
  %27495 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27491, i64 noundef %27494, i32 noundef %27495)
  %27496 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27496, ptr %45, align 4, !tbaa !9
  %27497 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %27497, ptr %46, align 4, !tbaa !9
  %27498 = load ptr, ptr %5, align 8, !tbaa !5
  %27499 = getelementptr inbounds %struct.w2c_hermes, ptr %27498, i32 0, i32 6
  %27500 = load i32, ptr %45, align 4, !tbaa !9
  %27501 = zext i32 %27500 to i64
  %27502 = add i64 %27501, 508
  %27503 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27499, i64 noundef %27502, i32 noundef %27503)
  %27504 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27504, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %27505 = load i32, ptr %46, align 4, !tbaa !9
  %27506 = load i32, ptr %45, align 4, !tbaa !9
  %27507 = add i32 %27506, %27505
  store i32 %27507, ptr %45, align 4, !tbaa !9
  %27508 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27508, ptr %6, align 4, !tbaa !9
  br label %2945

27509:                                            ; preds = %3100
  %27510 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27510, ptr %45, align 4, !tbaa !9
  %27511 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27511, ptr %46, align 4, !tbaa !9
  %27512 = load ptr, ptr %5, align 8, !tbaa !5
  %27513 = getelementptr inbounds %struct.w2c_hermes, ptr %27512, i32 0, i32 6
  %27514 = load i32, ptr %46, align 4, !tbaa !9
  %27515 = zext i32 %27514 to i64
  %27516 = add i64 %27515, 2
  %27517 = call i32 @i32_load8_u(ptr noundef %27513, i64 noundef %27516)
  store i32 %27517, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27518 = load i32, ptr %47, align 4, !tbaa !9
  %27519 = and i32 %27518, 31
  %27520 = load i32, ptr %46, align 4, !tbaa !9
  %27521 = shl i32 %27520, %27519
  store i32 %27521, ptr %46, align 4, !tbaa !9
  %27522 = load i32, ptr %46, align 4, !tbaa !9
  %27523 = load i32, ptr %45, align 4, !tbaa !9
  %27524 = add i32 %27523, %27522
  store i32 %27524, ptr %45, align 4, !tbaa !9
  %27525 = load ptr, ptr %5, align 8, !tbaa !5
  %27526 = getelementptr inbounds %struct.w2c_hermes, ptr %27525, i32 0, i32 6
  %27527 = load i32, ptr %45, align 4, !tbaa !9
  %27528 = zext i32 %27527 to i64
  %27529 = call i64 @i64_load(ptr noundef %27526, i64 noundef %27528)
  store i64 %27529, ptr %54, align 8, !tbaa !11
  %27530 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %27530, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %27531 = load i64, ptr %54, align 8, !tbaa !11
  %27532 = load i64, ptr %55, align 8, !tbaa !11
  %27533 = icmp ugt i64 %27531, %27532
  %27534 = zext i1 %27533 to i32
  store i32 %27534, ptr %45, align 4, !tbaa !9
  %27535 = load i32, ptr %45, align 4, !tbaa !9
  %27536 = icmp ne i32 %27535, 0
  br i1 %27536, label %27537, label %27538

27537:                                            ; preds = %27509
  br label %27759

27538:                                            ; preds = %27509
  %27539 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27539, ptr %45, align 4, !tbaa !9
  %27540 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27540, ptr %46, align 4, !tbaa !9
  %27541 = load ptr, ptr %5, align 8, !tbaa !5
  %27542 = getelementptr inbounds %struct.w2c_hermes, ptr %27541, i32 0, i32 6
  %27543 = load i32, ptr %46, align 4, !tbaa !9
  %27544 = zext i32 %27543 to i64
  %27545 = add i64 %27544, 3
  %27546 = call i32 @i32_load8_u(ptr noundef %27542, i64 noundef %27545)
  store i32 %27546, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27547 = load i32, ptr %47, align 4, !tbaa !9
  %27548 = and i32 %27547, 31
  %27549 = load i32, ptr %46, align 4, !tbaa !9
  %27550 = shl i32 %27549, %27548
  store i32 %27550, ptr %46, align 4, !tbaa !9
  %27551 = load i32, ptr %46, align 4, !tbaa !9
  %27552 = load i32, ptr %45, align 4, !tbaa !9
  %27553 = add i32 %27552, %27551
  store i32 %27553, ptr %45, align 4, !tbaa !9
  %27554 = load ptr, ptr %5, align 8, !tbaa !5
  %27555 = getelementptr inbounds %struct.w2c_hermes, ptr %27554, i32 0, i32 6
  %27556 = load i32, ptr %45, align 4, !tbaa !9
  %27557 = zext i32 %27556 to i64
  %27558 = call i64 @i64_load(ptr noundef %27555, i64 noundef %27557)
  store i64 %27558, ptr %54, align 8, !tbaa !11
  %27559 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %27559, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %27560 = load i64, ptr %54, align 8, !tbaa !11
  %27561 = load i64, ptr %55, align 8, !tbaa !11
  %27562 = icmp ugt i64 %27560, %27561
  %27563 = zext i1 %27562 to i32
  store i32 %27563, ptr %45, align 4, !tbaa !9
  %27564 = load i32, ptr %45, align 4, !tbaa !9
  %27565 = icmp ne i32 %27564, 0
  br i1 %27565, label %27566, label %27567

27566:                                            ; preds = %27538
  br label %27759

27567:                                            ; preds = %27538
  %27568 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %27568, ptr %54, align 8, !tbaa !11
  %27569 = load i64, ptr %54, align 8, !tbaa !11
  %27570 = call double @f64_reinterpret_i64(i64 noundef %27569)
  store double %27570, ptr %60, align 8, !tbaa !13
  %27571 = load double, ptr %60, align 8, !tbaa !13
  store double %27571, ptr %43, align 8, !tbaa !13
  %27572 = load double, ptr %60, align 8, !tbaa !13
  %27573 = call double @wasm_fabs(double noundef %27572)
  store double %27573, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %27574 = load double, ptr %60, align 8, !tbaa !13
  %27575 = load double, ptr %61, align 8, !tbaa !13
  %27576 = fcmp olt double %27574, %27575
  %27577 = zext i1 %27576 to i32
  store i32 %27577, ptr %45, align 4, !tbaa !9
  %27578 = load i32, ptr %45, align 4, !tbaa !9
  %27579 = icmp ne i32 %27578, 0
  br i1 %27579, label %27580, label %27617

27580:                                            ; preds = %27567
  %27581 = load double, ptr %43, align 8, !tbaa !13
  store double %27581, ptr %60, align 8, !tbaa !13
  %27582 = load double, ptr %60, align 8, !tbaa !13
  %27583 = load double, ptr %60, align 8, !tbaa !13
  %27584 = fcmp une double %27582, %27583
  %27585 = xor i1 %27584, true
  %27586 = xor i1 %27585, true
  %27587 = zext i1 %27586 to i32
  %27588 = sext i32 %27587 to i64
  %27589 = call i64 @llvm.expect.i64(i64 %27588, i64 0)
  %27590 = icmp ne i64 %27589, 0
  br i1 %27590, label %27591, label %27593

27591:                                            ; preds = %27580
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

27592:                                            ; No predecessors!
  br label %27615

27593:                                            ; preds = %27580
  %27594 = load double, ptr %60, align 8, !tbaa !13
  %27595 = fcmp ogt double %27594, 0xC1E0000000200000
  br i1 %27595, label %27596, label %27599

27596:                                            ; preds = %27593
  %27597 = load double, ptr %60, align 8, !tbaa !13
  %27598 = fcmp olt double %27597, 0x41E0000000000000
  br label %27599

27599:                                            ; preds = %27596, %27593
  %27600 = phi i1 [ false, %27593 ], [ %27598, %27596 ]
  %27601 = xor i1 %27600, true
  %27602 = xor i1 %27601, true
  %27603 = xor i1 %27602, true
  %27604 = zext i1 %27603 to i32
  %27605 = sext i32 %27604 to i64
  %27606 = call i64 @llvm.expect.i64(i64 %27605, i64 0)
  %27607 = icmp ne i64 %27606, 0
  br i1 %27607, label %27608, label %27610

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

27609:                                            ; No predecessors!
  br label %27613

27610:                                            ; preds = %27599
  %27611 = load double, ptr %60, align 8, !tbaa !13
  %27612 = fptosi double %27611 to i32
  br label %27613

27613:                                            ; preds = %27610, %27609
  %27614 = phi i32 [ 0, %27609 ], [ %27612, %27610 ]
  br label %27615

27615:                                            ; preds = %27613, %27592
  %27616 = phi i32 [ 0, %27592 ], [ %27614, %27613 ]
  store i32 %27616, ptr %45, align 4, !tbaa !9
  br label %27618

27617:                                            ; preds = %27567
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %27618

27618:                                            ; preds = %27617, %27615
  %27619 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27619, ptr %12, align 4, !tbaa !9
  %27620 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27620, ptr %45, align 4, !tbaa !9
  %27621 = load i32, ptr %45, align 4, !tbaa !9
  %27622 = sitofp i32 %27621 to double
  store double %27622, ptr %60, align 8, !tbaa !13
  %27623 = load double, ptr %43, align 8, !tbaa !13
  store double %27623, ptr %61, align 8, !tbaa !13
  %27624 = load double, ptr %60, align 8, !tbaa !13
  %27625 = load double, ptr %61, align 8, !tbaa !13
  %27626 = fcmp oeq double %27624, %27625
  %27627 = zext i1 %27626 to i32
  store i32 %27627, ptr %45, align 4, !tbaa !9
  %27628 = load i32, ptr %45, align 4, !tbaa !9
  %27629 = icmp ne i32 %27628, 0
  br i1 %27629, label %27630, label %27634

27630:                                            ; preds = %27618
  %27631 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27631, ptr %54, align 8, !tbaa !11
  %27632 = load i64, ptr %54, align 8, !tbaa !11
  %27633 = call double @f64_reinterpret_i64(i64 noundef %27632)
  store double %27633, ptr %60, align 8, !tbaa !13
  br label %27660

27634:                                            ; preds = %27618
  %27635 = load double, ptr %43, align 8, !tbaa !13
  store double %27635, ptr %60, align 8, !tbaa !13
  %27636 = load ptr, ptr %5, align 8, !tbaa !5
  %27637 = load double, ptr %60, align 8, !tbaa !13
  %27638 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %27636, double noundef %27637)
  store i32 %27638, ptr %45, align 4, !tbaa !9
  %27639 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27639, ptr %12, align 4, !tbaa !9
  %27640 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27640, ptr %45, align 4, !tbaa !9
  %27641 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27641, ptr %46, align 4, !tbaa !9
  %27642 = load ptr, ptr %5, align 8, !tbaa !5
  %27643 = getelementptr inbounds %struct.w2c_hermes, ptr %27642, i32 0, i32 6
  %27644 = load i32, ptr %46, align 4, !tbaa !9
  %27645 = zext i32 %27644 to i64
  %27646 = add i64 %27645, 3
  %27647 = call i32 @i32_load8_u(ptr noundef %27643, i64 noundef %27646)
  store i32 %27647, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27648 = load i32, ptr %47, align 4, !tbaa !9
  %27649 = and i32 %27648, 31
  %27650 = load i32, ptr %46, align 4, !tbaa !9
  %27651 = shl i32 %27650, %27649
  store i32 %27651, ptr %46, align 4, !tbaa !9
  %27652 = load i32, ptr %46, align 4, !tbaa !9
  %27653 = load i32, ptr %45, align 4, !tbaa !9
  %27654 = add i32 %27653, %27652
  store i32 %27654, ptr %45, align 4, !tbaa !9
  %27655 = load ptr, ptr %5, align 8, !tbaa !5
  %27656 = getelementptr inbounds %struct.w2c_hermes, ptr %27655, i32 0, i32 6
  %27657 = load i32, ptr %45, align 4, !tbaa !9
  %27658 = zext i32 %27657 to i64
  %27659 = call double @f64_load(ptr noundef %27656, i64 noundef %27658)
  store double %27659, ptr %60, align 8, !tbaa !13
  br label %27660

27660:                                            ; preds = %27634, %27630
  %27661 = load double, ptr %60, align 8, !tbaa !13
  store double %27661, ptr %43, align 8, !tbaa !13
  %27662 = load double, ptr %60, align 8, !tbaa !13
  %27663 = call double @wasm_fabs(double noundef %27662)
  store double %27663, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %27664 = load double, ptr %60, align 8, !tbaa !13
  %27665 = load double, ptr %61, align 8, !tbaa !13
  %27666 = fcmp olt double %27664, %27665
  %27667 = zext i1 %27666 to i32
  store i32 %27667, ptr %45, align 4, !tbaa !9
  %27668 = load i32, ptr %45, align 4, !tbaa !9
  %27669 = icmp ne i32 %27668, 0
  br i1 %27669, label %27670, label %27707

27670:                                            ; preds = %27660
  %27671 = load double, ptr %43, align 8, !tbaa !13
  store double %27671, ptr %60, align 8, !tbaa !13
  %27672 = load double, ptr %60, align 8, !tbaa !13
  %27673 = load double, ptr %60, align 8, !tbaa !13
  %27674 = fcmp une double %27672, %27673
  %27675 = xor i1 %27674, true
  %27676 = xor i1 %27675, true
  %27677 = zext i1 %27676 to i32
  %27678 = sext i32 %27677 to i64
  %27679 = call i64 @llvm.expect.i64(i64 %27678, i64 0)
  %27680 = icmp ne i64 %27679, 0
  br i1 %27680, label %27681, label %27683

27681:                                            ; preds = %27670
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

27682:                                            ; No predecessors!
  br label %27705

27683:                                            ; preds = %27670
  %27684 = load double, ptr %60, align 8, !tbaa !13
  %27685 = fcmp ogt double %27684, 0xC1E0000000200000
  br i1 %27685, label %27686, label %27689

27686:                                            ; preds = %27683
  %27687 = load double, ptr %60, align 8, !tbaa !13
  %27688 = fcmp olt double %27687, 0x41E0000000000000
  br label %27689

27689:                                            ; preds = %27686, %27683
  %27690 = phi i1 [ false, %27683 ], [ %27688, %27686 ]
  %27691 = xor i1 %27690, true
  %27692 = xor i1 %27691, true
  %27693 = xor i1 %27692, true
  %27694 = zext i1 %27693 to i32
  %27695 = sext i32 %27694 to i64
  %27696 = call i64 @llvm.expect.i64(i64 %27695, i64 0)
  %27697 = icmp ne i64 %27696, 0
  br i1 %27697, label %27698, label %27700

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

27699:                                            ; No predecessors!
  br label %27703

27700:                                            ; preds = %27689
  %27701 = load double, ptr %60, align 8, !tbaa !13
  %27702 = fptosi double %27701 to i32
  br label %27703

27703:                                            ; preds = %27700, %27699
  %27704 = phi i32 [ 0, %27699 ], [ %27702, %27700 ]
  br label %27705

27705:                                            ; preds = %27703, %27682
  %27706 = phi i32 [ 0, %27682 ], [ %27704, %27703 ]
  store i32 %27706, ptr %45, align 4, !tbaa !9
  br label %27708

27707:                                            ; preds = %27660
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %27708

27708:                                            ; preds = %27707, %27705
  %27709 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27709, ptr %7, align 4, !tbaa !9
  %27710 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27710, ptr %45, align 4, !tbaa !9
  %27711 = load i32, ptr %45, align 4, !tbaa !9
  %27712 = sitofp i32 %27711 to double
  store double %27712, ptr %60, align 8, !tbaa !13
  %27713 = load double, ptr %43, align 8, !tbaa !13
  store double %27713, ptr %61, align 8, !tbaa !13
  %27714 = load double, ptr %60, align 8, !tbaa !13
  %27715 = load double, ptr %61, align 8, !tbaa !13
  %27716 = fcmp une double %27714, %27715
  %27717 = zext i1 %27716 to i32
  store i32 %27717, ptr %45, align 4, !tbaa !9
  %27718 = load i32, ptr %45, align 4, !tbaa !9
  %27719 = icmp ne i32 %27718, 0
  br i1 %27719, label %27720, label %27726

27720:                                            ; preds = %27708
  %27721 = load double, ptr %43, align 8, !tbaa !13
  store double %27721, ptr %60, align 8, !tbaa !13
  %27722 = load ptr, ptr %5, align 8, !tbaa !5
  %27723 = load double, ptr %60, align 8, !tbaa !13
  %27724 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %27722, double noundef %27723)
  store i32 %27724, ptr %45, align 4, !tbaa !9
  %27725 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27725, ptr %7, align 4, !tbaa !9
  br label %27726

27726:                                            ; preds = %27720, %27708
  %27727 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27727, ptr %45, align 4, !tbaa !9
  %27728 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27728, ptr %46, align 4, !tbaa !9
  %27729 = load ptr, ptr %5, align 8, !tbaa !5
  %27730 = getelementptr inbounds %struct.w2c_hermes, ptr %27729, i32 0, i32 6
  %27731 = load i32, ptr %46, align 4, !tbaa !9
  %27732 = zext i32 %27731 to i64
  %27733 = add i64 %27732, 1
  %27734 = call i32 @i32_load8_u(ptr noundef %27730, i64 noundef %27733)
  store i32 %27734, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27735 = load i32, ptr %47, align 4, !tbaa !9
  %27736 = and i32 %27735, 31
  %27737 = load i32, ptr %46, align 4, !tbaa !9
  %27738 = shl i32 %27737, %27736
  store i32 %27738, ptr %46, align 4, !tbaa !9
  %27739 = load i32, ptr %46, align 4, !tbaa !9
  %27740 = load i32, ptr %45, align 4, !tbaa !9
  %27741 = add i32 %27740, %27739
  store i32 %27741, ptr %45, align 4, !tbaa !9
  %27742 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27742, ptr %46, align 4, !tbaa !9
  %27743 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27743, ptr %47, align 4, !tbaa !9
  %27744 = load i32, ptr %47, align 4, !tbaa !9
  %27745 = load i32, ptr %46, align 4, !tbaa !9
  %27746 = and i32 %27745, %27744
  store i32 %27746, ptr %46, align 4, !tbaa !9
  %27747 = load i32, ptr %46, align 4, !tbaa !9
  %27748 = sitofp i32 %27747 to double
  store double %27748, ptr %61, align 8, !tbaa !13
  %27749 = load ptr, ptr %5, align 8, !tbaa !5
  %27750 = getelementptr inbounds %struct.w2c_hermes, ptr %27749, i32 0, i32 6
  %27751 = load i32, ptr %45, align 4, !tbaa !9
  %27752 = zext i32 %27751 to i64
  %27753 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %27750, i64 noundef %27752, double noundef %27753)
  %27754 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27754, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %27755 = load i32, ptr %46, align 4, !tbaa !9
  %27756 = load i32, ptr %45, align 4, !tbaa !9
  %27757 = add i32 %27756, %27755
  store i32 %27757, ptr %45, align 4, !tbaa !9
  %27758 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27758, ptr %6, align 4, !tbaa !9
  br label %2945

27759:                                            ; preds = %27566, %27537
  %27760 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27760, ptr %45, align 4, !tbaa !9
  %27761 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27761, ptr %46, align 4, !tbaa !9
  %27762 = load ptr, ptr %5, align 8, !tbaa !5
  %27763 = getelementptr inbounds %struct.w2c_hermes, ptr %27762, i32 0, i32 6
  %27764 = load i32, ptr %45, align 4, !tbaa !9
  %27765 = zext i32 %27764 to i64
  %27766 = add i64 %27765, 5808
  %27767 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27763, i64 noundef %27766, i32 noundef %27767)
  %27768 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %27768, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %27769 = load i32, ptr %46, align 4, !tbaa !9
  %27770 = load i32, ptr %45, align 4, !tbaa !9
  %27771 = add i32 %27770, %27769
  store i32 %27771, ptr %45, align 4, !tbaa !9
  %27772 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27772, ptr %12, align 4, !tbaa !9
  %27773 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27773, ptr %45, align 4, !tbaa !9
  %27774 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27774, ptr %46, align 4, !tbaa !9
  %27775 = load ptr, ptr %5, align 8, !tbaa !5
  %27776 = getelementptr inbounds %struct.w2c_hermes, ptr %27775, i32 0, i32 6
  %27777 = load i32, ptr %46, align 4, !tbaa !9
  %27778 = zext i32 %27777 to i64
  %27779 = add i64 %27778, 2
  %27780 = call i32 @i32_load8_u(ptr noundef %27776, i64 noundef %27779)
  store i32 %27780, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27781 = load i32, ptr %47, align 4, !tbaa !9
  %27782 = and i32 %27781, 31
  %27783 = load i32, ptr %46, align 4, !tbaa !9
  %27784 = shl i32 %27783, %27782
  store i32 %27784, ptr %46, align 4, !tbaa !9
  %27785 = load i32, ptr %46, align 4, !tbaa !9
  %27786 = load i32, ptr %45, align 4, !tbaa !9
  %27787 = add i32 %27786, %27785
  store i32 %27787, ptr %45, align 4, !tbaa !9
  %27788 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27788, ptr %7, align 4, !tbaa !9
  %27789 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %27789, ptr %45, align 4, !tbaa !9
  %27790 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27790, ptr %46, align 4, !tbaa !9
  %27791 = load ptr, ptr %5, align 8, !tbaa !5
  %27792 = getelementptr inbounds %struct.w2c_hermes, ptr %27791, i32 0, i32 6
  %27793 = load i32, ptr %46, align 4, !tbaa !9
  %27794 = zext i32 %27793 to i64
  %27795 = add i64 %27794, 3
  %27796 = call i32 @i32_load8_u(ptr noundef %27792, i64 noundef %27795)
  store i32 %27796, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %27797 = load i32, ptr %47, align 4, !tbaa !9
  %27798 = and i32 %27797, 31
  %27799 = load i32, ptr %46, align 4, !tbaa !9
  %27800 = shl i32 %27799, %27798
  store i32 %27800, ptr %46, align 4, !tbaa !9
  %27801 = load i32, ptr %46, align 4, !tbaa !9
  %27802 = load i32, ptr %45, align 4, !tbaa !9
  %27803 = add i32 %27802, %27801
  store i32 %27803, ptr %45, align 4, !tbaa !9
  %27804 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27804, ptr %8, align 4, !tbaa !9
  %27805 = load ptr, ptr %5, align 8, !tbaa !5
  %27806 = getelementptr inbounds %struct.w2c_hermes, ptr %27805, i32 0, i32 3
  %27807 = load i32, ptr %27806, align 8, !tbaa !15
  store i32 %27807, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %27808 = load i32, ptr %46, align 4, !tbaa !9
  %27809 = load i32, ptr %45, align 4, !tbaa !9
  %27810 = sub i32 %27809, %27808
  store i32 %27810, ptr %45, align 4, !tbaa !9
  %27811 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27811, ptr %13, align 4, !tbaa !9
  %27812 = load i32, ptr %45, align 4, !tbaa !9
  %27813 = load ptr, ptr %5, align 8, !tbaa !5
  %27814 = getelementptr inbounds %struct.w2c_hermes, ptr %27813, i32 0, i32 3
  store i32 %27812, ptr %27814, align 8, !tbaa !15
  %27815 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27815, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %27816 = load i32, ptr %46, align 4, !tbaa !9
  %27817 = load i32, ptr %45, align 4, !tbaa !9
  %27818 = add i32 %27817, %27816
  store i32 %27818, ptr %45, align 4, !tbaa !9
  %27819 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27819, ptr %46, align 4, !tbaa !9
  %27820 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27820, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %27821 = load ptr, ptr %5, align 8, !tbaa !5
  %27822 = load i32, ptr %45, align 4, !tbaa !9
  %27823 = load i32, ptr %46, align 4, !tbaa !9
  %27824 = load i32, ptr %47, align 4, !tbaa !9
  %27825 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %27821, i32 noundef %27822, i32 noundef %27823, i32 noundef %27824, i32 noundef %27825)
  %27826 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27826, ptr %45, align 4, !tbaa !9
  %27827 = load ptr, ptr %5, align 8, !tbaa !5
  %27828 = getelementptr inbounds %struct.w2c_hermes, ptr %27827, i32 0, i32 6
  %27829 = load i32, ptr %45, align 4, !tbaa !9
  %27830 = zext i32 %27829 to i64
  %27831 = add i64 %27830, 16
  %27832 = call i32 @i32_load(ptr noundef %27828, i64 noundef %27831)
  store i32 %27832, ptr %45, align 4, !tbaa !9
  %27833 = load i32, ptr %45, align 4, !tbaa !9
  %27834 = icmp ne i32 %27833, 0
  %27835 = xor i1 %27834, true
  %27836 = zext i1 %27835 to i32
  store i32 %27836, ptr %45, align 4, !tbaa !9
  %27837 = load i32, ptr %45, align 4, !tbaa !9
  %27838 = icmp ne i32 %27837, 0
  br i1 %27838, label %27839, label %27846

27839:                                            ; preds = %27759
  %27840 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27840, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27841 = load ptr, ptr %5, align 8, !tbaa !5
  %27842 = getelementptr inbounds %struct.w2c_hermes, ptr %27841, i32 0, i32 6
  %27843 = load i32, ptr %45, align 4, !tbaa !9
  %27844 = zext i32 %27843 to i64
  %27845 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27842, i64 noundef %27844, i32 noundef %27845)
  br label %28145

27846:                                            ; preds = %27759
  %27847 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27847, ptr %45, align 4, !tbaa !9
  %27848 = load ptr, ptr %5, align 8, !tbaa !5
  %27849 = getelementptr inbounds %struct.w2c_hermes, ptr %27848, i32 0, i32 6
  %27850 = load i32, ptr %45, align 4, !tbaa !9
  %27851 = zext i32 %27850 to i64
  %27852 = add i64 %27851, 24
  %27853 = call i64 @i64_load(ptr noundef %27849, i64 noundef %27852)
  store i64 %27853, ptr %54, align 8, !tbaa !11
  %27854 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %27854, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %27855 = load i64, ptr %54, align 8, !tbaa !11
  %27856 = load i64, ptr %55, align 8, !tbaa !11
  %27857 = and i64 %27856, 63
  %27858 = ashr i64 %27855, %27857
  store i64 %27858, ptr %54, align 8, !tbaa !11
  %27859 = load i64, ptr %54, align 8, !tbaa !11
  %27860 = trunc i64 %27859 to i32
  store i32 %27860, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %27861 = load i32, ptr %45, align 4, !tbaa !9
  %27862 = load i32, ptr %46, align 4, !tbaa !9
  %27863 = icmp ne i32 %27861, %27862
  %27864 = zext i1 %27863 to i32
  store i32 %27864, ptr %45, align 4, !tbaa !9
  %27865 = load i32, ptr %45, align 4, !tbaa !9
  %27866 = icmp ne i32 %27865, 0
  br i1 %27866, label %27867, label %28127

27867:                                            ; preds = %27846
  %27868 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27868, ptr %45, align 4, !tbaa !9
  %27869 = load ptr, ptr %5, align 8, !tbaa !5
  %27870 = getelementptr inbounds %struct.w2c_hermes, ptr %27869, i32 0, i32 6
  %27871 = load i32, ptr %45, align 4, !tbaa !9
  %27872 = zext i32 %27871 to i64
  %27873 = add i64 %27872, 4
  %27874 = call i32 @i32_load(ptr noundef %27870, i64 noundef %27873)
  store i32 %27874, ptr %45, align 4, !tbaa !9
  %27875 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27875, ptr %6, align 4, !tbaa !9
  %27876 = load ptr, ptr %5, align 8, !tbaa !5
  %27877 = getelementptr inbounds %struct.w2c_hermes, ptr %27876, i32 0, i32 6
  %27878 = load i32, ptr %45, align 4, !tbaa !9
  %27879 = zext i32 %27878 to i64
  %27880 = add i64 %27879, 164
  %27881 = call i32 @i32_load(ptr noundef %27877, i64 noundef %27880)
  store i32 %27881, ptr %45, align 4, !tbaa !9
  %27882 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27882, ptr %7, align 4, !tbaa !9
  %27883 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27883, ptr %46, align 4, !tbaa !9
  %27884 = load ptr, ptr %5, align 8, !tbaa !5
  %27885 = getelementptr inbounds %struct.w2c_hermes, ptr %27884, i32 0, i32 6
  %27886 = load i32, ptr %46, align 4, !tbaa !9
  %27887 = zext i32 %27886 to i64
  %27888 = add i64 %27887, 168
  %27889 = call i32 @i32_load(ptr noundef %27885, i64 noundef %27888)
  store i32 %27889, ptr %46, align 4, !tbaa !9
  %27890 = load i32, ptr %45, align 4, !tbaa !9
  %27891 = load i32, ptr %46, align 4, !tbaa !9
  %27892 = icmp ult i32 %27890, %27891
  %27893 = zext i1 %27892 to i32
  store i32 %27893, ptr %45, align 4, !tbaa !9
  %27894 = load i32, ptr %45, align 4, !tbaa !9
  %27895 = icmp ne i32 %27894, 0
  br i1 %27895, label %27896, label %27915

27896:                                            ; preds = %27867
  %27897 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27897, ptr %45, align 4, !tbaa !9
  %27898 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27898, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %27899 = load i32, ptr %47, align 4, !tbaa !9
  %27900 = load i32, ptr %46, align 4, !tbaa !9
  %27901 = add i32 %27900, %27899
  store i32 %27901, ptr %46, align 4, !tbaa !9
  %27902 = load ptr, ptr %5, align 8, !tbaa !5
  %27903 = getelementptr inbounds %struct.w2c_hermes, ptr %27902, i32 0, i32 6
  %27904 = load i32, ptr %45, align 4, !tbaa !9
  %27905 = zext i32 %27904 to i64
  %27906 = add i64 %27905, 164
  %27907 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27903, i64 noundef %27906, i32 noundef %27907)
  %27908 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27908, ptr %45, align 4, !tbaa !9
  %27909 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27909, ptr %55, align 8, !tbaa !11
  %27910 = load ptr, ptr %5, align 8, !tbaa !5
  %27911 = getelementptr inbounds %struct.w2c_hermes, ptr %27910, i32 0, i32 6
  %27912 = load i32, ptr %45, align 4, !tbaa !9
  %27913 = zext i32 %27912 to i64
  %27914 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %27911, i64 noundef %27913, i64 noundef %27914)
  br label %27923

27915:                                            ; preds = %27867
  %27916 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27916, ptr %45, align 4, !tbaa !9
  %27917 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %27917, ptr %55, align 8, !tbaa !11
  %27918 = load ptr, ptr %5, align 8, !tbaa !5
  %27919 = load i32, ptr %45, align 4, !tbaa !9
  %27920 = load i64, ptr %55, align 8, !tbaa !11
  %27921 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %27918, i32 noundef %27919, i64 noundef %27920)
  store i32 %27921, ptr %45, align 4, !tbaa !9
  %27922 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %27922, ptr %7, align 4, !tbaa !9
  br label %27923

27923:                                            ; preds = %27915, %27896
  %27924 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27924, ptr %45, align 4, !tbaa !9
  %27925 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27925, ptr %46, align 4, !tbaa !9
  %27926 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %27926, ptr %47, align 4, !tbaa !9
  %27927 = load ptr, ptr %5, align 8, !tbaa !5
  %27928 = load i32, ptr %45, align 4, !tbaa !9
  %27929 = load i32, ptr %46, align 4, !tbaa !9
  %27930 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %27927, i32 noundef %27928, i32 noundef %27929, i32 noundef %27930)
  %27931 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27931, ptr %45, align 4, !tbaa !9
  %27932 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27932, ptr %46, align 4, !tbaa !9
  %27933 = load ptr, ptr %5, align 8, !tbaa !5
  %27934 = getelementptr inbounds %struct.w2c_hermes, ptr %27933, i32 0, i32 6
  %27935 = load i32, ptr %46, align 4, !tbaa !9
  %27936 = zext i32 %27935 to i64
  %27937 = call i32 @i32_load(ptr noundef %27934, i64 noundef %27936)
  store i32 %27937, ptr %46, align 4, !tbaa !9
  %27938 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %27938, ptr %6, align 4, !tbaa !9
  %27939 = load ptr, ptr %5, align 8, !tbaa !5
  %27940 = getelementptr inbounds %struct.w2c_hermes, ptr %27939, i32 0, i32 6
  %27941 = load i32, ptr %45, align 4, !tbaa !9
  %27942 = zext i32 %27941 to i64
  %27943 = add i64 %27942, 16
  %27944 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27940, i64 noundef %27943, i32 noundef %27944)
  %27945 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27945, ptr %45, align 4, !tbaa !9
  %27946 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27946, ptr %46, align 4, !tbaa !9
  %27947 = load ptr, ptr %5, align 8, !tbaa !5
  %27948 = getelementptr inbounds %struct.w2c_hermes, ptr %27947, i32 0, i32 6
  %27949 = load i32, ptr %46, align 4, !tbaa !9
  %27950 = zext i32 %27949 to i64
  %27951 = add i64 %27950, 8
  %27952 = call i64 @i64_load(ptr noundef %27948, i64 noundef %27951)
  store i64 %27952, ptr %55, align 8, !tbaa !11
  %27953 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %27953, ptr %39, align 8, !tbaa !11
  %27954 = load ptr, ptr %5, align 8, !tbaa !5
  %27955 = getelementptr inbounds %struct.w2c_hermes, ptr %27954, i32 0, i32 6
  %27956 = load i32, ptr %45, align 4, !tbaa !9
  %27957 = zext i32 %27956 to i64
  %27958 = add i64 %27957, 24
  %27959 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %27955, i64 noundef %27958, i64 noundef %27959)
  %27960 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %27960, ptr %45, align 4, !tbaa !9
  %27961 = load i32, ptr %45, align 4, !tbaa !9
  %27962 = icmp ne i32 %27961, 0
  %27963 = xor i1 %27962, true
  %27964 = zext i1 %27963 to i32
  store i32 %27964, ptr %45, align 4, !tbaa !9
  %27965 = load i32, ptr %45, align 4, !tbaa !9
  %27966 = icmp ne i32 %27965, 0
  br i1 %27966, label %27967, label %27974

27967:                                            ; preds = %27923
  %27968 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27968, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27969 = load ptr, ptr %5, align 8, !tbaa !5
  %27970 = getelementptr inbounds %struct.w2c_hermes, ptr %27969, i32 0, i32 6
  %27971 = load i32, ptr %45, align 4, !tbaa !9
  %27972 = zext i32 %27971 to i64
  %27973 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27970, i64 noundef %27972, i32 noundef %27973)
  br label %28145

27974:                                            ; preds = %27923
  %27975 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27975, ptr %45, align 4, !tbaa !9
  %27976 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %27976, ptr %46, align 4, !tbaa !9
  %27977 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %27977, ptr %47, align 4, !tbaa !9
  %27978 = load ptr, ptr %5, align 8, !tbaa !5
  %27979 = load i32, ptr %45, align 4, !tbaa !9
  %27980 = load i32, ptr %46, align 4, !tbaa !9
  %27981 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %27978, i32 noundef %27979, i32 noundef %27980, i32 noundef %27981)
  %27982 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %27982, ptr %45, align 4, !tbaa !9
  %27983 = load ptr, ptr %5, align 8, !tbaa !5
  %27984 = getelementptr inbounds %struct.w2c_hermes, ptr %27983, i32 0, i32 6
  %27985 = load i32, ptr %45, align 4, !tbaa !9
  %27986 = zext i32 %27985 to i64
  %27987 = call i32 @i32_load(ptr noundef %27984, i64 noundef %27986)
  store i32 %27987, ptr %45, align 4, !tbaa !9
  %27988 = load i32, ptr %45, align 4, !tbaa !9
  %27989 = icmp ne i32 %27988, 0
  %27990 = xor i1 %27989, true
  %27991 = zext i1 %27990 to i32
  store i32 %27991, ptr %45, align 4, !tbaa !9
  %27992 = load i32, ptr %45, align 4, !tbaa !9
  %27993 = icmp ne i32 %27992, 0
  br i1 %27993, label %27994, label %28001

27994:                                            ; preds = %27974
  %27995 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %27995, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %27996 = load ptr, ptr %5, align 8, !tbaa !5
  %27997 = getelementptr inbounds %struct.w2c_hermes, ptr %27996, i32 0, i32 6
  %27998 = load i32, ptr %45, align 4, !tbaa !9
  %27999 = zext i32 %27998 to i64
  %28000 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %27997, i64 noundef %27999, i32 noundef %28000)
  br label %28145

28001:                                            ; preds = %27974
  %28002 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28002, ptr %45, align 4, !tbaa !9
  %28003 = load ptr, ptr %5, align 8, !tbaa !5
  %28004 = getelementptr inbounds %struct.w2c_hermes, ptr %28003, i32 0, i32 6
  %28005 = load i32, ptr %45, align 4, !tbaa !9
  %28006 = zext i32 %28005 to i64
  %28007 = add i64 %28006, 8
  %28008 = call double @f64_load(ptr noundef %28004, i64 noundef %28007)
  store double %28008, ptr %60, align 8, !tbaa !13
  %28009 = load double, ptr %60, align 8, !tbaa !13
  store double %28009, ptr %44, align 8, !tbaa !13
  %28010 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28010, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %28011 = load ptr, ptr %5, align 8, !tbaa !5
  %28012 = getelementptr inbounds %struct.w2c_hermes, ptr %28011, i32 0, i32 6
  %28013 = load i32, ptr %45, align 4, !tbaa !9
  %28014 = zext i32 %28013 to i64
  %28015 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28012, i64 noundef %28014, i32 noundef %28015)
  %28016 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28016, ptr %45, align 4, !tbaa !9
  %28017 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28017, ptr %55, align 8, !tbaa !11
  %28018 = load i64, ptr %55, align 8, !tbaa !11
  %28019 = call double @f64_reinterpret_i64(i64 noundef %28018)
  store double %28019, ptr %61, align 8, !tbaa !13
  %28020 = load double, ptr %61, align 8, !tbaa !13
  store double %28020, ptr %43, align 8, !tbaa !13
  %28021 = load double, ptr %61, align 8, !tbaa !13
  %28022 = call double @wasm_fabs(double noundef %28021)
  store double %28022, ptr %61, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %62, align 8, !tbaa !13
  %28023 = load double, ptr %61, align 8, !tbaa !13
  %28024 = load double, ptr %62, align 8, !tbaa !13
  %28025 = fcmp olt double %28023, %28024
  %28026 = zext i1 %28025 to i32
  store i32 %28026, ptr %46, align 4, !tbaa !9
  %28027 = load i32, ptr %46, align 4, !tbaa !9
  %28028 = icmp ne i32 %28027, 0
  br i1 %28028, label %28029, label %28066

28029:                                            ; preds = %28001
  %28030 = load double, ptr %43, align 8, !tbaa !13
  store double %28030, ptr %61, align 8, !tbaa !13
  %28031 = load double, ptr %61, align 8, !tbaa !13
  %28032 = load double, ptr %61, align 8, !tbaa !13
  %28033 = fcmp une double %28031, %28032
  %28034 = xor i1 %28033, true
  %28035 = xor i1 %28034, true
  %28036 = zext i1 %28035 to i32
  %28037 = sext i32 %28036 to i64
  %28038 = call i64 @llvm.expect.i64(i64 %28037, i64 0)
  %28039 = icmp ne i64 %28038, 0
  br i1 %28039, label %28040, label %28042

28040:                                            ; preds = %28029
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

28041:                                            ; No predecessors!
  br label %28064

28042:                                            ; preds = %28029
  %28043 = load double, ptr %61, align 8, !tbaa !13
  %28044 = fcmp ogt double %28043, 0xC1E0000000200000
  br i1 %28044, label %28045, label %28048

28045:                                            ; preds = %28042
  %28046 = load double, ptr %61, align 8, !tbaa !13
  %28047 = fcmp olt double %28046, 0x41E0000000000000
  br label %28048

28048:                                            ; preds = %28045, %28042
  %28049 = phi i1 [ false, %28042 ], [ %28047, %28045 ]
  %28050 = xor i1 %28049, true
  %28051 = xor i1 %28050, true
  %28052 = xor i1 %28051, true
  %28053 = zext i1 %28052 to i32
  %28054 = sext i32 %28053 to i64
  %28055 = call i64 @llvm.expect.i64(i64 %28054, i64 0)
  %28056 = icmp ne i64 %28055, 0
  br i1 %28056, label %28057, label %28059

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

28058:                                            ; No predecessors!
  br label %28062

28059:                                            ; preds = %28048
  %28060 = load double, ptr %61, align 8, !tbaa !13
  %28061 = fptosi double %28060 to i32
  br label %28062

28062:                                            ; preds = %28059, %28058
  %28063 = phi i32 [ 0, %28058 ], [ %28061, %28059 ]
  br label %28064

28064:                                            ; preds = %28062, %28041
  %28065 = phi i32 [ 0, %28041 ], [ %28063, %28062 ]
  store i32 %28065, ptr %46, align 4, !tbaa !9
  br label %28067

28066:                                            ; preds = %28001
  store i32 -2147483648, ptr %46, align 4, !tbaa !9
  br label %28067

28067:                                            ; preds = %28066, %28064
  %28068 = load double, ptr %44, align 8, !tbaa !13
  store double %28068, ptr %62, align 8, !tbaa !13
  %28069 = load double, ptr %62, align 8, !tbaa !13
  %28070 = call double @wasm_fabs(double noundef %28069)
  store double %28070, ptr %62, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %63, align 8, !tbaa !13
  %28071 = load double, ptr %62, align 8, !tbaa !13
  %28072 = load double, ptr %63, align 8, !tbaa !13
  %28073 = fcmp olt double %28071, %28072
  %28074 = zext i1 %28073 to i32
  store i32 %28074, ptr %47, align 4, !tbaa !9
  %28075 = load i32, ptr %47, align 4, !tbaa !9
  %28076 = icmp ne i32 %28075, 0
  br i1 %28076, label %28077, label %28114

28077:                                            ; preds = %28067
  %28078 = load double, ptr %44, align 8, !tbaa !13
  store double %28078, ptr %62, align 8, !tbaa !13
  %28079 = load double, ptr %62, align 8, !tbaa !13
  %28080 = load double, ptr %62, align 8, !tbaa !13
  %28081 = fcmp une double %28079, %28080
  %28082 = xor i1 %28081, true
  %28083 = xor i1 %28082, true
  %28084 = zext i1 %28083 to i32
  %28085 = sext i32 %28084 to i64
  %28086 = call i64 @llvm.expect.i64(i64 %28085, i64 0)
  %28087 = icmp ne i64 %28086, 0
  br i1 %28087, label %28088, label %28090

28088:                                            ; preds = %28077
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

28089:                                            ; No predecessors!
  br label %28112

28090:                                            ; preds = %28077
  %28091 = load double, ptr %62, align 8, !tbaa !13
  %28092 = fcmp ogt double %28091, 0xC1E0000000200000
  br i1 %28092, label %28093, label %28096

28093:                                            ; preds = %28090
  %28094 = load double, ptr %62, align 8, !tbaa !13
  %28095 = fcmp olt double %28094, 0x41E0000000000000
  br label %28096

28096:                                            ; preds = %28093, %28090
  %28097 = phi i1 [ false, %28090 ], [ %28095, %28093 ]
  %28098 = xor i1 %28097, true
  %28099 = xor i1 %28098, true
  %28100 = xor i1 %28099, true
  %28101 = zext i1 %28100 to i32
  %28102 = sext i32 %28101 to i64
  %28103 = call i64 @llvm.expect.i64(i64 %28102, i64 0)
  %28104 = icmp ne i64 %28103, 0
  br i1 %28104, label %28105, label %28107

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

28106:                                            ; No predecessors!
  br label %28110

28107:                                            ; preds = %28096
  %28108 = load double, ptr %62, align 8, !tbaa !13
  %28109 = fptosi double %28108 to i32
  br label %28110

28110:                                            ; preds = %28107, %28106
  %28111 = phi i32 [ 0, %28106 ], [ %28109, %28107 ]
  br label %28112

28112:                                            ; preds = %28110, %28089
  %28113 = phi i32 [ 0, %28089 ], [ %28111, %28110 ]
  store i32 %28113, ptr %47, align 4, !tbaa !9
  br label %28115

28114:                                            ; preds = %28067
  store i32 -2147483648, ptr %47, align 4, !tbaa !9
  br label %28115

28115:                                            ; preds = %28114, %28112
  %28116 = load i32, ptr %47, align 4, !tbaa !9
  %28117 = load i32, ptr %46, align 4, !tbaa !9
  %28118 = and i32 %28117, %28116
  store i32 %28118, ptr %46, align 4, !tbaa !9
  %28119 = load i32, ptr %46, align 4, !tbaa !9
  %28120 = sitofp i32 %28119 to double
  store double %28120, ptr %61, align 8, !tbaa !13
  %28121 = load ptr, ptr %5, align 8, !tbaa !5
  %28122 = getelementptr inbounds %struct.w2c_hermes, ptr %28121, i32 0, i32 6
  %28123 = load i32, ptr %45, align 4, !tbaa !9
  %28124 = zext i32 %28123 to i64
  %28125 = add i64 %28124, 8
  %28126 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %28122, i64 noundef %28125, double noundef %28126)
  br label %28145

28127:                                            ; preds = %27846
  %28128 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28128, ptr %45, align 4, !tbaa !9
  %28129 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28129, ptr %46, align 4, !tbaa !9
  store i32 545, ptr %47, align 4, !tbaa !9
  %28130 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28130, ptr %48, align 4, !tbaa !9
  %28131 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28131, ptr %58, align 8, !tbaa !11
  %28132 = load i64, ptr %58, align 8, !tbaa !11
  %28133 = trunc i64 %28132 to i32
  store i32 %28133, ptr %49, align 4, !tbaa !9
  %28134 = load ptr, ptr %5, align 8, !tbaa !5
  %28135 = load i32, ptr %48, align 4, !tbaa !9
  %28136 = load i32, ptr %49, align 4, !tbaa !9
  %28137 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %28134, i32 noundef %28135, i32 noundef %28136)
  store i32 %28137, ptr %48, align 4, !tbaa !9
  %28138 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %28138, ptr %49, align 4, !tbaa !9
  %28139 = load ptr, ptr %5, align 8, !tbaa !5
  %28140 = load i32, ptr %45, align 4, !tbaa !9
  %28141 = load i32, ptr %46, align 4, !tbaa !9
  %28142 = load i32, ptr %47, align 4, !tbaa !9
  %28143 = load i32, ptr %48, align 4, !tbaa !9
  %28144 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %28139, i32 noundef %28140, i32 noundef %28141, i32 noundef %28142, i32 noundef %28143, i32 noundef %28144)
  br label %28145

28145:                                            ; preds = %28127, %28115, %27994, %27967, %27839
  %28146 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28146, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %28147 = load i32, ptr %46, align 4, !tbaa !9
  %28148 = load i32, ptr %45, align 4, !tbaa !9
  %28149 = add i32 %28148, %28147
  store i32 %28149, ptr %45, align 4, !tbaa !9
  %28150 = load i32, ptr %45, align 4, !tbaa !9
  %28151 = load ptr, ptr %5, align 8, !tbaa !5
  %28152 = getelementptr inbounds %struct.w2c_hermes, ptr %28151, i32 0, i32 3
  store i32 %28150, ptr %28152, align 8, !tbaa !15
  %28153 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28153, ptr %45, align 4, !tbaa !9
  %28154 = load ptr, ptr %5, align 8, !tbaa !5
  %28155 = getelementptr inbounds %struct.w2c_hermes, ptr %28154, i32 0, i32 6
  %28156 = load i32, ptr %45, align 4, !tbaa !9
  %28157 = zext i32 %28156 to i64
  %28158 = add i64 %28157, 5808
  %28159 = call i32 @i32_load(ptr noundef %28155, i64 noundef %28158)
  store i32 %28159, ptr %45, align 4, !tbaa !9
  %28160 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28160, ptr %6, align 4, !tbaa !9
  %28161 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28161, ptr %45, align 4, !tbaa !9
  %28162 = load ptr, ptr %5, align 8, !tbaa !5
  %28163 = getelementptr inbounds %struct.w2c_hermes, ptr %28162, i32 0, i32 6
  %28164 = load i32, ptr %45, align 4, !tbaa !9
  %28165 = zext i32 %28164 to i64
  %28166 = add i64 %28165, 304
  %28167 = call i32 @i32_load(ptr noundef %28163, i64 noundef %28166)
  store i32 %28167, ptr %45, align 4, !tbaa !9
  %28168 = load i32, ptr %45, align 4, !tbaa !9
  %28169 = icmp ne i32 %28168, 0
  %28170 = xor i1 %28169, true
  %28171 = zext i1 %28170 to i32
  store i32 %28171, ptr %45, align 4, !tbaa !9
  %28172 = load i32, ptr %45, align 4, !tbaa !9
  %28173 = icmp ne i32 %28172, 0
  br i1 %28173, label %28174, label %28175

28174:                                            ; preds = %28145
  br label %43136

28175:                                            ; preds = %28145
  %28176 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28176, ptr %45, align 4, !tbaa !9
  %28177 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28177, ptr %46, align 4, !tbaa !9
  %28178 = load ptr, ptr %5, align 8, !tbaa !5
  %28179 = getelementptr inbounds %struct.w2c_hermes, ptr %28178, i32 0, i32 6
  %28180 = load i32, ptr %46, align 4, !tbaa !9
  %28181 = zext i32 %28180 to i64
  %28182 = add i64 %28181, 1
  %28183 = call i32 @i32_load8_u(ptr noundef %28179, i64 noundef %28182)
  store i32 %28183, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28184 = load i32, ptr %47, align 4, !tbaa !9
  %28185 = and i32 %28184, 31
  %28186 = load i32, ptr %46, align 4, !tbaa !9
  %28187 = shl i32 %28186, %28185
  store i32 %28187, ptr %46, align 4, !tbaa !9
  %28188 = load i32, ptr %46, align 4, !tbaa !9
  %28189 = load i32, ptr %45, align 4, !tbaa !9
  %28190 = add i32 %28189, %28188
  store i32 %28190, ptr %45, align 4, !tbaa !9
  %28191 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28191, ptr %46, align 4, !tbaa !9
  %28192 = load ptr, ptr %5, align 8, !tbaa !5
  %28193 = getelementptr inbounds %struct.w2c_hermes, ptr %28192, i32 0, i32 6
  %28194 = load i32, ptr %46, align 4, !tbaa !9
  %28195 = zext i32 %28194 to i64
  %28196 = add i64 %28195, 312
  %28197 = call i64 @i64_load(ptr noundef %28193, i64 noundef %28196)
  store i64 %28197, ptr %55, align 8, !tbaa !11
  %28198 = load ptr, ptr %5, align 8, !tbaa !5
  %28199 = getelementptr inbounds %struct.w2c_hermes, ptr %28198, i32 0, i32 6
  %28200 = load i32, ptr %45, align 4, !tbaa !9
  %28201 = zext i32 %28200 to i64
  %28202 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %28199, i64 noundef %28201, i64 noundef %28202)
  %28203 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28203, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %28204 = load ptr, ptr %5, align 8, !tbaa !5
  %28205 = getelementptr inbounds %struct.w2c_hermes, ptr %28204, i32 0, i32 6
  %28206 = load i32, ptr %45, align 4, !tbaa !9
  %28207 = zext i32 %28206 to i64
  %28208 = add i64 %28207, 516
  %28209 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28205, i64 noundef %28208, i32 noundef %28209)
  %28210 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28210, ptr %45, align 4, !tbaa !9
  %28211 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %28211, ptr %46, align 4, !tbaa !9
  %28212 = load ptr, ptr %5, align 8, !tbaa !5
  %28213 = getelementptr inbounds %struct.w2c_hermes, ptr %28212, i32 0, i32 6
  %28214 = load i32, ptr %45, align 4, !tbaa !9
  %28215 = zext i32 %28214 to i64
  %28216 = add i64 %28215, 512
  %28217 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28213, i64 noundef %28216, i32 noundef %28217)
  %28218 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28218, ptr %45, align 4, !tbaa !9
  %28219 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %28219, ptr %46, align 4, !tbaa !9
  %28220 = load ptr, ptr %5, align 8, !tbaa !5
  %28221 = getelementptr inbounds %struct.w2c_hermes, ptr %28220, i32 0, i32 6
  %28222 = load i32, ptr %45, align 4, !tbaa !9
  %28223 = zext i32 %28222 to i64
  %28224 = add i64 %28223, 508
  %28225 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28221, i64 noundef %28224, i32 noundef %28225)
  %28226 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28226, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %28227 = load i32, ptr %46, align 4, !tbaa !9
  %28228 = load i32, ptr %45, align 4, !tbaa !9
  %28229 = add i32 %28228, %28227
  store i32 %28229, ptr %45, align 4, !tbaa !9
  %28230 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28230, ptr %6, align 4, !tbaa !9
  br label %2945

28231:                                            ; preds = %3101
  %28232 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28232, ptr %45, align 4, !tbaa !9
  %28233 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28233, ptr %46, align 4, !tbaa !9
  %28234 = load ptr, ptr %5, align 8, !tbaa !5
  %28235 = getelementptr inbounds %struct.w2c_hermes, ptr %28234, i32 0, i32 6
  %28236 = load i32, ptr %46, align 4, !tbaa !9
  %28237 = zext i32 %28236 to i64
  %28238 = add i64 %28237, 2
  %28239 = call i32 @i32_load8_u(ptr noundef %28235, i64 noundef %28238)
  store i32 %28239, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28240 = load i32, ptr %47, align 4, !tbaa !9
  %28241 = and i32 %28240, 31
  %28242 = load i32, ptr %46, align 4, !tbaa !9
  %28243 = shl i32 %28242, %28241
  store i32 %28243, ptr %46, align 4, !tbaa !9
  %28244 = load i32, ptr %46, align 4, !tbaa !9
  %28245 = load i32, ptr %45, align 4, !tbaa !9
  %28246 = add i32 %28245, %28244
  store i32 %28246, ptr %45, align 4, !tbaa !9
  %28247 = load ptr, ptr %5, align 8, !tbaa !5
  %28248 = getelementptr inbounds %struct.w2c_hermes, ptr %28247, i32 0, i32 6
  %28249 = load i32, ptr %45, align 4, !tbaa !9
  %28250 = zext i32 %28249 to i64
  %28251 = call i64 @i64_load(ptr noundef %28248, i64 noundef %28250)
  store i64 %28251, ptr %54, align 8, !tbaa !11
  %28252 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %28252, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %28253 = load i64, ptr %54, align 8, !tbaa !11
  %28254 = load i64, ptr %55, align 8, !tbaa !11
  %28255 = icmp ugt i64 %28253, %28254
  %28256 = zext i1 %28255 to i32
  store i32 %28256, ptr %45, align 4, !tbaa !9
  %28257 = load i32, ptr %45, align 4, !tbaa !9
  %28258 = icmp ne i32 %28257, 0
  br i1 %28258, label %28259, label %28260

28259:                                            ; preds = %28231
  br label %28481

28260:                                            ; preds = %28231
  %28261 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28261, ptr %45, align 4, !tbaa !9
  %28262 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28262, ptr %46, align 4, !tbaa !9
  %28263 = load ptr, ptr %5, align 8, !tbaa !5
  %28264 = getelementptr inbounds %struct.w2c_hermes, ptr %28263, i32 0, i32 6
  %28265 = load i32, ptr %46, align 4, !tbaa !9
  %28266 = zext i32 %28265 to i64
  %28267 = add i64 %28266, 3
  %28268 = call i32 @i32_load8_u(ptr noundef %28264, i64 noundef %28267)
  store i32 %28268, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28269 = load i32, ptr %47, align 4, !tbaa !9
  %28270 = and i32 %28269, 31
  %28271 = load i32, ptr %46, align 4, !tbaa !9
  %28272 = shl i32 %28271, %28270
  store i32 %28272, ptr %46, align 4, !tbaa !9
  %28273 = load i32, ptr %46, align 4, !tbaa !9
  %28274 = load i32, ptr %45, align 4, !tbaa !9
  %28275 = add i32 %28274, %28273
  store i32 %28275, ptr %45, align 4, !tbaa !9
  %28276 = load ptr, ptr %5, align 8, !tbaa !5
  %28277 = getelementptr inbounds %struct.w2c_hermes, ptr %28276, i32 0, i32 6
  %28278 = load i32, ptr %45, align 4, !tbaa !9
  %28279 = zext i32 %28278 to i64
  %28280 = call i64 @i64_load(ptr noundef %28277, i64 noundef %28279)
  store i64 %28280, ptr %54, align 8, !tbaa !11
  %28281 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %28281, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %28282 = load i64, ptr %54, align 8, !tbaa !11
  %28283 = load i64, ptr %55, align 8, !tbaa !11
  %28284 = icmp ugt i64 %28282, %28283
  %28285 = zext i1 %28284 to i32
  store i32 %28285, ptr %45, align 4, !tbaa !9
  %28286 = load i32, ptr %45, align 4, !tbaa !9
  %28287 = icmp ne i32 %28286, 0
  br i1 %28287, label %28288, label %28289

28288:                                            ; preds = %28260
  br label %28481

28289:                                            ; preds = %28260
  %28290 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %28290, ptr %54, align 8, !tbaa !11
  %28291 = load i64, ptr %54, align 8, !tbaa !11
  %28292 = call double @f64_reinterpret_i64(i64 noundef %28291)
  store double %28292, ptr %60, align 8, !tbaa !13
  %28293 = load double, ptr %60, align 8, !tbaa !13
  store double %28293, ptr %43, align 8, !tbaa !13
  %28294 = load double, ptr %60, align 8, !tbaa !13
  %28295 = call double @wasm_fabs(double noundef %28294)
  store double %28295, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %28296 = load double, ptr %60, align 8, !tbaa !13
  %28297 = load double, ptr %61, align 8, !tbaa !13
  %28298 = fcmp olt double %28296, %28297
  %28299 = zext i1 %28298 to i32
  store i32 %28299, ptr %45, align 4, !tbaa !9
  %28300 = load i32, ptr %45, align 4, !tbaa !9
  %28301 = icmp ne i32 %28300, 0
  br i1 %28301, label %28302, label %28339

28302:                                            ; preds = %28289
  %28303 = load double, ptr %43, align 8, !tbaa !13
  store double %28303, ptr %60, align 8, !tbaa !13
  %28304 = load double, ptr %60, align 8, !tbaa !13
  %28305 = load double, ptr %60, align 8, !tbaa !13
  %28306 = fcmp une double %28304, %28305
  %28307 = xor i1 %28306, true
  %28308 = xor i1 %28307, true
  %28309 = zext i1 %28308 to i32
  %28310 = sext i32 %28309 to i64
  %28311 = call i64 @llvm.expect.i64(i64 %28310, i64 0)
  %28312 = icmp ne i64 %28311, 0
  br i1 %28312, label %28313, label %28315

28313:                                            ; preds = %28302
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

28314:                                            ; No predecessors!
  br label %28337

28315:                                            ; preds = %28302
  %28316 = load double, ptr %60, align 8, !tbaa !13
  %28317 = fcmp ogt double %28316, 0xC1E0000000200000
  br i1 %28317, label %28318, label %28321

28318:                                            ; preds = %28315
  %28319 = load double, ptr %60, align 8, !tbaa !13
  %28320 = fcmp olt double %28319, 0x41E0000000000000
  br label %28321

28321:                                            ; preds = %28318, %28315
  %28322 = phi i1 [ false, %28315 ], [ %28320, %28318 ]
  %28323 = xor i1 %28322, true
  %28324 = xor i1 %28323, true
  %28325 = xor i1 %28324, true
  %28326 = zext i1 %28325 to i32
  %28327 = sext i32 %28326 to i64
  %28328 = call i64 @llvm.expect.i64(i64 %28327, i64 0)
  %28329 = icmp ne i64 %28328, 0
  br i1 %28329, label %28330, label %28332

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

28331:                                            ; No predecessors!
  br label %28335

28332:                                            ; preds = %28321
  %28333 = load double, ptr %60, align 8, !tbaa !13
  %28334 = fptosi double %28333 to i32
  br label %28335

28335:                                            ; preds = %28332, %28331
  %28336 = phi i32 [ 0, %28331 ], [ %28334, %28332 ]
  br label %28337

28337:                                            ; preds = %28335, %28314
  %28338 = phi i32 [ 0, %28314 ], [ %28336, %28335 ]
  store i32 %28338, ptr %45, align 4, !tbaa !9
  br label %28340

28339:                                            ; preds = %28289
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %28340

28340:                                            ; preds = %28339, %28337
  %28341 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28341, ptr %12, align 4, !tbaa !9
  %28342 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28342, ptr %45, align 4, !tbaa !9
  %28343 = load i32, ptr %45, align 4, !tbaa !9
  %28344 = sitofp i32 %28343 to double
  store double %28344, ptr %60, align 8, !tbaa !13
  %28345 = load double, ptr %43, align 8, !tbaa !13
  store double %28345, ptr %61, align 8, !tbaa !13
  %28346 = load double, ptr %60, align 8, !tbaa !13
  %28347 = load double, ptr %61, align 8, !tbaa !13
  %28348 = fcmp oeq double %28346, %28347
  %28349 = zext i1 %28348 to i32
  store i32 %28349, ptr %45, align 4, !tbaa !9
  %28350 = load i32, ptr %45, align 4, !tbaa !9
  %28351 = icmp ne i32 %28350, 0
  br i1 %28351, label %28352, label %28356

28352:                                            ; preds = %28340
  %28353 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28353, ptr %54, align 8, !tbaa !11
  %28354 = load i64, ptr %54, align 8, !tbaa !11
  %28355 = call double @f64_reinterpret_i64(i64 noundef %28354)
  store double %28355, ptr %60, align 8, !tbaa !13
  br label %28382

28356:                                            ; preds = %28340
  %28357 = load double, ptr %43, align 8, !tbaa !13
  store double %28357, ptr %60, align 8, !tbaa !13
  %28358 = load ptr, ptr %5, align 8, !tbaa !5
  %28359 = load double, ptr %60, align 8, !tbaa !13
  %28360 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %28358, double noundef %28359)
  store i32 %28360, ptr %45, align 4, !tbaa !9
  %28361 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28361, ptr %12, align 4, !tbaa !9
  %28362 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28362, ptr %45, align 4, !tbaa !9
  %28363 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28363, ptr %46, align 4, !tbaa !9
  %28364 = load ptr, ptr %5, align 8, !tbaa !5
  %28365 = getelementptr inbounds %struct.w2c_hermes, ptr %28364, i32 0, i32 6
  %28366 = load i32, ptr %46, align 4, !tbaa !9
  %28367 = zext i32 %28366 to i64
  %28368 = add i64 %28367, 3
  %28369 = call i32 @i32_load8_u(ptr noundef %28365, i64 noundef %28368)
  store i32 %28369, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28370 = load i32, ptr %47, align 4, !tbaa !9
  %28371 = and i32 %28370, 31
  %28372 = load i32, ptr %46, align 4, !tbaa !9
  %28373 = shl i32 %28372, %28371
  store i32 %28373, ptr %46, align 4, !tbaa !9
  %28374 = load i32, ptr %46, align 4, !tbaa !9
  %28375 = load i32, ptr %45, align 4, !tbaa !9
  %28376 = add i32 %28375, %28374
  store i32 %28376, ptr %45, align 4, !tbaa !9
  %28377 = load ptr, ptr %5, align 8, !tbaa !5
  %28378 = getelementptr inbounds %struct.w2c_hermes, ptr %28377, i32 0, i32 6
  %28379 = load i32, ptr %45, align 4, !tbaa !9
  %28380 = zext i32 %28379 to i64
  %28381 = call double @f64_load(ptr noundef %28378, i64 noundef %28380)
  store double %28381, ptr %60, align 8, !tbaa !13
  br label %28382

28382:                                            ; preds = %28356, %28352
  %28383 = load double, ptr %60, align 8, !tbaa !13
  store double %28383, ptr %43, align 8, !tbaa !13
  %28384 = load double, ptr %60, align 8, !tbaa !13
  %28385 = call double @wasm_fabs(double noundef %28384)
  store double %28385, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %28386 = load double, ptr %60, align 8, !tbaa !13
  %28387 = load double, ptr %61, align 8, !tbaa !13
  %28388 = fcmp olt double %28386, %28387
  %28389 = zext i1 %28388 to i32
  store i32 %28389, ptr %45, align 4, !tbaa !9
  %28390 = load i32, ptr %45, align 4, !tbaa !9
  %28391 = icmp ne i32 %28390, 0
  br i1 %28391, label %28392, label %28429

28392:                                            ; preds = %28382
  %28393 = load double, ptr %43, align 8, !tbaa !13
  store double %28393, ptr %60, align 8, !tbaa !13
  %28394 = load double, ptr %60, align 8, !tbaa !13
  %28395 = load double, ptr %60, align 8, !tbaa !13
  %28396 = fcmp une double %28394, %28395
  %28397 = xor i1 %28396, true
  %28398 = xor i1 %28397, true
  %28399 = zext i1 %28398 to i32
  %28400 = sext i32 %28399 to i64
  %28401 = call i64 @llvm.expect.i64(i64 %28400, i64 0)
  %28402 = icmp ne i64 %28401, 0
  br i1 %28402, label %28403, label %28405

28403:                                            ; preds = %28392
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

28404:                                            ; No predecessors!
  br label %28427

28405:                                            ; preds = %28392
  %28406 = load double, ptr %60, align 8, !tbaa !13
  %28407 = fcmp ogt double %28406, 0xC1E0000000200000
  br i1 %28407, label %28408, label %28411

28408:                                            ; preds = %28405
  %28409 = load double, ptr %60, align 8, !tbaa !13
  %28410 = fcmp olt double %28409, 0x41E0000000000000
  br label %28411

28411:                                            ; preds = %28408, %28405
  %28412 = phi i1 [ false, %28405 ], [ %28410, %28408 ]
  %28413 = xor i1 %28412, true
  %28414 = xor i1 %28413, true
  %28415 = xor i1 %28414, true
  %28416 = zext i1 %28415 to i32
  %28417 = sext i32 %28416 to i64
  %28418 = call i64 @llvm.expect.i64(i64 %28417, i64 0)
  %28419 = icmp ne i64 %28418, 0
  br i1 %28419, label %28420, label %28422

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

28421:                                            ; No predecessors!
  br label %28425

28422:                                            ; preds = %28411
  %28423 = load double, ptr %60, align 8, !tbaa !13
  %28424 = fptosi double %28423 to i32
  br label %28425

28425:                                            ; preds = %28422, %28421
  %28426 = phi i32 [ 0, %28421 ], [ %28424, %28422 ]
  br label %28427

28427:                                            ; preds = %28425, %28404
  %28428 = phi i32 [ 0, %28404 ], [ %28426, %28425 ]
  store i32 %28428, ptr %45, align 4, !tbaa !9
  br label %28430

28429:                                            ; preds = %28382
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %28430

28430:                                            ; preds = %28429, %28427
  %28431 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28431, ptr %7, align 4, !tbaa !9
  %28432 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %28432, ptr %45, align 4, !tbaa !9
  %28433 = load i32, ptr %45, align 4, !tbaa !9
  %28434 = sitofp i32 %28433 to double
  store double %28434, ptr %60, align 8, !tbaa !13
  %28435 = load double, ptr %43, align 8, !tbaa !13
  store double %28435, ptr %61, align 8, !tbaa !13
  %28436 = load double, ptr %60, align 8, !tbaa !13
  %28437 = load double, ptr %61, align 8, !tbaa !13
  %28438 = fcmp une double %28436, %28437
  %28439 = zext i1 %28438 to i32
  store i32 %28439, ptr %45, align 4, !tbaa !9
  %28440 = load i32, ptr %45, align 4, !tbaa !9
  %28441 = icmp ne i32 %28440, 0
  br i1 %28441, label %28442, label %28448

28442:                                            ; preds = %28430
  %28443 = load double, ptr %43, align 8, !tbaa !13
  store double %28443, ptr %60, align 8, !tbaa !13
  %28444 = load ptr, ptr %5, align 8, !tbaa !5
  %28445 = load double, ptr %60, align 8, !tbaa !13
  %28446 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %28444, double noundef %28445)
  store i32 %28446, ptr %45, align 4, !tbaa !9
  %28447 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28447, ptr %7, align 4, !tbaa !9
  br label %28448

28448:                                            ; preds = %28442, %28430
  %28449 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28449, ptr %45, align 4, !tbaa !9
  %28450 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28450, ptr %46, align 4, !tbaa !9
  %28451 = load ptr, ptr %5, align 8, !tbaa !5
  %28452 = getelementptr inbounds %struct.w2c_hermes, ptr %28451, i32 0, i32 6
  %28453 = load i32, ptr %46, align 4, !tbaa !9
  %28454 = zext i32 %28453 to i64
  %28455 = add i64 %28454, 1
  %28456 = call i32 @i32_load8_u(ptr noundef %28452, i64 noundef %28455)
  store i32 %28456, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28457 = load i32, ptr %47, align 4, !tbaa !9
  %28458 = and i32 %28457, 31
  %28459 = load i32, ptr %46, align 4, !tbaa !9
  %28460 = shl i32 %28459, %28458
  store i32 %28460, ptr %46, align 4, !tbaa !9
  %28461 = load i32, ptr %46, align 4, !tbaa !9
  %28462 = load i32, ptr %45, align 4, !tbaa !9
  %28463 = add i32 %28462, %28461
  store i32 %28463, ptr %45, align 4, !tbaa !9
  %28464 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %28464, ptr %46, align 4, !tbaa !9
  %28465 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28465, ptr %47, align 4, !tbaa !9
  %28466 = load i32, ptr %47, align 4, !tbaa !9
  %28467 = load i32, ptr %46, align 4, !tbaa !9
  %28468 = or i32 %28467, %28466
  store i32 %28468, ptr %46, align 4, !tbaa !9
  %28469 = load i32, ptr %46, align 4, !tbaa !9
  %28470 = sitofp i32 %28469 to double
  store double %28470, ptr %61, align 8, !tbaa !13
  %28471 = load ptr, ptr %5, align 8, !tbaa !5
  %28472 = getelementptr inbounds %struct.w2c_hermes, ptr %28471, i32 0, i32 6
  %28473 = load i32, ptr %45, align 4, !tbaa !9
  %28474 = zext i32 %28473 to i64
  %28475 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %28472, i64 noundef %28474, double noundef %28475)
  %28476 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28476, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %28477 = load i32, ptr %46, align 4, !tbaa !9
  %28478 = load i32, ptr %45, align 4, !tbaa !9
  %28479 = add i32 %28478, %28477
  store i32 %28479, ptr %45, align 4, !tbaa !9
  %28480 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28480, ptr %6, align 4, !tbaa !9
  br label %2945

28481:                                            ; preds = %28288, %28259
  %28482 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28482, ptr %45, align 4, !tbaa !9
  %28483 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28483, ptr %46, align 4, !tbaa !9
  %28484 = load ptr, ptr %5, align 8, !tbaa !5
  %28485 = getelementptr inbounds %struct.w2c_hermes, ptr %28484, i32 0, i32 6
  %28486 = load i32, ptr %45, align 4, !tbaa !9
  %28487 = zext i32 %28486 to i64
  %28488 = add i64 %28487, 5808
  %28489 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28485, i64 noundef %28488, i32 noundef %28489)
  %28490 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28490, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %28491 = load i32, ptr %46, align 4, !tbaa !9
  %28492 = load i32, ptr %45, align 4, !tbaa !9
  %28493 = add i32 %28492, %28491
  store i32 %28493, ptr %45, align 4, !tbaa !9
  %28494 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28494, ptr %12, align 4, !tbaa !9
  %28495 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28495, ptr %45, align 4, !tbaa !9
  %28496 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28496, ptr %46, align 4, !tbaa !9
  %28497 = load ptr, ptr %5, align 8, !tbaa !5
  %28498 = getelementptr inbounds %struct.w2c_hermes, ptr %28497, i32 0, i32 6
  %28499 = load i32, ptr %46, align 4, !tbaa !9
  %28500 = zext i32 %28499 to i64
  %28501 = add i64 %28500, 2
  %28502 = call i32 @i32_load8_u(ptr noundef %28498, i64 noundef %28501)
  store i32 %28502, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28503 = load i32, ptr %47, align 4, !tbaa !9
  %28504 = and i32 %28503, 31
  %28505 = load i32, ptr %46, align 4, !tbaa !9
  %28506 = shl i32 %28505, %28504
  store i32 %28506, ptr %46, align 4, !tbaa !9
  %28507 = load i32, ptr %46, align 4, !tbaa !9
  %28508 = load i32, ptr %45, align 4, !tbaa !9
  %28509 = add i32 %28508, %28507
  store i32 %28509, ptr %45, align 4, !tbaa !9
  %28510 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28510, ptr %7, align 4, !tbaa !9
  %28511 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28511, ptr %45, align 4, !tbaa !9
  %28512 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28512, ptr %46, align 4, !tbaa !9
  %28513 = load ptr, ptr %5, align 8, !tbaa !5
  %28514 = getelementptr inbounds %struct.w2c_hermes, ptr %28513, i32 0, i32 6
  %28515 = load i32, ptr %46, align 4, !tbaa !9
  %28516 = zext i32 %28515 to i64
  %28517 = add i64 %28516, 3
  %28518 = call i32 @i32_load8_u(ptr noundef %28514, i64 noundef %28517)
  store i32 %28518, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28519 = load i32, ptr %47, align 4, !tbaa !9
  %28520 = and i32 %28519, 31
  %28521 = load i32, ptr %46, align 4, !tbaa !9
  %28522 = shl i32 %28521, %28520
  store i32 %28522, ptr %46, align 4, !tbaa !9
  %28523 = load i32, ptr %46, align 4, !tbaa !9
  %28524 = load i32, ptr %45, align 4, !tbaa !9
  %28525 = add i32 %28524, %28523
  store i32 %28525, ptr %45, align 4, !tbaa !9
  %28526 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28526, ptr %8, align 4, !tbaa !9
  %28527 = load ptr, ptr %5, align 8, !tbaa !5
  %28528 = getelementptr inbounds %struct.w2c_hermes, ptr %28527, i32 0, i32 3
  %28529 = load i32, ptr %28528, align 8, !tbaa !15
  store i32 %28529, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %28530 = load i32, ptr %46, align 4, !tbaa !9
  %28531 = load i32, ptr %45, align 4, !tbaa !9
  %28532 = sub i32 %28531, %28530
  store i32 %28532, ptr %45, align 4, !tbaa !9
  %28533 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28533, ptr %13, align 4, !tbaa !9
  %28534 = load i32, ptr %45, align 4, !tbaa !9
  %28535 = load ptr, ptr %5, align 8, !tbaa !5
  %28536 = getelementptr inbounds %struct.w2c_hermes, ptr %28535, i32 0, i32 3
  store i32 %28534, ptr %28536, align 8, !tbaa !15
  %28537 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28537, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %28538 = load i32, ptr %46, align 4, !tbaa !9
  %28539 = load i32, ptr %45, align 4, !tbaa !9
  %28540 = add i32 %28539, %28538
  store i32 %28540, ptr %45, align 4, !tbaa !9
  %28541 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28541, ptr %46, align 4, !tbaa !9
  %28542 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %28542, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %28543 = load ptr, ptr %5, align 8, !tbaa !5
  %28544 = load i32, ptr %45, align 4, !tbaa !9
  %28545 = load i32, ptr %46, align 4, !tbaa !9
  %28546 = load i32, ptr %47, align 4, !tbaa !9
  %28547 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %28543, i32 noundef %28544, i32 noundef %28545, i32 noundef %28546, i32 noundef %28547)
  %28548 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28548, ptr %45, align 4, !tbaa !9
  %28549 = load ptr, ptr %5, align 8, !tbaa !5
  %28550 = getelementptr inbounds %struct.w2c_hermes, ptr %28549, i32 0, i32 6
  %28551 = load i32, ptr %45, align 4, !tbaa !9
  %28552 = zext i32 %28551 to i64
  %28553 = add i64 %28552, 16
  %28554 = call i32 @i32_load(ptr noundef %28550, i64 noundef %28553)
  store i32 %28554, ptr %45, align 4, !tbaa !9
  %28555 = load i32, ptr %45, align 4, !tbaa !9
  %28556 = icmp ne i32 %28555, 0
  %28557 = xor i1 %28556, true
  %28558 = zext i1 %28557 to i32
  store i32 %28558, ptr %45, align 4, !tbaa !9
  %28559 = load i32, ptr %45, align 4, !tbaa !9
  %28560 = icmp ne i32 %28559, 0
  br i1 %28560, label %28561, label %28568

28561:                                            ; preds = %28481
  %28562 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28562, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %28563 = load ptr, ptr %5, align 8, !tbaa !5
  %28564 = getelementptr inbounds %struct.w2c_hermes, ptr %28563, i32 0, i32 6
  %28565 = load i32, ptr %45, align 4, !tbaa !9
  %28566 = zext i32 %28565 to i64
  %28567 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28564, i64 noundef %28566, i32 noundef %28567)
  br label %28867

28568:                                            ; preds = %28481
  %28569 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28569, ptr %45, align 4, !tbaa !9
  %28570 = load ptr, ptr %5, align 8, !tbaa !5
  %28571 = getelementptr inbounds %struct.w2c_hermes, ptr %28570, i32 0, i32 6
  %28572 = load i32, ptr %45, align 4, !tbaa !9
  %28573 = zext i32 %28572 to i64
  %28574 = add i64 %28573, 24
  %28575 = call i64 @i64_load(ptr noundef %28571, i64 noundef %28574)
  store i64 %28575, ptr %54, align 8, !tbaa !11
  %28576 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %28576, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %28577 = load i64, ptr %54, align 8, !tbaa !11
  %28578 = load i64, ptr %55, align 8, !tbaa !11
  %28579 = and i64 %28578, 63
  %28580 = ashr i64 %28577, %28579
  store i64 %28580, ptr %54, align 8, !tbaa !11
  %28581 = load i64, ptr %54, align 8, !tbaa !11
  %28582 = trunc i64 %28581 to i32
  store i32 %28582, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %28583 = load i32, ptr %45, align 4, !tbaa !9
  %28584 = load i32, ptr %46, align 4, !tbaa !9
  %28585 = icmp ne i32 %28583, %28584
  %28586 = zext i1 %28585 to i32
  store i32 %28586, ptr %45, align 4, !tbaa !9
  %28587 = load i32, ptr %45, align 4, !tbaa !9
  %28588 = icmp ne i32 %28587, 0
  br i1 %28588, label %28589, label %28849

28589:                                            ; preds = %28568
  %28590 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28590, ptr %45, align 4, !tbaa !9
  %28591 = load ptr, ptr %5, align 8, !tbaa !5
  %28592 = getelementptr inbounds %struct.w2c_hermes, ptr %28591, i32 0, i32 6
  %28593 = load i32, ptr %45, align 4, !tbaa !9
  %28594 = zext i32 %28593 to i64
  %28595 = add i64 %28594, 4
  %28596 = call i32 @i32_load(ptr noundef %28592, i64 noundef %28595)
  store i32 %28596, ptr %45, align 4, !tbaa !9
  %28597 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28597, ptr %6, align 4, !tbaa !9
  %28598 = load ptr, ptr %5, align 8, !tbaa !5
  %28599 = getelementptr inbounds %struct.w2c_hermes, ptr %28598, i32 0, i32 6
  %28600 = load i32, ptr %45, align 4, !tbaa !9
  %28601 = zext i32 %28600 to i64
  %28602 = add i64 %28601, 164
  %28603 = call i32 @i32_load(ptr noundef %28599, i64 noundef %28602)
  store i32 %28603, ptr %45, align 4, !tbaa !9
  %28604 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28604, ptr %7, align 4, !tbaa !9
  %28605 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28605, ptr %46, align 4, !tbaa !9
  %28606 = load ptr, ptr %5, align 8, !tbaa !5
  %28607 = getelementptr inbounds %struct.w2c_hermes, ptr %28606, i32 0, i32 6
  %28608 = load i32, ptr %46, align 4, !tbaa !9
  %28609 = zext i32 %28608 to i64
  %28610 = add i64 %28609, 168
  %28611 = call i32 @i32_load(ptr noundef %28607, i64 noundef %28610)
  store i32 %28611, ptr %46, align 4, !tbaa !9
  %28612 = load i32, ptr %45, align 4, !tbaa !9
  %28613 = load i32, ptr %46, align 4, !tbaa !9
  %28614 = icmp ult i32 %28612, %28613
  %28615 = zext i1 %28614 to i32
  store i32 %28615, ptr %45, align 4, !tbaa !9
  %28616 = load i32, ptr %45, align 4, !tbaa !9
  %28617 = icmp ne i32 %28616, 0
  br i1 %28617, label %28618, label %28637

28618:                                            ; preds = %28589
  %28619 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28619, ptr %45, align 4, !tbaa !9
  %28620 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %28620, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %28621 = load i32, ptr %47, align 4, !tbaa !9
  %28622 = load i32, ptr %46, align 4, !tbaa !9
  %28623 = add i32 %28622, %28621
  store i32 %28623, ptr %46, align 4, !tbaa !9
  %28624 = load ptr, ptr %5, align 8, !tbaa !5
  %28625 = getelementptr inbounds %struct.w2c_hermes, ptr %28624, i32 0, i32 6
  %28626 = load i32, ptr %45, align 4, !tbaa !9
  %28627 = zext i32 %28626 to i64
  %28628 = add i64 %28627, 164
  %28629 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28625, i64 noundef %28628, i32 noundef %28629)
  %28630 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %28630, ptr %45, align 4, !tbaa !9
  %28631 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28631, ptr %55, align 8, !tbaa !11
  %28632 = load ptr, ptr %5, align 8, !tbaa !5
  %28633 = getelementptr inbounds %struct.w2c_hermes, ptr %28632, i32 0, i32 6
  %28634 = load i32, ptr %45, align 4, !tbaa !9
  %28635 = zext i32 %28634 to i64
  %28636 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %28633, i64 noundef %28635, i64 noundef %28636)
  br label %28645

28637:                                            ; preds = %28589
  %28638 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28638, ptr %45, align 4, !tbaa !9
  %28639 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28639, ptr %55, align 8, !tbaa !11
  %28640 = load ptr, ptr %5, align 8, !tbaa !5
  %28641 = load i32, ptr %45, align 4, !tbaa !9
  %28642 = load i64, ptr %55, align 8, !tbaa !11
  %28643 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %28640, i32 noundef %28641, i64 noundef %28642)
  store i32 %28643, ptr %45, align 4, !tbaa !9
  %28644 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28644, ptr %7, align 4, !tbaa !9
  br label %28645

28645:                                            ; preds = %28637, %28618
  %28646 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28646, ptr %45, align 4, !tbaa !9
  %28647 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28647, ptr %46, align 4, !tbaa !9
  %28648 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %28648, ptr %47, align 4, !tbaa !9
  %28649 = load ptr, ptr %5, align 8, !tbaa !5
  %28650 = load i32, ptr %45, align 4, !tbaa !9
  %28651 = load i32, ptr %46, align 4, !tbaa !9
  %28652 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %28649, i32 noundef %28650, i32 noundef %28651, i32 noundef %28652)
  %28653 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28653, ptr %45, align 4, !tbaa !9
  %28654 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28654, ptr %46, align 4, !tbaa !9
  %28655 = load ptr, ptr %5, align 8, !tbaa !5
  %28656 = getelementptr inbounds %struct.w2c_hermes, ptr %28655, i32 0, i32 6
  %28657 = load i32, ptr %46, align 4, !tbaa !9
  %28658 = zext i32 %28657 to i64
  %28659 = call i32 @i32_load(ptr noundef %28656, i64 noundef %28658)
  store i32 %28659, ptr %46, align 4, !tbaa !9
  %28660 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %28660, ptr %6, align 4, !tbaa !9
  %28661 = load ptr, ptr %5, align 8, !tbaa !5
  %28662 = getelementptr inbounds %struct.w2c_hermes, ptr %28661, i32 0, i32 6
  %28663 = load i32, ptr %45, align 4, !tbaa !9
  %28664 = zext i32 %28663 to i64
  %28665 = add i64 %28664, 16
  %28666 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28662, i64 noundef %28665, i32 noundef %28666)
  %28667 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28667, ptr %45, align 4, !tbaa !9
  %28668 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28668, ptr %46, align 4, !tbaa !9
  %28669 = load ptr, ptr %5, align 8, !tbaa !5
  %28670 = getelementptr inbounds %struct.w2c_hermes, ptr %28669, i32 0, i32 6
  %28671 = load i32, ptr %46, align 4, !tbaa !9
  %28672 = zext i32 %28671 to i64
  %28673 = add i64 %28672, 8
  %28674 = call i64 @i64_load(ptr noundef %28670, i64 noundef %28673)
  store i64 %28674, ptr %55, align 8, !tbaa !11
  %28675 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %28675, ptr %39, align 8, !tbaa !11
  %28676 = load ptr, ptr %5, align 8, !tbaa !5
  %28677 = getelementptr inbounds %struct.w2c_hermes, ptr %28676, i32 0, i32 6
  %28678 = load i32, ptr %45, align 4, !tbaa !9
  %28679 = zext i32 %28678 to i64
  %28680 = add i64 %28679, 24
  %28681 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %28677, i64 noundef %28680, i64 noundef %28681)
  %28682 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28682, ptr %45, align 4, !tbaa !9
  %28683 = load i32, ptr %45, align 4, !tbaa !9
  %28684 = icmp ne i32 %28683, 0
  %28685 = xor i1 %28684, true
  %28686 = zext i1 %28685 to i32
  store i32 %28686, ptr %45, align 4, !tbaa !9
  %28687 = load i32, ptr %45, align 4, !tbaa !9
  %28688 = icmp ne i32 %28687, 0
  br i1 %28688, label %28689, label %28696

28689:                                            ; preds = %28645
  %28690 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28690, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %28691 = load ptr, ptr %5, align 8, !tbaa !5
  %28692 = getelementptr inbounds %struct.w2c_hermes, ptr %28691, i32 0, i32 6
  %28693 = load i32, ptr %45, align 4, !tbaa !9
  %28694 = zext i32 %28693 to i64
  %28695 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28692, i64 noundef %28694, i32 noundef %28695)
  br label %28867

28696:                                            ; preds = %28645
  %28697 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28697, ptr %45, align 4, !tbaa !9
  %28698 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28698, ptr %46, align 4, !tbaa !9
  %28699 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %28699, ptr %47, align 4, !tbaa !9
  %28700 = load ptr, ptr %5, align 8, !tbaa !5
  %28701 = load i32, ptr %45, align 4, !tbaa !9
  %28702 = load i32, ptr %46, align 4, !tbaa !9
  %28703 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %28700, i32 noundef %28701, i32 noundef %28702, i32 noundef %28703)
  %28704 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28704, ptr %45, align 4, !tbaa !9
  %28705 = load ptr, ptr %5, align 8, !tbaa !5
  %28706 = getelementptr inbounds %struct.w2c_hermes, ptr %28705, i32 0, i32 6
  %28707 = load i32, ptr %45, align 4, !tbaa !9
  %28708 = zext i32 %28707 to i64
  %28709 = call i32 @i32_load(ptr noundef %28706, i64 noundef %28708)
  store i32 %28709, ptr %45, align 4, !tbaa !9
  %28710 = load i32, ptr %45, align 4, !tbaa !9
  %28711 = icmp ne i32 %28710, 0
  %28712 = xor i1 %28711, true
  %28713 = zext i1 %28712 to i32
  store i32 %28713, ptr %45, align 4, !tbaa !9
  %28714 = load i32, ptr %45, align 4, !tbaa !9
  %28715 = icmp ne i32 %28714, 0
  br i1 %28715, label %28716, label %28723

28716:                                            ; preds = %28696
  %28717 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28717, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %28718 = load ptr, ptr %5, align 8, !tbaa !5
  %28719 = getelementptr inbounds %struct.w2c_hermes, ptr %28718, i32 0, i32 6
  %28720 = load i32, ptr %45, align 4, !tbaa !9
  %28721 = zext i32 %28720 to i64
  %28722 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28719, i64 noundef %28721, i32 noundef %28722)
  br label %28867

28723:                                            ; preds = %28696
  %28724 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28724, ptr %45, align 4, !tbaa !9
  %28725 = load ptr, ptr %5, align 8, !tbaa !5
  %28726 = getelementptr inbounds %struct.w2c_hermes, ptr %28725, i32 0, i32 6
  %28727 = load i32, ptr %45, align 4, !tbaa !9
  %28728 = zext i32 %28727 to i64
  %28729 = add i64 %28728, 8
  %28730 = call double @f64_load(ptr noundef %28726, i64 noundef %28729)
  store double %28730, ptr %60, align 8, !tbaa !13
  %28731 = load double, ptr %60, align 8, !tbaa !13
  store double %28731, ptr %44, align 8, !tbaa !13
  %28732 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28732, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %28733 = load ptr, ptr %5, align 8, !tbaa !5
  %28734 = getelementptr inbounds %struct.w2c_hermes, ptr %28733, i32 0, i32 6
  %28735 = load i32, ptr %45, align 4, !tbaa !9
  %28736 = zext i32 %28735 to i64
  %28737 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28734, i64 noundef %28736, i32 noundef %28737)
  %28738 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28738, ptr %45, align 4, !tbaa !9
  %28739 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28739, ptr %55, align 8, !tbaa !11
  %28740 = load i64, ptr %55, align 8, !tbaa !11
  %28741 = call double @f64_reinterpret_i64(i64 noundef %28740)
  store double %28741, ptr %61, align 8, !tbaa !13
  %28742 = load double, ptr %61, align 8, !tbaa !13
  store double %28742, ptr %43, align 8, !tbaa !13
  %28743 = load double, ptr %61, align 8, !tbaa !13
  %28744 = call double @wasm_fabs(double noundef %28743)
  store double %28744, ptr %61, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %62, align 8, !tbaa !13
  %28745 = load double, ptr %61, align 8, !tbaa !13
  %28746 = load double, ptr %62, align 8, !tbaa !13
  %28747 = fcmp olt double %28745, %28746
  %28748 = zext i1 %28747 to i32
  store i32 %28748, ptr %46, align 4, !tbaa !9
  %28749 = load i32, ptr %46, align 4, !tbaa !9
  %28750 = icmp ne i32 %28749, 0
  br i1 %28750, label %28751, label %28788

28751:                                            ; preds = %28723
  %28752 = load double, ptr %43, align 8, !tbaa !13
  store double %28752, ptr %61, align 8, !tbaa !13
  %28753 = load double, ptr %61, align 8, !tbaa !13
  %28754 = load double, ptr %61, align 8, !tbaa !13
  %28755 = fcmp une double %28753, %28754
  %28756 = xor i1 %28755, true
  %28757 = xor i1 %28756, true
  %28758 = zext i1 %28757 to i32
  %28759 = sext i32 %28758 to i64
  %28760 = call i64 @llvm.expect.i64(i64 %28759, i64 0)
  %28761 = icmp ne i64 %28760, 0
  br i1 %28761, label %28762, label %28764

28762:                                            ; preds = %28751
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

28763:                                            ; No predecessors!
  br label %28786

28764:                                            ; preds = %28751
  %28765 = load double, ptr %61, align 8, !tbaa !13
  %28766 = fcmp ogt double %28765, 0xC1E0000000200000
  br i1 %28766, label %28767, label %28770

28767:                                            ; preds = %28764
  %28768 = load double, ptr %61, align 8, !tbaa !13
  %28769 = fcmp olt double %28768, 0x41E0000000000000
  br label %28770

28770:                                            ; preds = %28767, %28764
  %28771 = phi i1 [ false, %28764 ], [ %28769, %28767 ]
  %28772 = xor i1 %28771, true
  %28773 = xor i1 %28772, true
  %28774 = xor i1 %28773, true
  %28775 = zext i1 %28774 to i32
  %28776 = sext i32 %28775 to i64
  %28777 = call i64 @llvm.expect.i64(i64 %28776, i64 0)
  %28778 = icmp ne i64 %28777, 0
  br i1 %28778, label %28779, label %28781

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

28780:                                            ; No predecessors!
  br label %28784

28781:                                            ; preds = %28770
  %28782 = load double, ptr %61, align 8, !tbaa !13
  %28783 = fptosi double %28782 to i32
  br label %28784

28784:                                            ; preds = %28781, %28780
  %28785 = phi i32 [ 0, %28780 ], [ %28783, %28781 ]
  br label %28786

28786:                                            ; preds = %28784, %28763
  %28787 = phi i32 [ 0, %28763 ], [ %28785, %28784 ]
  store i32 %28787, ptr %46, align 4, !tbaa !9
  br label %28789

28788:                                            ; preds = %28723
  store i32 -2147483648, ptr %46, align 4, !tbaa !9
  br label %28789

28789:                                            ; preds = %28788, %28786
  %28790 = load double, ptr %44, align 8, !tbaa !13
  store double %28790, ptr %62, align 8, !tbaa !13
  %28791 = load double, ptr %62, align 8, !tbaa !13
  %28792 = call double @wasm_fabs(double noundef %28791)
  store double %28792, ptr %62, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %63, align 8, !tbaa !13
  %28793 = load double, ptr %62, align 8, !tbaa !13
  %28794 = load double, ptr %63, align 8, !tbaa !13
  %28795 = fcmp olt double %28793, %28794
  %28796 = zext i1 %28795 to i32
  store i32 %28796, ptr %47, align 4, !tbaa !9
  %28797 = load i32, ptr %47, align 4, !tbaa !9
  %28798 = icmp ne i32 %28797, 0
  br i1 %28798, label %28799, label %28836

28799:                                            ; preds = %28789
  %28800 = load double, ptr %44, align 8, !tbaa !13
  store double %28800, ptr %62, align 8, !tbaa !13
  %28801 = load double, ptr %62, align 8, !tbaa !13
  %28802 = load double, ptr %62, align 8, !tbaa !13
  %28803 = fcmp une double %28801, %28802
  %28804 = xor i1 %28803, true
  %28805 = xor i1 %28804, true
  %28806 = zext i1 %28805 to i32
  %28807 = sext i32 %28806 to i64
  %28808 = call i64 @llvm.expect.i64(i64 %28807, i64 0)
  %28809 = icmp ne i64 %28808, 0
  br i1 %28809, label %28810, label %28812

28810:                                            ; preds = %28799
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

28811:                                            ; No predecessors!
  br label %28834

28812:                                            ; preds = %28799
  %28813 = load double, ptr %62, align 8, !tbaa !13
  %28814 = fcmp ogt double %28813, 0xC1E0000000200000
  br i1 %28814, label %28815, label %28818

28815:                                            ; preds = %28812
  %28816 = load double, ptr %62, align 8, !tbaa !13
  %28817 = fcmp olt double %28816, 0x41E0000000000000
  br label %28818

28818:                                            ; preds = %28815, %28812
  %28819 = phi i1 [ false, %28812 ], [ %28817, %28815 ]
  %28820 = xor i1 %28819, true
  %28821 = xor i1 %28820, true
  %28822 = xor i1 %28821, true
  %28823 = zext i1 %28822 to i32
  %28824 = sext i32 %28823 to i64
  %28825 = call i64 @llvm.expect.i64(i64 %28824, i64 0)
  %28826 = icmp ne i64 %28825, 0
  br i1 %28826, label %28827, label %28829

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

28828:                                            ; No predecessors!
  br label %28832

28829:                                            ; preds = %28818
  %28830 = load double, ptr %62, align 8, !tbaa !13
  %28831 = fptosi double %28830 to i32
  br label %28832

28832:                                            ; preds = %28829, %28828
  %28833 = phi i32 [ 0, %28828 ], [ %28831, %28829 ]
  br label %28834

28834:                                            ; preds = %28832, %28811
  %28835 = phi i32 [ 0, %28811 ], [ %28833, %28832 ]
  store i32 %28835, ptr %47, align 4, !tbaa !9
  br label %28837

28836:                                            ; preds = %28789
  store i32 -2147483648, ptr %47, align 4, !tbaa !9
  br label %28837

28837:                                            ; preds = %28836, %28834
  %28838 = load i32, ptr %47, align 4, !tbaa !9
  %28839 = load i32, ptr %46, align 4, !tbaa !9
  %28840 = or i32 %28839, %28838
  store i32 %28840, ptr %46, align 4, !tbaa !9
  %28841 = load i32, ptr %46, align 4, !tbaa !9
  %28842 = sitofp i32 %28841 to double
  store double %28842, ptr %61, align 8, !tbaa !13
  %28843 = load ptr, ptr %5, align 8, !tbaa !5
  %28844 = getelementptr inbounds %struct.w2c_hermes, ptr %28843, i32 0, i32 6
  %28845 = load i32, ptr %45, align 4, !tbaa !9
  %28846 = zext i32 %28845 to i64
  %28847 = add i64 %28846, 8
  %28848 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %28844, i64 noundef %28847, double noundef %28848)
  br label %28867

28849:                                            ; preds = %28568
  %28850 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %28850, ptr %45, align 4, !tbaa !9
  %28851 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28851, ptr %46, align 4, !tbaa !9
  store i32 546, ptr %47, align 4, !tbaa !9
  %28852 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28852, ptr %48, align 4, !tbaa !9
  %28853 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %28853, ptr %58, align 8, !tbaa !11
  %28854 = load i64, ptr %58, align 8, !tbaa !11
  %28855 = trunc i64 %28854 to i32
  store i32 %28855, ptr %49, align 4, !tbaa !9
  %28856 = load ptr, ptr %5, align 8, !tbaa !5
  %28857 = load i32, ptr %48, align 4, !tbaa !9
  %28858 = load i32, ptr %49, align 4, !tbaa !9
  %28859 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %28856, i32 noundef %28857, i32 noundef %28858)
  store i32 %28859, ptr %48, align 4, !tbaa !9
  %28860 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %28860, ptr %49, align 4, !tbaa !9
  %28861 = load ptr, ptr %5, align 8, !tbaa !5
  %28862 = load i32, ptr %45, align 4, !tbaa !9
  %28863 = load i32, ptr %46, align 4, !tbaa !9
  %28864 = load i32, ptr %47, align 4, !tbaa !9
  %28865 = load i32, ptr %48, align 4, !tbaa !9
  %28866 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %28861, i32 noundef %28862, i32 noundef %28863, i32 noundef %28864, i32 noundef %28865, i32 noundef %28866)
  br label %28867

28867:                                            ; preds = %28849, %28837, %28716, %28689, %28561
  %28868 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %28868, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %28869 = load i32, ptr %46, align 4, !tbaa !9
  %28870 = load i32, ptr %45, align 4, !tbaa !9
  %28871 = add i32 %28870, %28869
  store i32 %28871, ptr %45, align 4, !tbaa !9
  %28872 = load i32, ptr %45, align 4, !tbaa !9
  %28873 = load ptr, ptr %5, align 8, !tbaa !5
  %28874 = getelementptr inbounds %struct.w2c_hermes, ptr %28873, i32 0, i32 3
  store i32 %28872, ptr %28874, align 8, !tbaa !15
  %28875 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %28875, ptr %45, align 4, !tbaa !9
  %28876 = load ptr, ptr %5, align 8, !tbaa !5
  %28877 = getelementptr inbounds %struct.w2c_hermes, ptr %28876, i32 0, i32 6
  %28878 = load i32, ptr %45, align 4, !tbaa !9
  %28879 = zext i32 %28878 to i64
  %28880 = add i64 %28879, 5808
  %28881 = call i32 @i32_load(ptr noundef %28877, i64 noundef %28880)
  store i32 %28881, ptr %45, align 4, !tbaa !9
  %28882 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28882, ptr %6, align 4, !tbaa !9
  %28883 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28883, ptr %45, align 4, !tbaa !9
  %28884 = load ptr, ptr %5, align 8, !tbaa !5
  %28885 = getelementptr inbounds %struct.w2c_hermes, ptr %28884, i32 0, i32 6
  %28886 = load i32, ptr %45, align 4, !tbaa !9
  %28887 = zext i32 %28886 to i64
  %28888 = add i64 %28887, 304
  %28889 = call i32 @i32_load(ptr noundef %28885, i64 noundef %28888)
  store i32 %28889, ptr %45, align 4, !tbaa !9
  %28890 = load i32, ptr %45, align 4, !tbaa !9
  %28891 = icmp ne i32 %28890, 0
  %28892 = xor i1 %28891, true
  %28893 = zext i1 %28892 to i32
  store i32 %28893, ptr %45, align 4, !tbaa !9
  %28894 = load i32, ptr %45, align 4, !tbaa !9
  %28895 = icmp ne i32 %28894, 0
  br i1 %28895, label %28896, label %28897

28896:                                            ; preds = %28867
  br label %43136

28897:                                            ; preds = %28867
  %28898 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28898, ptr %45, align 4, !tbaa !9
  %28899 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28899, ptr %46, align 4, !tbaa !9
  %28900 = load ptr, ptr %5, align 8, !tbaa !5
  %28901 = getelementptr inbounds %struct.w2c_hermes, ptr %28900, i32 0, i32 6
  %28902 = load i32, ptr %46, align 4, !tbaa !9
  %28903 = zext i32 %28902 to i64
  %28904 = add i64 %28903, 1
  %28905 = call i32 @i32_load8_u(ptr noundef %28901, i64 noundef %28904)
  store i32 %28905, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28906 = load i32, ptr %47, align 4, !tbaa !9
  %28907 = and i32 %28906, 31
  %28908 = load i32, ptr %46, align 4, !tbaa !9
  %28909 = shl i32 %28908, %28907
  store i32 %28909, ptr %46, align 4, !tbaa !9
  %28910 = load i32, ptr %46, align 4, !tbaa !9
  %28911 = load i32, ptr %45, align 4, !tbaa !9
  %28912 = add i32 %28911, %28910
  store i32 %28912, ptr %45, align 4, !tbaa !9
  %28913 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28913, ptr %46, align 4, !tbaa !9
  %28914 = load ptr, ptr %5, align 8, !tbaa !5
  %28915 = getelementptr inbounds %struct.w2c_hermes, ptr %28914, i32 0, i32 6
  %28916 = load i32, ptr %46, align 4, !tbaa !9
  %28917 = zext i32 %28916 to i64
  %28918 = add i64 %28917, 312
  %28919 = call i64 @i64_load(ptr noundef %28915, i64 noundef %28918)
  store i64 %28919, ptr %55, align 8, !tbaa !11
  %28920 = load ptr, ptr %5, align 8, !tbaa !5
  %28921 = getelementptr inbounds %struct.w2c_hermes, ptr %28920, i32 0, i32 6
  %28922 = load i32, ptr %45, align 4, !tbaa !9
  %28923 = zext i32 %28922 to i64
  %28924 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %28921, i64 noundef %28923, i64 noundef %28924)
  %28925 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28925, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %28926 = load ptr, ptr %5, align 8, !tbaa !5
  %28927 = getelementptr inbounds %struct.w2c_hermes, ptr %28926, i32 0, i32 6
  %28928 = load i32, ptr %45, align 4, !tbaa !9
  %28929 = zext i32 %28928 to i64
  %28930 = add i64 %28929, 516
  %28931 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28927, i64 noundef %28930, i32 noundef %28931)
  %28932 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28932, ptr %45, align 4, !tbaa !9
  %28933 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %28933, ptr %46, align 4, !tbaa !9
  %28934 = load ptr, ptr %5, align 8, !tbaa !5
  %28935 = getelementptr inbounds %struct.w2c_hermes, ptr %28934, i32 0, i32 6
  %28936 = load i32, ptr %45, align 4, !tbaa !9
  %28937 = zext i32 %28936 to i64
  %28938 = add i64 %28937, 512
  %28939 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28935, i64 noundef %28938, i32 noundef %28939)
  %28940 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %28940, ptr %45, align 4, !tbaa !9
  %28941 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %28941, ptr %46, align 4, !tbaa !9
  %28942 = load ptr, ptr %5, align 8, !tbaa !5
  %28943 = getelementptr inbounds %struct.w2c_hermes, ptr %28942, i32 0, i32 6
  %28944 = load i32, ptr %45, align 4, !tbaa !9
  %28945 = zext i32 %28944 to i64
  %28946 = add i64 %28945, 508
  %28947 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %28943, i64 noundef %28946, i32 noundef %28947)
  %28948 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28948, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %28949 = load i32, ptr %46, align 4, !tbaa !9
  %28950 = load i32, ptr %45, align 4, !tbaa !9
  %28951 = add i32 %28950, %28949
  store i32 %28951, ptr %45, align 4, !tbaa !9
  %28952 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %28952, ptr %6, align 4, !tbaa !9
  br label %2945

28953:                                            ; preds = %3102
  %28954 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28954, ptr %45, align 4, !tbaa !9
  %28955 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28955, ptr %46, align 4, !tbaa !9
  %28956 = load ptr, ptr %5, align 8, !tbaa !5
  %28957 = getelementptr inbounds %struct.w2c_hermes, ptr %28956, i32 0, i32 6
  %28958 = load i32, ptr %46, align 4, !tbaa !9
  %28959 = zext i32 %28958 to i64
  %28960 = add i64 %28959, 2
  %28961 = call i32 @i32_load8_u(ptr noundef %28957, i64 noundef %28960)
  store i32 %28961, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28962 = load i32, ptr %47, align 4, !tbaa !9
  %28963 = and i32 %28962, 31
  %28964 = load i32, ptr %46, align 4, !tbaa !9
  %28965 = shl i32 %28964, %28963
  store i32 %28965, ptr %46, align 4, !tbaa !9
  %28966 = load i32, ptr %46, align 4, !tbaa !9
  %28967 = load i32, ptr %45, align 4, !tbaa !9
  %28968 = add i32 %28967, %28966
  store i32 %28968, ptr %45, align 4, !tbaa !9
  %28969 = load ptr, ptr %5, align 8, !tbaa !5
  %28970 = getelementptr inbounds %struct.w2c_hermes, ptr %28969, i32 0, i32 6
  %28971 = load i32, ptr %45, align 4, !tbaa !9
  %28972 = zext i32 %28971 to i64
  %28973 = call i64 @i64_load(ptr noundef %28970, i64 noundef %28972)
  store i64 %28973, ptr %54, align 8, !tbaa !11
  %28974 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %28974, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %28975 = load i64, ptr %54, align 8, !tbaa !11
  %28976 = load i64, ptr %55, align 8, !tbaa !11
  %28977 = icmp ugt i64 %28975, %28976
  %28978 = zext i1 %28977 to i32
  store i32 %28978, ptr %45, align 4, !tbaa !9
  %28979 = load i32, ptr %45, align 4, !tbaa !9
  %28980 = icmp ne i32 %28979, 0
  br i1 %28980, label %28981, label %28982

28981:                                            ; preds = %28953
  br label %29203

28982:                                            ; preds = %28953
  %28983 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %28983, ptr %45, align 4, !tbaa !9
  %28984 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %28984, ptr %46, align 4, !tbaa !9
  %28985 = load ptr, ptr %5, align 8, !tbaa !5
  %28986 = getelementptr inbounds %struct.w2c_hermes, ptr %28985, i32 0, i32 6
  %28987 = load i32, ptr %46, align 4, !tbaa !9
  %28988 = zext i32 %28987 to i64
  %28989 = add i64 %28988, 3
  %28990 = call i32 @i32_load8_u(ptr noundef %28986, i64 noundef %28989)
  store i32 %28990, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %28991 = load i32, ptr %47, align 4, !tbaa !9
  %28992 = and i32 %28991, 31
  %28993 = load i32, ptr %46, align 4, !tbaa !9
  %28994 = shl i32 %28993, %28992
  store i32 %28994, ptr %46, align 4, !tbaa !9
  %28995 = load i32, ptr %46, align 4, !tbaa !9
  %28996 = load i32, ptr %45, align 4, !tbaa !9
  %28997 = add i32 %28996, %28995
  store i32 %28997, ptr %45, align 4, !tbaa !9
  %28998 = load ptr, ptr %5, align 8, !tbaa !5
  %28999 = getelementptr inbounds %struct.w2c_hermes, ptr %28998, i32 0, i32 6
  %29000 = load i32, ptr %45, align 4, !tbaa !9
  %29001 = zext i32 %29000 to i64
  %29002 = call i64 @i64_load(ptr noundef %28999, i64 noundef %29001)
  store i64 %29002, ptr %54, align 8, !tbaa !11
  %29003 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %29003, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %29004 = load i64, ptr %54, align 8, !tbaa !11
  %29005 = load i64, ptr %55, align 8, !tbaa !11
  %29006 = icmp ugt i64 %29004, %29005
  %29007 = zext i1 %29006 to i32
  store i32 %29007, ptr %45, align 4, !tbaa !9
  %29008 = load i32, ptr %45, align 4, !tbaa !9
  %29009 = icmp ne i32 %29008, 0
  br i1 %29009, label %29010, label %29011

29010:                                            ; preds = %28982
  br label %29203

29011:                                            ; preds = %28982
  %29012 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %29012, ptr %54, align 8, !tbaa !11
  %29013 = load i64, ptr %54, align 8, !tbaa !11
  %29014 = call double @f64_reinterpret_i64(i64 noundef %29013)
  store double %29014, ptr %60, align 8, !tbaa !13
  %29015 = load double, ptr %60, align 8, !tbaa !13
  store double %29015, ptr %43, align 8, !tbaa !13
  %29016 = load double, ptr %60, align 8, !tbaa !13
  %29017 = call double @wasm_fabs(double noundef %29016)
  store double %29017, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %29018 = load double, ptr %60, align 8, !tbaa !13
  %29019 = load double, ptr %61, align 8, !tbaa !13
  %29020 = fcmp olt double %29018, %29019
  %29021 = zext i1 %29020 to i32
  store i32 %29021, ptr %45, align 4, !tbaa !9
  %29022 = load i32, ptr %45, align 4, !tbaa !9
  %29023 = icmp ne i32 %29022, 0
  br i1 %29023, label %29024, label %29061

29024:                                            ; preds = %29011
  %29025 = load double, ptr %43, align 8, !tbaa !13
  store double %29025, ptr %60, align 8, !tbaa !13
  %29026 = load double, ptr %60, align 8, !tbaa !13
  %29027 = load double, ptr %60, align 8, !tbaa !13
  %29028 = fcmp une double %29026, %29027
  %29029 = xor i1 %29028, true
  %29030 = xor i1 %29029, true
  %29031 = zext i1 %29030 to i32
  %29032 = sext i32 %29031 to i64
  %29033 = call i64 @llvm.expect.i64(i64 %29032, i64 0)
  %29034 = icmp ne i64 %29033, 0
  br i1 %29034, label %29035, label %29037

29035:                                            ; preds = %29024
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

29036:                                            ; No predecessors!
  br label %29059

29037:                                            ; preds = %29024
  %29038 = load double, ptr %60, align 8, !tbaa !13
  %29039 = fcmp ogt double %29038, 0xC1E0000000200000
  br i1 %29039, label %29040, label %29043

29040:                                            ; preds = %29037
  %29041 = load double, ptr %60, align 8, !tbaa !13
  %29042 = fcmp olt double %29041, 0x41E0000000000000
  br label %29043

29043:                                            ; preds = %29040, %29037
  %29044 = phi i1 [ false, %29037 ], [ %29042, %29040 ]
  %29045 = xor i1 %29044, true
  %29046 = xor i1 %29045, true
  %29047 = xor i1 %29046, true
  %29048 = zext i1 %29047 to i32
  %29049 = sext i32 %29048 to i64
  %29050 = call i64 @llvm.expect.i64(i64 %29049, i64 0)
  %29051 = icmp ne i64 %29050, 0
  br i1 %29051, label %29052, label %29054

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

29053:                                            ; No predecessors!
  br label %29057

29054:                                            ; preds = %29043
  %29055 = load double, ptr %60, align 8, !tbaa !13
  %29056 = fptosi double %29055 to i32
  br label %29057

29057:                                            ; preds = %29054, %29053
  %29058 = phi i32 [ 0, %29053 ], [ %29056, %29054 ]
  br label %29059

29059:                                            ; preds = %29057, %29036
  %29060 = phi i32 [ 0, %29036 ], [ %29058, %29057 ]
  store i32 %29060, ptr %45, align 4, !tbaa !9
  br label %29062

29061:                                            ; preds = %29011
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %29062

29062:                                            ; preds = %29061, %29059
  %29063 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29063, ptr %12, align 4, !tbaa !9
  %29064 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29064, ptr %45, align 4, !tbaa !9
  %29065 = load i32, ptr %45, align 4, !tbaa !9
  %29066 = sitofp i32 %29065 to double
  store double %29066, ptr %60, align 8, !tbaa !13
  %29067 = load double, ptr %43, align 8, !tbaa !13
  store double %29067, ptr %61, align 8, !tbaa !13
  %29068 = load double, ptr %60, align 8, !tbaa !13
  %29069 = load double, ptr %61, align 8, !tbaa !13
  %29070 = fcmp oeq double %29068, %29069
  %29071 = zext i1 %29070 to i32
  store i32 %29071, ptr %45, align 4, !tbaa !9
  %29072 = load i32, ptr %45, align 4, !tbaa !9
  %29073 = icmp ne i32 %29072, 0
  br i1 %29073, label %29074, label %29078

29074:                                            ; preds = %29062
  %29075 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %29075, ptr %54, align 8, !tbaa !11
  %29076 = load i64, ptr %54, align 8, !tbaa !11
  %29077 = call double @f64_reinterpret_i64(i64 noundef %29076)
  store double %29077, ptr %60, align 8, !tbaa !13
  br label %29104

29078:                                            ; preds = %29062
  %29079 = load double, ptr %43, align 8, !tbaa !13
  store double %29079, ptr %60, align 8, !tbaa !13
  %29080 = load ptr, ptr %5, align 8, !tbaa !5
  %29081 = load double, ptr %60, align 8, !tbaa !13
  %29082 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %29080, double noundef %29081)
  store i32 %29082, ptr %45, align 4, !tbaa !9
  %29083 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29083, ptr %12, align 4, !tbaa !9
  %29084 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29084, ptr %45, align 4, !tbaa !9
  %29085 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29085, ptr %46, align 4, !tbaa !9
  %29086 = load ptr, ptr %5, align 8, !tbaa !5
  %29087 = getelementptr inbounds %struct.w2c_hermes, ptr %29086, i32 0, i32 6
  %29088 = load i32, ptr %46, align 4, !tbaa !9
  %29089 = zext i32 %29088 to i64
  %29090 = add i64 %29089, 3
  %29091 = call i32 @i32_load8_u(ptr noundef %29087, i64 noundef %29090)
  store i32 %29091, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29092 = load i32, ptr %47, align 4, !tbaa !9
  %29093 = and i32 %29092, 31
  %29094 = load i32, ptr %46, align 4, !tbaa !9
  %29095 = shl i32 %29094, %29093
  store i32 %29095, ptr %46, align 4, !tbaa !9
  %29096 = load i32, ptr %46, align 4, !tbaa !9
  %29097 = load i32, ptr %45, align 4, !tbaa !9
  %29098 = add i32 %29097, %29096
  store i32 %29098, ptr %45, align 4, !tbaa !9
  %29099 = load ptr, ptr %5, align 8, !tbaa !5
  %29100 = getelementptr inbounds %struct.w2c_hermes, ptr %29099, i32 0, i32 6
  %29101 = load i32, ptr %45, align 4, !tbaa !9
  %29102 = zext i32 %29101 to i64
  %29103 = call double @f64_load(ptr noundef %29100, i64 noundef %29102)
  store double %29103, ptr %60, align 8, !tbaa !13
  br label %29104

29104:                                            ; preds = %29078, %29074
  %29105 = load double, ptr %60, align 8, !tbaa !13
  store double %29105, ptr %43, align 8, !tbaa !13
  %29106 = load double, ptr %60, align 8, !tbaa !13
  %29107 = call double @wasm_fabs(double noundef %29106)
  store double %29107, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %29108 = load double, ptr %60, align 8, !tbaa !13
  %29109 = load double, ptr %61, align 8, !tbaa !13
  %29110 = fcmp olt double %29108, %29109
  %29111 = zext i1 %29110 to i32
  store i32 %29111, ptr %45, align 4, !tbaa !9
  %29112 = load i32, ptr %45, align 4, !tbaa !9
  %29113 = icmp ne i32 %29112, 0
  br i1 %29113, label %29114, label %29151

29114:                                            ; preds = %29104
  %29115 = load double, ptr %43, align 8, !tbaa !13
  store double %29115, ptr %60, align 8, !tbaa !13
  %29116 = load double, ptr %60, align 8, !tbaa !13
  %29117 = load double, ptr %60, align 8, !tbaa !13
  %29118 = fcmp une double %29116, %29117
  %29119 = xor i1 %29118, true
  %29120 = xor i1 %29119, true
  %29121 = zext i1 %29120 to i32
  %29122 = sext i32 %29121 to i64
  %29123 = call i64 @llvm.expect.i64(i64 %29122, i64 0)
  %29124 = icmp ne i64 %29123, 0
  br i1 %29124, label %29125, label %29127

29125:                                            ; preds = %29114
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

29126:                                            ; No predecessors!
  br label %29149

29127:                                            ; preds = %29114
  %29128 = load double, ptr %60, align 8, !tbaa !13
  %29129 = fcmp ogt double %29128, 0xC1E0000000200000
  br i1 %29129, label %29130, label %29133

29130:                                            ; preds = %29127
  %29131 = load double, ptr %60, align 8, !tbaa !13
  %29132 = fcmp olt double %29131, 0x41E0000000000000
  br label %29133

29133:                                            ; preds = %29130, %29127
  %29134 = phi i1 [ false, %29127 ], [ %29132, %29130 ]
  %29135 = xor i1 %29134, true
  %29136 = xor i1 %29135, true
  %29137 = xor i1 %29136, true
  %29138 = zext i1 %29137 to i32
  %29139 = sext i32 %29138 to i64
  %29140 = call i64 @llvm.expect.i64(i64 %29139, i64 0)
  %29141 = icmp ne i64 %29140, 0
  br i1 %29141, label %29142, label %29144

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

29143:                                            ; No predecessors!
  br label %29147

29144:                                            ; preds = %29133
  %29145 = load double, ptr %60, align 8, !tbaa !13
  %29146 = fptosi double %29145 to i32
  br label %29147

29147:                                            ; preds = %29144, %29143
  %29148 = phi i32 [ 0, %29143 ], [ %29146, %29144 ]
  br label %29149

29149:                                            ; preds = %29147, %29126
  %29150 = phi i32 [ 0, %29126 ], [ %29148, %29147 ]
  store i32 %29150, ptr %45, align 4, !tbaa !9
  br label %29152

29151:                                            ; preds = %29104
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %29152

29152:                                            ; preds = %29151, %29149
  %29153 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29153, ptr %7, align 4, !tbaa !9
  %29154 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29154, ptr %45, align 4, !tbaa !9
  %29155 = load i32, ptr %45, align 4, !tbaa !9
  %29156 = sitofp i32 %29155 to double
  store double %29156, ptr %60, align 8, !tbaa !13
  %29157 = load double, ptr %43, align 8, !tbaa !13
  store double %29157, ptr %61, align 8, !tbaa !13
  %29158 = load double, ptr %60, align 8, !tbaa !13
  %29159 = load double, ptr %61, align 8, !tbaa !13
  %29160 = fcmp une double %29158, %29159
  %29161 = zext i1 %29160 to i32
  store i32 %29161, ptr %45, align 4, !tbaa !9
  %29162 = load i32, ptr %45, align 4, !tbaa !9
  %29163 = icmp ne i32 %29162, 0
  br i1 %29163, label %29164, label %29170

29164:                                            ; preds = %29152
  %29165 = load double, ptr %43, align 8, !tbaa !13
  store double %29165, ptr %60, align 8, !tbaa !13
  %29166 = load ptr, ptr %5, align 8, !tbaa !5
  %29167 = load double, ptr %60, align 8, !tbaa !13
  %29168 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %29166, double noundef %29167)
  store i32 %29168, ptr %45, align 4, !tbaa !9
  %29169 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29169, ptr %7, align 4, !tbaa !9
  br label %29170

29170:                                            ; preds = %29164, %29152
  %29171 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29171, ptr %45, align 4, !tbaa !9
  %29172 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29172, ptr %46, align 4, !tbaa !9
  %29173 = load ptr, ptr %5, align 8, !tbaa !5
  %29174 = getelementptr inbounds %struct.w2c_hermes, ptr %29173, i32 0, i32 6
  %29175 = load i32, ptr %46, align 4, !tbaa !9
  %29176 = zext i32 %29175 to i64
  %29177 = add i64 %29176, 1
  %29178 = call i32 @i32_load8_u(ptr noundef %29174, i64 noundef %29177)
  store i32 %29178, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29179 = load i32, ptr %47, align 4, !tbaa !9
  %29180 = and i32 %29179, 31
  %29181 = load i32, ptr %46, align 4, !tbaa !9
  %29182 = shl i32 %29181, %29180
  store i32 %29182, ptr %46, align 4, !tbaa !9
  %29183 = load i32, ptr %46, align 4, !tbaa !9
  %29184 = load i32, ptr %45, align 4, !tbaa !9
  %29185 = add i32 %29184, %29183
  store i32 %29185, ptr %45, align 4, !tbaa !9
  %29186 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29186, ptr %46, align 4, !tbaa !9
  %29187 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29187, ptr %47, align 4, !tbaa !9
  %29188 = load i32, ptr %47, align 4, !tbaa !9
  %29189 = load i32, ptr %46, align 4, !tbaa !9
  %29190 = xor i32 %29189, %29188
  store i32 %29190, ptr %46, align 4, !tbaa !9
  %29191 = load i32, ptr %46, align 4, !tbaa !9
  %29192 = sitofp i32 %29191 to double
  store double %29192, ptr %61, align 8, !tbaa !13
  %29193 = load ptr, ptr %5, align 8, !tbaa !5
  %29194 = getelementptr inbounds %struct.w2c_hermes, ptr %29193, i32 0, i32 6
  %29195 = load i32, ptr %45, align 4, !tbaa !9
  %29196 = zext i32 %29195 to i64
  %29197 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %29194, i64 noundef %29196, double noundef %29197)
  %29198 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29198, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %29199 = load i32, ptr %46, align 4, !tbaa !9
  %29200 = load i32, ptr %45, align 4, !tbaa !9
  %29201 = add i32 %29200, %29199
  store i32 %29201, ptr %45, align 4, !tbaa !9
  %29202 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29202, ptr %6, align 4, !tbaa !9
  br label %2945

29203:                                            ; preds = %29010, %28981
  %29204 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29204, ptr %45, align 4, !tbaa !9
  %29205 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29205, ptr %46, align 4, !tbaa !9
  %29206 = load ptr, ptr %5, align 8, !tbaa !5
  %29207 = getelementptr inbounds %struct.w2c_hermes, ptr %29206, i32 0, i32 6
  %29208 = load i32, ptr %45, align 4, !tbaa !9
  %29209 = zext i32 %29208 to i64
  %29210 = add i64 %29209, 5808
  %29211 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29207, i64 noundef %29210, i32 noundef %29211)
  %29212 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29212, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %29213 = load i32, ptr %46, align 4, !tbaa !9
  %29214 = load i32, ptr %45, align 4, !tbaa !9
  %29215 = add i32 %29214, %29213
  store i32 %29215, ptr %45, align 4, !tbaa !9
  %29216 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29216, ptr %12, align 4, !tbaa !9
  %29217 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29217, ptr %45, align 4, !tbaa !9
  %29218 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29218, ptr %46, align 4, !tbaa !9
  %29219 = load ptr, ptr %5, align 8, !tbaa !5
  %29220 = getelementptr inbounds %struct.w2c_hermes, ptr %29219, i32 0, i32 6
  %29221 = load i32, ptr %46, align 4, !tbaa !9
  %29222 = zext i32 %29221 to i64
  %29223 = add i64 %29222, 2
  %29224 = call i32 @i32_load8_u(ptr noundef %29220, i64 noundef %29223)
  store i32 %29224, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29225 = load i32, ptr %47, align 4, !tbaa !9
  %29226 = and i32 %29225, 31
  %29227 = load i32, ptr %46, align 4, !tbaa !9
  %29228 = shl i32 %29227, %29226
  store i32 %29228, ptr %46, align 4, !tbaa !9
  %29229 = load i32, ptr %46, align 4, !tbaa !9
  %29230 = load i32, ptr %45, align 4, !tbaa !9
  %29231 = add i32 %29230, %29229
  store i32 %29231, ptr %45, align 4, !tbaa !9
  %29232 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29232, ptr %7, align 4, !tbaa !9
  %29233 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29233, ptr %45, align 4, !tbaa !9
  %29234 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29234, ptr %46, align 4, !tbaa !9
  %29235 = load ptr, ptr %5, align 8, !tbaa !5
  %29236 = getelementptr inbounds %struct.w2c_hermes, ptr %29235, i32 0, i32 6
  %29237 = load i32, ptr %46, align 4, !tbaa !9
  %29238 = zext i32 %29237 to i64
  %29239 = add i64 %29238, 3
  %29240 = call i32 @i32_load8_u(ptr noundef %29236, i64 noundef %29239)
  store i32 %29240, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29241 = load i32, ptr %47, align 4, !tbaa !9
  %29242 = and i32 %29241, 31
  %29243 = load i32, ptr %46, align 4, !tbaa !9
  %29244 = shl i32 %29243, %29242
  store i32 %29244, ptr %46, align 4, !tbaa !9
  %29245 = load i32, ptr %46, align 4, !tbaa !9
  %29246 = load i32, ptr %45, align 4, !tbaa !9
  %29247 = add i32 %29246, %29245
  store i32 %29247, ptr %45, align 4, !tbaa !9
  %29248 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29248, ptr %8, align 4, !tbaa !9
  %29249 = load ptr, ptr %5, align 8, !tbaa !5
  %29250 = getelementptr inbounds %struct.w2c_hermes, ptr %29249, i32 0, i32 3
  %29251 = load i32, ptr %29250, align 8, !tbaa !15
  store i32 %29251, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %29252 = load i32, ptr %46, align 4, !tbaa !9
  %29253 = load i32, ptr %45, align 4, !tbaa !9
  %29254 = sub i32 %29253, %29252
  store i32 %29254, ptr %45, align 4, !tbaa !9
  %29255 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29255, ptr %13, align 4, !tbaa !9
  %29256 = load i32, ptr %45, align 4, !tbaa !9
  %29257 = load ptr, ptr %5, align 8, !tbaa !5
  %29258 = getelementptr inbounds %struct.w2c_hermes, ptr %29257, i32 0, i32 3
  store i32 %29256, ptr %29258, align 8, !tbaa !15
  %29259 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29259, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %29260 = load i32, ptr %46, align 4, !tbaa !9
  %29261 = load i32, ptr %45, align 4, !tbaa !9
  %29262 = add i32 %29261, %29260
  store i32 %29262, ptr %45, align 4, !tbaa !9
  %29263 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29263, ptr %46, align 4, !tbaa !9
  %29264 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29264, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %29265 = load ptr, ptr %5, align 8, !tbaa !5
  %29266 = load i32, ptr %45, align 4, !tbaa !9
  %29267 = load i32, ptr %46, align 4, !tbaa !9
  %29268 = load i32, ptr %47, align 4, !tbaa !9
  %29269 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %29265, i32 noundef %29266, i32 noundef %29267, i32 noundef %29268, i32 noundef %29269)
  %29270 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29270, ptr %45, align 4, !tbaa !9
  %29271 = load ptr, ptr %5, align 8, !tbaa !5
  %29272 = getelementptr inbounds %struct.w2c_hermes, ptr %29271, i32 0, i32 6
  %29273 = load i32, ptr %45, align 4, !tbaa !9
  %29274 = zext i32 %29273 to i64
  %29275 = add i64 %29274, 16
  %29276 = call i32 @i32_load(ptr noundef %29272, i64 noundef %29275)
  store i32 %29276, ptr %45, align 4, !tbaa !9
  %29277 = load i32, ptr %45, align 4, !tbaa !9
  %29278 = icmp ne i32 %29277, 0
  %29279 = xor i1 %29278, true
  %29280 = zext i1 %29279 to i32
  store i32 %29280, ptr %45, align 4, !tbaa !9
  %29281 = load i32, ptr %45, align 4, !tbaa !9
  %29282 = icmp ne i32 %29281, 0
  br i1 %29282, label %29283, label %29290

29283:                                            ; preds = %29203
  %29284 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29284, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %29285 = load ptr, ptr %5, align 8, !tbaa !5
  %29286 = getelementptr inbounds %struct.w2c_hermes, ptr %29285, i32 0, i32 6
  %29287 = load i32, ptr %45, align 4, !tbaa !9
  %29288 = zext i32 %29287 to i64
  %29289 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29286, i64 noundef %29288, i32 noundef %29289)
  br label %29589

29290:                                            ; preds = %29203
  %29291 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29291, ptr %45, align 4, !tbaa !9
  %29292 = load ptr, ptr %5, align 8, !tbaa !5
  %29293 = getelementptr inbounds %struct.w2c_hermes, ptr %29292, i32 0, i32 6
  %29294 = load i32, ptr %45, align 4, !tbaa !9
  %29295 = zext i32 %29294 to i64
  %29296 = add i64 %29295, 24
  %29297 = call i64 @i64_load(ptr noundef %29293, i64 noundef %29296)
  store i64 %29297, ptr %54, align 8, !tbaa !11
  %29298 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %29298, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %29299 = load i64, ptr %54, align 8, !tbaa !11
  %29300 = load i64, ptr %55, align 8, !tbaa !11
  %29301 = and i64 %29300, 63
  %29302 = ashr i64 %29299, %29301
  store i64 %29302, ptr %54, align 8, !tbaa !11
  %29303 = load i64, ptr %54, align 8, !tbaa !11
  %29304 = trunc i64 %29303 to i32
  store i32 %29304, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %29305 = load i32, ptr %45, align 4, !tbaa !9
  %29306 = load i32, ptr %46, align 4, !tbaa !9
  %29307 = icmp ne i32 %29305, %29306
  %29308 = zext i1 %29307 to i32
  store i32 %29308, ptr %45, align 4, !tbaa !9
  %29309 = load i32, ptr %45, align 4, !tbaa !9
  %29310 = icmp ne i32 %29309, 0
  br i1 %29310, label %29311, label %29571

29311:                                            ; preds = %29290
  %29312 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29312, ptr %45, align 4, !tbaa !9
  %29313 = load ptr, ptr %5, align 8, !tbaa !5
  %29314 = getelementptr inbounds %struct.w2c_hermes, ptr %29313, i32 0, i32 6
  %29315 = load i32, ptr %45, align 4, !tbaa !9
  %29316 = zext i32 %29315 to i64
  %29317 = add i64 %29316, 4
  %29318 = call i32 @i32_load(ptr noundef %29314, i64 noundef %29317)
  store i32 %29318, ptr %45, align 4, !tbaa !9
  %29319 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29319, ptr %6, align 4, !tbaa !9
  %29320 = load ptr, ptr %5, align 8, !tbaa !5
  %29321 = getelementptr inbounds %struct.w2c_hermes, ptr %29320, i32 0, i32 6
  %29322 = load i32, ptr %45, align 4, !tbaa !9
  %29323 = zext i32 %29322 to i64
  %29324 = add i64 %29323, 164
  %29325 = call i32 @i32_load(ptr noundef %29321, i64 noundef %29324)
  store i32 %29325, ptr %45, align 4, !tbaa !9
  %29326 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29326, ptr %7, align 4, !tbaa !9
  %29327 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29327, ptr %46, align 4, !tbaa !9
  %29328 = load ptr, ptr %5, align 8, !tbaa !5
  %29329 = getelementptr inbounds %struct.w2c_hermes, ptr %29328, i32 0, i32 6
  %29330 = load i32, ptr %46, align 4, !tbaa !9
  %29331 = zext i32 %29330 to i64
  %29332 = add i64 %29331, 168
  %29333 = call i32 @i32_load(ptr noundef %29329, i64 noundef %29332)
  store i32 %29333, ptr %46, align 4, !tbaa !9
  %29334 = load i32, ptr %45, align 4, !tbaa !9
  %29335 = load i32, ptr %46, align 4, !tbaa !9
  %29336 = icmp ult i32 %29334, %29335
  %29337 = zext i1 %29336 to i32
  store i32 %29337, ptr %45, align 4, !tbaa !9
  %29338 = load i32, ptr %45, align 4, !tbaa !9
  %29339 = icmp ne i32 %29338, 0
  br i1 %29339, label %29340, label %29359

29340:                                            ; preds = %29311
  %29341 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29341, ptr %45, align 4, !tbaa !9
  %29342 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29342, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %29343 = load i32, ptr %47, align 4, !tbaa !9
  %29344 = load i32, ptr %46, align 4, !tbaa !9
  %29345 = add i32 %29344, %29343
  store i32 %29345, ptr %46, align 4, !tbaa !9
  %29346 = load ptr, ptr %5, align 8, !tbaa !5
  %29347 = getelementptr inbounds %struct.w2c_hermes, ptr %29346, i32 0, i32 6
  %29348 = load i32, ptr %45, align 4, !tbaa !9
  %29349 = zext i32 %29348 to i64
  %29350 = add i64 %29349, 164
  %29351 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29347, i64 noundef %29350, i32 noundef %29351)
  %29352 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29352, ptr %45, align 4, !tbaa !9
  %29353 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %29353, ptr %55, align 8, !tbaa !11
  %29354 = load ptr, ptr %5, align 8, !tbaa !5
  %29355 = getelementptr inbounds %struct.w2c_hermes, ptr %29354, i32 0, i32 6
  %29356 = load i32, ptr %45, align 4, !tbaa !9
  %29357 = zext i32 %29356 to i64
  %29358 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %29355, i64 noundef %29357, i64 noundef %29358)
  br label %29367

29359:                                            ; preds = %29311
  %29360 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29360, ptr %45, align 4, !tbaa !9
  %29361 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %29361, ptr %55, align 8, !tbaa !11
  %29362 = load ptr, ptr %5, align 8, !tbaa !5
  %29363 = load i32, ptr %45, align 4, !tbaa !9
  %29364 = load i64, ptr %55, align 8, !tbaa !11
  %29365 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %29362, i32 noundef %29363, i64 noundef %29364)
  store i32 %29365, ptr %45, align 4, !tbaa !9
  %29366 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29366, ptr %7, align 4, !tbaa !9
  br label %29367

29367:                                            ; preds = %29359, %29340
  %29368 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29368, ptr %45, align 4, !tbaa !9
  %29369 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29369, ptr %46, align 4, !tbaa !9
  %29370 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29370, ptr %47, align 4, !tbaa !9
  %29371 = load ptr, ptr %5, align 8, !tbaa !5
  %29372 = load i32, ptr %45, align 4, !tbaa !9
  %29373 = load i32, ptr %46, align 4, !tbaa !9
  %29374 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %29371, i32 noundef %29372, i32 noundef %29373, i32 noundef %29374)
  %29375 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29375, ptr %45, align 4, !tbaa !9
  %29376 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29376, ptr %46, align 4, !tbaa !9
  %29377 = load ptr, ptr %5, align 8, !tbaa !5
  %29378 = getelementptr inbounds %struct.w2c_hermes, ptr %29377, i32 0, i32 6
  %29379 = load i32, ptr %46, align 4, !tbaa !9
  %29380 = zext i32 %29379 to i64
  %29381 = call i32 @i32_load(ptr noundef %29378, i64 noundef %29380)
  store i32 %29381, ptr %46, align 4, !tbaa !9
  %29382 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %29382, ptr %6, align 4, !tbaa !9
  %29383 = load ptr, ptr %5, align 8, !tbaa !5
  %29384 = getelementptr inbounds %struct.w2c_hermes, ptr %29383, i32 0, i32 6
  %29385 = load i32, ptr %45, align 4, !tbaa !9
  %29386 = zext i32 %29385 to i64
  %29387 = add i64 %29386, 16
  %29388 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29384, i64 noundef %29387, i32 noundef %29388)
  %29389 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29389, ptr %45, align 4, !tbaa !9
  %29390 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29390, ptr %46, align 4, !tbaa !9
  %29391 = load ptr, ptr %5, align 8, !tbaa !5
  %29392 = getelementptr inbounds %struct.w2c_hermes, ptr %29391, i32 0, i32 6
  %29393 = load i32, ptr %46, align 4, !tbaa !9
  %29394 = zext i32 %29393 to i64
  %29395 = add i64 %29394, 8
  %29396 = call i64 @i64_load(ptr noundef %29392, i64 noundef %29395)
  store i64 %29396, ptr %55, align 8, !tbaa !11
  %29397 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %29397, ptr %39, align 8, !tbaa !11
  %29398 = load ptr, ptr %5, align 8, !tbaa !5
  %29399 = getelementptr inbounds %struct.w2c_hermes, ptr %29398, i32 0, i32 6
  %29400 = load i32, ptr %45, align 4, !tbaa !9
  %29401 = zext i32 %29400 to i64
  %29402 = add i64 %29401, 24
  %29403 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %29399, i64 noundef %29402, i64 noundef %29403)
  %29404 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29404, ptr %45, align 4, !tbaa !9
  %29405 = load i32, ptr %45, align 4, !tbaa !9
  %29406 = icmp ne i32 %29405, 0
  %29407 = xor i1 %29406, true
  %29408 = zext i1 %29407 to i32
  store i32 %29408, ptr %45, align 4, !tbaa !9
  %29409 = load i32, ptr %45, align 4, !tbaa !9
  %29410 = icmp ne i32 %29409, 0
  br i1 %29410, label %29411, label %29418

29411:                                            ; preds = %29367
  %29412 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29412, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %29413 = load ptr, ptr %5, align 8, !tbaa !5
  %29414 = getelementptr inbounds %struct.w2c_hermes, ptr %29413, i32 0, i32 6
  %29415 = load i32, ptr %45, align 4, !tbaa !9
  %29416 = zext i32 %29415 to i64
  %29417 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29414, i64 noundef %29416, i32 noundef %29417)
  br label %29589

29418:                                            ; preds = %29367
  %29419 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29419, ptr %45, align 4, !tbaa !9
  %29420 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29420, ptr %46, align 4, !tbaa !9
  %29421 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %29421, ptr %47, align 4, !tbaa !9
  %29422 = load ptr, ptr %5, align 8, !tbaa !5
  %29423 = load i32, ptr %45, align 4, !tbaa !9
  %29424 = load i32, ptr %46, align 4, !tbaa !9
  %29425 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %29422, i32 noundef %29423, i32 noundef %29424, i32 noundef %29425)
  %29426 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29426, ptr %45, align 4, !tbaa !9
  %29427 = load ptr, ptr %5, align 8, !tbaa !5
  %29428 = getelementptr inbounds %struct.w2c_hermes, ptr %29427, i32 0, i32 6
  %29429 = load i32, ptr %45, align 4, !tbaa !9
  %29430 = zext i32 %29429 to i64
  %29431 = call i32 @i32_load(ptr noundef %29428, i64 noundef %29430)
  store i32 %29431, ptr %45, align 4, !tbaa !9
  %29432 = load i32, ptr %45, align 4, !tbaa !9
  %29433 = icmp ne i32 %29432, 0
  %29434 = xor i1 %29433, true
  %29435 = zext i1 %29434 to i32
  store i32 %29435, ptr %45, align 4, !tbaa !9
  %29436 = load i32, ptr %45, align 4, !tbaa !9
  %29437 = icmp ne i32 %29436, 0
  br i1 %29437, label %29438, label %29445

29438:                                            ; preds = %29418
  %29439 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29439, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %29440 = load ptr, ptr %5, align 8, !tbaa !5
  %29441 = getelementptr inbounds %struct.w2c_hermes, ptr %29440, i32 0, i32 6
  %29442 = load i32, ptr %45, align 4, !tbaa !9
  %29443 = zext i32 %29442 to i64
  %29444 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29441, i64 noundef %29443, i32 noundef %29444)
  br label %29589

29445:                                            ; preds = %29418
  %29446 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29446, ptr %45, align 4, !tbaa !9
  %29447 = load ptr, ptr %5, align 8, !tbaa !5
  %29448 = getelementptr inbounds %struct.w2c_hermes, ptr %29447, i32 0, i32 6
  %29449 = load i32, ptr %45, align 4, !tbaa !9
  %29450 = zext i32 %29449 to i64
  %29451 = add i64 %29450, 8
  %29452 = call double @f64_load(ptr noundef %29448, i64 noundef %29451)
  store double %29452, ptr %60, align 8, !tbaa !13
  %29453 = load double, ptr %60, align 8, !tbaa !13
  store double %29453, ptr %44, align 8, !tbaa !13
  %29454 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29454, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %29455 = load ptr, ptr %5, align 8, !tbaa !5
  %29456 = getelementptr inbounds %struct.w2c_hermes, ptr %29455, i32 0, i32 6
  %29457 = load i32, ptr %45, align 4, !tbaa !9
  %29458 = zext i32 %29457 to i64
  %29459 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29456, i64 noundef %29458, i32 noundef %29459)
  %29460 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29460, ptr %45, align 4, !tbaa !9
  %29461 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %29461, ptr %55, align 8, !tbaa !11
  %29462 = load i64, ptr %55, align 8, !tbaa !11
  %29463 = call double @f64_reinterpret_i64(i64 noundef %29462)
  store double %29463, ptr %61, align 8, !tbaa !13
  %29464 = load double, ptr %61, align 8, !tbaa !13
  store double %29464, ptr %43, align 8, !tbaa !13
  %29465 = load double, ptr %61, align 8, !tbaa !13
  %29466 = call double @wasm_fabs(double noundef %29465)
  store double %29466, ptr %61, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %62, align 8, !tbaa !13
  %29467 = load double, ptr %61, align 8, !tbaa !13
  %29468 = load double, ptr %62, align 8, !tbaa !13
  %29469 = fcmp olt double %29467, %29468
  %29470 = zext i1 %29469 to i32
  store i32 %29470, ptr %46, align 4, !tbaa !9
  %29471 = load i32, ptr %46, align 4, !tbaa !9
  %29472 = icmp ne i32 %29471, 0
  br i1 %29472, label %29473, label %29510

29473:                                            ; preds = %29445
  %29474 = load double, ptr %43, align 8, !tbaa !13
  store double %29474, ptr %61, align 8, !tbaa !13
  %29475 = load double, ptr %61, align 8, !tbaa !13
  %29476 = load double, ptr %61, align 8, !tbaa !13
  %29477 = fcmp une double %29475, %29476
  %29478 = xor i1 %29477, true
  %29479 = xor i1 %29478, true
  %29480 = zext i1 %29479 to i32
  %29481 = sext i32 %29480 to i64
  %29482 = call i64 @llvm.expect.i64(i64 %29481, i64 0)
  %29483 = icmp ne i64 %29482, 0
  br i1 %29483, label %29484, label %29486

29484:                                            ; preds = %29473
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

29485:                                            ; No predecessors!
  br label %29508

29486:                                            ; preds = %29473
  %29487 = load double, ptr %61, align 8, !tbaa !13
  %29488 = fcmp ogt double %29487, 0xC1E0000000200000
  br i1 %29488, label %29489, label %29492

29489:                                            ; preds = %29486
  %29490 = load double, ptr %61, align 8, !tbaa !13
  %29491 = fcmp olt double %29490, 0x41E0000000000000
  br label %29492

29492:                                            ; preds = %29489, %29486
  %29493 = phi i1 [ false, %29486 ], [ %29491, %29489 ]
  %29494 = xor i1 %29493, true
  %29495 = xor i1 %29494, true
  %29496 = xor i1 %29495, true
  %29497 = zext i1 %29496 to i32
  %29498 = sext i32 %29497 to i64
  %29499 = call i64 @llvm.expect.i64(i64 %29498, i64 0)
  %29500 = icmp ne i64 %29499, 0
  br i1 %29500, label %29501, label %29503

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

29502:                                            ; No predecessors!
  br label %29506

29503:                                            ; preds = %29492
  %29504 = load double, ptr %61, align 8, !tbaa !13
  %29505 = fptosi double %29504 to i32
  br label %29506

29506:                                            ; preds = %29503, %29502
  %29507 = phi i32 [ 0, %29502 ], [ %29505, %29503 ]
  br label %29508

29508:                                            ; preds = %29506, %29485
  %29509 = phi i32 [ 0, %29485 ], [ %29507, %29506 ]
  store i32 %29509, ptr %46, align 4, !tbaa !9
  br label %29511

29510:                                            ; preds = %29445
  store i32 -2147483648, ptr %46, align 4, !tbaa !9
  br label %29511

29511:                                            ; preds = %29510, %29508
  %29512 = load double, ptr %44, align 8, !tbaa !13
  store double %29512, ptr %62, align 8, !tbaa !13
  %29513 = load double, ptr %62, align 8, !tbaa !13
  %29514 = call double @wasm_fabs(double noundef %29513)
  store double %29514, ptr %62, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %63, align 8, !tbaa !13
  %29515 = load double, ptr %62, align 8, !tbaa !13
  %29516 = load double, ptr %63, align 8, !tbaa !13
  %29517 = fcmp olt double %29515, %29516
  %29518 = zext i1 %29517 to i32
  store i32 %29518, ptr %47, align 4, !tbaa !9
  %29519 = load i32, ptr %47, align 4, !tbaa !9
  %29520 = icmp ne i32 %29519, 0
  br i1 %29520, label %29521, label %29558

29521:                                            ; preds = %29511
  %29522 = load double, ptr %44, align 8, !tbaa !13
  store double %29522, ptr %62, align 8, !tbaa !13
  %29523 = load double, ptr %62, align 8, !tbaa !13
  %29524 = load double, ptr %62, align 8, !tbaa !13
  %29525 = fcmp une double %29523, %29524
  %29526 = xor i1 %29525, true
  %29527 = xor i1 %29526, true
  %29528 = zext i1 %29527 to i32
  %29529 = sext i32 %29528 to i64
  %29530 = call i64 @llvm.expect.i64(i64 %29529, i64 0)
  %29531 = icmp ne i64 %29530, 0
  br i1 %29531, label %29532, label %29534

29532:                                            ; preds = %29521
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

29533:                                            ; No predecessors!
  br label %29556

29534:                                            ; preds = %29521
  %29535 = load double, ptr %62, align 8, !tbaa !13
  %29536 = fcmp ogt double %29535, 0xC1E0000000200000
  br i1 %29536, label %29537, label %29540

29537:                                            ; preds = %29534
  %29538 = load double, ptr %62, align 8, !tbaa !13
  %29539 = fcmp olt double %29538, 0x41E0000000000000
  br label %29540

29540:                                            ; preds = %29537, %29534
  %29541 = phi i1 [ false, %29534 ], [ %29539, %29537 ]
  %29542 = xor i1 %29541, true
  %29543 = xor i1 %29542, true
  %29544 = xor i1 %29543, true
  %29545 = zext i1 %29544 to i32
  %29546 = sext i32 %29545 to i64
  %29547 = call i64 @llvm.expect.i64(i64 %29546, i64 0)
  %29548 = icmp ne i64 %29547, 0
  br i1 %29548, label %29549, label %29551

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

29550:                                            ; No predecessors!
  br label %29554

29551:                                            ; preds = %29540
  %29552 = load double, ptr %62, align 8, !tbaa !13
  %29553 = fptosi double %29552 to i32
  br label %29554

29554:                                            ; preds = %29551, %29550
  %29555 = phi i32 [ 0, %29550 ], [ %29553, %29551 ]
  br label %29556

29556:                                            ; preds = %29554, %29533
  %29557 = phi i32 [ 0, %29533 ], [ %29555, %29554 ]
  store i32 %29557, ptr %47, align 4, !tbaa !9
  br label %29559

29558:                                            ; preds = %29511
  store i32 -2147483648, ptr %47, align 4, !tbaa !9
  br label %29559

29559:                                            ; preds = %29558, %29556
  %29560 = load i32, ptr %47, align 4, !tbaa !9
  %29561 = load i32, ptr %46, align 4, !tbaa !9
  %29562 = xor i32 %29561, %29560
  store i32 %29562, ptr %46, align 4, !tbaa !9
  %29563 = load i32, ptr %46, align 4, !tbaa !9
  %29564 = sitofp i32 %29563 to double
  store double %29564, ptr %61, align 8, !tbaa !13
  %29565 = load ptr, ptr %5, align 8, !tbaa !5
  %29566 = getelementptr inbounds %struct.w2c_hermes, ptr %29565, i32 0, i32 6
  %29567 = load i32, ptr %45, align 4, !tbaa !9
  %29568 = zext i32 %29567 to i64
  %29569 = add i64 %29568, 8
  %29570 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %29566, i64 noundef %29569, double noundef %29570)
  br label %29589

29571:                                            ; preds = %29290
  %29572 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29572, ptr %45, align 4, !tbaa !9
  %29573 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29573, ptr %46, align 4, !tbaa !9
  store i32 547, ptr %47, align 4, !tbaa !9
  %29574 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29574, ptr %48, align 4, !tbaa !9
  %29575 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %29575, ptr %58, align 8, !tbaa !11
  %29576 = load i64, ptr %58, align 8, !tbaa !11
  %29577 = trunc i64 %29576 to i32
  store i32 %29577, ptr %49, align 4, !tbaa !9
  %29578 = load ptr, ptr %5, align 8, !tbaa !5
  %29579 = load i32, ptr %48, align 4, !tbaa !9
  %29580 = load i32, ptr %49, align 4, !tbaa !9
  %29581 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %29578, i32 noundef %29579, i32 noundef %29580)
  store i32 %29581, ptr %48, align 4, !tbaa !9
  %29582 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %29582, ptr %49, align 4, !tbaa !9
  %29583 = load ptr, ptr %5, align 8, !tbaa !5
  %29584 = load i32, ptr %45, align 4, !tbaa !9
  %29585 = load i32, ptr %46, align 4, !tbaa !9
  %29586 = load i32, ptr %47, align 4, !tbaa !9
  %29587 = load i32, ptr %48, align 4, !tbaa !9
  %29588 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %29583, i32 noundef %29584, i32 noundef %29585, i32 noundef %29586, i32 noundef %29587, i32 noundef %29588)
  br label %29589

29589:                                            ; preds = %29571, %29559, %29438, %29411, %29283
  %29590 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %29590, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %29591 = load i32, ptr %46, align 4, !tbaa !9
  %29592 = load i32, ptr %45, align 4, !tbaa !9
  %29593 = add i32 %29592, %29591
  store i32 %29593, ptr %45, align 4, !tbaa !9
  %29594 = load i32, ptr %45, align 4, !tbaa !9
  %29595 = load ptr, ptr %5, align 8, !tbaa !5
  %29596 = getelementptr inbounds %struct.w2c_hermes, ptr %29595, i32 0, i32 3
  store i32 %29594, ptr %29596, align 8, !tbaa !15
  %29597 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29597, ptr %45, align 4, !tbaa !9
  %29598 = load ptr, ptr %5, align 8, !tbaa !5
  %29599 = getelementptr inbounds %struct.w2c_hermes, ptr %29598, i32 0, i32 6
  %29600 = load i32, ptr %45, align 4, !tbaa !9
  %29601 = zext i32 %29600 to i64
  %29602 = add i64 %29601, 5808
  %29603 = call i32 @i32_load(ptr noundef %29599, i64 noundef %29602)
  store i32 %29603, ptr %45, align 4, !tbaa !9
  %29604 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29604, ptr %6, align 4, !tbaa !9
  %29605 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29605, ptr %45, align 4, !tbaa !9
  %29606 = load ptr, ptr %5, align 8, !tbaa !5
  %29607 = getelementptr inbounds %struct.w2c_hermes, ptr %29606, i32 0, i32 6
  %29608 = load i32, ptr %45, align 4, !tbaa !9
  %29609 = zext i32 %29608 to i64
  %29610 = add i64 %29609, 304
  %29611 = call i32 @i32_load(ptr noundef %29607, i64 noundef %29610)
  store i32 %29611, ptr %45, align 4, !tbaa !9
  %29612 = load i32, ptr %45, align 4, !tbaa !9
  %29613 = icmp ne i32 %29612, 0
  %29614 = xor i1 %29613, true
  %29615 = zext i1 %29614 to i32
  store i32 %29615, ptr %45, align 4, !tbaa !9
  %29616 = load i32, ptr %45, align 4, !tbaa !9
  %29617 = icmp ne i32 %29616, 0
  br i1 %29617, label %29618, label %29619

29618:                                            ; preds = %29589
  br label %43136

29619:                                            ; preds = %29589
  %29620 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29620, ptr %45, align 4, !tbaa !9
  %29621 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29621, ptr %46, align 4, !tbaa !9
  %29622 = load ptr, ptr %5, align 8, !tbaa !5
  %29623 = getelementptr inbounds %struct.w2c_hermes, ptr %29622, i32 0, i32 6
  %29624 = load i32, ptr %46, align 4, !tbaa !9
  %29625 = zext i32 %29624 to i64
  %29626 = add i64 %29625, 1
  %29627 = call i32 @i32_load8_u(ptr noundef %29623, i64 noundef %29626)
  store i32 %29627, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29628 = load i32, ptr %47, align 4, !tbaa !9
  %29629 = and i32 %29628, 31
  %29630 = load i32, ptr %46, align 4, !tbaa !9
  %29631 = shl i32 %29630, %29629
  store i32 %29631, ptr %46, align 4, !tbaa !9
  %29632 = load i32, ptr %46, align 4, !tbaa !9
  %29633 = load i32, ptr %45, align 4, !tbaa !9
  %29634 = add i32 %29633, %29632
  store i32 %29634, ptr %45, align 4, !tbaa !9
  %29635 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29635, ptr %46, align 4, !tbaa !9
  %29636 = load ptr, ptr %5, align 8, !tbaa !5
  %29637 = getelementptr inbounds %struct.w2c_hermes, ptr %29636, i32 0, i32 6
  %29638 = load i32, ptr %46, align 4, !tbaa !9
  %29639 = zext i32 %29638 to i64
  %29640 = add i64 %29639, 312
  %29641 = call i64 @i64_load(ptr noundef %29637, i64 noundef %29640)
  store i64 %29641, ptr %55, align 8, !tbaa !11
  %29642 = load ptr, ptr %5, align 8, !tbaa !5
  %29643 = getelementptr inbounds %struct.w2c_hermes, ptr %29642, i32 0, i32 6
  %29644 = load i32, ptr %45, align 4, !tbaa !9
  %29645 = zext i32 %29644 to i64
  %29646 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %29643, i64 noundef %29645, i64 noundef %29646)
  %29647 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29647, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %29648 = load ptr, ptr %5, align 8, !tbaa !5
  %29649 = getelementptr inbounds %struct.w2c_hermes, ptr %29648, i32 0, i32 6
  %29650 = load i32, ptr %45, align 4, !tbaa !9
  %29651 = zext i32 %29650 to i64
  %29652 = add i64 %29651, 516
  %29653 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29649, i64 noundef %29652, i32 noundef %29653)
  %29654 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29654, ptr %45, align 4, !tbaa !9
  %29655 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %29655, ptr %46, align 4, !tbaa !9
  %29656 = load ptr, ptr %5, align 8, !tbaa !5
  %29657 = getelementptr inbounds %struct.w2c_hermes, ptr %29656, i32 0, i32 6
  %29658 = load i32, ptr %45, align 4, !tbaa !9
  %29659 = zext i32 %29658 to i64
  %29660 = add i64 %29659, 512
  %29661 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29657, i64 noundef %29660, i32 noundef %29661)
  %29662 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29662, ptr %45, align 4, !tbaa !9
  %29663 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %29663, ptr %46, align 4, !tbaa !9
  %29664 = load ptr, ptr %5, align 8, !tbaa !5
  %29665 = getelementptr inbounds %struct.w2c_hermes, ptr %29664, i32 0, i32 6
  %29666 = load i32, ptr %45, align 4, !tbaa !9
  %29667 = zext i32 %29666 to i64
  %29668 = add i64 %29667, 508
  %29669 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29665, i64 noundef %29668, i32 noundef %29669)
  %29670 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29670, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %29671 = load i32, ptr %46, align 4, !tbaa !9
  %29672 = load i32, ptr %45, align 4, !tbaa !9
  %29673 = add i32 %29672, %29671
  store i32 %29673, ptr %45, align 4, !tbaa !9
  %29674 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29674, ptr %6, align 4, !tbaa !9
  br label %2945

29675:                                            ; preds = %3103
  %29676 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29676, ptr %45, align 4, !tbaa !9
  %29677 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29677, ptr %46, align 4, !tbaa !9
  %29678 = load ptr, ptr %5, align 8, !tbaa !5
  %29679 = getelementptr inbounds %struct.w2c_hermes, ptr %29678, i32 0, i32 6
  %29680 = load i32, ptr %46, align 4, !tbaa !9
  %29681 = zext i32 %29680 to i64
  %29682 = add i64 %29681, 2
  %29683 = call i32 @i32_load8_u(ptr noundef %29679, i64 noundef %29682)
  store i32 %29683, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29684 = load i32, ptr %47, align 4, !tbaa !9
  %29685 = and i32 %29684, 31
  %29686 = load i32, ptr %46, align 4, !tbaa !9
  %29687 = shl i32 %29686, %29685
  store i32 %29687, ptr %46, align 4, !tbaa !9
  %29688 = load i32, ptr %46, align 4, !tbaa !9
  %29689 = load i32, ptr %45, align 4, !tbaa !9
  %29690 = add i32 %29689, %29688
  store i32 %29690, ptr %45, align 4, !tbaa !9
  %29691 = load ptr, ptr %5, align 8, !tbaa !5
  %29692 = getelementptr inbounds %struct.w2c_hermes, ptr %29691, i32 0, i32 6
  %29693 = load i32, ptr %45, align 4, !tbaa !9
  %29694 = zext i32 %29693 to i64
  %29695 = call i64 @i64_load(ptr noundef %29692, i64 noundef %29694)
  store i64 %29695, ptr %54, align 8, !tbaa !11
  %29696 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %29696, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %29697 = load i64, ptr %54, align 8, !tbaa !11
  %29698 = load i64, ptr %55, align 8, !tbaa !11
  %29699 = icmp ugt i64 %29697, %29698
  %29700 = zext i1 %29699 to i32
  store i32 %29700, ptr %45, align 4, !tbaa !9
  %29701 = load i32, ptr %45, align 4, !tbaa !9
  %29702 = icmp ne i32 %29701, 0
  br i1 %29702, label %29703, label %29704

29703:                                            ; preds = %29675
  br label %29926

29704:                                            ; preds = %29675
  %29705 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29705, ptr %45, align 4, !tbaa !9
  %29706 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29706, ptr %46, align 4, !tbaa !9
  %29707 = load ptr, ptr %5, align 8, !tbaa !5
  %29708 = getelementptr inbounds %struct.w2c_hermes, ptr %29707, i32 0, i32 6
  %29709 = load i32, ptr %46, align 4, !tbaa !9
  %29710 = zext i32 %29709 to i64
  %29711 = add i64 %29710, 3
  %29712 = call i32 @i32_load8_u(ptr noundef %29708, i64 noundef %29711)
  store i32 %29712, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29713 = load i32, ptr %47, align 4, !tbaa !9
  %29714 = and i32 %29713, 31
  %29715 = load i32, ptr %46, align 4, !tbaa !9
  %29716 = shl i32 %29715, %29714
  store i32 %29716, ptr %46, align 4, !tbaa !9
  %29717 = load i32, ptr %46, align 4, !tbaa !9
  %29718 = load i32, ptr %45, align 4, !tbaa !9
  %29719 = add i32 %29718, %29717
  store i32 %29719, ptr %45, align 4, !tbaa !9
  %29720 = load ptr, ptr %5, align 8, !tbaa !5
  %29721 = getelementptr inbounds %struct.w2c_hermes, ptr %29720, i32 0, i32 6
  %29722 = load i32, ptr %45, align 4, !tbaa !9
  %29723 = zext i32 %29722 to i64
  %29724 = call i64 @i64_load(ptr noundef %29721, i64 noundef %29723)
  store i64 %29724, ptr %54, align 8, !tbaa !11
  %29725 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %29725, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %29726 = load i64, ptr %54, align 8, !tbaa !11
  %29727 = load i64, ptr %55, align 8, !tbaa !11
  %29728 = icmp ugt i64 %29726, %29727
  %29729 = zext i1 %29728 to i32
  store i32 %29729, ptr %45, align 4, !tbaa !9
  %29730 = load i32, ptr %45, align 4, !tbaa !9
  %29731 = icmp ne i32 %29730, 0
  br i1 %29731, label %29732, label %29733

29732:                                            ; preds = %29704
  br label %29926

29733:                                            ; preds = %29704
  %29734 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %29734, ptr %54, align 8, !tbaa !11
  %29735 = load i64, ptr %54, align 8, !tbaa !11
  %29736 = call double @f64_reinterpret_i64(i64 noundef %29735)
  store double %29736, ptr %60, align 8, !tbaa !13
  %29737 = load double, ptr %60, align 8, !tbaa !13
  store double %29737, ptr %43, align 8, !tbaa !13
  %29738 = load double, ptr %60, align 8, !tbaa !13
  %29739 = call double @wasm_fabs(double noundef %29738)
  store double %29739, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %29740 = load double, ptr %60, align 8, !tbaa !13
  %29741 = load double, ptr %61, align 8, !tbaa !13
  %29742 = fcmp olt double %29740, %29741
  %29743 = zext i1 %29742 to i32
  store i32 %29743, ptr %45, align 4, !tbaa !9
  %29744 = load i32, ptr %45, align 4, !tbaa !9
  %29745 = icmp ne i32 %29744, 0
  br i1 %29745, label %29746, label %29783

29746:                                            ; preds = %29733
  %29747 = load double, ptr %43, align 8, !tbaa !13
  store double %29747, ptr %60, align 8, !tbaa !13
  %29748 = load double, ptr %60, align 8, !tbaa !13
  %29749 = load double, ptr %60, align 8, !tbaa !13
  %29750 = fcmp une double %29748, %29749
  %29751 = xor i1 %29750, true
  %29752 = xor i1 %29751, true
  %29753 = zext i1 %29752 to i32
  %29754 = sext i32 %29753 to i64
  %29755 = call i64 @llvm.expect.i64(i64 %29754, i64 0)
  %29756 = icmp ne i64 %29755, 0
  br i1 %29756, label %29757, label %29759

29757:                                            ; preds = %29746
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

29758:                                            ; No predecessors!
  br label %29781

29759:                                            ; preds = %29746
  %29760 = load double, ptr %60, align 8, !tbaa !13
  %29761 = fcmp ogt double %29760, 0xC1E0000000200000
  br i1 %29761, label %29762, label %29765

29762:                                            ; preds = %29759
  %29763 = load double, ptr %60, align 8, !tbaa !13
  %29764 = fcmp olt double %29763, 0x41E0000000000000
  br label %29765

29765:                                            ; preds = %29762, %29759
  %29766 = phi i1 [ false, %29759 ], [ %29764, %29762 ]
  %29767 = xor i1 %29766, true
  %29768 = xor i1 %29767, true
  %29769 = xor i1 %29768, true
  %29770 = zext i1 %29769 to i32
  %29771 = sext i32 %29770 to i64
  %29772 = call i64 @llvm.expect.i64(i64 %29771, i64 0)
  %29773 = icmp ne i64 %29772, 0
  br i1 %29773, label %29774, label %29776

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

29775:                                            ; No predecessors!
  br label %29779

29776:                                            ; preds = %29765
  %29777 = load double, ptr %60, align 8, !tbaa !13
  %29778 = fptosi double %29777 to i32
  br label %29779

29779:                                            ; preds = %29776, %29775
  %29780 = phi i32 [ 0, %29775 ], [ %29778, %29776 ]
  br label %29781

29781:                                            ; preds = %29779, %29758
  %29782 = phi i32 [ 0, %29758 ], [ %29780, %29779 ]
  store i32 %29782, ptr %45, align 4, !tbaa !9
  br label %29784

29783:                                            ; preds = %29733
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %29784

29784:                                            ; preds = %29783, %29781
  %29785 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29785, ptr %12, align 4, !tbaa !9
  %29786 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29786, ptr %45, align 4, !tbaa !9
  %29787 = load i32, ptr %45, align 4, !tbaa !9
  %29788 = sitofp i32 %29787 to double
  store double %29788, ptr %60, align 8, !tbaa !13
  %29789 = load double, ptr %43, align 8, !tbaa !13
  store double %29789, ptr %61, align 8, !tbaa !13
  %29790 = load double, ptr %60, align 8, !tbaa !13
  %29791 = load double, ptr %61, align 8, !tbaa !13
  %29792 = fcmp oeq double %29790, %29791
  %29793 = zext i1 %29792 to i32
  store i32 %29793, ptr %45, align 4, !tbaa !9
  %29794 = load i32, ptr %45, align 4, !tbaa !9
  %29795 = icmp ne i32 %29794, 0
  br i1 %29795, label %29796, label %29800

29796:                                            ; preds = %29784
  %29797 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %29797, ptr %54, align 8, !tbaa !11
  %29798 = load i64, ptr %54, align 8, !tbaa !11
  %29799 = call double @f64_reinterpret_i64(i64 noundef %29798)
  store double %29799, ptr %60, align 8, !tbaa !13
  br label %29826

29800:                                            ; preds = %29784
  %29801 = load double, ptr %43, align 8, !tbaa !13
  store double %29801, ptr %60, align 8, !tbaa !13
  %29802 = load ptr, ptr %5, align 8, !tbaa !5
  %29803 = load double, ptr %60, align 8, !tbaa !13
  %29804 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %29802, double noundef %29803)
  store i32 %29804, ptr %45, align 4, !tbaa !9
  %29805 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29805, ptr %12, align 4, !tbaa !9
  %29806 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29806, ptr %45, align 4, !tbaa !9
  %29807 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29807, ptr %46, align 4, !tbaa !9
  %29808 = load ptr, ptr %5, align 8, !tbaa !5
  %29809 = getelementptr inbounds %struct.w2c_hermes, ptr %29808, i32 0, i32 6
  %29810 = load i32, ptr %46, align 4, !tbaa !9
  %29811 = zext i32 %29810 to i64
  %29812 = add i64 %29811, 3
  %29813 = call i32 @i32_load8_u(ptr noundef %29809, i64 noundef %29812)
  store i32 %29813, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29814 = load i32, ptr %47, align 4, !tbaa !9
  %29815 = and i32 %29814, 31
  %29816 = load i32, ptr %46, align 4, !tbaa !9
  %29817 = shl i32 %29816, %29815
  store i32 %29817, ptr %46, align 4, !tbaa !9
  %29818 = load i32, ptr %46, align 4, !tbaa !9
  %29819 = load i32, ptr %45, align 4, !tbaa !9
  %29820 = add i32 %29819, %29818
  store i32 %29820, ptr %45, align 4, !tbaa !9
  %29821 = load ptr, ptr %5, align 8, !tbaa !5
  %29822 = getelementptr inbounds %struct.w2c_hermes, ptr %29821, i32 0, i32 6
  %29823 = load i32, ptr %45, align 4, !tbaa !9
  %29824 = zext i32 %29823 to i64
  %29825 = call double @f64_load(ptr noundef %29822, i64 noundef %29824)
  store double %29825, ptr %60, align 8, !tbaa !13
  br label %29826

29826:                                            ; preds = %29800, %29796
  %29827 = load double, ptr %60, align 8, !tbaa !13
  store double %29827, ptr %43, align 8, !tbaa !13
  %29828 = load double, ptr %60, align 8, !tbaa !13
  %29829 = call double @wasm_fabs(double noundef %29828)
  store double %29829, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %29830 = load double, ptr %60, align 8, !tbaa !13
  %29831 = load double, ptr %61, align 8, !tbaa !13
  %29832 = fcmp olt double %29830, %29831
  %29833 = zext i1 %29832 to i32
  store i32 %29833, ptr %45, align 4, !tbaa !9
  %29834 = load i32, ptr %45, align 4, !tbaa !9
  %29835 = icmp ne i32 %29834, 0
  br i1 %29835, label %29836, label %29873

29836:                                            ; preds = %29826
  %29837 = load double, ptr %43, align 8, !tbaa !13
  store double %29837, ptr %60, align 8, !tbaa !13
  %29838 = load double, ptr %60, align 8, !tbaa !13
  %29839 = load double, ptr %60, align 8, !tbaa !13
  %29840 = fcmp une double %29838, %29839
  %29841 = xor i1 %29840, true
  %29842 = xor i1 %29841, true
  %29843 = zext i1 %29842 to i32
  %29844 = sext i32 %29843 to i64
  %29845 = call i64 @llvm.expect.i64(i64 %29844, i64 0)
  %29846 = icmp ne i64 %29845, 0
  br i1 %29846, label %29847, label %29849

29847:                                            ; preds = %29836
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

29848:                                            ; No predecessors!
  br label %29871

29849:                                            ; preds = %29836
  %29850 = load double, ptr %60, align 8, !tbaa !13
  %29851 = fcmp ogt double %29850, 0xC1E0000000200000
  br i1 %29851, label %29852, label %29855

29852:                                            ; preds = %29849
  %29853 = load double, ptr %60, align 8, !tbaa !13
  %29854 = fcmp olt double %29853, 0x41E0000000000000
  br label %29855

29855:                                            ; preds = %29852, %29849
  %29856 = phi i1 [ false, %29849 ], [ %29854, %29852 ]
  %29857 = xor i1 %29856, true
  %29858 = xor i1 %29857, true
  %29859 = xor i1 %29858, true
  %29860 = zext i1 %29859 to i32
  %29861 = sext i32 %29860 to i64
  %29862 = call i64 @llvm.expect.i64(i64 %29861, i64 0)
  %29863 = icmp ne i64 %29862, 0
  br i1 %29863, label %29864, label %29866

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

29865:                                            ; No predecessors!
  br label %29869

29866:                                            ; preds = %29855
  %29867 = load double, ptr %60, align 8, !tbaa !13
  %29868 = fptosi double %29867 to i32
  br label %29869

29869:                                            ; preds = %29866, %29865
  %29870 = phi i32 [ 0, %29865 ], [ %29868, %29866 ]
  br label %29871

29871:                                            ; preds = %29869, %29848
  %29872 = phi i32 [ 0, %29848 ], [ %29870, %29869 ]
  store i32 %29872, ptr %45, align 4, !tbaa !9
  br label %29874

29873:                                            ; preds = %29826
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %29874

29874:                                            ; preds = %29873, %29871
  %29875 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29875, ptr %7, align 4, !tbaa !9
  %29876 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29876, ptr %45, align 4, !tbaa !9
  %29877 = load i32, ptr %45, align 4, !tbaa !9
  %29878 = sitofp i32 %29877 to double
  store double %29878, ptr %60, align 8, !tbaa !13
  %29879 = load double, ptr %43, align 8, !tbaa !13
  store double %29879, ptr %61, align 8, !tbaa !13
  %29880 = load double, ptr %60, align 8, !tbaa !13
  %29881 = load double, ptr %61, align 8, !tbaa !13
  %29882 = fcmp une double %29880, %29881
  %29883 = zext i1 %29882 to i32
  store i32 %29883, ptr %45, align 4, !tbaa !9
  %29884 = load i32, ptr %45, align 4, !tbaa !9
  %29885 = icmp ne i32 %29884, 0
  br i1 %29885, label %29886, label %29892

29886:                                            ; preds = %29874
  %29887 = load double, ptr %43, align 8, !tbaa !13
  store double %29887, ptr %60, align 8, !tbaa !13
  %29888 = load ptr, ptr %5, align 8, !tbaa !5
  %29889 = load double, ptr %60, align 8, !tbaa !13
  %29890 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %29888, double noundef %29889)
  store i32 %29890, ptr %45, align 4, !tbaa !9
  %29891 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29891, ptr %7, align 4, !tbaa !9
  br label %29892

29892:                                            ; preds = %29886, %29874
  %29893 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29893, ptr %45, align 4, !tbaa !9
  %29894 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29894, ptr %46, align 4, !tbaa !9
  %29895 = load ptr, ptr %5, align 8, !tbaa !5
  %29896 = getelementptr inbounds %struct.w2c_hermes, ptr %29895, i32 0, i32 6
  %29897 = load i32, ptr %46, align 4, !tbaa !9
  %29898 = zext i32 %29897 to i64
  %29899 = add i64 %29898, 1
  %29900 = call i32 @i32_load8_u(ptr noundef %29896, i64 noundef %29899)
  store i32 %29900, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29901 = load i32, ptr %47, align 4, !tbaa !9
  %29902 = and i32 %29901, 31
  %29903 = load i32, ptr %46, align 4, !tbaa !9
  %29904 = shl i32 %29903, %29902
  store i32 %29904, ptr %46, align 4, !tbaa !9
  %29905 = load i32, ptr %46, align 4, !tbaa !9
  %29906 = load i32, ptr %45, align 4, !tbaa !9
  %29907 = add i32 %29906, %29905
  store i32 %29907, ptr %45, align 4, !tbaa !9
  %29908 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %29908, ptr %46, align 4, !tbaa !9
  %29909 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29909, ptr %47, align 4, !tbaa !9
  %29910 = load i32, ptr %47, align 4, !tbaa !9
  %29911 = and i32 %29910, 31
  %29912 = load i32, ptr %46, align 4, !tbaa !9
  %29913 = shl i32 %29912, %29911
  store i32 %29913, ptr %46, align 4, !tbaa !9
  %29914 = load i32, ptr %46, align 4, !tbaa !9
  %29915 = sitofp i32 %29914 to double
  store double %29915, ptr %61, align 8, !tbaa !13
  %29916 = load ptr, ptr %5, align 8, !tbaa !5
  %29917 = getelementptr inbounds %struct.w2c_hermes, ptr %29916, i32 0, i32 6
  %29918 = load i32, ptr %45, align 4, !tbaa !9
  %29919 = zext i32 %29918 to i64
  %29920 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %29917, i64 noundef %29919, double noundef %29920)
  %29921 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29921, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %29922 = load i32, ptr %46, align 4, !tbaa !9
  %29923 = load i32, ptr %45, align 4, !tbaa !9
  %29924 = add i32 %29923, %29922
  store i32 %29924, ptr %45, align 4, !tbaa !9
  %29925 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29925, ptr %6, align 4, !tbaa !9
  br label %2945

29926:                                            ; preds = %29732, %29703
  %29927 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29927, ptr %45, align 4, !tbaa !9
  %29928 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29928, ptr %46, align 4, !tbaa !9
  %29929 = load ptr, ptr %5, align 8, !tbaa !5
  %29930 = getelementptr inbounds %struct.w2c_hermes, ptr %29929, i32 0, i32 6
  %29931 = load i32, ptr %45, align 4, !tbaa !9
  %29932 = zext i32 %29931 to i64
  %29933 = add i64 %29932, 5808
  %29934 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %29930, i64 noundef %29933, i32 noundef %29934)
  %29935 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %29935, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %29936 = load i32, ptr %46, align 4, !tbaa !9
  %29937 = load i32, ptr %45, align 4, !tbaa !9
  %29938 = add i32 %29937, %29936
  store i32 %29938, ptr %45, align 4, !tbaa !9
  %29939 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29939, ptr %13, align 4, !tbaa !9
  %29940 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29940, ptr %45, align 4, !tbaa !9
  %29941 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29941, ptr %46, align 4, !tbaa !9
  %29942 = load ptr, ptr %5, align 8, !tbaa !5
  %29943 = getelementptr inbounds %struct.w2c_hermes, ptr %29942, i32 0, i32 6
  %29944 = load i32, ptr %46, align 4, !tbaa !9
  %29945 = zext i32 %29944 to i64
  %29946 = add i64 %29945, 2
  %29947 = call i32 @i32_load8_u(ptr noundef %29943, i64 noundef %29946)
  store i32 %29947, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29948 = load i32, ptr %47, align 4, !tbaa !9
  %29949 = and i32 %29948, 31
  %29950 = load i32, ptr %46, align 4, !tbaa !9
  %29951 = shl i32 %29950, %29949
  store i32 %29951, ptr %46, align 4, !tbaa !9
  %29952 = load i32, ptr %46, align 4, !tbaa !9
  %29953 = load i32, ptr %45, align 4, !tbaa !9
  %29954 = add i32 %29953, %29952
  store i32 %29954, ptr %45, align 4, !tbaa !9
  %29955 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29955, ptr %7, align 4, !tbaa !9
  %29956 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %29956, ptr %45, align 4, !tbaa !9
  %29957 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %29957, ptr %46, align 4, !tbaa !9
  %29958 = load ptr, ptr %5, align 8, !tbaa !5
  %29959 = getelementptr inbounds %struct.w2c_hermes, ptr %29958, i32 0, i32 6
  %29960 = load i32, ptr %46, align 4, !tbaa !9
  %29961 = zext i32 %29960 to i64
  %29962 = add i64 %29961, 3
  %29963 = call i32 @i32_load8_u(ptr noundef %29959, i64 noundef %29962)
  store i32 %29963, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %29964 = load i32, ptr %47, align 4, !tbaa !9
  %29965 = and i32 %29964, 31
  %29966 = load i32, ptr %46, align 4, !tbaa !9
  %29967 = shl i32 %29966, %29965
  store i32 %29967, ptr %46, align 4, !tbaa !9
  %29968 = load i32, ptr %46, align 4, !tbaa !9
  %29969 = load i32, ptr %45, align 4, !tbaa !9
  %29970 = add i32 %29969, %29968
  store i32 %29970, ptr %45, align 4, !tbaa !9
  %29971 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29971, ptr %8, align 4, !tbaa !9
  %29972 = load ptr, ptr %5, align 8, !tbaa !5
  %29973 = getelementptr inbounds %struct.w2c_hermes, ptr %29972, i32 0, i32 3
  %29974 = load i32, ptr %29973, align 8, !tbaa !15
  store i32 %29974, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %29975 = load i32, ptr %46, align 4, !tbaa !9
  %29976 = load i32, ptr %45, align 4, !tbaa !9
  %29977 = sub i32 %29976, %29975
  store i32 %29977, ptr %45, align 4, !tbaa !9
  %29978 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %29978, ptr %14, align 4, !tbaa !9
  %29979 = load i32, ptr %45, align 4, !tbaa !9
  %29980 = load ptr, ptr %5, align 8, !tbaa !5
  %29981 = getelementptr inbounds %struct.w2c_hermes, ptr %29980, i32 0, i32 3
  store i32 %29979, ptr %29981, align 8, !tbaa !15
  %29982 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %29982, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %29983 = load i32, ptr %46, align 4, !tbaa !9
  %29984 = load i32, ptr %45, align 4, !tbaa !9
  %29985 = add i32 %29984, %29983
  store i32 %29985, ptr %45, align 4, !tbaa !9
  %29986 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %29986, ptr %46, align 4, !tbaa !9
  %29987 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %29987, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %29988 = load ptr, ptr %5, align 8, !tbaa !5
  %29989 = load i32, ptr %45, align 4, !tbaa !9
  %29990 = load i32, ptr %46, align 4, !tbaa !9
  %29991 = load i32, ptr %47, align 4, !tbaa !9
  %29992 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %29988, i32 noundef %29989, i32 noundef %29990, i32 noundef %29991, i32 noundef %29992)
  %29993 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %29993, ptr %45, align 4, !tbaa !9
  %29994 = load ptr, ptr %5, align 8, !tbaa !5
  %29995 = getelementptr inbounds %struct.w2c_hermes, ptr %29994, i32 0, i32 6
  %29996 = load i32, ptr %45, align 4, !tbaa !9
  %29997 = zext i32 %29996 to i64
  %29998 = add i64 %29997, 16
  %29999 = call i32 @i32_load(ptr noundef %29995, i64 noundef %29998)
  store i32 %29999, ptr %45, align 4, !tbaa !9
  %30000 = load i32, ptr %45, align 4, !tbaa !9
  %30001 = icmp ne i32 %30000, 0
  %30002 = xor i1 %30001, true
  %30003 = zext i1 %30002 to i32
  store i32 %30003, ptr %45, align 4, !tbaa !9
  %30004 = load i32, ptr %45, align 4, !tbaa !9
  %30005 = icmp ne i32 %30004, 0
  br i1 %30005, label %30006, label %30013

30006:                                            ; preds = %29926
  %30007 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30007, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30008 = load ptr, ptr %5, align 8, !tbaa !5
  %30009 = getelementptr inbounds %struct.w2c_hermes, ptr %30008, i32 0, i32 6
  %30010 = load i32, ptr %45, align 4, !tbaa !9
  %30011 = zext i32 %30010 to i64
  %30012 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30009, i64 noundef %30011, i32 noundef %30012)
  br label %30338

30013:                                            ; preds = %29926
  %30014 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30014, ptr %45, align 4, !tbaa !9
  %30015 = load ptr, ptr %5, align 8, !tbaa !5
  %30016 = getelementptr inbounds %struct.w2c_hermes, ptr %30015, i32 0, i32 6
  %30017 = load i32, ptr %45, align 4, !tbaa !9
  %30018 = zext i32 %30017 to i64
  %30019 = add i64 %30018, 24
  %30020 = call i64 @i64_load(ptr noundef %30016, i64 noundef %30019)
  store i64 %30020, ptr %54, align 8, !tbaa !11
  %30021 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %30021, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %30022 = load i64, ptr %54, align 8, !tbaa !11
  %30023 = load i64, ptr %55, align 8, !tbaa !11
  %30024 = and i64 %30023, 63
  %30025 = ashr i64 %30022, %30024
  store i64 %30025, ptr %54, align 8, !tbaa !11
  %30026 = load i64, ptr %54, align 8, !tbaa !11
  %30027 = trunc i64 %30026 to i32
  store i32 %30027, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %30028 = load i32, ptr %45, align 4, !tbaa !9
  %30029 = load i32, ptr %46, align 4, !tbaa !9
  %30030 = icmp ne i32 %30028, %30029
  %30031 = zext i1 %30030 to i32
  store i32 %30031, ptr %45, align 4, !tbaa !9
  %30032 = load i32, ptr %45, align 4, !tbaa !9
  %30033 = icmp ne i32 %30032, 0
  br i1 %30033, label %30034, label %30320

30034:                                            ; preds = %30013
  %30035 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30035, ptr %45, align 4, !tbaa !9
  %30036 = load ptr, ptr %5, align 8, !tbaa !5
  %30037 = getelementptr inbounds %struct.w2c_hermes, ptr %30036, i32 0, i32 6
  %30038 = load i32, ptr %45, align 4, !tbaa !9
  %30039 = zext i32 %30038 to i64
  %30040 = add i64 %30039, 4
  %30041 = call i32 @i32_load(ptr noundef %30037, i64 noundef %30040)
  store i32 %30041, ptr %45, align 4, !tbaa !9
  %30042 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30042, ptr %6, align 4, !tbaa !9
  %30043 = load ptr, ptr %5, align 8, !tbaa !5
  %30044 = getelementptr inbounds %struct.w2c_hermes, ptr %30043, i32 0, i32 6
  %30045 = load i32, ptr %45, align 4, !tbaa !9
  %30046 = zext i32 %30045 to i64
  %30047 = add i64 %30046, 164
  %30048 = call i32 @i32_load(ptr noundef %30044, i64 noundef %30047)
  store i32 %30048, ptr %45, align 4, !tbaa !9
  %30049 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30049, ptr %12, align 4, !tbaa !9
  %30050 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30050, ptr %46, align 4, !tbaa !9
  %30051 = load ptr, ptr %5, align 8, !tbaa !5
  %30052 = getelementptr inbounds %struct.w2c_hermes, ptr %30051, i32 0, i32 6
  %30053 = load i32, ptr %46, align 4, !tbaa !9
  %30054 = zext i32 %30053 to i64
  %30055 = add i64 %30054, 168
  %30056 = call i32 @i32_load(ptr noundef %30052, i64 noundef %30055)
  store i32 %30056, ptr %46, align 4, !tbaa !9
  %30057 = load i32, ptr %45, align 4, !tbaa !9
  %30058 = load i32, ptr %46, align 4, !tbaa !9
  %30059 = icmp ult i32 %30057, %30058
  %30060 = zext i1 %30059 to i32
  store i32 %30060, ptr %45, align 4, !tbaa !9
  %30061 = load i32, ptr %45, align 4, !tbaa !9
  %30062 = icmp ne i32 %30061, 0
  br i1 %30062, label %30063, label %30082

30063:                                            ; preds = %30034
  %30064 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30064, ptr %45, align 4, !tbaa !9
  %30065 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30065, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %30066 = load i32, ptr %47, align 4, !tbaa !9
  %30067 = load i32, ptr %46, align 4, !tbaa !9
  %30068 = add i32 %30067, %30066
  store i32 %30068, ptr %46, align 4, !tbaa !9
  %30069 = load ptr, ptr %5, align 8, !tbaa !5
  %30070 = getelementptr inbounds %struct.w2c_hermes, ptr %30069, i32 0, i32 6
  %30071 = load i32, ptr %45, align 4, !tbaa !9
  %30072 = zext i32 %30071 to i64
  %30073 = add i64 %30072, 164
  %30074 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30070, i64 noundef %30073, i32 noundef %30074)
  %30075 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30075, ptr %45, align 4, !tbaa !9
  %30076 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30076, ptr %55, align 8, !tbaa !11
  %30077 = load ptr, ptr %5, align 8, !tbaa !5
  %30078 = getelementptr inbounds %struct.w2c_hermes, ptr %30077, i32 0, i32 6
  %30079 = load i32, ptr %45, align 4, !tbaa !9
  %30080 = zext i32 %30079 to i64
  %30081 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %30078, i64 noundef %30080, i64 noundef %30081)
  br label %30090

30082:                                            ; preds = %30034
  %30083 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30083, ptr %45, align 4, !tbaa !9
  %30084 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30084, ptr %55, align 8, !tbaa !11
  %30085 = load ptr, ptr %5, align 8, !tbaa !5
  %30086 = load i32, ptr %45, align 4, !tbaa !9
  %30087 = load i64, ptr %55, align 8, !tbaa !11
  %30088 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %30085, i32 noundef %30086, i64 noundef %30087)
  store i32 %30088, ptr %45, align 4, !tbaa !9
  %30089 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30089, ptr %12, align 4, !tbaa !9
  br label %30090

30090:                                            ; preds = %30082, %30063
  %30091 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30091, ptr %45, align 4, !tbaa !9
  %30092 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30092, ptr %46, align 4, !tbaa !9
  %30093 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30093, ptr %47, align 4, !tbaa !9
  %30094 = load ptr, ptr %5, align 8, !tbaa !5
  %30095 = load i32, ptr %45, align 4, !tbaa !9
  %30096 = load i32, ptr %46, align 4, !tbaa !9
  %30097 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %30094, i32 noundef %30095, i32 noundef %30096, i32 noundef %30097)
  %30098 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30098, ptr %45, align 4, !tbaa !9
  %30099 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30099, ptr %46, align 4, !tbaa !9
  %30100 = load ptr, ptr %5, align 8, !tbaa !5
  %30101 = getelementptr inbounds %struct.w2c_hermes, ptr %30100, i32 0, i32 6
  %30102 = load i32, ptr %46, align 4, !tbaa !9
  %30103 = zext i32 %30102 to i64
  %30104 = call i32 @i32_load(ptr noundef %30101, i64 noundef %30103)
  store i32 %30104, ptr %46, align 4, !tbaa !9
  %30105 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %30105, ptr %6, align 4, !tbaa !9
  %30106 = load ptr, ptr %5, align 8, !tbaa !5
  %30107 = getelementptr inbounds %struct.w2c_hermes, ptr %30106, i32 0, i32 6
  %30108 = load i32, ptr %45, align 4, !tbaa !9
  %30109 = zext i32 %30108 to i64
  %30110 = add i64 %30109, 16
  %30111 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30107, i64 noundef %30110, i32 noundef %30111)
  %30112 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30112, ptr %45, align 4, !tbaa !9
  %30113 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30113, ptr %46, align 4, !tbaa !9
  %30114 = load ptr, ptr %5, align 8, !tbaa !5
  %30115 = getelementptr inbounds %struct.w2c_hermes, ptr %30114, i32 0, i32 6
  %30116 = load i32, ptr %46, align 4, !tbaa !9
  %30117 = zext i32 %30116 to i64
  %30118 = add i64 %30117, 8
  %30119 = call i64 @i64_load(ptr noundef %30115, i64 noundef %30118)
  store i64 %30119, ptr %55, align 8, !tbaa !11
  %30120 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %30120, ptr %39, align 8, !tbaa !11
  %30121 = load ptr, ptr %5, align 8, !tbaa !5
  %30122 = getelementptr inbounds %struct.w2c_hermes, ptr %30121, i32 0, i32 6
  %30123 = load i32, ptr %45, align 4, !tbaa !9
  %30124 = zext i32 %30123 to i64
  %30125 = add i64 %30124, 24
  %30126 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %30122, i64 noundef %30125, i64 noundef %30126)
  %30127 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30127, ptr %45, align 4, !tbaa !9
  %30128 = load i32, ptr %45, align 4, !tbaa !9
  %30129 = icmp ne i32 %30128, 0
  %30130 = xor i1 %30129, true
  %30131 = zext i1 %30130 to i32
  store i32 %30131, ptr %45, align 4, !tbaa !9
  %30132 = load i32, ptr %45, align 4, !tbaa !9
  %30133 = icmp ne i32 %30132, 0
  br i1 %30133, label %30134, label %30141

30134:                                            ; preds = %30090
  %30135 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30135, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30136 = load ptr, ptr %5, align 8, !tbaa !5
  %30137 = getelementptr inbounds %struct.w2c_hermes, ptr %30136, i32 0, i32 6
  %30138 = load i32, ptr %45, align 4, !tbaa !9
  %30139 = zext i32 %30138 to i64
  %30140 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30137, i64 noundef %30139, i32 noundef %30140)
  br label %30338

30141:                                            ; preds = %30090
  %30142 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30142, ptr %54, align 8, !tbaa !11
  %30143 = load i64, ptr %54, align 8, !tbaa !11
  %30144 = call double @f64_reinterpret_i64(i64 noundef %30143)
  store double %30144, ptr %60, align 8, !tbaa !13
  %30145 = load double, ptr %60, align 8, !tbaa !13
  store double %30145, ptr %43, align 8, !tbaa !13
  %30146 = load double, ptr %60, align 8, !tbaa !13
  %30147 = call double @wasm_fabs(double noundef %30146)
  store double %30147, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %30148 = load double, ptr %60, align 8, !tbaa !13
  %30149 = load double, ptr %61, align 8, !tbaa !13
  %30150 = fcmp olt double %30148, %30149
  %30151 = zext i1 %30150 to i32
  store i32 %30151, ptr %45, align 4, !tbaa !9
  %30152 = load i32, ptr %45, align 4, !tbaa !9
  %30153 = icmp ne i32 %30152, 0
  br i1 %30153, label %30154, label %30191

30154:                                            ; preds = %30141
  %30155 = load double, ptr %43, align 8, !tbaa !13
  store double %30155, ptr %60, align 8, !tbaa !13
  %30156 = load double, ptr %60, align 8, !tbaa !13
  %30157 = load double, ptr %60, align 8, !tbaa !13
  %30158 = fcmp une double %30156, %30157
  %30159 = xor i1 %30158, true
  %30160 = xor i1 %30159, true
  %30161 = zext i1 %30160 to i32
  %30162 = sext i32 %30161 to i64
  %30163 = call i64 @llvm.expect.i64(i64 %30162, i64 0)
  %30164 = icmp ne i64 %30163, 0
  br i1 %30164, label %30165, label %30167

30165:                                            ; preds = %30154
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

30166:                                            ; No predecessors!
  br label %30189

30167:                                            ; preds = %30154
  %30168 = load double, ptr %60, align 8, !tbaa !13
  %30169 = fcmp ogt double %30168, 0xC1E0000000200000
  br i1 %30169, label %30170, label %30173

30170:                                            ; preds = %30167
  %30171 = load double, ptr %60, align 8, !tbaa !13
  %30172 = fcmp olt double %30171, 0x41E0000000000000
  br label %30173

30173:                                            ; preds = %30170, %30167
  %30174 = phi i1 [ false, %30167 ], [ %30172, %30170 ]
  %30175 = xor i1 %30174, true
  %30176 = xor i1 %30175, true
  %30177 = xor i1 %30176, true
  %30178 = zext i1 %30177 to i32
  %30179 = sext i32 %30178 to i64
  %30180 = call i64 @llvm.expect.i64(i64 %30179, i64 0)
  %30181 = icmp ne i64 %30180, 0
  br i1 %30181, label %30182, label %30184

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

30183:                                            ; No predecessors!
  br label %30187

30184:                                            ; preds = %30173
  %30185 = load double, ptr %60, align 8, !tbaa !13
  %30186 = fptosi double %30185 to i32
  br label %30187

30187:                                            ; preds = %30184, %30183
  %30188 = phi i32 [ 0, %30183 ], [ %30186, %30184 ]
  br label %30189

30189:                                            ; preds = %30187, %30166
  %30190 = phi i32 [ 0, %30166 ], [ %30188, %30187 ]
  store i32 %30190, ptr %45, align 4, !tbaa !9
  br label %30192

30191:                                            ; preds = %30141
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %30192

30192:                                            ; preds = %30191, %30189
  %30193 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30193, ptr %12, align 4, !tbaa !9
  %30194 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30194, ptr %45, align 4, !tbaa !9
  %30195 = load i32, ptr %45, align 4, !tbaa !9
  %30196 = sitofp i32 %30195 to double
  store double %30196, ptr %60, align 8, !tbaa !13
  %30197 = load double, ptr %43, align 8, !tbaa !13
  store double %30197, ptr %61, align 8, !tbaa !13
  %30198 = load double, ptr %60, align 8, !tbaa !13
  %30199 = load double, ptr %61, align 8, !tbaa !13
  %30200 = fcmp une double %30198, %30199
  %30201 = zext i1 %30200 to i32
  store i32 %30201, ptr %45, align 4, !tbaa !9
  %30202 = load i32, ptr %45, align 4, !tbaa !9
  %30203 = icmp ne i32 %30202, 0
  br i1 %30203, label %30204, label %30210

30204:                                            ; preds = %30192
  %30205 = load double, ptr %43, align 8, !tbaa !13
  store double %30205, ptr %60, align 8, !tbaa !13
  %30206 = load ptr, ptr %5, align 8, !tbaa !5
  %30207 = load double, ptr %60, align 8, !tbaa !13
  %30208 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %30206, double noundef %30207)
  store i32 %30208, ptr %45, align 4, !tbaa !9
  %30209 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30209, ptr %12, align 4, !tbaa !9
  br label %30210

30210:                                            ; preds = %30204, %30192
  %30211 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30211, ptr %45, align 4, !tbaa !9
  %30212 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30212, ptr %46, align 4, !tbaa !9
  %30213 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %30213, ptr %47, align 4, !tbaa !9
  %30214 = load ptr, ptr %5, align 8, !tbaa !5
  %30215 = load i32, ptr %45, align 4, !tbaa !9
  %30216 = load i32, ptr %46, align 4, !tbaa !9
  %30217 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %30214, i32 noundef %30215, i32 noundef %30216, i32 noundef %30217)
  %30218 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30218, ptr %45, align 4, !tbaa !9
  %30219 = load ptr, ptr %5, align 8, !tbaa !5
  %30220 = getelementptr inbounds %struct.w2c_hermes, ptr %30219, i32 0, i32 6
  %30221 = load i32, ptr %45, align 4, !tbaa !9
  %30222 = zext i32 %30221 to i64
  %30223 = call i32 @i32_load(ptr noundef %30220, i64 noundef %30222)
  store i32 %30223, ptr %45, align 4, !tbaa !9
  %30224 = load i32, ptr %45, align 4, !tbaa !9
  %30225 = icmp ne i32 %30224, 0
  %30226 = xor i1 %30225, true
  %30227 = zext i1 %30226 to i32
  store i32 %30227, ptr %45, align 4, !tbaa !9
  %30228 = load i32, ptr %45, align 4, !tbaa !9
  %30229 = icmp ne i32 %30228, 0
  br i1 %30229, label %30230, label %30237

30230:                                            ; preds = %30210
  %30231 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30231, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30232 = load ptr, ptr %5, align 8, !tbaa !5
  %30233 = getelementptr inbounds %struct.w2c_hermes, ptr %30232, i32 0, i32 6
  %30234 = load i32, ptr %45, align 4, !tbaa !9
  %30235 = zext i32 %30234 to i64
  %30236 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30233, i64 noundef %30235, i32 noundef %30236)
  br label %30338

30237:                                            ; preds = %30210
  %30238 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30238, ptr %45, align 4, !tbaa !9
  %30239 = load ptr, ptr %5, align 8, !tbaa !5
  %30240 = getelementptr inbounds %struct.w2c_hermes, ptr %30239, i32 0, i32 6
  %30241 = load i32, ptr %45, align 4, !tbaa !9
  %30242 = zext i32 %30241 to i64
  %30243 = add i64 %30242, 8
  %30244 = call double @f64_load(ptr noundef %30240, i64 noundef %30243)
  store double %30244, ptr %60, align 8, !tbaa !13
  %30245 = load double, ptr %60, align 8, !tbaa !13
  store double %30245, ptr %43, align 8, !tbaa !13
  %30246 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30246, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %30247 = load ptr, ptr %5, align 8, !tbaa !5
  %30248 = getelementptr inbounds %struct.w2c_hermes, ptr %30247, i32 0, i32 6
  %30249 = load i32, ptr %45, align 4, !tbaa !9
  %30250 = zext i32 %30249 to i64
  %30251 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30248, i64 noundef %30250, i32 noundef %30251)
  %30252 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30252, ptr %45, align 4, !tbaa !9
  %30253 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30253, ptr %46, align 4, !tbaa !9
  %30254 = load double, ptr %43, align 8, !tbaa !13
  store double %30254, ptr %62, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %63, align 8, !tbaa !13
  %30255 = load double, ptr %62, align 8, !tbaa !13
  %30256 = load double, ptr %63, align 8, !tbaa !13
  %30257 = fcmp olt double %30255, %30256
  %30258 = zext i1 %30257 to i32
  store i32 %30258, ptr %47, align 4, !tbaa !9
  %30259 = load double, ptr %43, align 8, !tbaa !13
  store double %30259, ptr %63, align 8, !tbaa !13
  store double 0.000000e+00, ptr %64, align 8, !tbaa !13
  %30260 = load double, ptr %63, align 8, !tbaa !13
  %30261 = load double, ptr %64, align 8, !tbaa !13
  %30262 = fcmp oge double %30260, %30261
  %30263 = zext i1 %30262 to i32
  store i32 %30263, ptr %48, align 4, !tbaa !9
  %30264 = load i32, ptr %48, align 4, !tbaa !9
  %30265 = load i32, ptr %47, align 4, !tbaa !9
  %30266 = and i32 %30265, %30264
  store i32 %30266, ptr %47, align 4, !tbaa !9
  %30267 = load i32, ptr %47, align 4, !tbaa !9
  %30268 = icmp ne i32 %30267, 0
  br i1 %30268, label %30269, label %30306

30269:                                            ; preds = %30237
  %30270 = load double, ptr %43, align 8, !tbaa !13
  store double %30270, ptr %62, align 8, !tbaa !13
  %30271 = load double, ptr %62, align 8, !tbaa !13
  %30272 = load double, ptr %62, align 8, !tbaa !13
  %30273 = fcmp une double %30271, %30272
  %30274 = xor i1 %30273, true
  %30275 = xor i1 %30274, true
  %30276 = zext i1 %30275 to i32
  %30277 = sext i32 %30276 to i64
  %30278 = call i64 @llvm.expect.i64(i64 %30277, i64 0)
  %30279 = icmp ne i64 %30278, 0
  br i1 %30279, label %30280, label %30282

30280:                                            ; preds = %30269
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

30281:                                            ; No predecessors!
  br label %30304

30282:                                            ; preds = %30269
  %30283 = load double, ptr %62, align 8, !tbaa !13
  %30284 = fcmp ogt double %30283, -1.000000e+00
  br i1 %30284, label %30285, label %30288

30285:                                            ; preds = %30282
  %30286 = load double, ptr %62, align 8, !tbaa !13
  %30287 = fcmp olt double %30286, 0x41F0000000000000
  br label %30288

30288:                                            ; preds = %30285, %30282
  %30289 = phi i1 [ false, %30282 ], [ %30287, %30285 ]
  %30290 = xor i1 %30289, true
  %30291 = xor i1 %30290, true
  %30292 = xor i1 %30291, true
  %30293 = zext i1 %30292 to i32
  %30294 = sext i32 %30293 to i64
  %30295 = call i64 @llvm.expect.i64(i64 %30294, i64 0)
  %30296 = icmp ne i64 %30295, 0
  br i1 %30296, label %30297, label %30299

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

30298:                                            ; No predecessors!
  br label %30302

30299:                                            ; preds = %30288
  %30300 = load double, ptr %62, align 8, !tbaa !13
  %30301 = fptoui double %30300 to i32
  br label %30302

30302:                                            ; preds = %30299, %30298
  %30303 = phi i32 [ 0, %30298 ], [ %30301, %30299 ]
  br label %30304

30304:                                            ; preds = %30302, %30281
  %30305 = phi i32 [ 0, %30281 ], [ %30303, %30302 ]
  store i32 %30305, ptr %47, align 4, !tbaa !9
  br label %30307

30306:                                            ; preds = %30237
  store i32 0, ptr %47, align 4, !tbaa !9
  br label %30307

30307:                                            ; preds = %30306, %30304
  %30308 = load i32, ptr %47, align 4, !tbaa !9
  %30309 = and i32 %30308, 31
  %30310 = load i32, ptr %46, align 4, !tbaa !9
  %30311 = shl i32 %30310, %30309
  store i32 %30311, ptr %46, align 4, !tbaa !9
  %30312 = load i32, ptr %46, align 4, !tbaa !9
  %30313 = sitofp i32 %30312 to double
  store double %30313, ptr %61, align 8, !tbaa !13
  %30314 = load ptr, ptr %5, align 8, !tbaa !5
  %30315 = getelementptr inbounds %struct.w2c_hermes, ptr %30314, i32 0, i32 6
  %30316 = load i32, ptr %45, align 4, !tbaa !9
  %30317 = zext i32 %30316 to i64
  %30318 = add i64 %30317, 8
  %30319 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %30315, i64 noundef %30318, double noundef %30319)
  br label %30338

30320:                                            ; preds = %30013
  %30321 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30321, ptr %45, align 4, !tbaa !9
  %30322 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30322, ptr %46, align 4, !tbaa !9
  store i32 548, ptr %47, align 4, !tbaa !9
  %30323 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30323, ptr %48, align 4, !tbaa !9
  %30324 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30324, ptr %58, align 8, !tbaa !11
  %30325 = load i64, ptr %58, align 8, !tbaa !11
  %30326 = trunc i64 %30325 to i32
  store i32 %30326, ptr %49, align 4, !tbaa !9
  %30327 = load ptr, ptr %5, align 8, !tbaa !5
  %30328 = load i32, ptr %48, align 4, !tbaa !9
  %30329 = load i32, ptr %49, align 4, !tbaa !9
  %30330 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %30327, i32 noundef %30328, i32 noundef %30329)
  store i32 %30330, ptr %48, align 4, !tbaa !9
  %30331 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %30331, ptr %49, align 4, !tbaa !9
  %30332 = load ptr, ptr %5, align 8, !tbaa !5
  %30333 = load i32, ptr %45, align 4, !tbaa !9
  %30334 = load i32, ptr %46, align 4, !tbaa !9
  %30335 = load i32, ptr %47, align 4, !tbaa !9
  %30336 = load i32, ptr %48, align 4, !tbaa !9
  %30337 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %30332, i32 noundef %30333, i32 noundef %30334, i32 noundef %30335, i32 noundef %30336, i32 noundef %30337)
  br label %30338

30338:                                            ; preds = %30320, %30307, %30230, %30134, %30006
  %30339 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30339, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %30340 = load i32, ptr %46, align 4, !tbaa !9
  %30341 = load i32, ptr %45, align 4, !tbaa !9
  %30342 = add i32 %30341, %30340
  store i32 %30342, ptr %45, align 4, !tbaa !9
  %30343 = load i32, ptr %45, align 4, !tbaa !9
  %30344 = load ptr, ptr %5, align 8, !tbaa !5
  %30345 = getelementptr inbounds %struct.w2c_hermes, ptr %30344, i32 0, i32 3
  store i32 %30343, ptr %30345, align 8, !tbaa !15
  %30346 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30346, ptr %45, align 4, !tbaa !9
  %30347 = load ptr, ptr %5, align 8, !tbaa !5
  %30348 = getelementptr inbounds %struct.w2c_hermes, ptr %30347, i32 0, i32 6
  %30349 = load i32, ptr %45, align 4, !tbaa !9
  %30350 = zext i32 %30349 to i64
  %30351 = add i64 %30350, 5808
  %30352 = call i32 @i32_load(ptr noundef %30348, i64 noundef %30351)
  store i32 %30352, ptr %45, align 4, !tbaa !9
  %30353 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30353, ptr %6, align 4, !tbaa !9
  %30354 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %30354, ptr %45, align 4, !tbaa !9
  %30355 = load ptr, ptr %5, align 8, !tbaa !5
  %30356 = getelementptr inbounds %struct.w2c_hermes, ptr %30355, i32 0, i32 6
  %30357 = load i32, ptr %45, align 4, !tbaa !9
  %30358 = zext i32 %30357 to i64
  %30359 = add i64 %30358, 304
  %30360 = call i32 @i32_load(ptr noundef %30356, i64 noundef %30359)
  store i32 %30360, ptr %45, align 4, !tbaa !9
  %30361 = load i32, ptr %45, align 4, !tbaa !9
  %30362 = icmp ne i32 %30361, 0
  %30363 = xor i1 %30362, true
  %30364 = zext i1 %30363 to i32
  store i32 %30364, ptr %45, align 4, !tbaa !9
  %30365 = load i32, ptr %45, align 4, !tbaa !9
  %30366 = icmp ne i32 %30365, 0
  br i1 %30366, label %30367, label %30368

30367:                                            ; preds = %30338
  br label %43136

30368:                                            ; preds = %30338
  %30369 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30369, ptr %45, align 4, !tbaa !9
  %30370 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30370, ptr %46, align 4, !tbaa !9
  %30371 = load ptr, ptr %5, align 8, !tbaa !5
  %30372 = getelementptr inbounds %struct.w2c_hermes, ptr %30371, i32 0, i32 6
  %30373 = load i32, ptr %46, align 4, !tbaa !9
  %30374 = zext i32 %30373 to i64
  %30375 = add i64 %30374, 1
  %30376 = call i32 @i32_load8_u(ptr noundef %30372, i64 noundef %30375)
  store i32 %30376, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30377 = load i32, ptr %47, align 4, !tbaa !9
  %30378 = and i32 %30377, 31
  %30379 = load i32, ptr %46, align 4, !tbaa !9
  %30380 = shl i32 %30379, %30378
  store i32 %30380, ptr %46, align 4, !tbaa !9
  %30381 = load i32, ptr %46, align 4, !tbaa !9
  %30382 = load i32, ptr %45, align 4, !tbaa !9
  %30383 = add i32 %30382, %30381
  store i32 %30383, ptr %45, align 4, !tbaa !9
  %30384 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %30384, ptr %46, align 4, !tbaa !9
  %30385 = load ptr, ptr %5, align 8, !tbaa !5
  %30386 = getelementptr inbounds %struct.w2c_hermes, ptr %30385, i32 0, i32 6
  %30387 = load i32, ptr %46, align 4, !tbaa !9
  %30388 = zext i32 %30387 to i64
  %30389 = add i64 %30388, 312
  %30390 = call i64 @i64_load(ptr noundef %30386, i64 noundef %30389)
  store i64 %30390, ptr %55, align 8, !tbaa !11
  %30391 = load ptr, ptr %5, align 8, !tbaa !5
  %30392 = getelementptr inbounds %struct.w2c_hermes, ptr %30391, i32 0, i32 6
  %30393 = load i32, ptr %45, align 4, !tbaa !9
  %30394 = zext i32 %30393 to i64
  %30395 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %30392, i64 noundef %30394, i64 noundef %30395)
  %30396 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %30396, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30397 = load ptr, ptr %5, align 8, !tbaa !5
  %30398 = getelementptr inbounds %struct.w2c_hermes, ptr %30397, i32 0, i32 6
  %30399 = load i32, ptr %45, align 4, !tbaa !9
  %30400 = zext i32 %30399 to i64
  %30401 = add i64 %30400, 516
  %30402 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30398, i64 noundef %30401, i32 noundef %30402)
  %30403 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %30403, ptr %45, align 4, !tbaa !9
  %30404 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %30404, ptr %46, align 4, !tbaa !9
  %30405 = load ptr, ptr %5, align 8, !tbaa !5
  %30406 = getelementptr inbounds %struct.w2c_hermes, ptr %30405, i32 0, i32 6
  %30407 = load i32, ptr %45, align 4, !tbaa !9
  %30408 = zext i32 %30407 to i64
  %30409 = add i64 %30408, 512
  %30410 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30406, i64 noundef %30409, i32 noundef %30410)
  %30411 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %30411, ptr %45, align 4, !tbaa !9
  %30412 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %30412, ptr %46, align 4, !tbaa !9
  %30413 = load ptr, ptr %5, align 8, !tbaa !5
  %30414 = getelementptr inbounds %struct.w2c_hermes, ptr %30413, i32 0, i32 6
  %30415 = load i32, ptr %45, align 4, !tbaa !9
  %30416 = zext i32 %30415 to i64
  %30417 = add i64 %30416, 508
  %30418 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30414, i64 noundef %30417, i32 noundef %30418)
  %30419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30419, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %30420 = load i32, ptr %46, align 4, !tbaa !9
  %30421 = load i32, ptr %45, align 4, !tbaa !9
  %30422 = add i32 %30421, %30420
  store i32 %30422, ptr %45, align 4, !tbaa !9
  %30423 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30423, ptr %6, align 4, !tbaa !9
  br label %2945

30424:                                            ; preds = %3104
  %30425 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30425, ptr %45, align 4, !tbaa !9
  %30426 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30426, ptr %46, align 4, !tbaa !9
  %30427 = load ptr, ptr %5, align 8, !tbaa !5
  %30428 = getelementptr inbounds %struct.w2c_hermes, ptr %30427, i32 0, i32 6
  %30429 = load i32, ptr %46, align 4, !tbaa !9
  %30430 = zext i32 %30429 to i64
  %30431 = add i64 %30430, 2
  %30432 = call i32 @i32_load8_u(ptr noundef %30428, i64 noundef %30431)
  store i32 %30432, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30433 = load i32, ptr %47, align 4, !tbaa !9
  %30434 = and i32 %30433, 31
  %30435 = load i32, ptr %46, align 4, !tbaa !9
  %30436 = shl i32 %30435, %30434
  store i32 %30436, ptr %46, align 4, !tbaa !9
  %30437 = load i32, ptr %46, align 4, !tbaa !9
  %30438 = load i32, ptr %45, align 4, !tbaa !9
  %30439 = add i32 %30438, %30437
  store i32 %30439, ptr %45, align 4, !tbaa !9
  %30440 = load ptr, ptr %5, align 8, !tbaa !5
  %30441 = getelementptr inbounds %struct.w2c_hermes, ptr %30440, i32 0, i32 6
  %30442 = load i32, ptr %45, align 4, !tbaa !9
  %30443 = zext i32 %30442 to i64
  %30444 = call i64 @i64_load(ptr noundef %30441, i64 noundef %30443)
  store i64 %30444, ptr %54, align 8, !tbaa !11
  %30445 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %30445, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %30446 = load i64, ptr %54, align 8, !tbaa !11
  %30447 = load i64, ptr %55, align 8, !tbaa !11
  %30448 = icmp ugt i64 %30446, %30447
  %30449 = zext i1 %30448 to i32
  store i32 %30449, ptr %45, align 4, !tbaa !9
  %30450 = load i32, ptr %45, align 4, !tbaa !9
  %30451 = icmp ne i32 %30450, 0
  br i1 %30451, label %30452, label %30453

30452:                                            ; preds = %30424
  br label %30675

30453:                                            ; preds = %30424
  %30454 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30454, ptr %45, align 4, !tbaa !9
  %30455 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30455, ptr %46, align 4, !tbaa !9
  %30456 = load ptr, ptr %5, align 8, !tbaa !5
  %30457 = getelementptr inbounds %struct.w2c_hermes, ptr %30456, i32 0, i32 6
  %30458 = load i32, ptr %46, align 4, !tbaa !9
  %30459 = zext i32 %30458 to i64
  %30460 = add i64 %30459, 3
  %30461 = call i32 @i32_load8_u(ptr noundef %30457, i64 noundef %30460)
  store i32 %30461, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30462 = load i32, ptr %47, align 4, !tbaa !9
  %30463 = and i32 %30462, 31
  %30464 = load i32, ptr %46, align 4, !tbaa !9
  %30465 = shl i32 %30464, %30463
  store i32 %30465, ptr %46, align 4, !tbaa !9
  %30466 = load i32, ptr %46, align 4, !tbaa !9
  %30467 = load i32, ptr %45, align 4, !tbaa !9
  %30468 = add i32 %30467, %30466
  store i32 %30468, ptr %45, align 4, !tbaa !9
  %30469 = load ptr, ptr %5, align 8, !tbaa !5
  %30470 = getelementptr inbounds %struct.w2c_hermes, ptr %30469, i32 0, i32 6
  %30471 = load i32, ptr %45, align 4, !tbaa !9
  %30472 = zext i32 %30471 to i64
  %30473 = call i64 @i64_load(ptr noundef %30470, i64 noundef %30472)
  store i64 %30473, ptr %54, align 8, !tbaa !11
  %30474 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %30474, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %30475 = load i64, ptr %54, align 8, !tbaa !11
  %30476 = load i64, ptr %55, align 8, !tbaa !11
  %30477 = icmp ugt i64 %30475, %30476
  %30478 = zext i1 %30477 to i32
  store i32 %30478, ptr %45, align 4, !tbaa !9
  %30479 = load i32, ptr %45, align 4, !tbaa !9
  %30480 = icmp ne i32 %30479, 0
  br i1 %30480, label %30481, label %30482

30481:                                            ; preds = %30453
  br label %30675

30482:                                            ; preds = %30453
  %30483 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %30483, ptr %54, align 8, !tbaa !11
  %30484 = load i64, ptr %54, align 8, !tbaa !11
  %30485 = call double @f64_reinterpret_i64(i64 noundef %30484)
  store double %30485, ptr %60, align 8, !tbaa !13
  %30486 = load double, ptr %60, align 8, !tbaa !13
  store double %30486, ptr %43, align 8, !tbaa !13
  %30487 = load double, ptr %60, align 8, !tbaa !13
  %30488 = call double @wasm_fabs(double noundef %30487)
  store double %30488, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %30489 = load double, ptr %60, align 8, !tbaa !13
  %30490 = load double, ptr %61, align 8, !tbaa !13
  %30491 = fcmp olt double %30489, %30490
  %30492 = zext i1 %30491 to i32
  store i32 %30492, ptr %45, align 4, !tbaa !9
  %30493 = load i32, ptr %45, align 4, !tbaa !9
  %30494 = icmp ne i32 %30493, 0
  br i1 %30494, label %30495, label %30532

30495:                                            ; preds = %30482
  %30496 = load double, ptr %43, align 8, !tbaa !13
  store double %30496, ptr %60, align 8, !tbaa !13
  %30497 = load double, ptr %60, align 8, !tbaa !13
  %30498 = load double, ptr %60, align 8, !tbaa !13
  %30499 = fcmp une double %30497, %30498
  %30500 = xor i1 %30499, true
  %30501 = xor i1 %30500, true
  %30502 = zext i1 %30501 to i32
  %30503 = sext i32 %30502 to i64
  %30504 = call i64 @llvm.expect.i64(i64 %30503, i64 0)
  %30505 = icmp ne i64 %30504, 0
  br i1 %30505, label %30506, label %30508

30506:                                            ; preds = %30495
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

30507:                                            ; No predecessors!
  br label %30530

30508:                                            ; preds = %30495
  %30509 = load double, ptr %60, align 8, !tbaa !13
  %30510 = fcmp ogt double %30509, 0xC1E0000000200000
  br i1 %30510, label %30511, label %30514

30511:                                            ; preds = %30508
  %30512 = load double, ptr %60, align 8, !tbaa !13
  %30513 = fcmp olt double %30512, 0x41E0000000000000
  br label %30514

30514:                                            ; preds = %30511, %30508
  %30515 = phi i1 [ false, %30508 ], [ %30513, %30511 ]
  %30516 = xor i1 %30515, true
  %30517 = xor i1 %30516, true
  %30518 = xor i1 %30517, true
  %30519 = zext i1 %30518 to i32
  %30520 = sext i32 %30519 to i64
  %30521 = call i64 @llvm.expect.i64(i64 %30520, i64 0)
  %30522 = icmp ne i64 %30521, 0
  br i1 %30522, label %30523, label %30525

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

30524:                                            ; No predecessors!
  br label %30528

30525:                                            ; preds = %30514
  %30526 = load double, ptr %60, align 8, !tbaa !13
  %30527 = fptosi double %30526 to i32
  br label %30528

30528:                                            ; preds = %30525, %30524
  %30529 = phi i32 [ 0, %30524 ], [ %30527, %30525 ]
  br label %30530

30530:                                            ; preds = %30528, %30507
  %30531 = phi i32 [ 0, %30507 ], [ %30529, %30528 ]
  store i32 %30531, ptr %45, align 4, !tbaa !9
  br label %30533

30532:                                            ; preds = %30482
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %30533

30533:                                            ; preds = %30532, %30530
  %30534 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30534, ptr %12, align 4, !tbaa !9
  %30535 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30535, ptr %45, align 4, !tbaa !9
  %30536 = load i32, ptr %45, align 4, !tbaa !9
  %30537 = sitofp i32 %30536 to double
  store double %30537, ptr %60, align 8, !tbaa !13
  %30538 = load double, ptr %43, align 8, !tbaa !13
  store double %30538, ptr %61, align 8, !tbaa !13
  %30539 = load double, ptr %60, align 8, !tbaa !13
  %30540 = load double, ptr %61, align 8, !tbaa !13
  %30541 = fcmp oeq double %30539, %30540
  %30542 = zext i1 %30541 to i32
  store i32 %30542, ptr %45, align 4, !tbaa !9
  %30543 = load i32, ptr %45, align 4, !tbaa !9
  %30544 = icmp ne i32 %30543, 0
  br i1 %30544, label %30545, label %30549

30545:                                            ; preds = %30533
  %30546 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30546, ptr %54, align 8, !tbaa !11
  %30547 = load i64, ptr %54, align 8, !tbaa !11
  %30548 = call double @f64_reinterpret_i64(i64 noundef %30547)
  store double %30548, ptr %60, align 8, !tbaa !13
  br label %30575

30549:                                            ; preds = %30533
  %30550 = load double, ptr %43, align 8, !tbaa !13
  store double %30550, ptr %60, align 8, !tbaa !13
  %30551 = load ptr, ptr %5, align 8, !tbaa !5
  %30552 = load double, ptr %60, align 8, !tbaa !13
  %30553 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %30551, double noundef %30552)
  store i32 %30553, ptr %45, align 4, !tbaa !9
  %30554 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30554, ptr %12, align 4, !tbaa !9
  %30555 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30555, ptr %45, align 4, !tbaa !9
  %30556 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30556, ptr %46, align 4, !tbaa !9
  %30557 = load ptr, ptr %5, align 8, !tbaa !5
  %30558 = getelementptr inbounds %struct.w2c_hermes, ptr %30557, i32 0, i32 6
  %30559 = load i32, ptr %46, align 4, !tbaa !9
  %30560 = zext i32 %30559 to i64
  %30561 = add i64 %30560, 3
  %30562 = call i32 @i32_load8_u(ptr noundef %30558, i64 noundef %30561)
  store i32 %30562, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30563 = load i32, ptr %47, align 4, !tbaa !9
  %30564 = and i32 %30563, 31
  %30565 = load i32, ptr %46, align 4, !tbaa !9
  %30566 = shl i32 %30565, %30564
  store i32 %30566, ptr %46, align 4, !tbaa !9
  %30567 = load i32, ptr %46, align 4, !tbaa !9
  %30568 = load i32, ptr %45, align 4, !tbaa !9
  %30569 = add i32 %30568, %30567
  store i32 %30569, ptr %45, align 4, !tbaa !9
  %30570 = load ptr, ptr %5, align 8, !tbaa !5
  %30571 = getelementptr inbounds %struct.w2c_hermes, ptr %30570, i32 0, i32 6
  %30572 = load i32, ptr %45, align 4, !tbaa !9
  %30573 = zext i32 %30572 to i64
  %30574 = call double @f64_load(ptr noundef %30571, i64 noundef %30573)
  store double %30574, ptr %60, align 8, !tbaa !13
  br label %30575

30575:                                            ; preds = %30549, %30545
  %30576 = load double, ptr %60, align 8, !tbaa !13
  store double %30576, ptr %43, align 8, !tbaa !13
  %30577 = load double, ptr %60, align 8, !tbaa !13
  %30578 = call double @wasm_fabs(double noundef %30577)
  store double %30578, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %30579 = load double, ptr %60, align 8, !tbaa !13
  %30580 = load double, ptr %61, align 8, !tbaa !13
  %30581 = fcmp olt double %30579, %30580
  %30582 = zext i1 %30581 to i32
  store i32 %30582, ptr %45, align 4, !tbaa !9
  %30583 = load i32, ptr %45, align 4, !tbaa !9
  %30584 = icmp ne i32 %30583, 0
  br i1 %30584, label %30585, label %30622

30585:                                            ; preds = %30575
  %30586 = load double, ptr %43, align 8, !tbaa !13
  store double %30586, ptr %60, align 8, !tbaa !13
  %30587 = load double, ptr %60, align 8, !tbaa !13
  %30588 = load double, ptr %60, align 8, !tbaa !13
  %30589 = fcmp une double %30587, %30588
  %30590 = xor i1 %30589, true
  %30591 = xor i1 %30590, true
  %30592 = zext i1 %30591 to i32
  %30593 = sext i32 %30592 to i64
  %30594 = call i64 @llvm.expect.i64(i64 %30593, i64 0)
  %30595 = icmp ne i64 %30594, 0
  br i1 %30595, label %30596, label %30598

30596:                                            ; preds = %30585
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

30597:                                            ; No predecessors!
  br label %30620

30598:                                            ; preds = %30585
  %30599 = load double, ptr %60, align 8, !tbaa !13
  %30600 = fcmp ogt double %30599, 0xC1E0000000200000
  br i1 %30600, label %30601, label %30604

30601:                                            ; preds = %30598
  %30602 = load double, ptr %60, align 8, !tbaa !13
  %30603 = fcmp olt double %30602, 0x41E0000000000000
  br label %30604

30604:                                            ; preds = %30601, %30598
  %30605 = phi i1 [ false, %30598 ], [ %30603, %30601 ]
  %30606 = xor i1 %30605, true
  %30607 = xor i1 %30606, true
  %30608 = xor i1 %30607, true
  %30609 = zext i1 %30608 to i32
  %30610 = sext i32 %30609 to i64
  %30611 = call i64 @llvm.expect.i64(i64 %30610, i64 0)
  %30612 = icmp ne i64 %30611, 0
  br i1 %30612, label %30613, label %30615

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

30614:                                            ; No predecessors!
  br label %30618

30615:                                            ; preds = %30604
  %30616 = load double, ptr %60, align 8, !tbaa !13
  %30617 = fptosi double %30616 to i32
  br label %30618

30618:                                            ; preds = %30615, %30614
  %30619 = phi i32 [ 0, %30614 ], [ %30617, %30615 ]
  br label %30620

30620:                                            ; preds = %30618, %30597
  %30621 = phi i32 [ 0, %30597 ], [ %30619, %30618 ]
  store i32 %30621, ptr %45, align 4, !tbaa !9
  br label %30623

30622:                                            ; preds = %30575
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %30623

30623:                                            ; preds = %30622, %30620
  %30624 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30624, ptr %7, align 4, !tbaa !9
  %30625 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %30625, ptr %45, align 4, !tbaa !9
  %30626 = load i32, ptr %45, align 4, !tbaa !9
  %30627 = sitofp i32 %30626 to double
  store double %30627, ptr %60, align 8, !tbaa !13
  %30628 = load double, ptr %43, align 8, !tbaa !13
  store double %30628, ptr %61, align 8, !tbaa !13
  %30629 = load double, ptr %60, align 8, !tbaa !13
  %30630 = load double, ptr %61, align 8, !tbaa !13
  %30631 = fcmp une double %30629, %30630
  %30632 = zext i1 %30631 to i32
  store i32 %30632, ptr %45, align 4, !tbaa !9
  %30633 = load i32, ptr %45, align 4, !tbaa !9
  %30634 = icmp ne i32 %30633, 0
  br i1 %30634, label %30635, label %30641

30635:                                            ; preds = %30623
  %30636 = load double, ptr %43, align 8, !tbaa !13
  store double %30636, ptr %60, align 8, !tbaa !13
  %30637 = load ptr, ptr %5, align 8, !tbaa !5
  %30638 = load double, ptr %60, align 8, !tbaa !13
  %30639 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %30637, double noundef %30638)
  store i32 %30639, ptr %45, align 4, !tbaa !9
  %30640 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30640, ptr %7, align 4, !tbaa !9
  br label %30641

30641:                                            ; preds = %30635, %30623
  %30642 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30642, ptr %45, align 4, !tbaa !9
  %30643 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30643, ptr %46, align 4, !tbaa !9
  %30644 = load ptr, ptr %5, align 8, !tbaa !5
  %30645 = getelementptr inbounds %struct.w2c_hermes, ptr %30644, i32 0, i32 6
  %30646 = load i32, ptr %46, align 4, !tbaa !9
  %30647 = zext i32 %30646 to i64
  %30648 = add i64 %30647, 1
  %30649 = call i32 @i32_load8_u(ptr noundef %30645, i64 noundef %30648)
  store i32 %30649, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30650 = load i32, ptr %47, align 4, !tbaa !9
  %30651 = and i32 %30650, 31
  %30652 = load i32, ptr %46, align 4, !tbaa !9
  %30653 = shl i32 %30652, %30651
  store i32 %30653, ptr %46, align 4, !tbaa !9
  %30654 = load i32, ptr %46, align 4, !tbaa !9
  %30655 = load i32, ptr %45, align 4, !tbaa !9
  %30656 = add i32 %30655, %30654
  store i32 %30656, ptr %45, align 4, !tbaa !9
  %30657 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30657, ptr %46, align 4, !tbaa !9
  %30658 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %30658, ptr %47, align 4, !tbaa !9
  %30659 = load i32, ptr %46, align 4, !tbaa !9
  %30660 = load i32, ptr %47, align 4, !tbaa !9
  %30661 = and i32 %30660, 31
  %30662 = ashr i32 %30659, %30661
  store i32 %30662, ptr %46, align 4, !tbaa !9
  %30663 = load i32, ptr %46, align 4, !tbaa !9
  %30664 = sitofp i32 %30663 to double
  store double %30664, ptr %61, align 8, !tbaa !13
  %30665 = load ptr, ptr %5, align 8, !tbaa !5
  %30666 = getelementptr inbounds %struct.w2c_hermes, ptr %30665, i32 0, i32 6
  %30667 = load i32, ptr %45, align 4, !tbaa !9
  %30668 = zext i32 %30667 to i64
  %30669 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %30666, i64 noundef %30668, double noundef %30669)
  %30670 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30670, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %30671 = load i32, ptr %46, align 4, !tbaa !9
  %30672 = load i32, ptr %45, align 4, !tbaa !9
  %30673 = add i32 %30672, %30671
  store i32 %30673, ptr %45, align 4, !tbaa !9
  %30674 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30674, ptr %6, align 4, !tbaa !9
  br label %2945

30675:                                            ; preds = %30481, %30452
  %30676 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30676, ptr %45, align 4, !tbaa !9
  %30677 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30677, ptr %46, align 4, !tbaa !9
  %30678 = load ptr, ptr %5, align 8, !tbaa !5
  %30679 = getelementptr inbounds %struct.w2c_hermes, ptr %30678, i32 0, i32 6
  %30680 = load i32, ptr %45, align 4, !tbaa !9
  %30681 = zext i32 %30680 to i64
  %30682 = add i64 %30681, 5808
  %30683 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30679, i64 noundef %30682, i32 noundef %30683)
  %30684 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %30684, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %30685 = load i32, ptr %46, align 4, !tbaa !9
  %30686 = load i32, ptr %45, align 4, !tbaa !9
  %30687 = add i32 %30686, %30685
  store i32 %30687, ptr %45, align 4, !tbaa !9
  %30688 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30688, ptr %13, align 4, !tbaa !9
  %30689 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30689, ptr %45, align 4, !tbaa !9
  %30690 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30690, ptr %46, align 4, !tbaa !9
  %30691 = load ptr, ptr %5, align 8, !tbaa !5
  %30692 = getelementptr inbounds %struct.w2c_hermes, ptr %30691, i32 0, i32 6
  %30693 = load i32, ptr %46, align 4, !tbaa !9
  %30694 = zext i32 %30693 to i64
  %30695 = add i64 %30694, 2
  %30696 = call i32 @i32_load8_u(ptr noundef %30692, i64 noundef %30695)
  store i32 %30696, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30697 = load i32, ptr %47, align 4, !tbaa !9
  %30698 = and i32 %30697, 31
  %30699 = load i32, ptr %46, align 4, !tbaa !9
  %30700 = shl i32 %30699, %30698
  store i32 %30700, ptr %46, align 4, !tbaa !9
  %30701 = load i32, ptr %46, align 4, !tbaa !9
  %30702 = load i32, ptr %45, align 4, !tbaa !9
  %30703 = add i32 %30702, %30701
  store i32 %30703, ptr %45, align 4, !tbaa !9
  %30704 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30704, ptr %7, align 4, !tbaa !9
  %30705 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %30705, ptr %45, align 4, !tbaa !9
  %30706 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30706, ptr %46, align 4, !tbaa !9
  %30707 = load ptr, ptr %5, align 8, !tbaa !5
  %30708 = getelementptr inbounds %struct.w2c_hermes, ptr %30707, i32 0, i32 6
  %30709 = load i32, ptr %46, align 4, !tbaa !9
  %30710 = zext i32 %30709 to i64
  %30711 = add i64 %30710, 3
  %30712 = call i32 @i32_load8_u(ptr noundef %30708, i64 noundef %30711)
  store i32 %30712, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %30713 = load i32, ptr %47, align 4, !tbaa !9
  %30714 = and i32 %30713, 31
  %30715 = load i32, ptr %46, align 4, !tbaa !9
  %30716 = shl i32 %30715, %30714
  store i32 %30716, ptr %46, align 4, !tbaa !9
  %30717 = load i32, ptr %46, align 4, !tbaa !9
  %30718 = load i32, ptr %45, align 4, !tbaa !9
  %30719 = add i32 %30718, %30717
  store i32 %30719, ptr %45, align 4, !tbaa !9
  %30720 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30720, ptr %8, align 4, !tbaa !9
  %30721 = load ptr, ptr %5, align 8, !tbaa !5
  %30722 = getelementptr inbounds %struct.w2c_hermes, ptr %30721, i32 0, i32 3
  %30723 = load i32, ptr %30722, align 8, !tbaa !15
  store i32 %30723, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %30724 = load i32, ptr %46, align 4, !tbaa !9
  %30725 = load i32, ptr %45, align 4, !tbaa !9
  %30726 = sub i32 %30725, %30724
  store i32 %30726, ptr %45, align 4, !tbaa !9
  %30727 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30727, ptr %14, align 4, !tbaa !9
  %30728 = load i32, ptr %45, align 4, !tbaa !9
  %30729 = load ptr, ptr %5, align 8, !tbaa !5
  %30730 = getelementptr inbounds %struct.w2c_hermes, ptr %30729, i32 0, i32 3
  store i32 %30728, ptr %30730, align 8, !tbaa !15
  %30731 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30731, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %30732 = load i32, ptr %46, align 4, !tbaa !9
  %30733 = load i32, ptr %45, align 4, !tbaa !9
  %30734 = add i32 %30733, %30732
  store i32 %30734, ptr %45, align 4, !tbaa !9
  %30735 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30735, ptr %46, align 4, !tbaa !9
  %30736 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %30736, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %30737 = load ptr, ptr %5, align 8, !tbaa !5
  %30738 = load i32, ptr %45, align 4, !tbaa !9
  %30739 = load i32, ptr %46, align 4, !tbaa !9
  %30740 = load i32, ptr %47, align 4, !tbaa !9
  %30741 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %30737, i32 noundef %30738, i32 noundef %30739, i32 noundef %30740, i32 noundef %30741)
  %30742 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30742, ptr %45, align 4, !tbaa !9
  %30743 = load ptr, ptr %5, align 8, !tbaa !5
  %30744 = getelementptr inbounds %struct.w2c_hermes, ptr %30743, i32 0, i32 6
  %30745 = load i32, ptr %45, align 4, !tbaa !9
  %30746 = zext i32 %30745 to i64
  %30747 = add i64 %30746, 16
  %30748 = call i32 @i32_load(ptr noundef %30744, i64 noundef %30747)
  store i32 %30748, ptr %45, align 4, !tbaa !9
  %30749 = load i32, ptr %45, align 4, !tbaa !9
  %30750 = icmp ne i32 %30749, 0
  %30751 = xor i1 %30750, true
  %30752 = zext i1 %30751 to i32
  store i32 %30752, ptr %45, align 4, !tbaa !9
  %30753 = load i32, ptr %45, align 4, !tbaa !9
  %30754 = icmp ne i32 %30753, 0
  br i1 %30754, label %30755, label %30762

30755:                                            ; preds = %30675
  %30756 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30756, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30757 = load ptr, ptr %5, align 8, !tbaa !5
  %30758 = getelementptr inbounds %struct.w2c_hermes, ptr %30757, i32 0, i32 6
  %30759 = load i32, ptr %45, align 4, !tbaa !9
  %30760 = zext i32 %30759 to i64
  %30761 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30758, i64 noundef %30760, i32 noundef %30761)
  br label %31087

30762:                                            ; preds = %30675
  %30763 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30763, ptr %45, align 4, !tbaa !9
  %30764 = load ptr, ptr %5, align 8, !tbaa !5
  %30765 = getelementptr inbounds %struct.w2c_hermes, ptr %30764, i32 0, i32 6
  %30766 = load i32, ptr %45, align 4, !tbaa !9
  %30767 = zext i32 %30766 to i64
  %30768 = add i64 %30767, 24
  %30769 = call i64 @i64_load(ptr noundef %30765, i64 noundef %30768)
  store i64 %30769, ptr %54, align 8, !tbaa !11
  %30770 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %30770, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %30771 = load i64, ptr %54, align 8, !tbaa !11
  %30772 = load i64, ptr %55, align 8, !tbaa !11
  %30773 = and i64 %30772, 63
  %30774 = ashr i64 %30771, %30773
  store i64 %30774, ptr %54, align 8, !tbaa !11
  %30775 = load i64, ptr %54, align 8, !tbaa !11
  %30776 = trunc i64 %30775 to i32
  store i32 %30776, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %30777 = load i32, ptr %45, align 4, !tbaa !9
  %30778 = load i32, ptr %46, align 4, !tbaa !9
  %30779 = icmp ne i32 %30777, %30778
  %30780 = zext i1 %30779 to i32
  store i32 %30780, ptr %45, align 4, !tbaa !9
  %30781 = load i32, ptr %45, align 4, !tbaa !9
  %30782 = icmp ne i32 %30781, 0
  br i1 %30782, label %30783, label %31069

30783:                                            ; preds = %30762
  %30784 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30784, ptr %45, align 4, !tbaa !9
  %30785 = load ptr, ptr %5, align 8, !tbaa !5
  %30786 = getelementptr inbounds %struct.w2c_hermes, ptr %30785, i32 0, i32 6
  %30787 = load i32, ptr %45, align 4, !tbaa !9
  %30788 = zext i32 %30787 to i64
  %30789 = add i64 %30788, 4
  %30790 = call i32 @i32_load(ptr noundef %30786, i64 noundef %30789)
  store i32 %30790, ptr %45, align 4, !tbaa !9
  %30791 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30791, ptr %6, align 4, !tbaa !9
  %30792 = load ptr, ptr %5, align 8, !tbaa !5
  %30793 = getelementptr inbounds %struct.w2c_hermes, ptr %30792, i32 0, i32 6
  %30794 = load i32, ptr %45, align 4, !tbaa !9
  %30795 = zext i32 %30794 to i64
  %30796 = add i64 %30795, 164
  %30797 = call i32 @i32_load(ptr noundef %30793, i64 noundef %30796)
  store i32 %30797, ptr %45, align 4, !tbaa !9
  %30798 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30798, ptr %12, align 4, !tbaa !9
  %30799 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30799, ptr %46, align 4, !tbaa !9
  %30800 = load ptr, ptr %5, align 8, !tbaa !5
  %30801 = getelementptr inbounds %struct.w2c_hermes, ptr %30800, i32 0, i32 6
  %30802 = load i32, ptr %46, align 4, !tbaa !9
  %30803 = zext i32 %30802 to i64
  %30804 = add i64 %30803, 168
  %30805 = call i32 @i32_load(ptr noundef %30801, i64 noundef %30804)
  store i32 %30805, ptr %46, align 4, !tbaa !9
  %30806 = load i32, ptr %45, align 4, !tbaa !9
  %30807 = load i32, ptr %46, align 4, !tbaa !9
  %30808 = icmp ult i32 %30806, %30807
  %30809 = zext i1 %30808 to i32
  store i32 %30809, ptr %45, align 4, !tbaa !9
  %30810 = load i32, ptr %45, align 4, !tbaa !9
  %30811 = icmp ne i32 %30810, 0
  br i1 %30811, label %30812, label %30831

30812:                                            ; preds = %30783
  %30813 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30813, ptr %45, align 4, !tbaa !9
  %30814 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30814, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %30815 = load i32, ptr %47, align 4, !tbaa !9
  %30816 = load i32, ptr %46, align 4, !tbaa !9
  %30817 = add i32 %30816, %30815
  store i32 %30817, ptr %46, align 4, !tbaa !9
  %30818 = load ptr, ptr %5, align 8, !tbaa !5
  %30819 = getelementptr inbounds %struct.w2c_hermes, ptr %30818, i32 0, i32 6
  %30820 = load i32, ptr %45, align 4, !tbaa !9
  %30821 = zext i32 %30820 to i64
  %30822 = add i64 %30821, 164
  %30823 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30819, i64 noundef %30822, i32 noundef %30823)
  %30824 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30824, ptr %45, align 4, !tbaa !9
  %30825 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30825, ptr %55, align 8, !tbaa !11
  %30826 = load ptr, ptr %5, align 8, !tbaa !5
  %30827 = getelementptr inbounds %struct.w2c_hermes, ptr %30826, i32 0, i32 6
  %30828 = load i32, ptr %45, align 4, !tbaa !9
  %30829 = zext i32 %30828 to i64
  %30830 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %30827, i64 noundef %30829, i64 noundef %30830)
  br label %30839

30831:                                            ; preds = %30783
  %30832 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30832, ptr %45, align 4, !tbaa !9
  %30833 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30833, ptr %55, align 8, !tbaa !11
  %30834 = load ptr, ptr %5, align 8, !tbaa !5
  %30835 = load i32, ptr %45, align 4, !tbaa !9
  %30836 = load i64, ptr %55, align 8, !tbaa !11
  %30837 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %30834, i32 noundef %30835, i64 noundef %30836)
  store i32 %30837, ptr %45, align 4, !tbaa !9
  %30838 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30838, ptr %12, align 4, !tbaa !9
  br label %30839

30839:                                            ; preds = %30831, %30812
  %30840 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30840, ptr %45, align 4, !tbaa !9
  %30841 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30841, ptr %46, align 4, !tbaa !9
  %30842 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30842, ptr %47, align 4, !tbaa !9
  %30843 = load ptr, ptr %5, align 8, !tbaa !5
  %30844 = load i32, ptr %45, align 4, !tbaa !9
  %30845 = load i32, ptr %46, align 4, !tbaa !9
  %30846 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %30843, i32 noundef %30844, i32 noundef %30845, i32 noundef %30846)
  %30847 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30847, ptr %45, align 4, !tbaa !9
  %30848 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30848, ptr %46, align 4, !tbaa !9
  %30849 = load ptr, ptr %5, align 8, !tbaa !5
  %30850 = getelementptr inbounds %struct.w2c_hermes, ptr %30849, i32 0, i32 6
  %30851 = load i32, ptr %46, align 4, !tbaa !9
  %30852 = zext i32 %30851 to i64
  %30853 = call i32 @i32_load(ptr noundef %30850, i64 noundef %30852)
  store i32 %30853, ptr %46, align 4, !tbaa !9
  %30854 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %30854, ptr %6, align 4, !tbaa !9
  %30855 = load ptr, ptr %5, align 8, !tbaa !5
  %30856 = getelementptr inbounds %struct.w2c_hermes, ptr %30855, i32 0, i32 6
  %30857 = load i32, ptr %45, align 4, !tbaa !9
  %30858 = zext i32 %30857 to i64
  %30859 = add i64 %30858, 16
  %30860 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30856, i64 noundef %30859, i32 noundef %30860)
  %30861 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30861, ptr %45, align 4, !tbaa !9
  %30862 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30862, ptr %46, align 4, !tbaa !9
  %30863 = load ptr, ptr %5, align 8, !tbaa !5
  %30864 = getelementptr inbounds %struct.w2c_hermes, ptr %30863, i32 0, i32 6
  %30865 = load i32, ptr %46, align 4, !tbaa !9
  %30866 = zext i32 %30865 to i64
  %30867 = add i64 %30866, 8
  %30868 = call i64 @i64_load(ptr noundef %30864, i64 noundef %30867)
  store i64 %30868, ptr %55, align 8, !tbaa !11
  %30869 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %30869, ptr %39, align 8, !tbaa !11
  %30870 = load ptr, ptr %5, align 8, !tbaa !5
  %30871 = getelementptr inbounds %struct.w2c_hermes, ptr %30870, i32 0, i32 6
  %30872 = load i32, ptr %45, align 4, !tbaa !9
  %30873 = zext i32 %30872 to i64
  %30874 = add i64 %30873, 24
  %30875 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %30871, i64 noundef %30874, i64 noundef %30875)
  %30876 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %30876, ptr %45, align 4, !tbaa !9
  %30877 = load i32, ptr %45, align 4, !tbaa !9
  %30878 = icmp ne i32 %30877, 0
  %30879 = xor i1 %30878, true
  %30880 = zext i1 %30879 to i32
  store i32 %30880, ptr %45, align 4, !tbaa !9
  %30881 = load i32, ptr %45, align 4, !tbaa !9
  %30882 = icmp ne i32 %30881, 0
  br i1 %30882, label %30883, label %30890

30883:                                            ; preds = %30839
  %30884 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30884, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30885 = load ptr, ptr %5, align 8, !tbaa !5
  %30886 = getelementptr inbounds %struct.w2c_hermes, ptr %30885, i32 0, i32 6
  %30887 = load i32, ptr %45, align 4, !tbaa !9
  %30888 = zext i32 %30887 to i64
  %30889 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30886, i64 noundef %30888, i32 noundef %30889)
  br label %31087

30890:                                            ; preds = %30839
  %30891 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %30891, ptr %54, align 8, !tbaa !11
  %30892 = load i64, ptr %54, align 8, !tbaa !11
  %30893 = call double @f64_reinterpret_i64(i64 noundef %30892)
  store double %30893, ptr %60, align 8, !tbaa !13
  %30894 = load double, ptr %60, align 8, !tbaa !13
  store double %30894, ptr %43, align 8, !tbaa !13
  %30895 = load double, ptr %60, align 8, !tbaa !13
  %30896 = call double @wasm_fabs(double noundef %30895)
  store double %30896, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %30897 = load double, ptr %60, align 8, !tbaa !13
  %30898 = load double, ptr %61, align 8, !tbaa !13
  %30899 = fcmp olt double %30897, %30898
  %30900 = zext i1 %30899 to i32
  store i32 %30900, ptr %45, align 4, !tbaa !9
  %30901 = load i32, ptr %45, align 4, !tbaa !9
  %30902 = icmp ne i32 %30901, 0
  br i1 %30902, label %30903, label %30940

30903:                                            ; preds = %30890
  %30904 = load double, ptr %43, align 8, !tbaa !13
  store double %30904, ptr %60, align 8, !tbaa !13
  %30905 = load double, ptr %60, align 8, !tbaa !13
  %30906 = load double, ptr %60, align 8, !tbaa !13
  %30907 = fcmp une double %30905, %30906
  %30908 = xor i1 %30907, true
  %30909 = xor i1 %30908, true
  %30910 = zext i1 %30909 to i32
  %30911 = sext i32 %30910 to i64
  %30912 = call i64 @llvm.expect.i64(i64 %30911, i64 0)
  %30913 = icmp ne i64 %30912, 0
  br i1 %30913, label %30914, label %30916

30914:                                            ; preds = %30903
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

30915:                                            ; No predecessors!
  br label %30938

30916:                                            ; preds = %30903
  %30917 = load double, ptr %60, align 8, !tbaa !13
  %30918 = fcmp ogt double %30917, 0xC1E0000000200000
  br i1 %30918, label %30919, label %30922

30919:                                            ; preds = %30916
  %30920 = load double, ptr %60, align 8, !tbaa !13
  %30921 = fcmp olt double %30920, 0x41E0000000000000
  br label %30922

30922:                                            ; preds = %30919, %30916
  %30923 = phi i1 [ false, %30916 ], [ %30921, %30919 ]
  %30924 = xor i1 %30923, true
  %30925 = xor i1 %30924, true
  %30926 = xor i1 %30925, true
  %30927 = zext i1 %30926 to i32
  %30928 = sext i32 %30927 to i64
  %30929 = call i64 @llvm.expect.i64(i64 %30928, i64 0)
  %30930 = icmp ne i64 %30929, 0
  br i1 %30930, label %30931, label %30933

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

30932:                                            ; No predecessors!
  br label %30936

30933:                                            ; preds = %30922
  %30934 = load double, ptr %60, align 8, !tbaa !13
  %30935 = fptosi double %30934 to i32
  br label %30936

30936:                                            ; preds = %30933, %30932
  %30937 = phi i32 [ 0, %30932 ], [ %30935, %30933 ]
  br label %30938

30938:                                            ; preds = %30936, %30915
  %30939 = phi i32 [ 0, %30915 ], [ %30937, %30936 ]
  store i32 %30939, ptr %45, align 4, !tbaa !9
  br label %30941

30940:                                            ; preds = %30890
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %30941

30941:                                            ; preds = %30940, %30938
  %30942 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30942, ptr %12, align 4, !tbaa !9
  %30943 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %30943, ptr %45, align 4, !tbaa !9
  %30944 = load i32, ptr %45, align 4, !tbaa !9
  %30945 = sitofp i32 %30944 to double
  store double %30945, ptr %60, align 8, !tbaa !13
  %30946 = load double, ptr %43, align 8, !tbaa !13
  store double %30946, ptr %61, align 8, !tbaa !13
  %30947 = load double, ptr %60, align 8, !tbaa !13
  %30948 = load double, ptr %61, align 8, !tbaa !13
  %30949 = fcmp une double %30947, %30948
  %30950 = zext i1 %30949 to i32
  store i32 %30950, ptr %45, align 4, !tbaa !9
  %30951 = load i32, ptr %45, align 4, !tbaa !9
  %30952 = icmp ne i32 %30951, 0
  br i1 %30952, label %30953, label %30959

30953:                                            ; preds = %30941
  %30954 = load double, ptr %43, align 8, !tbaa !13
  store double %30954, ptr %60, align 8, !tbaa !13
  %30955 = load ptr, ptr %5, align 8, !tbaa !5
  %30956 = load double, ptr %60, align 8, !tbaa !13
  %30957 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %30955, double noundef %30956)
  store i32 %30957, ptr %45, align 4, !tbaa !9
  %30958 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %30958, ptr %12, align 4, !tbaa !9
  br label %30959

30959:                                            ; preds = %30953, %30941
  %30960 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30960, ptr %45, align 4, !tbaa !9
  %30961 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %30961, ptr %46, align 4, !tbaa !9
  %30962 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %30962, ptr %47, align 4, !tbaa !9
  %30963 = load ptr, ptr %5, align 8, !tbaa !5
  %30964 = load i32, ptr %45, align 4, !tbaa !9
  %30965 = load i32, ptr %46, align 4, !tbaa !9
  %30966 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %30963, i32 noundef %30964, i32 noundef %30965, i32 noundef %30966)
  %30967 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30967, ptr %45, align 4, !tbaa !9
  %30968 = load ptr, ptr %5, align 8, !tbaa !5
  %30969 = getelementptr inbounds %struct.w2c_hermes, ptr %30968, i32 0, i32 6
  %30970 = load i32, ptr %45, align 4, !tbaa !9
  %30971 = zext i32 %30970 to i64
  %30972 = call i32 @i32_load(ptr noundef %30969, i64 noundef %30971)
  store i32 %30972, ptr %45, align 4, !tbaa !9
  %30973 = load i32, ptr %45, align 4, !tbaa !9
  %30974 = icmp ne i32 %30973, 0
  %30975 = xor i1 %30974, true
  %30976 = zext i1 %30975 to i32
  store i32 %30976, ptr %45, align 4, !tbaa !9
  %30977 = load i32, ptr %45, align 4, !tbaa !9
  %30978 = icmp ne i32 %30977, 0
  br i1 %30978, label %30979, label %30986

30979:                                            ; preds = %30959
  %30980 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30980, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %30981 = load ptr, ptr %5, align 8, !tbaa !5
  %30982 = getelementptr inbounds %struct.w2c_hermes, ptr %30981, i32 0, i32 6
  %30983 = load i32, ptr %45, align 4, !tbaa !9
  %30984 = zext i32 %30983 to i64
  %30985 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30982, i64 noundef %30984, i32 noundef %30985)
  br label %31087

30986:                                            ; preds = %30959
  %30987 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %30987, ptr %45, align 4, !tbaa !9
  %30988 = load ptr, ptr %5, align 8, !tbaa !5
  %30989 = getelementptr inbounds %struct.w2c_hermes, ptr %30988, i32 0, i32 6
  %30990 = load i32, ptr %45, align 4, !tbaa !9
  %30991 = zext i32 %30990 to i64
  %30992 = add i64 %30991, 8
  %30993 = call double @f64_load(ptr noundef %30989, i64 noundef %30992)
  store double %30993, ptr %60, align 8, !tbaa !13
  %30994 = load double, ptr %60, align 8, !tbaa !13
  store double %30994, ptr %43, align 8, !tbaa !13
  %30995 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %30995, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %30996 = load ptr, ptr %5, align 8, !tbaa !5
  %30997 = getelementptr inbounds %struct.w2c_hermes, ptr %30996, i32 0, i32 6
  %30998 = load i32, ptr %45, align 4, !tbaa !9
  %30999 = zext i32 %30998 to i64
  %31000 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %30997, i64 noundef %30999, i32 noundef %31000)
  %31001 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31001, ptr %45, align 4, !tbaa !9
  %31002 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31002, ptr %46, align 4, !tbaa !9
  %31003 = load double, ptr %43, align 8, !tbaa !13
  store double %31003, ptr %62, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %63, align 8, !tbaa !13
  %31004 = load double, ptr %62, align 8, !tbaa !13
  %31005 = load double, ptr %63, align 8, !tbaa !13
  %31006 = fcmp olt double %31004, %31005
  %31007 = zext i1 %31006 to i32
  store i32 %31007, ptr %47, align 4, !tbaa !9
  %31008 = load double, ptr %43, align 8, !tbaa !13
  store double %31008, ptr %63, align 8, !tbaa !13
  store double 0.000000e+00, ptr %64, align 8, !tbaa !13
  %31009 = load double, ptr %63, align 8, !tbaa !13
  %31010 = load double, ptr %64, align 8, !tbaa !13
  %31011 = fcmp oge double %31009, %31010
  %31012 = zext i1 %31011 to i32
  store i32 %31012, ptr %48, align 4, !tbaa !9
  %31013 = load i32, ptr %48, align 4, !tbaa !9
  %31014 = load i32, ptr %47, align 4, !tbaa !9
  %31015 = and i32 %31014, %31013
  store i32 %31015, ptr %47, align 4, !tbaa !9
  %31016 = load i32, ptr %47, align 4, !tbaa !9
  %31017 = icmp ne i32 %31016, 0
  br i1 %31017, label %31018, label %31055

31018:                                            ; preds = %30986
  %31019 = load double, ptr %43, align 8, !tbaa !13
  store double %31019, ptr %62, align 8, !tbaa !13
  %31020 = load double, ptr %62, align 8, !tbaa !13
  %31021 = load double, ptr %62, align 8, !tbaa !13
  %31022 = fcmp une double %31020, %31021
  %31023 = xor i1 %31022, true
  %31024 = xor i1 %31023, true
  %31025 = zext i1 %31024 to i32
  %31026 = sext i32 %31025 to i64
  %31027 = call i64 @llvm.expect.i64(i64 %31026, i64 0)
  %31028 = icmp ne i64 %31027, 0
  br i1 %31028, label %31029, label %31031

31029:                                            ; preds = %31018
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

31030:                                            ; No predecessors!
  br label %31053

31031:                                            ; preds = %31018
  %31032 = load double, ptr %62, align 8, !tbaa !13
  %31033 = fcmp ogt double %31032, -1.000000e+00
  br i1 %31033, label %31034, label %31037

31034:                                            ; preds = %31031
  %31035 = load double, ptr %62, align 8, !tbaa !13
  %31036 = fcmp olt double %31035, 0x41F0000000000000
  br label %31037

31037:                                            ; preds = %31034, %31031
  %31038 = phi i1 [ false, %31031 ], [ %31036, %31034 ]
  %31039 = xor i1 %31038, true
  %31040 = xor i1 %31039, true
  %31041 = xor i1 %31040, true
  %31042 = zext i1 %31041 to i32
  %31043 = sext i32 %31042 to i64
  %31044 = call i64 @llvm.expect.i64(i64 %31043, i64 0)
  %31045 = icmp ne i64 %31044, 0
  br i1 %31045, label %31046, label %31048

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

31047:                                            ; No predecessors!
  br label %31051

31048:                                            ; preds = %31037
  %31049 = load double, ptr %62, align 8, !tbaa !13
  %31050 = fptoui double %31049 to i32
  br label %31051

31051:                                            ; preds = %31048, %31047
  %31052 = phi i32 [ 0, %31047 ], [ %31050, %31048 ]
  br label %31053

31053:                                            ; preds = %31051, %31030
  %31054 = phi i32 [ 0, %31030 ], [ %31052, %31051 ]
  store i32 %31054, ptr %47, align 4, !tbaa !9
  br label %31056

31055:                                            ; preds = %30986
  store i32 0, ptr %47, align 4, !tbaa !9
  br label %31056

31056:                                            ; preds = %31055, %31053
  %31057 = load i32, ptr %46, align 4, !tbaa !9
  %31058 = load i32, ptr %47, align 4, !tbaa !9
  %31059 = and i32 %31058, 31
  %31060 = ashr i32 %31057, %31059
  store i32 %31060, ptr %46, align 4, !tbaa !9
  %31061 = load i32, ptr %46, align 4, !tbaa !9
  %31062 = sitofp i32 %31061 to double
  store double %31062, ptr %61, align 8, !tbaa !13
  %31063 = load ptr, ptr %5, align 8, !tbaa !5
  %31064 = getelementptr inbounds %struct.w2c_hermes, ptr %31063, i32 0, i32 6
  %31065 = load i32, ptr %45, align 4, !tbaa !9
  %31066 = zext i32 %31065 to i64
  %31067 = add i64 %31066, 8
  %31068 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %31064, i64 noundef %31067, double noundef %31068)
  br label %31087

31069:                                            ; preds = %30762
  %31070 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31070, ptr %45, align 4, !tbaa !9
  %31071 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31071, ptr %46, align 4, !tbaa !9
  store i32 549, ptr %47, align 4, !tbaa !9
  %31072 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31072, ptr %48, align 4, !tbaa !9
  %31073 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31073, ptr %58, align 8, !tbaa !11
  %31074 = load i64, ptr %58, align 8, !tbaa !11
  %31075 = trunc i64 %31074 to i32
  store i32 %31075, ptr %49, align 4, !tbaa !9
  %31076 = load ptr, ptr %5, align 8, !tbaa !5
  %31077 = load i32, ptr %48, align 4, !tbaa !9
  %31078 = load i32, ptr %49, align 4, !tbaa !9
  %31079 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %31076, i32 noundef %31077, i32 noundef %31078)
  store i32 %31079, ptr %48, align 4, !tbaa !9
  %31080 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %31080, ptr %49, align 4, !tbaa !9
  %31081 = load ptr, ptr %5, align 8, !tbaa !5
  %31082 = load i32, ptr %45, align 4, !tbaa !9
  %31083 = load i32, ptr %46, align 4, !tbaa !9
  %31084 = load i32, ptr %47, align 4, !tbaa !9
  %31085 = load i32, ptr %48, align 4, !tbaa !9
  %31086 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %31081, i32 noundef %31082, i32 noundef %31083, i32 noundef %31084, i32 noundef %31085, i32 noundef %31086)
  br label %31087

31087:                                            ; preds = %31069, %31056, %30979, %30883, %30755
  %31088 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31088, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %31089 = load i32, ptr %46, align 4, !tbaa !9
  %31090 = load i32, ptr %45, align 4, !tbaa !9
  %31091 = add i32 %31090, %31089
  store i32 %31091, ptr %45, align 4, !tbaa !9
  %31092 = load i32, ptr %45, align 4, !tbaa !9
  %31093 = load ptr, ptr %5, align 8, !tbaa !5
  %31094 = getelementptr inbounds %struct.w2c_hermes, ptr %31093, i32 0, i32 3
  store i32 %31092, ptr %31094, align 8, !tbaa !15
  %31095 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31095, ptr %45, align 4, !tbaa !9
  %31096 = load ptr, ptr %5, align 8, !tbaa !5
  %31097 = getelementptr inbounds %struct.w2c_hermes, ptr %31096, i32 0, i32 6
  %31098 = load i32, ptr %45, align 4, !tbaa !9
  %31099 = zext i32 %31098 to i64
  %31100 = add i64 %31099, 5808
  %31101 = call i32 @i32_load(ptr noundef %31097, i64 noundef %31100)
  store i32 %31101, ptr %45, align 4, !tbaa !9
  %31102 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31102, ptr %6, align 4, !tbaa !9
  %31103 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31103, ptr %45, align 4, !tbaa !9
  %31104 = load ptr, ptr %5, align 8, !tbaa !5
  %31105 = getelementptr inbounds %struct.w2c_hermes, ptr %31104, i32 0, i32 6
  %31106 = load i32, ptr %45, align 4, !tbaa !9
  %31107 = zext i32 %31106 to i64
  %31108 = add i64 %31107, 304
  %31109 = call i32 @i32_load(ptr noundef %31105, i64 noundef %31108)
  store i32 %31109, ptr %45, align 4, !tbaa !9
  %31110 = load i32, ptr %45, align 4, !tbaa !9
  %31111 = icmp ne i32 %31110, 0
  %31112 = xor i1 %31111, true
  %31113 = zext i1 %31112 to i32
  store i32 %31113, ptr %45, align 4, !tbaa !9
  %31114 = load i32, ptr %45, align 4, !tbaa !9
  %31115 = icmp ne i32 %31114, 0
  br i1 %31115, label %31116, label %31117

31116:                                            ; preds = %31087
  br label %43136

31117:                                            ; preds = %31087
  %31118 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31118, ptr %45, align 4, !tbaa !9
  %31119 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31119, ptr %46, align 4, !tbaa !9
  %31120 = load ptr, ptr %5, align 8, !tbaa !5
  %31121 = getelementptr inbounds %struct.w2c_hermes, ptr %31120, i32 0, i32 6
  %31122 = load i32, ptr %46, align 4, !tbaa !9
  %31123 = zext i32 %31122 to i64
  %31124 = add i64 %31123, 1
  %31125 = call i32 @i32_load8_u(ptr noundef %31121, i64 noundef %31124)
  store i32 %31125, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31126 = load i32, ptr %47, align 4, !tbaa !9
  %31127 = and i32 %31126, 31
  %31128 = load i32, ptr %46, align 4, !tbaa !9
  %31129 = shl i32 %31128, %31127
  store i32 %31129, ptr %46, align 4, !tbaa !9
  %31130 = load i32, ptr %46, align 4, !tbaa !9
  %31131 = load i32, ptr %45, align 4, !tbaa !9
  %31132 = add i32 %31131, %31130
  store i32 %31132, ptr %45, align 4, !tbaa !9
  %31133 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31133, ptr %46, align 4, !tbaa !9
  %31134 = load ptr, ptr %5, align 8, !tbaa !5
  %31135 = getelementptr inbounds %struct.w2c_hermes, ptr %31134, i32 0, i32 6
  %31136 = load i32, ptr %46, align 4, !tbaa !9
  %31137 = zext i32 %31136 to i64
  %31138 = add i64 %31137, 312
  %31139 = call i64 @i64_load(ptr noundef %31135, i64 noundef %31138)
  store i64 %31139, ptr %55, align 8, !tbaa !11
  %31140 = load ptr, ptr %5, align 8, !tbaa !5
  %31141 = getelementptr inbounds %struct.w2c_hermes, ptr %31140, i32 0, i32 6
  %31142 = load i32, ptr %45, align 4, !tbaa !9
  %31143 = zext i32 %31142 to i64
  %31144 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %31141, i64 noundef %31143, i64 noundef %31144)
  %31145 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31145, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %31146 = load ptr, ptr %5, align 8, !tbaa !5
  %31147 = getelementptr inbounds %struct.w2c_hermes, ptr %31146, i32 0, i32 6
  %31148 = load i32, ptr %45, align 4, !tbaa !9
  %31149 = zext i32 %31148 to i64
  %31150 = add i64 %31149, 516
  %31151 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31147, i64 noundef %31150, i32 noundef %31151)
  %31152 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31152, ptr %45, align 4, !tbaa !9
  %31153 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %31153, ptr %46, align 4, !tbaa !9
  %31154 = load ptr, ptr %5, align 8, !tbaa !5
  %31155 = getelementptr inbounds %struct.w2c_hermes, ptr %31154, i32 0, i32 6
  %31156 = load i32, ptr %45, align 4, !tbaa !9
  %31157 = zext i32 %31156 to i64
  %31158 = add i64 %31157, 512
  %31159 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31155, i64 noundef %31158, i32 noundef %31159)
  %31160 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31160, ptr %45, align 4, !tbaa !9
  %31161 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %31161, ptr %46, align 4, !tbaa !9
  %31162 = load ptr, ptr %5, align 8, !tbaa !5
  %31163 = getelementptr inbounds %struct.w2c_hermes, ptr %31162, i32 0, i32 6
  %31164 = load i32, ptr %45, align 4, !tbaa !9
  %31165 = zext i32 %31164 to i64
  %31166 = add i64 %31165, 508
  %31167 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31163, i64 noundef %31166, i32 noundef %31167)
  %31168 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31168, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %31169 = load i32, ptr %46, align 4, !tbaa !9
  %31170 = load i32, ptr %45, align 4, !tbaa !9
  %31171 = add i32 %31170, %31169
  store i32 %31171, ptr %45, align 4, !tbaa !9
  %31172 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31172, ptr %6, align 4, !tbaa !9
  br label %2945

31173:                                            ; preds = %3105
  %31174 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31174, ptr %45, align 4, !tbaa !9
  %31175 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31175, ptr %46, align 4, !tbaa !9
  %31176 = load ptr, ptr %5, align 8, !tbaa !5
  %31177 = getelementptr inbounds %struct.w2c_hermes, ptr %31176, i32 0, i32 6
  %31178 = load i32, ptr %46, align 4, !tbaa !9
  %31179 = zext i32 %31178 to i64
  %31180 = add i64 %31179, 2
  %31181 = call i32 @i32_load8_u(ptr noundef %31177, i64 noundef %31180)
  store i32 %31181, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31182 = load i32, ptr %47, align 4, !tbaa !9
  %31183 = and i32 %31182, 31
  %31184 = load i32, ptr %46, align 4, !tbaa !9
  %31185 = shl i32 %31184, %31183
  store i32 %31185, ptr %46, align 4, !tbaa !9
  %31186 = load i32, ptr %46, align 4, !tbaa !9
  %31187 = load i32, ptr %45, align 4, !tbaa !9
  %31188 = add i32 %31187, %31186
  store i32 %31188, ptr %45, align 4, !tbaa !9
  %31189 = load ptr, ptr %5, align 8, !tbaa !5
  %31190 = getelementptr inbounds %struct.w2c_hermes, ptr %31189, i32 0, i32 6
  %31191 = load i32, ptr %45, align 4, !tbaa !9
  %31192 = zext i32 %31191 to i64
  %31193 = call i64 @i64_load(ptr noundef %31190, i64 noundef %31192)
  store i64 %31193, ptr %54, align 8, !tbaa !11
  %31194 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %31194, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %31195 = load i64, ptr %54, align 8, !tbaa !11
  %31196 = load i64, ptr %55, align 8, !tbaa !11
  %31197 = icmp ugt i64 %31195, %31196
  %31198 = zext i1 %31197 to i32
  store i32 %31198, ptr %45, align 4, !tbaa !9
  %31199 = load i32, ptr %45, align 4, !tbaa !9
  %31200 = icmp ne i32 %31199, 0
  br i1 %31200, label %31201, label %31202

31201:                                            ; preds = %31173
  br label %31424

31202:                                            ; preds = %31173
  %31203 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31203, ptr %45, align 4, !tbaa !9
  %31204 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31204, ptr %46, align 4, !tbaa !9
  %31205 = load ptr, ptr %5, align 8, !tbaa !5
  %31206 = getelementptr inbounds %struct.w2c_hermes, ptr %31205, i32 0, i32 6
  %31207 = load i32, ptr %46, align 4, !tbaa !9
  %31208 = zext i32 %31207 to i64
  %31209 = add i64 %31208, 3
  %31210 = call i32 @i32_load8_u(ptr noundef %31206, i64 noundef %31209)
  store i32 %31210, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31211 = load i32, ptr %47, align 4, !tbaa !9
  %31212 = and i32 %31211, 31
  %31213 = load i32, ptr %46, align 4, !tbaa !9
  %31214 = shl i32 %31213, %31212
  store i32 %31214, ptr %46, align 4, !tbaa !9
  %31215 = load i32, ptr %46, align 4, !tbaa !9
  %31216 = load i32, ptr %45, align 4, !tbaa !9
  %31217 = add i32 %31216, %31215
  store i32 %31217, ptr %45, align 4, !tbaa !9
  %31218 = load ptr, ptr %5, align 8, !tbaa !5
  %31219 = getelementptr inbounds %struct.w2c_hermes, ptr %31218, i32 0, i32 6
  %31220 = load i32, ptr %45, align 4, !tbaa !9
  %31221 = zext i32 %31220 to i64
  %31222 = call i64 @i64_load(ptr noundef %31219, i64 noundef %31221)
  store i64 %31222, ptr %54, align 8, !tbaa !11
  %31223 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %31223, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %31224 = load i64, ptr %54, align 8, !tbaa !11
  %31225 = load i64, ptr %55, align 8, !tbaa !11
  %31226 = icmp ugt i64 %31224, %31225
  %31227 = zext i1 %31226 to i32
  store i32 %31227, ptr %45, align 4, !tbaa !9
  %31228 = load i32, ptr %45, align 4, !tbaa !9
  %31229 = icmp ne i32 %31228, 0
  br i1 %31229, label %31230, label %31231

31230:                                            ; preds = %31202
  br label %31424

31231:                                            ; preds = %31202
  %31232 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %31232, ptr %54, align 8, !tbaa !11
  %31233 = load i64, ptr %54, align 8, !tbaa !11
  %31234 = call double @f64_reinterpret_i64(i64 noundef %31233)
  store double %31234, ptr %60, align 8, !tbaa !13
  %31235 = load double, ptr %60, align 8, !tbaa !13
  store double %31235, ptr %43, align 8, !tbaa !13
  %31236 = load double, ptr %60, align 8, !tbaa !13
  %31237 = call double @wasm_fabs(double noundef %31236)
  store double %31237, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %31238 = load double, ptr %60, align 8, !tbaa !13
  %31239 = load double, ptr %61, align 8, !tbaa !13
  %31240 = fcmp olt double %31238, %31239
  %31241 = zext i1 %31240 to i32
  store i32 %31241, ptr %45, align 4, !tbaa !9
  %31242 = load i32, ptr %45, align 4, !tbaa !9
  %31243 = icmp ne i32 %31242, 0
  br i1 %31243, label %31244, label %31281

31244:                                            ; preds = %31231
  %31245 = load double, ptr %43, align 8, !tbaa !13
  store double %31245, ptr %60, align 8, !tbaa !13
  %31246 = load double, ptr %60, align 8, !tbaa !13
  %31247 = load double, ptr %60, align 8, !tbaa !13
  %31248 = fcmp une double %31246, %31247
  %31249 = xor i1 %31248, true
  %31250 = xor i1 %31249, true
  %31251 = zext i1 %31250 to i32
  %31252 = sext i32 %31251 to i64
  %31253 = call i64 @llvm.expect.i64(i64 %31252, i64 0)
  %31254 = icmp ne i64 %31253, 0
  br i1 %31254, label %31255, label %31257

31255:                                            ; preds = %31244
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

31256:                                            ; No predecessors!
  br label %31279

31257:                                            ; preds = %31244
  %31258 = load double, ptr %60, align 8, !tbaa !13
  %31259 = fcmp ogt double %31258, 0xC1E0000000200000
  br i1 %31259, label %31260, label %31263

31260:                                            ; preds = %31257
  %31261 = load double, ptr %60, align 8, !tbaa !13
  %31262 = fcmp olt double %31261, 0x41E0000000000000
  br label %31263

31263:                                            ; preds = %31260, %31257
  %31264 = phi i1 [ false, %31257 ], [ %31262, %31260 ]
  %31265 = xor i1 %31264, true
  %31266 = xor i1 %31265, true
  %31267 = xor i1 %31266, true
  %31268 = zext i1 %31267 to i32
  %31269 = sext i32 %31268 to i64
  %31270 = call i64 @llvm.expect.i64(i64 %31269, i64 0)
  %31271 = icmp ne i64 %31270, 0
  br i1 %31271, label %31272, label %31274

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

31273:                                            ; No predecessors!
  br label %31277

31274:                                            ; preds = %31263
  %31275 = load double, ptr %60, align 8, !tbaa !13
  %31276 = fptosi double %31275 to i32
  br label %31277

31277:                                            ; preds = %31274, %31273
  %31278 = phi i32 [ 0, %31273 ], [ %31276, %31274 ]
  br label %31279

31279:                                            ; preds = %31277, %31256
  %31280 = phi i32 [ 0, %31256 ], [ %31278, %31277 ]
  store i32 %31280, ptr %45, align 4, !tbaa !9
  br label %31282

31281:                                            ; preds = %31231
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %31282

31282:                                            ; preds = %31281, %31279
  %31283 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31283, ptr %12, align 4, !tbaa !9
  %31284 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31284, ptr %45, align 4, !tbaa !9
  %31285 = load i32, ptr %45, align 4, !tbaa !9
  %31286 = sitofp i32 %31285 to double
  store double %31286, ptr %60, align 8, !tbaa !13
  %31287 = load double, ptr %43, align 8, !tbaa !13
  store double %31287, ptr %61, align 8, !tbaa !13
  %31288 = load double, ptr %60, align 8, !tbaa !13
  %31289 = load double, ptr %61, align 8, !tbaa !13
  %31290 = fcmp oeq double %31288, %31289
  %31291 = zext i1 %31290 to i32
  store i32 %31291, ptr %45, align 4, !tbaa !9
  %31292 = load i32, ptr %45, align 4, !tbaa !9
  %31293 = icmp ne i32 %31292, 0
  br i1 %31293, label %31294, label %31298

31294:                                            ; preds = %31282
  %31295 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31295, ptr %54, align 8, !tbaa !11
  %31296 = load i64, ptr %54, align 8, !tbaa !11
  %31297 = call double @f64_reinterpret_i64(i64 noundef %31296)
  store double %31297, ptr %60, align 8, !tbaa !13
  br label %31324

31298:                                            ; preds = %31282
  %31299 = load double, ptr %43, align 8, !tbaa !13
  store double %31299, ptr %60, align 8, !tbaa !13
  %31300 = load ptr, ptr %5, align 8, !tbaa !5
  %31301 = load double, ptr %60, align 8, !tbaa !13
  %31302 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %31300, double noundef %31301)
  store i32 %31302, ptr %45, align 4, !tbaa !9
  %31303 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31303, ptr %12, align 4, !tbaa !9
  %31304 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31304, ptr %45, align 4, !tbaa !9
  %31305 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31305, ptr %46, align 4, !tbaa !9
  %31306 = load ptr, ptr %5, align 8, !tbaa !5
  %31307 = getelementptr inbounds %struct.w2c_hermes, ptr %31306, i32 0, i32 6
  %31308 = load i32, ptr %46, align 4, !tbaa !9
  %31309 = zext i32 %31308 to i64
  %31310 = add i64 %31309, 3
  %31311 = call i32 @i32_load8_u(ptr noundef %31307, i64 noundef %31310)
  store i32 %31311, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31312 = load i32, ptr %47, align 4, !tbaa !9
  %31313 = and i32 %31312, 31
  %31314 = load i32, ptr %46, align 4, !tbaa !9
  %31315 = shl i32 %31314, %31313
  store i32 %31315, ptr %46, align 4, !tbaa !9
  %31316 = load i32, ptr %46, align 4, !tbaa !9
  %31317 = load i32, ptr %45, align 4, !tbaa !9
  %31318 = add i32 %31317, %31316
  store i32 %31318, ptr %45, align 4, !tbaa !9
  %31319 = load ptr, ptr %5, align 8, !tbaa !5
  %31320 = getelementptr inbounds %struct.w2c_hermes, ptr %31319, i32 0, i32 6
  %31321 = load i32, ptr %45, align 4, !tbaa !9
  %31322 = zext i32 %31321 to i64
  %31323 = call double @f64_load(ptr noundef %31320, i64 noundef %31322)
  store double %31323, ptr %60, align 8, !tbaa !13
  br label %31324

31324:                                            ; preds = %31298, %31294
  %31325 = load double, ptr %60, align 8, !tbaa !13
  store double %31325, ptr %43, align 8, !tbaa !13
  %31326 = load double, ptr %60, align 8, !tbaa !13
  %31327 = call double @wasm_fabs(double noundef %31326)
  store double %31327, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %31328 = load double, ptr %60, align 8, !tbaa !13
  %31329 = load double, ptr %61, align 8, !tbaa !13
  %31330 = fcmp olt double %31328, %31329
  %31331 = zext i1 %31330 to i32
  store i32 %31331, ptr %45, align 4, !tbaa !9
  %31332 = load i32, ptr %45, align 4, !tbaa !9
  %31333 = icmp ne i32 %31332, 0
  br i1 %31333, label %31334, label %31371

31334:                                            ; preds = %31324
  %31335 = load double, ptr %43, align 8, !tbaa !13
  store double %31335, ptr %60, align 8, !tbaa !13
  %31336 = load double, ptr %60, align 8, !tbaa !13
  %31337 = load double, ptr %60, align 8, !tbaa !13
  %31338 = fcmp une double %31336, %31337
  %31339 = xor i1 %31338, true
  %31340 = xor i1 %31339, true
  %31341 = zext i1 %31340 to i32
  %31342 = sext i32 %31341 to i64
  %31343 = call i64 @llvm.expect.i64(i64 %31342, i64 0)
  %31344 = icmp ne i64 %31343, 0
  br i1 %31344, label %31345, label %31347

31345:                                            ; preds = %31334
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

31346:                                            ; No predecessors!
  br label %31369

31347:                                            ; preds = %31334
  %31348 = load double, ptr %60, align 8, !tbaa !13
  %31349 = fcmp ogt double %31348, 0xC1E0000000200000
  br i1 %31349, label %31350, label %31353

31350:                                            ; preds = %31347
  %31351 = load double, ptr %60, align 8, !tbaa !13
  %31352 = fcmp olt double %31351, 0x41E0000000000000
  br label %31353

31353:                                            ; preds = %31350, %31347
  %31354 = phi i1 [ false, %31347 ], [ %31352, %31350 ]
  %31355 = xor i1 %31354, true
  %31356 = xor i1 %31355, true
  %31357 = xor i1 %31356, true
  %31358 = zext i1 %31357 to i32
  %31359 = sext i32 %31358 to i64
  %31360 = call i64 @llvm.expect.i64(i64 %31359, i64 0)
  %31361 = icmp ne i64 %31360, 0
  br i1 %31361, label %31362, label %31364

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

31363:                                            ; No predecessors!
  br label %31367

31364:                                            ; preds = %31353
  %31365 = load double, ptr %60, align 8, !tbaa !13
  %31366 = fptosi double %31365 to i32
  br label %31367

31367:                                            ; preds = %31364, %31363
  %31368 = phi i32 [ 0, %31363 ], [ %31366, %31364 ]
  br label %31369

31369:                                            ; preds = %31367, %31346
  %31370 = phi i32 [ 0, %31346 ], [ %31368, %31367 ]
  store i32 %31370, ptr %45, align 4, !tbaa !9
  br label %31372

31371:                                            ; preds = %31324
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %31372

31372:                                            ; preds = %31371, %31369
  %31373 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31373, ptr %7, align 4, !tbaa !9
  %31374 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %31374, ptr %45, align 4, !tbaa !9
  %31375 = load i32, ptr %45, align 4, !tbaa !9
  %31376 = sitofp i32 %31375 to double
  store double %31376, ptr %60, align 8, !tbaa !13
  %31377 = load double, ptr %43, align 8, !tbaa !13
  store double %31377, ptr %61, align 8, !tbaa !13
  %31378 = load double, ptr %60, align 8, !tbaa !13
  %31379 = load double, ptr %61, align 8, !tbaa !13
  %31380 = fcmp une double %31378, %31379
  %31381 = zext i1 %31380 to i32
  store i32 %31381, ptr %45, align 4, !tbaa !9
  %31382 = load i32, ptr %45, align 4, !tbaa !9
  %31383 = icmp ne i32 %31382, 0
  br i1 %31383, label %31384, label %31390

31384:                                            ; preds = %31372
  %31385 = load double, ptr %43, align 8, !tbaa !13
  store double %31385, ptr %60, align 8, !tbaa !13
  %31386 = load ptr, ptr %5, align 8, !tbaa !5
  %31387 = load double, ptr %60, align 8, !tbaa !13
  %31388 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %31386, double noundef %31387)
  store i32 %31388, ptr %45, align 4, !tbaa !9
  %31389 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31389, ptr %7, align 4, !tbaa !9
  br label %31390

31390:                                            ; preds = %31384, %31372
  %31391 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31391, ptr %45, align 4, !tbaa !9
  %31392 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31392, ptr %46, align 4, !tbaa !9
  %31393 = load ptr, ptr %5, align 8, !tbaa !5
  %31394 = getelementptr inbounds %struct.w2c_hermes, ptr %31393, i32 0, i32 6
  %31395 = load i32, ptr %46, align 4, !tbaa !9
  %31396 = zext i32 %31395 to i64
  %31397 = add i64 %31396, 1
  %31398 = call i32 @i32_load8_u(ptr noundef %31394, i64 noundef %31397)
  store i32 %31398, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31399 = load i32, ptr %47, align 4, !tbaa !9
  %31400 = and i32 %31399, 31
  %31401 = load i32, ptr %46, align 4, !tbaa !9
  %31402 = shl i32 %31401, %31400
  store i32 %31402, ptr %46, align 4, !tbaa !9
  %31403 = load i32, ptr %46, align 4, !tbaa !9
  %31404 = load i32, ptr %45, align 4, !tbaa !9
  %31405 = add i32 %31404, %31403
  store i32 %31405, ptr %45, align 4, !tbaa !9
  %31406 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31406, ptr %46, align 4, !tbaa !9
  %31407 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %31407, ptr %47, align 4, !tbaa !9
  %31408 = load i32, ptr %47, align 4, !tbaa !9
  %31409 = and i32 %31408, 31
  %31410 = load i32, ptr %46, align 4, !tbaa !9
  %31411 = lshr i32 %31410, %31409
  store i32 %31411, ptr %46, align 4, !tbaa !9
  %31412 = load i32, ptr %46, align 4, !tbaa !9
  %31413 = uitofp i32 %31412 to double
  store double %31413, ptr %61, align 8, !tbaa !13
  %31414 = load ptr, ptr %5, align 8, !tbaa !5
  %31415 = getelementptr inbounds %struct.w2c_hermes, ptr %31414, i32 0, i32 6
  %31416 = load i32, ptr %45, align 4, !tbaa !9
  %31417 = zext i32 %31416 to i64
  %31418 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %31415, i64 noundef %31417, double noundef %31418)
  %31419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31419, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %31420 = load i32, ptr %46, align 4, !tbaa !9
  %31421 = load i32, ptr %45, align 4, !tbaa !9
  %31422 = add i32 %31421, %31420
  store i32 %31422, ptr %45, align 4, !tbaa !9
  %31423 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31423, ptr %6, align 4, !tbaa !9
  br label %2945

31424:                                            ; preds = %31230, %31201
  %31425 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31425, ptr %45, align 4, !tbaa !9
  %31426 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31426, ptr %46, align 4, !tbaa !9
  %31427 = load ptr, ptr %5, align 8, !tbaa !5
  %31428 = getelementptr inbounds %struct.w2c_hermes, ptr %31427, i32 0, i32 6
  %31429 = load i32, ptr %45, align 4, !tbaa !9
  %31430 = zext i32 %31429 to i64
  %31431 = add i64 %31430, 5808
  %31432 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31428, i64 noundef %31431, i32 noundef %31432)
  %31433 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31433, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %31434 = load i32, ptr %46, align 4, !tbaa !9
  %31435 = load i32, ptr %45, align 4, !tbaa !9
  %31436 = add i32 %31435, %31434
  store i32 %31436, ptr %45, align 4, !tbaa !9
  %31437 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31437, ptr %13, align 4, !tbaa !9
  %31438 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31438, ptr %45, align 4, !tbaa !9
  %31439 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31439, ptr %46, align 4, !tbaa !9
  %31440 = load ptr, ptr %5, align 8, !tbaa !5
  %31441 = getelementptr inbounds %struct.w2c_hermes, ptr %31440, i32 0, i32 6
  %31442 = load i32, ptr %46, align 4, !tbaa !9
  %31443 = zext i32 %31442 to i64
  %31444 = add i64 %31443, 2
  %31445 = call i32 @i32_load8_u(ptr noundef %31441, i64 noundef %31444)
  store i32 %31445, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31446 = load i32, ptr %47, align 4, !tbaa !9
  %31447 = and i32 %31446, 31
  %31448 = load i32, ptr %46, align 4, !tbaa !9
  %31449 = shl i32 %31448, %31447
  store i32 %31449, ptr %46, align 4, !tbaa !9
  %31450 = load i32, ptr %46, align 4, !tbaa !9
  %31451 = load i32, ptr %45, align 4, !tbaa !9
  %31452 = add i32 %31451, %31450
  store i32 %31452, ptr %45, align 4, !tbaa !9
  %31453 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31453, ptr %7, align 4, !tbaa !9
  %31454 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31454, ptr %45, align 4, !tbaa !9
  %31455 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31455, ptr %46, align 4, !tbaa !9
  %31456 = load ptr, ptr %5, align 8, !tbaa !5
  %31457 = getelementptr inbounds %struct.w2c_hermes, ptr %31456, i32 0, i32 6
  %31458 = load i32, ptr %46, align 4, !tbaa !9
  %31459 = zext i32 %31458 to i64
  %31460 = add i64 %31459, 3
  %31461 = call i32 @i32_load8_u(ptr noundef %31457, i64 noundef %31460)
  store i32 %31461, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31462 = load i32, ptr %47, align 4, !tbaa !9
  %31463 = and i32 %31462, 31
  %31464 = load i32, ptr %46, align 4, !tbaa !9
  %31465 = shl i32 %31464, %31463
  store i32 %31465, ptr %46, align 4, !tbaa !9
  %31466 = load i32, ptr %46, align 4, !tbaa !9
  %31467 = load i32, ptr %45, align 4, !tbaa !9
  %31468 = add i32 %31467, %31466
  store i32 %31468, ptr %45, align 4, !tbaa !9
  %31469 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31469, ptr %8, align 4, !tbaa !9
  %31470 = load ptr, ptr %5, align 8, !tbaa !5
  %31471 = getelementptr inbounds %struct.w2c_hermes, ptr %31470, i32 0, i32 3
  %31472 = load i32, ptr %31471, align 8, !tbaa !15
  store i32 %31472, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %31473 = load i32, ptr %46, align 4, !tbaa !9
  %31474 = load i32, ptr %45, align 4, !tbaa !9
  %31475 = sub i32 %31474, %31473
  store i32 %31475, ptr %45, align 4, !tbaa !9
  %31476 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31476, ptr %14, align 4, !tbaa !9
  %31477 = load i32, ptr %45, align 4, !tbaa !9
  %31478 = load ptr, ptr %5, align 8, !tbaa !5
  %31479 = getelementptr inbounds %struct.w2c_hermes, ptr %31478, i32 0, i32 3
  store i32 %31477, ptr %31479, align 8, !tbaa !15
  %31480 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31480, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %31481 = load i32, ptr %46, align 4, !tbaa !9
  %31482 = load i32, ptr %45, align 4, !tbaa !9
  %31483 = add i32 %31482, %31481
  store i32 %31483, ptr %45, align 4, !tbaa !9
  %31484 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31484, ptr %46, align 4, !tbaa !9
  %31485 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %31485, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %31486 = load ptr, ptr %5, align 8, !tbaa !5
  %31487 = load i32, ptr %45, align 4, !tbaa !9
  %31488 = load i32, ptr %46, align 4, !tbaa !9
  %31489 = load i32, ptr %47, align 4, !tbaa !9
  %31490 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %31486, i32 noundef %31487, i32 noundef %31488, i32 noundef %31489, i32 noundef %31490)
  %31491 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31491, ptr %45, align 4, !tbaa !9
  %31492 = load ptr, ptr %5, align 8, !tbaa !5
  %31493 = getelementptr inbounds %struct.w2c_hermes, ptr %31492, i32 0, i32 6
  %31494 = load i32, ptr %45, align 4, !tbaa !9
  %31495 = zext i32 %31494 to i64
  %31496 = add i64 %31495, 16
  %31497 = call i32 @i32_load(ptr noundef %31493, i64 noundef %31496)
  store i32 %31497, ptr %45, align 4, !tbaa !9
  %31498 = load i32, ptr %45, align 4, !tbaa !9
  %31499 = icmp ne i32 %31498, 0
  %31500 = xor i1 %31499, true
  %31501 = zext i1 %31500 to i32
  store i32 %31501, ptr %45, align 4, !tbaa !9
  %31502 = load i32, ptr %45, align 4, !tbaa !9
  %31503 = icmp ne i32 %31502, 0
  br i1 %31503, label %31504, label %31511

31504:                                            ; preds = %31424
  %31505 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31505, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %31506 = load ptr, ptr %5, align 8, !tbaa !5
  %31507 = getelementptr inbounds %struct.w2c_hermes, ptr %31506, i32 0, i32 6
  %31508 = load i32, ptr %45, align 4, !tbaa !9
  %31509 = zext i32 %31508 to i64
  %31510 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31507, i64 noundef %31509, i32 noundef %31510)
  br label %31836

31511:                                            ; preds = %31424
  %31512 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31512, ptr %45, align 4, !tbaa !9
  %31513 = load ptr, ptr %5, align 8, !tbaa !5
  %31514 = getelementptr inbounds %struct.w2c_hermes, ptr %31513, i32 0, i32 6
  %31515 = load i32, ptr %45, align 4, !tbaa !9
  %31516 = zext i32 %31515 to i64
  %31517 = add i64 %31516, 24
  %31518 = call i64 @i64_load(ptr noundef %31514, i64 noundef %31517)
  store i64 %31518, ptr %54, align 8, !tbaa !11
  %31519 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %31519, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %31520 = load i64, ptr %54, align 8, !tbaa !11
  %31521 = load i64, ptr %55, align 8, !tbaa !11
  %31522 = and i64 %31521, 63
  %31523 = ashr i64 %31520, %31522
  store i64 %31523, ptr %54, align 8, !tbaa !11
  %31524 = load i64, ptr %54, align 8, !tbaa !11
  %31525 = trunc i64 %31524 to i32
  store i32 %31525, ptr %45, align 4, !tbaa !9
  store i32 -2, ptr %46, align 4, !tbaa !9
  %31526 = load i32, ptr %45, align 4, !tbaa !9
  %31527 = load i32, ptr %46, align 4, !tbaa !9
  %31528 = icmp ne i32 %31526, %31527
  %31529 = zext i1 %31528 to i32
  store i32 %31529, ptr %45, align 4, !tbaa !9
  %31530 = load i32, ptr %45, align 4, !tbaa !9
  %31531 = icmp ne i32 %31530, 0
  br i1 %31531, label %31532, label %31818

31532:                                            ; preds = %31511
  %31533 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31533, ptr %45, align 4, !tbaa !9
  %31534 = load ptr, ptr %5, align 8, !tbaa !5
  %31535 = getelementptr inbounds %struct.w2c_hermes, ptr %31534, i32 0, i32 6
  %31536 = load i32, ptr %45, align 4, !tbaa !9
  %31537 = zext i32 %31536 to i64
  %31538 = add i64 %31537, 4
  %31539 = call i32 @i32_load(ptr noundef %31535, i64 noundef %31538)
  store i32 %31539, ptr %45, align 4, !tbaa !9
  %31540 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31540, ptr %6, align 4, !tbaa !9
  %31541 = load ptr, ptr %5, align 8, !tbaa !5
  %31542 = getelementptr inbounds %struct.w2c_hermes, ptr %31541, i32 0, i32 6
  %31543 = load i32, ptr %45, align 4, !tbaa !9
  %31544 = zext i32 %31543 to i64
  %31545 = add i64 %31544, 164
  %31546 = call i32 @i32_load(ptr noundef %31542, i64 noundef %31545)
  store i32 %31546, ptr %45, align 4, !tbaa !9
  %31547 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31547, ptr %12, align 4, !tbaa !9
  %31548 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31548, ptr %46, align 4, !tbaa !9
  %31549 = load ptr, ptr %5, align 8, !tbaa !5
  %31550 = getelementptr inbounds %struct.w2c_hermes, ptr %31549, i32 0, i32 6
  %31551 = load i32, ptr %46, align 4, !tbaa !9
  %31552 = zext i32 %31551 to i64
  %31553 = add i64 %31552, 168
  %31554 = call i32 @i32_load(ptr noundef %31550, i64 noundef %31553)
  store i32 %31554, ptr %46, align 4, !tbaa !9
  %31555 = load i32, ptr %45, align 4, !tbaa !9
  %31556 = load i32, ptr %46, align 4, !tbaa !9
  %31557 = icmp ult i32 %31555, %31556
  %31558 = zext i1 %31557 to i32
  store i32 %31558, ptr %45, align 4, !tbaa !9
  %31559 = load i32, ptr %45, align 4, !tbaa !9
  %31560 = icmp ne i32 %31559, 0
  br i1 %31560, label %31561, label %31580

31561:                                            ; preds = %31532
  %31562 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31562, ptr %45, align 4, !tbaa !9
  %31563 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31563, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %31564 = load i32, ptr %47, align 4, !tbaa !9
  %31565 = load i32, ptr %46, align 4, !tbaa !9
  %31566 = add i32 %31565, %31564
  store i32 %31566, ptr %46, align 4, !tbaa !9
  %31567 = load ptr, ptr %5, align 8, !tbaa !5
  %31568 = getelementptr inbounds %struct.w2c_hermes, ptr %31567, i32 0, i32 6
  %31569 = load i32, ptr %45, align 4, !tbaa !9
  %31570 = zext i32 %31569 to i64
  %31571 = add i64 %31570, 164
  %31572 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31568, i64 noundef %31571, i32 noundef %31572)
  %31573 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31573, ptr %45, align 4, !tbaa !9
  %31574 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31574, ptr %55, align 8, !tbaa !11
  %31575 = load ptr, ptr %5, align 8, !tbaa !5
  %31576 = getelementptr inbounds %struct.w2c_hermes, ptr %31575, i32 0, i32 6
  %31577 = load i32, ptr %45, align 4, !tbaa !9
  %31578 = zext i32 %31577 to i64
  %31579 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %31576, i64 noundef %31578, i64 noundef %31579)
  br label %31588

31580:                                            ; preds = %31532
  %31581 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31581, ptr %45, align 4, !tbaa !9
  %31582 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31582, ptr %55, align 8, !tbaa !11
  %31583 = load ptr, ptr %5, align 8, !tbaa !5
  %31584 = load i32, ptr %45, align 4, !tbaa !9
  %31585 = load i64, ptr %55, align 8, !tbaa !11
  %31586 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %31583, i32 noundef %31584, i64 noundef %31585)
  store i32 %31586, ptr %45, align 4, !tbaa !9
  %31587 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31587, ptr %12, align 4, !tbaa !9
  br label %31588

31588:                                            ; preds = %31580, %31561
  %31589 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31589, ptr %45, align 4, !tbaa !9
  %31590 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31590, ptr %46, align 4, !tbaa !9
  %31591 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31591, ptr %47, align 4, !tbaa !9
  %31592 = load ptr, ptr %5, align 8, !tbaa !5
  %31593 = load i32, ptr %45, align 4, !tbaa !9
  %31594 = load i32, ptr %46, align 4, !tbaa !9
  %31595 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %31592, i32 noundef %31593, i32 noundef %31594, i32 noundef %31595)
  %31596 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31596, ptr %45, align 4, !tbaa !9
  %31597 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31597, ptr %46, align 4, !tbaa !9
  %31598 = load ptr, ptr %5, align 8, !tbaa !5
  %31599 = getelementptr inbounds %struct.w2c_hermes, ptr %31598, i32 0, i32 6
  %31600 = load i32, ptr %46, align 4, !tbaa !9
  %31601 = zext i32 %31600 to i64
  %31602 = call i32 @i32_load(ptr noundef %31599, i64 noundef %31601)
  store i32 %31602, ptr %46, align 4, !tbaa !9
  %31603 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %31603, ptr %6, align 4, !tbaa !9
  %31604 = load ptr, ptr %5, align 8, !tbaa !5
  %31605 = getelementptr inbounds %struct.w2c_hermes, ptr %31604, i32 0, i32 6
  %31606 = load i32, ptr %45, align 4, !tbaa !9
  %31607 = zext i32 %31606 to i64
  %31608 = add i64 %31607, 16
  %31609 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31605, i64 noundef %31608, i32 noundef %31609)
  %31610 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31610, ptr %45, align 4, !tbaa !9
  %31611 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31611, ptr %46, align 4, !tbaa !9
  %31612 = load ptr, ptr %5, align 8, !tbaa !5
  %31613 = getelementptr inbounds %struct.w2c_hermes, ptr %31612, i32 0, i32 6
  %31614 = load i32, ptr %46, align 4, !tbaa !9
  %31615 = zext i32 %31614 to i64
  %31616 = add i64 %31615, 8
  %31617 = call i64 @i64_load(ptr noundef %31613, i64 noundef %31616)
  store i64 %31617, ptr %55, align 8, !tbaa !11
  %31618 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %31618, ptr %39, align 8, !tbaa !11
  %31619 = load ptr, ptr %5, align 8, !tbaa !5
  %31620 = getelementptr inbounds %struct.w2c_hermes, ptr %31619, i32 0, i32 6
  %31621 = load i32, ptr %45, align 4, !tbaa !9
  %31622 = zext i32 %31621 to i64
  %31623 = add i64 %31622, 24
  %31624 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %31620, i64 noundef %31623, i64 noundef %31624)
  %31625 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31625, ptr %45, align 4, !tbaa !9
  %31626 = load i32, ptr %45, align 4, !tbaa !9
  %31627 = icmp ne i32 %31626, 0
  %31628 = xor i1 %31627, true
  %31629 = zext i1 %31628 to i32
  store i32 %31629, ptr %45, align 4, !tbaa !9
  %31630 = load i32, ptr %45, align 4, !tbaa !9
  %31631 = icmp ne i32 %31630, 0
  br i1 %31631, label %31632, label %31639

31632:                                            ; preds = %31588
  %31633 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31633, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %31634 = load ptr, ptr %5, align 8, !tbaa !5
  %31635 = getelementptr inbounds %struct.w2c_hermes, ptr %31634, i32 0, i32 6
  %31636 = load i32, ptr %45, align 4, !tbaa !9
  %31637 = zext i32 %31636 to i64
  %31638 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31635, i64 noundef %31637, i32 noundef %31638)
  br label %31836

31639:                                            ; preds = %31588
  %31640 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31640, ptr %54, align 8, !tbaa !11
  %31641 = load i64, ptr %54, align 8, !tbaa !11
  %31642 = call double @f64_reinterpret_i64(i64 noundef %31641)
  store double %31642, ptr %60, align 8, !tbaa !13
  %31643 = load double, ptr %60, align 8, !tbaa !13
  store double %31643, ptr %43, align 8, !tbaa !13
  %31644 = load double, ptr %60, align 8, !tbaa !13
  %31645 = call double @wasm_fabs(double noundef %31644)
  store double %31645, ptr %60, align 8, !tbaa !13
  store double 0x41E0000000000000, ptr %61, align 8, !tbaa !13
  %31646 = load double, ptr %60, align 8, !tbaa !13
  %31647 = load double, ptr %61, align 8, !tbaa !13
  %31648 = fcmp olt double %31646, %31647
  %31649 = zext i1 %31648 to i32
  store i32 %31649, ptr %45, align 4, !tbaa !9
  %31650 = load i32, ptr %45, align 4, !tbaa !9
  %31651 = icmp ne i32 %31650, 0
  br i1 %31651, label %31652, label %31689

31652:                                            ; preds = %31639
  %31653 = load double, ptr %43, align 8, !tbaa !13
  store double %31653, ptr %60, align 8, !tbaa !13
  %31654 = load double, ptr %60, align 8, !tbaa !13
  %31655 = load double, ptr %60, align 8, !tbaa !13
  %31656 = fcmp une double %31654, %31655
  %31657 = xor i1 %31656, true
  %31658 = xor i1 %31657, true
  %31659 = zext i1 %31658 to i32
  %31660 = sext i32 %31659 to i64
  %31661 = call i64 @llvm.expect.i64(i64 %31660, i64 0)
  %31662 = icmp ne i64 %31661, 0
  br i1 %31662, label %31663, label %31665

31663:                                            ; preds = %31652
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

31664:                                            ; No predecessors!
  br label %31687

31665:                                            ; preds = %31652
  %31666 = load double, ptr %60, align 8, !tbaa !13
  %31667 = fcmp ogt double %31666, 0xC1E0000000200000
  br i1 %31667, label %31668, label %31671

31668:                                            ; preds = %31665
  %31669 = load double, ptr %60, align 8, !tbaa !13
  %31670 = fcmp olt double %31669, 0x41E0000000000000
  br label %31671

31671:                                            ; preds = %31668, %31665
  %31672 = phi i1 [ false, %31665 ], [ %31670, %31668 ]
  %31673 = xor i1 %31672, true
  %31674 = xor i1 %31673, true
  %31675 = xor i1 %31674, true
  %31676 = zext i1 %31675 to i32
  %31677 = sext i32 %31676 to i64
  %31678 = call i64 @llvm.expect.i64(i64 %31677, i64 0)
  %31679 = icmp ne i64 %31678, 0
  br i1 %31679, label %31680, label %31682

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

31681:                                            ; No predecessors!
  br label %31685

31682:                                            ; preds = %31671
  %31683 = load double, ptr %60, align 8, !tbaa !13
  %31684 = fptosi double %31683 to i32
  br label %31685

31685:                                            ; preds = %31682, %31681
  %31686 = phi i32 [ 0, %31681 ], [ %31684, %31682 ]
  br label %31687

31687:                                            ; preds = %31685, %31664
  %31688 = phi i32 [ 0, %31664 ], [ %31686, %31685 ]
  store i32 %31688, ptr %45, align 4, !tbaa !9
  br label %31690

31689:                                            ; preds = %31639
  store i32 -2147483648, ptr %45, align 4, !tbaa !9
  br label %31690

31690:                                            ; preds = %31689, %31687
  %31691 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31691, ptr %12, align 4, !tbaa !9
  %31692 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31692, ptr %45, align 4, !tbaa !9
  %31693 = load i32, ptr %45, align 4, !tbaa !9
  %31694 = sitofp i32 %31693 to double
  store double %31694, ptr %60, align 8, !tbaa !13
  %31695 = load double, ptr %43, align 8, !tbaa !13
  store double %31695, ptr %61, align 8, !tbaa !13
  %31696 = load double, ptr %60, align 8, !tbaa !13
  %31697 = load double, ptr %61, align 8, !tbaa !13
  %31698 = fcmp une double %31696, %31697
  %31699 = zext i1 %31698 to i32
  store i32 %31699, ptr %45, align 4, !tbaa !9
  %31700 = load i32, ptr %45, align 4, !tbaa !9
  %31701 = icmp ne i32 %31700, 0
  br i1 %31701, label %31702, label %31708

31702:                                            ; preds = %31690
  %31703 = load double, ptr %43, align 8, !tbaa !13
  store double %31703, ptr %60, align 8, !tbaa !13
  %31704 = load ptr, ptr %5, align 8, !tbaa !5
  %31705 = load double, ptr %60, align 8, !tbaa !13
  %31706 = call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %31704, double noundef %31705)
  store i32 %31706, ptr %45, align 4, !tbaa !9
  %31707 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31707, ptr %12, align 4, !tbaa !9
  br label %31708

31708:                                            ; preds = %31702, %31690
  %31709 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31709, ptr %45, align 4, !tbaa !9
  %31710 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31710, ptr %46, align 4, !tbaa !9
  %31711 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %31711, ptr %47, align 4, !tbaa !9
  %31712 = load ptr, ptr %5, align 8, !tbaa !5
  %31713 = load i32, ptr %45, align 4, !tbaa !9
  %31714 = load i32, ptr %46, align 4, !tbaa !9
  %31715 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %31712, i32 noundef %31713, i32 noundef %31714, i32 noundef %31715)
  %31716 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31716, ptr %45, align 4, !tbaa !9
  %31717 = load ptr, ptr %5, align 8, !tbaa !5
  %31718 = getelementptr inbounds %struct.w2c_hermes, ptr %31717, i32 0, i32 6
  %31719 = load i32, ptr %45, align 4, !tbaa !9
  %31720 = zext i32 %31719 to i64
  %31721 = call i32 @i32_load(ptr noundef %31718, i64 noundef %31720)
  store i32 %31721, ptr %45, align 4, !tbaa !9
  %31722 = load i32, ptr %45, align 4, !tbaa !9
  %31723 = icmp ne i32 %31722, 0
  %31724 = xor i1 %31723, true
  %31725 = zext i1 %31724 to i32
  store i32 %31725, ptr %45, align 4, !tbaa !9
  %31726 = load i32, ptr %45, align 4, !tbaa !9
  %31727 = icmp ne i32 %31726, 0
  br i1 %31727, label %31728, label %31735

31728:                                            ; preds = %31708
  %31729 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31729, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %31730 = load ptr, ptr %5, align 8, !tbaa !5
  %31731 = getelementptr inbounds %struct.w2c_hermes, ptr %31730, i32 0, i32 6
  %31732 = load i32, ptr %45, align 4, !tbaa !9
  %31733 = zext i32 %31732 to i64
  %31734 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31731, i64 noundef %31733, i32 noundef %31734)
  br label %31836

31735:                                            ; preds = %31708
  %31736 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31736, ptr %45, align 4, !tbaa !9
  %31737 = load ptr, ptr %5, align 8, !tbaa !5
  %31738 = getelementptr inbounds %struct.w2c_hermes, ptr %31737, i32 0, i32 6
  %31739 = load i32, ptr %45, align 4, !tbaa !9
  %31740 = zext i32 %31739 to i64
  %31741 = add i64 %31740, 8
  %31742 = call double @f64_load(ptr noundef %31738, i64 noundef %31741)
  store double %31742, ptr %60, align 8, !tbaa !13
  %31743 = load double, ptr %60, align 8, !tbaa !13
  store double %31743, ptr %43, align 8, !tbaa !13
  %31744 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31744, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %31745 = load ptr, ptr %5, align 8, !tbaa !5
  %31746 = getelementptr inbounds %struct.w2c_hermes, ptr %31745, i32 0, i32 6
  %31747 = load i32, ptr %45, align 4, !tbaa !9
  %31748 = zext i32 %31747 to i64
  %31749 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31746, i64 noundef %31748, i32 noundef %31749)
  %31750 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31750, ptr %45, align 4, !tbaa !9
  %31751 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %31751, ptr %46, align 4, !tbaa !9
  %31752 = load double, ptr %43, align 8, !tbaa !13
  store double %31752, ptr %62, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %63, align 8, !tbaa !13
  %31753 = load double, ptr %62, align 8, !tbaa !13
  %31754 = load double, ptr %63, align 8, !tbaa !13
  %31755 = fcmp olt double %31753, %31754
  %31756 = zext i1 %31755 to i32
  store i32 %31756, ptr %47, align 4, !tbaa !9
  %31757 = load double, ptr %43, align 8, !tbaa !13
  store double %31757, ptr %63, align 8, !tbaa !13
  store double 0.000000e+00, ptr %64, align 8, !tbaa !13
  %31758 = load double, ptr %63, align 8, !tbaa !13
  %31759 = load double, ptr %64, align 8, !tbaa !13
  %31760 = fcmp oge double %31758, %31759
  %31761 = zext i1 %31760 to i32
  store i32 %31761, ptr %48, align 4, !tbaa !9
  %31762 = load i32, ptr %48, align 4, !tbaa !9
  %31763 = load i32, ptr %47, align 4, !tbaa !9
  %31764 = and i32 %31763, %31762
  store i32 %31764, ptr %47, align 4, !tbaa !9
  %31765 = load i32, ptr %47, align 4, !tbaa !9
  %31766 = icmp ne i32 %31765, 0
  br i1 %31766, label %31767, label %31804

31767:                                            ; preds = %31735
  %31768 = load double, ptr %43, align 8, !tbaa !13
  store double %31768, ptr %62, align 8, !tbaa !13
  %31769 = load double, ptr %62, align 8, !tbaa !13
  %31770 = load double, ptr %62, align 8, !tbaa !13
  %31771 = fcmp une double %31769, %31770
  %31772 = xor i1 %31771, true
  %31773 = xor i1 %31772, true
  %31774 = zext i1 %31773 to i32
  %31775 = sext i32 %31774 to i64
  %31776 = call i64 @llvm.expect.i64(i64 %31775, i64 0)
  %31777 = icmp ne i64 %31776, 0
  br i1 %31777, label %31778, label %31780

31778:                                            ; preds = %31767
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

31779:                                            ; No predecessors!
  br label %31802

31780:                                            ; preds = %31767
  %31781 = load double, ptr %62, align 8, !tbaa !13
  %31782 = fcmp ogt double %31781, -1.000000e+00
  br i1 %31782, label %31783, label %31786

31783:                                            ; preds = %31780
  %31784 = load double, ptr %62, align 8, !tbaa !13
  %31785 = fcmp olt double %31784, 0x41F0000000000000
  br label %31786

31786:                                            ; preds = %31783, %31780
  %31787 = phi i1 [ false, %31780 ], [ %31785, %31783 ]
  %31788 = xor i1 %31787, true
  %31789 = xor i1 %31788, true
  %31790 = xor i1 %31789, true
  %31791 = zext i1 %31790 to i32
  %31792 = sext i32 %31791 to i64
  %31793 = call i64 @llvm.expect.i64(i64 %31792, i64 0)
  %31794 = icmp ne i64 %31793, 0
  br i1 %31794, label %31795, label %31797

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

31796:                                            ; No predecessors!
  br label %31800

31797:                                            ; preds = %31786
  %31798 = load double, ptr %62, align 8, !tbaa !13
  %31799 = fptoui double %31798 to i32
  br label %31800

31800:                                            ; preds = %31797, %31796
  %31801 = phi i32 [ 0, %31796 ], [ %31799, %31797 ]
  br label %31802

31802:                                            ; preds = %31800, %31779
  %31803 = phi i32 [ 0, %31779 ], [ %31801, %31800 ]
  store i32 %31803, ptr %47, align 4, !tbaa !9
  br label %31805

31804:                                            ; preds = %31735
  store i32 0, ptr %47, align 4, !tbaa !9
  br label %31805

31805:                                            ; preds = %31804, %31802
  %31806 = load i32, ptr %47, align 4, !tbaa !9
  %31807 = and i32 %31806, 31
  %31808 = load i32, ptr %46, align 4, !tbaa !9
  %31809 = lshr i32 %31808, %31807
  store i32 %31809, ptr %46, align 4, !tbaa !9
  %31810 = load i32, ptr %46, align 4, !tbaa !9
  %31811 = uitofp i32 %31810 to double
  store double %31811, ptr %61, align 8, !tbaa !13
  %31812 = load ptr, ptr %5, align 8, !tbaa !5
  %31813 = getelementptr inbounds %struct.w2c_hermes, ptr %31812, i32 0, i32 6
  %31814 = load i32, ptr %45, align 4, !tbaa !9
  %31815 = zext i32 %31814 to i64
  %31816 = add i64 %31815, 8
  %31817 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %31813, i64 noundef %31816, double noundef %31817)
  br label %31836

31818:                                            ; preds = %31511
  %31819 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %31819, ptr %45, align 4, !tbaa !9
  %31820 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31820, ptr %46, align 4, !tbaa !9
  store i32 550, ptr %47, align 4, !tbaa !9
  %31821 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31821, ptr %48, align 4, !tbaa !9
  %31822 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31822, ptr %58, align 8, !tbaa !11
  %31823 = load i64, ptr %58, align 8, !tbaa !11
  %31824 = trunc i64 %31823 to i32
  store i32 %31824, ptr %49, align 4, !tbaa !9
  %31825 = load ptr, ptr %5, align 8, !tbaa !5
  %31826 = load i32, ptr %48, align 4, !tbaa !9
  %31827 = load i32, ptr %49, align 4, !tbaa !9
  %31828 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef %31825, i32 noundef %31826, i32 noundef %31827)
  store i32 %31828, ptr %48, align 4, !tbaa !9
  %31829 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %31829, ptr %49, align 4, !tbaa !9
  %31830 = load ptr, ptr %5, align 8, !tbaa !5
  %31831 = load i32, ptr %45, align 4, !tbaa !9
  %31832 = load i32, ptr %46, align 4, !tbaa !9
  %31833 = load i32, ptr %47, align 4, !tbaa !9
  %31834 = load i32, ptr %48, align 4, !tbaa !9
  %31835 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %31830, i32 noundef %31831, i32 noundef %31832, i32 noundef %31833, i32 noundef %31834, i32 noundef %31835)
  br label %31836

31836:                                            ; preds = %31818, %31805, %31728, %31632, %31504
  %31837 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %31837, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %31838 = load i32, ptr %46, align 4, !tbaa !9
  %31839 = load i32, ptr %45, align 4, !tbaa !9
  %31840 = add i32 %31839, %31838
  store i32 %31840, ptr %45, align 4, !tbaa !9
  %31841 = load i32, ptr %45, align 4, !tbaa !9
  %31842 = load ptr, ptr %5, align 8, !tbaa !5
  %31843 = getelementptr inbounds %struct.w2c_hermes, ptr %31842, i32 0, i32 3
  store i32 %31841, ptr %31843, align 8, !tbaa !15
  %31844 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %31844, ptr %45, align 4, !tbaa !9
  %31845 = load ptr, ptr %5, align 8, !tbaa !5
  %31846 = getelementptr inbounds %struct.w2c_hermes, ptr %31845, i32 0, i32 6
  %31847 = load i32, ptr %45, align 4, !tbaa !9
  %31848 = zext i32 %31847 to i64
  %31849 = add i64 %31848, 5808
  %31850 = call i32 @i32_load(ptr noundef %31846, i64 noundef %31849)
  store i32 %31850, ptr %45, align 4, !tbaa !9
  %31851 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31851, ptr %6, align 4, !tbaa !9
  %31852 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31852, ptr %45, align 4, !tbaa !9
  %31853 = load ptr, ptr %5, align 8, !tbaa !5
  %31854 = getelementptr inbounds %struct.w2c_hermes, ptr %31853, i32 0, i32 6
  %31855 = load i32, ptr %45, align 4, !tbaa !9
  %31856 = zext i32 %31855 to i64
  %31857 = add i64 %31856, 304
  %31858 = call i32 @i32_load(ptr noundef %31854, i64 noundef %31857)
  store i32 %31858, ptr %45, align 4, !tbaa !9
  %31859 = load i32, ptr %45, align 4, !tbaa !9
  %31860 = icmp ne i32 %31859, 0
  %31861 = xor i1 %31860, true
  %31862 = zext i1 %31861 to i32
  store i32 %31862, ptr %45, align 4, !tbaa !9
  %31863 = load i32, ptr %45, align 4, !tbaa !9
  %31864 = icmp ne i32 %31863, 0
  br i1 %31864, label %31865, label %31866

31865:                                            ; preds = %31836
  br label %43136

31866:                                            ; preds = %31836
  %31867 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31867, ptr %45, align 4, !tbaa !9
  %31868 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31868, ptr %46, align 4, !tbaa !9
  %31869 = load ptr, ptr %5, align 8, !tbaa !5
  %31870 = getelementptr inbounds %struct.w2c_hermes, ptr %31869, i32 0, i32 6
  %31871 = load i32, ptr %46, align 4, !tbaa !9
  %31872 = zext i32 %31871 to i64
  %31873 = add i64 %31872, 1
  %31874 = call i32 @i32_load8_u(ptr noundef %31870, i64 noundef %31873)
  store i32 %31874, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31875 = load i32, ptr %47, align 4, !tbaa !9
  %31876 = and i32 %31875, 31
  %31877 = load i32, ptr %46, align 4, !tbaa !9
  %31878 = shl i32 %31877, %31876
  store i32 %31878, ptr %46, align 4, !tbaa !9
  %31879 = load i32, ptr %46, align 4, !tbaa !9
  %31880 = load i32, ptr %45, align 4, !tbaa !9
  %31881 = add i32 %31880, %31879
  store i32 %31881, ptr %45, align 4, !tbaa !9
  %31882 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31882, ptr %46, align 4, !tbaa !9
  %31883 = load ptr, ptr %5, align 8, !tbaa !5
  %31884 = getelementptr inbounds %struct.w2c_hermes, ptr %31883, i32 0, i32 6
  %31885 = load i32, ptr %46, align 4, !tbaa !9
  %31886 = zext i32 %31885 to i64
  %31887 = add i64 %31886, 312
  %31888 = call i64 @i64_load(ptr noundef %31884, i64 noundef %31887)
  store i64 %31888, ptr %55, align 8, !tbaa !11
  %31889 = load ptr, ptr %5, align 8, !tbaa !5
  %31890 = getelementptr inbounds %struct.w2c_hermes, ptr %31889, i32 0, i32 6
  %31891 = load i32, ptr %45, align 4, !tbaa !9
  %31892 = zext i32 %31891 to i64
  %31893 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %31890, i64 noundef %31892, i64 noundef %31893)
  %31894 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31894, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %31895 = load ptr, ptr %5, align 8, !tbaa !5
  %31896 = getelementptr inbounds %struct.w2c_hermes, ptr %31895, i32 0, i32 6
  %31897 = load i32, ptr %45, align 4, !tbaa !9
  %31898 = zext i32 %31897 to i64
  %31899 = add i64 %31898, 516
  %31900 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31896, i64 noundef %31899, i32 noundef %31900)
  %31901 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31901, ptr %45, align 4, !tbaa !9
  %31902 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %31902, ptr %46, align 4, !tbaa !9
  %31903 = load ptr, ptr %5, align 8, !tbaa !5
  %31904 = getelementptr inbounds %struct.w2c_hermes, ptr %31903, i32 0, i32 6
  %31905 = load i32, ptr %45, align 4, !tbaa !9
  %31906 = zext i32 %31905 to i64
  %31907 = add i64 %31906, 512
  %31908 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31904, i64 noundef %31907, i32 noundef %31908)
  %31909 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %31909, ptr %45, align 4, !tbaa !9
  %31910 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %31910, ptr %46, align 4, !tbaa !9
  %31911 = load ptr, ptr %5, align 8, !tbaa !5
  %31912 = getelementptr inbounds %struct.w2c_hermes, ptr %31911, i32 0, i32 6
  %31913 = load i32, ptr %45, align 4, !tbaa !9
  %31914 = zext i32 %31913 to i64
  %31915 = add i64 %31914, 508
  %31916 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %31912, i64 noundef %31915, i32 noundef %31916)
  %31917 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31917, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %31918 = load i32, ptr %46, align 4, !tbaa !9
  %31919 = load i32, ptr %45, align 4, !tbaa !9
  %31920 = add i32 %31919, %31918
  store i32 %31920, ptr %45, align 4, !tbaa !9
  %31921 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %31921, ptr %6, align 4, !tbaa !9
  br label %2945

31922:                                            ; preds = %3106
  %31923 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31923, ptr %45, align 4, !tbaa !9
  %31924 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31924, ptr %46, align 4, !tbaa !9
  %31925 = load ptr, ptr %5, align 8, !tbaa !5
  %31926 = getelementptr inbounds %struct.w2c_hermes, ptr %31925, i32 0, i32 6
  %31927 = load i32, ptr %46, align 4, !tbaa !9
  %31928 = zext i32 %31927 to i64
  %31929 = add i64 %31928, 2
  %31930 = call i32 @i32_load8_u(ptr noundef %31926, i64 noundef %31929)
  store i32 %31930, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31931 = load i32, ptr %47, align 4, !tbaa !9
  %31932 = and i32 %31931, 31
  %31933 = load i32, ptr %46, align 4, !tbaa !9
  %31934 = shl i32 %31933, %31932
  store i32 %31934, ptr %46, align 4, !tbaa !9
  %31935 = load i32, ptr %46, align 4, !tbaa !9
  %31936 = load i32, ptr %45, align 4, !tbaa !9
  %31937 = add i32 %31936, %31935
  store i32 %31937, ptr %45, align 4, !tbaa !9
  %31938 = load ptr, ptr %5, align 8, !tbaa !5
  %31939 = getelementptr inbounds %struct.w2c_hermes, ptr %31938, i32 0, i32 6
  %31940 = load i32, ptr %45, align 4, !tbaa !9
  %31941 = zext i32 %31940 to i64
  %31942 = call i64 @i64_load(ptr noundef %31939, i64 noundef %31941)
  store i64 %31942, ptr %54, align 8, !tbaa !11
  %31943 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %31943, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %31944 = load i64, ptr %54, align 8, !tbaa !11
  %31945 = load i64, ptr %55, align 8, !tbaa !11
  %31946 = icmp ugt i64 %31944, %31945
  %31947 = zext i1 %31946 to i32
  store i32 %31947, ptr %45, align 4, !tbaa !9
  %31948 = load i32, ptr %45, align 4, !tbaa !9
  %31949 = icmp ne i32 %31948, 0
  br i1 %31949, label %31950, label %31951

31950:                                            ; preds = %31922
  br label %32021

31951:                                            ; preds = %31922
  %31952 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31952, ptr %45, align 4, !tbaa !9
  %31953 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31953, ptr %46, align 4, !tbaa !9
  %31954 = load ptr, ptr %5, align 8, !tbaa !5
  %31955 = getelementptr inbounds %struct.w2c_hermes, ptr %31954, i32 0, i32 6
  %31956 = load i32, ptr %46, align 4, !tbaa !9
  %31957 = zext i32 %31956 to i64
  %31958 = add i64 %31957, 3
  %31959 = call i32 @i32_load8_u(ptr noundef %31955, i64 noundef %31958)
  store i32 %31959, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31960 = load i32, ptr %47, align 4, !tbaa !9
  %31961 = and i32 %31960, 31
  %31962 = load i32, ptr %46, align 4, !tbaa !9
  %31963 = shl i32 %31962, %31961
  store i32 %31963, ptr %46, align 4, !tbaa !9
  %31964 = load i32, ptr %46, align 4, !tbaa !9
  %31965 = load i32, ptr %45, align 4, !tbaa !9
  %31966 = add i32 %31965, %31964
  store i32 %31966, ptr %45, align 4, !tbaa !9
  %31967 = load ptr, ptr %5, align 8, !tbaa !5
  %31968 = getelementptr inbounds %struct.w2c_hermes, ptr %31967, i32 0, i32 6
  %31969 = load i32, ptr %45, align 4, !tbaa !9
  %31970 = zext i32 %31969 to i64
  %31971 = call i64 @i64_load(ptr noundef %31968, i64 noundef %31970)
  store i64 %31971, ptr %54, align 8, !tbaa !11
  %31972 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %31972, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %31973 = load i64, ptr %54, align 8, !tbaa !11
  %31974 = load i64, ptr %55, align 8, !tbaa !11
  %31975 = icmp ugt i64 %31973, %31974
  %31976 = zext i1 %31975 to i32
  store i32 %31976, ptr %45, align 4, !tbaa !9
  %31977 = load i32, ptr %45, align 4, !tbaa !9
  %31978 = icmp ne i32 %31977, 0
  br i1 %31978, label %31979, label %31980

31979:                                            ; preds = %31951
  br label %32021

31980:                                            ; preds = %31951
  %31981 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %31981, ptr %45, align 4, !tbaa !9
  %31982 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %31982, ptr %46, align 4, !tbaa !9
  %31983 = load ptr, ptr %5, align 8, !tbaa !5
  %31984 = getelementptr inbounds %struct.w2c_hermes, ptr %31983, i32 0, i32 6
  %31985 = load i32, ptr %46, align 4, !tbaa !9
  %31986 = zext i32 %31985 to i64
  %31987 = add i64 %31986, 1
  %31988 = call i32 @i32_load8_u(ptr noundef %31984, i64 noundef %31987)
  store i32 %31988, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %31989 = load i32, ptr %47, align 4, !tbaa !9
  %31990 = and i32 %31989, 31
  %31991 = load i32, ptr %46, align 4, !tbaa !9
  %31992 = shl i32 %31991, %31990
  store i32 %31992, ptr %46, align 4, !tbaa !9
  %31993 = load i32, ptr %46, align 4, !tbaa !9
  %31994 = load i32, ptr %45, align 4, !tbaa !9
  %31995 = add i32 %31994, %31993
  store i32 %31995, ptr %45, align 4, !tbaa !9
  %31996 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %31996, ptr %55, align 8, !tbaa !11
  %31997 = load i64, ptr %55, align 8, !tbaa !11
  %31998 = call double @f64_reinterpret_i64(i64 noundef %31997)
  store double %31998, ptr %61, align 8, !tbaa !13
  %31999 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %31999, ptr %56, align 8, !tbaa !11
  %32000 = load i64, ptr %56, align 8, !tbaa !11
  %32001 = call double @f64_reinterpret_i64(i64 noundef %32000)
  store double %32001, ptr %62, align 8, !tbaa !13
  %32002 = load double, ptr %61, align 8, !tbaa !13
  %32003 = load double, ptr %62, align 8, !tbaa !13
  %32004 = fcmp olt double %32002, %32003
  %32005 = zext i1 %32004 to i32
  store i32 %32005, ptr %46, align 4, !tbaa !9
  %32006 = load i32, ptr %46, align 4, !tbaa !9
  %32007 = zext i32 %32006 to i64
  store i64 %32007, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32008 = load i64, ptr %56, align 8, !tbaa !11
  %32009 = load i64, ptr %55, align 8, !tbaa !11
  %32010 = or i64 %32009, %32008
  store i64 %32010, ptr %55, align 8, !tbaa !11
  %32011 = load ptr, ptr %5, align 8, !tbaa !5
  %32012 = getelementptr inbounds %struct.w2c_hermes, ptr %32011, i32 0, i32 6
  %32013 = load i32, ptr %45, align 4, !tbaa !9
  %32014 = zext i32 %32013 to i64
  %32015 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32012, i64 noundef %32014, i64 noundef %32015)
  %32016 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32016, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32017 = load i32, ptr %46, align 4, !tbaa !9
  %32018 = load i32, ptr %45, align 4, !tbaa !9
  %32019 = add i32 %32018, %32017
  store i32 %32019, ptr %45, align 4, !tbaa !9
  %32020 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32020, ptr %6, align 4, !tbaa !9
  br label %2945

32021:                                            ; preds = %31979, %31950
  %32022 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32022, ptr %45, align 4, !tbaa !9
  %32023 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32023, ptr %46, align 4, !tbaa !9
  %32024 = load ptr, ptr %5, align 8, !tbaa !5
  %32025 = getelementptr inbounds %struct.w2c_hermes, ptr %32024, i32 0, i32 6
  %32026 = load i32, ptr %45, align 4, !tbaa !9
  %32027 = zext i32 %32026 to i64
  %32028 = add i64 %32027, 5808
  %32029 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32025, i64 noundef %32028, i32 noundef %32029)
  %32030 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32030, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %32031 = load i32, ptr %46, align 4, !tbaa !9
  %32032 = load i32, ptr %45, align 4, !tbaa !9
  %32033 = add i32 %32032, %32031
  store i32 %32033, ptr %45, align 4, !tbaa !9
  %32034 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32034, ptr %46, align 4, !tbaa !9
  %32035 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32035, ptr %47, align 4, !tbaa !9
  %32036 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32036, ptr %48, align 4, !tbaa !9
  %32037 = load ptr, ptr %5, align 8, !tbaa !5
  %32038 = getelementptr inbounds %struct.w2c_hermes, ptr %32037, i32 0, i32 6
  %32039 = load i32, ptr %48, align 4, !tbaa !9
  %32040 = zext i32 %32039 to i64
  %32041 = add i64 %32040, 2
  %32042 = call i32 @i32_load8_u(ptr noundef %32038, i64 noundef %32041)
  store i32 %32042, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %32043 = load i32, ptr %49, align 4, !tbaa !9
  %32044 = and i32 %32043, 31
  %32045 = load i32, ptr %48, align 4, !tbaa !9
  %32046 = shl i32 %32045, %32044
  store i32 %32046, ptr %48, align 4, !tbaa !9
  %32047 = load i32, ptr %48, align 4, !tbaa !9
  %32048 = load i32, ptr %47, align 4, !tbaa !9
  %32049 = add i32 %32048, %32047
  store i32 %32049, ptr %47, align 4, !tbaa !9
  %32050 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32050, ptr %48, align 4, !tbaa !9
  %32051 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32051, ptr %49, align 4, !tbaa !9
  %32052 = load ptr, ptr %5, align 8, !tbaa !5
  %32053 = getelementptr inbounds %struct.w2c_hermes, ptr %32052, i32 0, i32 6
  %32054 = load i32, ptr %49, align 4, !tbaa !9
  %32055 = zext i32 %32054 to i64
  %32056 = add i64 %32055, 3
  %32057 = call i32 @i32_load8_u(ptr noundef %32053, i64 noundef %32056)
  store i32 %32057, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %32058 = load i32, ptr %50, align 4, !tbaa !9
  %32059 = and i32 %32058, 31
  %32060 = load i32, ptr %49, align 4, !tbaa !9
  %32061 = shl i32 %32060, %32059
  store i32 %32061, ptr %49, align 4, !tbaa !9
  %32062 = load i32, ptr %49, align 4, !tbaa !9
  %32063 = load i32, ptr %48, align 4, !tbaa !9
  %32064 = add i32 %32063, %32062
  store i32 %32064, ptr %48, align 4, !tbaa !9
  %32065 = load ptr, ptr %5, align 8, !tbaa !5
  %32066 = load i32, ptr %45, align 4, !tbaa !9
  %32067 = load i32, ptr %46, align 4, !tbaa !9
  %32068 = load i32, ptr %47, align 4, !tbaa !9
  %32069 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %32065, i32 noundef %32066, i32 noundef %32067, i32 noundef %32068, i32 noundef %32069)
  %32070 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32070, ptr %45, align 4, !tbaa !9
  %32071 = load ptr, ptr %5, align 8, !tbaa !5
  %32072 = getelementptr inbounds %struct.w2c_hermes, ptr %32071, i32 0, i32 6
  %32073 = load i32, ptr %45, align 4, !tbaa !9
  %32074 = zext i32 %32073 to i64
  %32075 = add i64 %32074, 5808
  %32076 = call i32 @i32_load(ptr noundef %32072, i64 noundef %32075)
  store i32 %32076, ptr %45, align 4, !tbaa !9
  %32077 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32077, ptr %6, align 4, !tbaa !9
  %32078 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32078, ptr %45, align 4, !tbaa !9
  %32079 = load ptr, ptr %5, align 8, !tbaa !5
  %32080 = getelementptr inbounds %struct.w2c_hermes, ptr %32079, i32 0, i32 6
  %32081 = load i32, ptr %45, align 4, !tbaa !9
  %32082 = zext i32 %32081 to i64
  %32083 = add i64 %32082, 304
  %32084 = call i32 @i32_load16_u(ptr noundef %32080, i64 noundef %32083)
  store i32 %32084, ptr %45, align 4, !tbaa !9
  %32085 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32085, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %32086 = load i32, ptr %46, align 4, !tbaa !9
  %32087 = load i32, ptr %45, align 4, !tbaa !9
  %32088 = and i32 %32087, %32086
  store i32 %32088, ptr %45, align 4, !tbaa !9
  %32089 = load i32, ptr %45, align 4, !tbaa !9
  %32090 = icmp ne i32 %32089, 0
  %32091 = xor i1 %32090, true
  %32092 = zext i1 %32091 to i32
  store i32 %32092, ptr %45, align 4, !tbaa !9
  %32093 = load i32, ptr %45, align 4, !tbaa !9
  %32094 = icmp ne i32 %32093, 0
  br i1 %32094, label %32095, label %32096

32095:                                            ; preds = %32021
  br label %43136

32096:                                            ; preds = %32021
  %32097 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32097, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %32098 = load ptr, ptr %5, align 8, !tbaa !5
  %32099 = getelementptr inbounds %struct.w2c_hermes, ptr %32098, i32 0, i32 6
  %32100 = load i32, ptr %45, align 4, !tbaa !9
  %32101 = zext i32 %32100 to i64
  %32102 = add i64 %32101, 516
  %32103 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32099, i64 noundef %32102, i32 noundef %32103)
  %32104 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32104, ptr %45, align 4, !tbaa !9
  %32105 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %32105, ptr %46, align 4, !tbaa !9
  %32106 = load ptr, ptr %5, align 8, !tbaa !5
  %32107 = getelementptr inbounds %struct.w2c_hermes, ptr %32106, i32 0, i32 6
  %32108 = load i32, ptr %45, align 4, !tbaa !9
  %32109 = zext i32 %32108 to i64
  %32110 = add i64 %32109, 512
  %32111 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32107, i64 noundef %32110, i32 noundef %32111)
  %32112 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32112, ptr %45, align 4, !tbaa !9
  %32113 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %32113, ptr %46, align 4, !tbaa !9
  %32114 = load ptr, ptr %5, align 8, !tbaa !5
  %32115 = getelementptr inbounds %struct.w2c_hermes, ptr %32114, i32 0, i32 6
  %32116 = load i32, ptr %45, align 4, !tbaa !9
  %32117 = zext i32 %32116 to i64
  %32118 = add i64 %32117, 508
  %32119 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32115, i64 noundef %32118, i32 noundef %32119)
  %32120 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32120, ptr %45, align 4, !tbaa !9
  %32121 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32121, ptr %46, align 4, !tbaa !9
  %32122 = load ptr, ptr %5, align 8, !tbaa !5
  %32123 = getelementptr inbounds %struct.w2c_hermes, ptr %32122, i32 0, i32 6
  %32124 = load i32, ptr %46, align 4, !tbaa !9
  %32125 = zext i32 %32124 to i64
  %32126 = add i64 %32125, 1
  %32127 = call i32 @i32_load8_u(ptr noundef %32123, i64 noundef %32126)
  store i32 %32127, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32128 = load i32, ptr %47, align 4, !tbaa !9
  %32129 = and i32 %32128, 31
  %32130 = load i32, ptr %46, align 4, !tbaa !9
  %32131 = shl i32 %32130, %32129
  store i32 %32131, ptr %46, align 4, !tbaa !9
  %32132 = load i32, ptr %46, align 4, !tbaa !9
  %32133 = load i32, ptr %45, align 4, !tbaa !9
  %32134 = add i32 %32133, %32132
  store i32 %32134, ptr %45, align 4, !tbaa !9
  %32135 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %32135, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %32136 = load i32, ptr %47, align 4, !tbaa !9
  %32137 = and i32 %32136, 31
  %32138 = load i32, ptr %46, align 4, !tbaa !9
  %32139 = lshr i32 %32138, %32137
  store i32 %32139, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %32140 = load i32, ptr %47, align 4, !tbaa !9
  %32141 = load i32, ptr %46, align 4, !tbaa !9
  %32142 = and i32 %32141, %32140
  store i32 %32142, ptr %46, align 4, !tbaa !9
  %32143 = load i32, ptr %46, align 4, !tbaa !9
  %32144 = zext i32 %32143 to i64
  store i64 %32144, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32145 = load i64, ptr %56, align 8, !tbaa !11
  %32146 = load i64, ptr %55, align 8, !tbaa !11
  %32147 = or i64 %32146, %32145
  store i64 %32147, ptr %55, align 8, !tbaa !11
  %32148 = load ptr, ptr %5, align 8, !tbaa !5
  %32149 = getelementptr inbounds %struct.w2c_hermes, ptr %32148, i32 0, i32 6
  %32150 = load i32, ptr %45, align 4, !tbaa !9
  %32151 = zext i32 %32150 to i64
  %32152 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32149, i64 noundef %32151, i64 noundef %32152)
  %32153 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32153, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32154 = load i32, ptr %46, align 4, !tbaa !9
  %32155 = load i32, ptr %45, align 4, !tbaa !9
  %32156 = add i32 %32155, %32154
  store i32 %32156, ptr %45, align 4, !tbaa !9
  %32157 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32157, ptr %6, align 4, !tbaa !9
  br label %2945

32158:                                            ; preds = %3107
  %32159 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32159, ptr %45, align 4, !tbaa !9
  %32160 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32160, ptr %46, align 4, !tbaa !9
  %32161 = load ptr, ptr %5, align 8, !tbaa !5
  %32162 = getelementptr inbounds %struct.w2c_hermes, ptr %32161, i32 0, i32 6
  %32163 = load i32, ptr %46, align 4, !tbaa !9
  %32164 = zext i32 %32163 to i64
  %32165 = add i64 %32164, 2
  %32166 = call i32 @i32_load8_u(ptr noundef %32162, i64 noundef %32165)
  store i32 %32166, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32167 = load i32, ptr %47, align 4, !tbaa !9
  %32168 = and i32 %32167, 31
  %32169 = load i32, ptr %46, align 4, !tbaa !9
  %32170 = shl i32 %32169, %32168
  store i32 %32170, ptr %46, align 4, !tbaa !9
  %32171 = load i32, ptr %46, align 4, !tbaa !9
  %32172 = load i32, ptr %45, align 4, !tbaa !9
  %32173 = add i32 %32172, %32171
  store i32 %32173, ptr %45, align 4, !tbaa !9
  %32174 = load ptr, ptr %5, align 8, !tbaa !5
  %32175 = getelementptr inbounds %struct.w2c_hermes, ptr %32174, i32 0, i32 6
  %32176 = load i32, ptr %45, align 4, !tbaa !9
  %32177 = zext i32 %32176 to i64
  %32178 = call i64 @i64_load(ptr noundef %32175, i64 noundef %32177)
  store i64 %32178, ptr %54, align 8, !tbaa !11
  %32179 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %32179, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32180 = load i64, ptr %54, align 8, !tbaa !11
  %32181 = load i64, ptr %55, align 8, !tbaa !11
  %32182 = icmp ugt i64 %32180, %32181
  %32183 = zext i1 %32182 to i32
  store i32 %32183, ptr %45, align 4, !tbaa !9
  %32184 = load i32, ptr %45, align 4, !tbaa !9
  %32185 = icmp ne i32 %32184, 0
  br i1 %32185, label %32186, label %32187

32186:                                            ; preds = %32158
  br label %32257

32187:                                            ; preds = %32158
  %32188 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32188, ptr %45, align 4, !tbaa !9
  %32189 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32189, ptr %46, align 4, !tbaa !9
  %32190 = load ptr, ptr %5, align 8, !tbaa !5
  %32191 = getelementptr inbounds %struct.w2c_hermes, ptr %32190, i32 0, i32 6
  %32192 = load i32, ptr %46, align 4, !tbaa !9
  %32193 = zext i32 %32192 to i64
  %32194 = add i64 %32193, 3
  %32195 = call i32 @i32_load8_u(ptr noundef %32191, i64 noundef %32194)
  store i32 %32195, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32196 = load i32, ptr %47, align 4, !tbaa !9
  %32197 = and i32 %32196, 31
  %32198 = load i32, ptr %46, align 4, !tbaa !9
  %32199 = shl i32 %32198, %32197
  store i32 %32199, ptr %46, align 4, !tbaa !9
  %32200 = load i32, ptr %46, align 4, !tbaa !9
  %32201 = load i32, ptr %45, align 4, !tbaa !9
  %32202 = add i32 %32201, %32200
  store i32 %32202, ptr %45, align 4, !tbaa !9
  %32203 = load ptr, ptr %5, align 8, !tbaa !5
  %32204 = getelementptr inbounds %struct.w2c_hermes, ptr %32203, i32 0, i32 6
  %32205 = load i32, ptr %45, align 4, !tbaa !9
  %32206 = zext i32 %32205 to i64
  %32207 = call i64 @i64_load(ptr noundef %32204, i64 noundef %32206)
  store i64 %32207, ptr %54, align 8, !tbaa !11
  %32208 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %32208, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32209 = load i64, ptr %54, align 8, !tbaa !11
  %32210 = load i64, ptr %55, align 8, !tbaa !11
  %32211 = icmp ugt i64 %32209, %32210
  %32212 = zext i1 %32211 to i32
  store i32 %32212, ptr %45, align 4, !tbaa !9
  %32213 = load i32, ptr %45, align 4, !tbaa !9
  %32214 = icmp ne i32 %32213, 0
  br i1 %32214, label %32215, label %32216

32215:                                            ; preds = %32187
  br label %32257

32216:                                            ; preds = %32187
  %32217 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32217, ptr %45, align 4, !tbaa !9
  %32218 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32218, ptr %46, align 4, !tbaa !9
  %32219 = load ptr, ptr %5, align 8, !tbaa !5
  %32220 = getelementptr inbounds %struct.w2c_hermes, ptr %32219, i32 0, i32 6
  %32221 = load i32, ptr %46, align 4, !tbaa !9
  %32222 = zext i32 %32221 to i64
  %32223 = add i64 %32222, 1
  %32224 = call i32 @i32_load8_u(ptr noundef %32220, i64 noundef %32223)
  store i32 %32224, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32225 = load i32, ptr %47, align 4, !tbaa !9
  %32226 = and i32 %32225, 31
  %32227 = load i32, ptr %46, align 4, !tbaa !9
  %32228 = shl i32 %32227, %32226
  store i32 %32228, ptr %46, align 4, !tbaa !9
  %32229 = load i32, ptr %46, align 4, !tbaa !9
  %32230 = load i32, ptr %45, align 4, !tbaa !9
  %32231 = add i32 %32230, %32229
  store i32 %32231, ptr %45, align 4, !tbaa !9
  %32232 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %32232, ptr %55, align 8, !tbaa !11
  %32233 = load i64, ptr %55, align 8, !tbaa !11
  %32234 = call double @f64_reinterpret_i64(i64 noundef %32233)
  store double %32234, ptr %61, align 8, !tbaa !13
  %32235 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %32235, ptr %56, align 8, !tbaa !11
  %32236 = load i64, ptr %56, align 8, !tbaa !11
  %32237 = call double @f64_reinterpret_i64(i64 noundef %32236)
  store double %32237, ptr %62, align 8, !tbaa !13
  %32238 = load double, ptr %61, align 8, !tbaa !13
  %32239 = load double, ptr %62, align 8, !tbaa !13
  %32240 = fcmp ole double %32238, %32239
  %32241 = zext i1 %32240 to i32
  store i32 %32241, ptr %46, align 4, !tbaa !9
  %32242 = load i32, ptr %46, align 4, !tbaa !9
  %32243 = zext i32 %32242 to i64
  store i64 %32243, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32244 = load i64, ptr %56, align 8, !tbaa !11
  %32245 = load i64, ptr %55, align 8, !tbaa !11
  %32246 = or i64 %32245, %32244
  store i64 %32246, ptr %55, align 8, !tbaa !11
  %32247 = load ptr, ptr %5, align 8, !tbaa !5
  %32248 = getelementptr inbounds %struct.w2c_hermes, ptr %32247, i32 0, i32 6
  %32249 = load i32, ptr %45, align 4, !tbaa !9
  %32250 = zext i32 %32249 to i64
  %32251 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32248, i64 noundef %32250, i64 noundef %32251)
  %32252 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32252, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32253 = load i32, ptr %46, align 4, !tbaa !9
  %32254 = load i32, ptr %45, align 4, !tbaa !9
  %32255 = add i32 %32254, %32253
  store i32 %32255, ptr %45, align 4, !tbaa !9
  %32256 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32256, ptr %6, align 4, !tbaa !9
  br label %2945

32257:                                            ; preds = %32215, %32186
  %32258 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32258, ptr %45, align 4, !tbaa !9
  %32259 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32259, ptr %46, align 4, !tbaa !9
  %32260 = load ptr, ptr %5, align 8, !tbaa !5
  %32261 = getelementptr inbounds %struct.w2c_hermes, ptr %32260, i32 0, i32 6
  %32262 = load i32, ptr %45, align 4, !tbaa !9
  %32263 = zext i32 %32262 to i64
  %32264 = add i64 %32263, 5808
  %32265 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32261, i64 noundef %32264, i32 noundef %32265)
  %32266 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32266, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %32267 = load i32, ptr %46, align 4, !tbaa !9
  %32268 = load i32, ptr %45, align 4, !tbaa !9
  %32269 = add i32 %32268, %32267
  store i32 %32269, ptr %45, align 4, !tbaa !9
  %32270 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32270, ptr %46, align 4, !tbaa !9
  %32271 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32271, ptr %47, align 4, !tbaa !9
  %32272 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32272, ptr %48, align 4, !tbaa !9
  %32273 = load ptr, ptr %5, align 8, !tbaa !5
  %32274 = getelementptr inbounds %struct.w2c_hermes, ptr %32273, i32 0, i32 6
  %32275 = load i32, ptr %48, align 4, !tbaa !9
  %32276 = zext i32 %32275 to i64
  %32277 = add i64 %32276, 2
  %32278 = call i32 @i32_load8_u(ptr noundef %32274, i64 noundef %32277)
  store i32 %32278, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %32279 = load i32, ptr %49, align 4, !tbaa !9
  %32280 = and i32 %32279, 31
  %32281 = load i32, ptr %48, align 4, !tbaa !9
  %32282 = shl i32 %32281, %32280
  store i32 %32282, ptr %48, align 4, !tbaa !9
  %32283 = load i32, ptr %48, align 4, !tbaa !9
  %32284 = load i32, ptr %47, align 4, !tbaa !9
  %32285 = add i32 %32284, %32283
  store i32 %32285, ptr %47, align 4, !tbaa !9
  %32286 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32286, ptr %48, align 4, !tbaa !9
  %32287 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32287, ptr %49, align 4, !tbaa !9
  %32288 = load ptr, ptr %5, align 8, !tbaa !5
  %32289 = getelementptr inbounds %struct.w2c_hermes, ptr %32288, i32 0, i32 6
  %32290 = load i32, ptr %49, align 4, !tbaa !9
  %32291 = zext i32 %32290 to i64
  %32292 = add i64 %32291, 3
  %32293 = call i32 @i32_load8_u(ptr noundef %32289, i64 noundef %32292)
  store i32 %32293, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %32294 = load i32, ptr %50, align 4, !tbaa !9
  %32295 = and i32 %32294, 31
  %32296 = load i32, ptr %49, align 4, !tbaa !9
  %32297 = shl i32 %32296, %32295
  store i32 %32297, ptr %49, align 4, !tbaa !9
  %32298 = load i32, ptr %49, align 4, !tbaa !9
  %32299 = load i32, ptr %48, align 4, !tbaa !9
  %32300 = add i32 %32299, %32298
  store i32 %32300, ptr %48, align 4, !tbaa !9
  %32301 = load ptr, ptr %5, align 8, !tbaa !5
  %32302 = load i32, ptr %45, align 4, !tbaa !9
  %32303 = load i32, ptr %46, align 4, !tbaa !9
  %32304 = load i32, ptr %47, align 4, !tbaa !9
  %32305 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %32301, i32 noundef %32302, i32 noundef %32303, i32 noundef %32304, i32 noundef %32305)
  %32306 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32306, ptr %45, align 4, !tbaa !9
  %32307 = load ptr, ptr %5, align 8, !tbaa !5
  %32308 = getelementptr inbounds %struct.w2c_hermes, ptr %32307, i32 0, i32 6
  %32309 = load i32, ptr %45, align 4, !tbaa !9
  %32310 = zext i32 %32309 to i64
  %32311 = add i64 %32310, 5808
  %32312 = call i32 @i32_load(ptr noundef %32308, i64 noundef %32311)
  store i32 %32312, ptr %45, align 4, !tbaa !9
  %32313 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32313, ptr %6, align 4, !tbaa !9
  %32314 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32314, ptr %45, align 4, !tbaa !9
  %32315 = load ptr, ptr %5, align 8, !tbaa !5
  %32316 = getelementptr inbounds %struct.w2c_hermes, ptr %32315, i32 0, i32 6
  %32317 = load i32, ptr %45, align 4, !tbaa !9
  %32318 = zext i32 %32317 to i64
  %32319 = add i64 %32318, 304
  %32320 = call i32 @i32_load16_u(ptr noundef %32316, i64 noundef %32319)
  store i32 %32320, ptr %45, align 4, !tbaa !9
  %32321 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32321, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %32322 = load i32, ptr %46, align 4, !tbaa !9
  %32323 = load i32, ptr %45, align 4, !tbaa !9
  %32324 = and i32 %32323, %32322
  store i32 %32324, ptr %45, align 4, !tbaa !9
  %32325 = load i32, ptr %45, align 4, !tbaa !9
  %32326 = icmp ne i32 %32325, 0
  %32327 = xor i1 %32326, true
  %32328 = zext i1 %32327 to i32
  store i32 %32328, ptr %45, align 4, !tbaa !9
  %32329 = load i32, ptr %45, align 4, !tbaa !9
  %32330 = icmp ne i32 %32329, 0
  br i1 %32330, label %32331, label %32332

32331:                                            ; preds = %32257
  br label %43136

32332:                                            ; preds = %32257
  %32333 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32333, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %32334 = load ptr, ptr %5, align 8, !tbaa !5
  %32335 = getelementptr inbounds %struct.w2c_hermes, ptr %32334, i32 0, i32 6
  %32336 = load i32, ptr %45, align 4, !tbaa !9
  %32337 = zext i32 %32336 to i64
  %32338 = add i64 %32337, 516
  %32339 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32335, i64 noundef %32338, i32 noundef %32339)
  %32340 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32340, ptr %45, align 4, !tbaa !9
  %32341 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %32341, ptr %46, align 4, !tbaa !9
  %32342 = load ptr, ptr %5, align 8, !tbaa !5
  %32343 = getelementptr inbounds %struct.w2c_hermes, ptr %32342, i32 0, i32 6
  %32344 = load i32, ptr %45, align 4, !tbaa !9
  %32345 = zext i32 %32344 to i64
  %32346 = add i64 %32345, 512
  %32347 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32343, i64 noundef %32346, i32 noundef %32347)
  %32348 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32348, ptr %45, align 4, !tbaa !9
  %32349 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %32349, ptr %46, align 4, !tbaa !9
  %32350 = load ptr, ptr %5, align 8, !tbaa !5
  %32351 = getelementptr inbounds %struct.w2c_hermes, ptr %32350, i32 0, i32 6
  %32352 = load i32, ptr %45, align 4, !tbaa !9
  %32353 = zext i32 %32352 to i64
  %32354 = add i64 %32353, 508
  %32355 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32351, i64 noundef %32354, i32 noundef %32355)
  %32356 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32356, ptr %45, align 4, !tbaa !9
  %32357 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32357, ptr %46, align 4, !tbaa !9
  %32358 = load ptr, ptr %5, align 8, !tbaa !5
  %32359 = getelementptr inbounds %struct.w2c_hermes, ptr %32358, i32 0, i32 6
  %32360 = load i32, ptr %46, align 4, !tbaa !9
  %32361 = zext i32 %32360 to i64
  %32362 = add i64 %32361, 1
  %32363 = call i32 @i32_load8_u(ptr noundef %32359, i64 noundef %32362)
  store i32 %32363, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32364 = load i32, ptr %47, align 4, !tbaa !9
  %32365 = and i32 %32364, 31
  %32366 = load i32, ptr %46, align 4, !tbaa !9
  %32367 = shl i32 %32366, %32365
  store i32 %32367, ptr %46, align 4, !tbaa !9
  %32368 = load i32, ptr %46, align 4, !tbaa !9
  %32369 = load i32, ptr %45, align 4, !tbaa !9
  %32370 = add i32 %32369, %32368
  store i32 %32370, ptr %45, align 4, !tbaa !9
  %32371 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %32371, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %32372 = load i32, ptr %47, align 4, !tbaa !9
  %32373 = and i32 %32372, 31
  %32374 = load i32, ptr %46, align 4, !tbaa !9
  %32375 = lshr i32 %32374, %32373
  store i32 %32375, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %32376 = load i32, ptr %47, align 4, !tbaa !9
  %32377 = load i32, ptr %46, align 4, !tbaa !9
  %32378 = and i32 %32377, %32376
  store i32 %32378, ptr %46, align 4, !tbaa !9
  %32379 = load i32, ptr %46, align 4, !tbaa !9
  %32380 = zext i32 %32379 to i64
  store i64 %32380, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32381 = load i64, ptr %56, align 8, !tbaa !11
  %32382 = load i64, ptr %55, align 8, !tbaa !11
  %32383 = or i64 %32382, %32381
  store i64 %32383, ptr %55, align 8, !tbaa !11
  %32384 = load ptr, ptr %5, align 8, !tbaa !5
  %32385 = getelementptr inbounds %struct.w2c_hermes, ptr %32384, i32 0, i32 6
  %32386 = load i32, ptr %45, align 4, !tbaa !9
  %32387 = zext i32 %32386 to i64
  %32388 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32385, i64 noundef %32387, i64 noundef %32388)
  %32389 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32389, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32390 = load i32, ptr %46, align 4, !tbaa !9
  %32391 = load i32, ptr %45, align 4, !tbaa !9
  %32392 = add i32 %32391, %32390
  store i32 %32392, ptr %45, align 4, !tbaa !9
  %32393 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32393, ptr %6, align 4, !tbaa !9
  br label %2945

32394:                                            ; preds = %3108
  %32395 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32395, ptr %45, align 4, !tbaa !9
  %32396 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32396, ptr %46, align 4, !tbaa !9
  %32397 = load ptr, ptr %5, align 8, !tbaa !5
  %32398 = getelementptr inbounds %struct.w2c_hermes, ptr %32397, i32 0, i32 6
  %32399 = load i32, ptr %46, align 4, !tbaa !9
  %32400 = zext i32 %32399 to i64
  %32401 = add i64 %32400, 2
  %32402 = call i32 @i32_load8_u(ptr noundef %32398, i64 noundef %32401)
  store i32 %32402, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32403 = load i32, ptr %47, align 4, !tbaa !9
  %32404 = and i32 %32403, 31
  %32405 = load i32, ptr %46, align 4, !tbaa !9
  %32406 = shl i32 %32405, %32404
  store i32 %32406, ptr %46, align 4, !tbaa !9
  %32407 = load i32, ptr %46, align 4, !tbaa !9
  %32408 = load i32, ptr %45, align 4, !tbaa !9
  %32409 = add i32 %32408, %32407
  store i32 %32409, ptr %45, align 4, !tbaa !9
  %32410 = load ptr, ptr %5, align 8, !tbaa !5
  %32411 = getelementptr inbounds %struct.w2c_hermes, ptr %32410, i32 0, i32 6
  %32412 = load i32, ptr %45, align 4, !tbaa !9
  %32413 = zext i32 %32412 to i64
  %32414 = call i64 @i64_load(ptr noundef %32411, i64 noundef %32413)
  store i64 %32414, ptr %54, align 8, !tbaa !11
  %32415 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %32415, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32416 = load i64, ptr %54, align 8, !tbaa !11
  %32417 = load i64, ptr %55, align 8, !tbaa !11
  %32418 = icmp ugt i64 %32416, %32417
  %32419 = zext i1 %32418 to i32
  store i32 %32419, ptr %45, align 4, !tbaa !9
  %32420 = load i32, ptr %45, align 4, !tbaa !9
  %32421 = icmp ne i32 %32420, 0
  br i1 %32421, label %32422, label %32423

32422:                                            ; preds = %32394
  br label %32493

32423:                                            ; preds = %32394
  %32424 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32424, ptr %45, align 4, !tbaa !9
  %32425 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32425, ptr %46, align 4, !tbaa !9
  %32426 = load ptr, ptr %5, align 8, !tbaa !5
  %32427 = getelementptr inbounds %struct.w2c_hermes, ptr %32426, i32 0, i32 6
  %32428 = load i32, ptr %46, align 4, !tbaa !9
  %32429 = zext i32 %32428 to i64
  %32430 = add i64 %32429, 3
  %32431 = call i32 @i32_load8_u(ptr noundef %32427, i64 noundef %32430)
  store i32 %32431, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32432 = load i32, ptr %47, align 4, !tbaa !9
  %32433 = and i32 %32432, 31
  %32434 = load i32, ptr %46, align 4, !tbaa !9
  %32435 = shl i32 %32434, %32433
  store i32 %32435, ptr %46, align 4, !tbaa !9
  %32436 = load i32, ptr %46, align 4, !tbaa !9
  %32437 = load i32, ptr %45, align 4, !tbaa !9
  %32438 = add i32 %32437, %32436
  store i32 %32438, ptr %45, align 4, !tbaa !9
  %32439 = load ptr, ptr %5, align 8, !tbaa !5
  %32440 = getelementptr inbounds %struct.w2c_hermes, ptr %32439, i32 0, i32 6
  %32441 = load i32, ptr %45, align 4, !tbaa !9
  %32442 = zext i32 %32441 to i64
  %32443 = call i64 @i64_load(ptr noundef %32440, i64 noundef %32442)
  store i64 %32443, ptr %54, align 8, !tbaa !11
  %32444 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %32444, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32445 = load i64, ptr %54, align 8, !tbaa !11
  %32446 = load i64, ptr %55, align 8, !tbaa !11
  %32447 = icmp ugt i64 %32445, %32446
  %32448 = zext i1 %32447 to i32
  store i32 %32448, ptr %45, align 4, !tbaa !9
  %32449 = load i32, ptr %45, align 4, !tbaa !9
  %32450 = icmp ne i32 %32449, 0
  br i1 %32450, label %32451, label %32452

32451:                                            ; preds = %32423
  br label %32493

32452:                                            ; preds = %32423
  %32453 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32453, ptr %45, align 4, !tbaa !9
  %32454 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32454, ptr %46, align 4, !tbaa !9
  %32455 = load ptr, ptr %5, align 8, !tbaa !5
  %32456 = getelementptr inbounds %struct.w2c_hermes, ptr %32455, i32 0, i32 6
  %32457 = load i32, ptr %46, align 4, !tbaa !9
  %32458 = zext i32 %32457 to i64
  %32459 = add i64 %32458, 1
  %32460 = call i32 @i32_load8_u(ptr noundef %32456, i64 noundef %32459)
  store i32 %32460, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32461 = load i32, ptr %47, align 4, !tbaa !9
  %32462 = and i32 %32461, 31
  %32463 = load i32, ptr %46, align 4, !tbaa !9
  %32464 = shl i32 %32463, %32462
  store i32 %32464, ptr %46, align 4, !tbaa !9
  %32465 = load i32, ptr %46, align 4, !tbaa !9
  %32466 = load i32, ptr %45, align 4, !tbaa !9
  %32467 = add i32 %32466, %32465
  store i32 %32467, ptr %45, align 4, !tbaa !9
  %32468 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %32468, ptr %55, align 8, !tbaa !11
  %32469 = load i64, ptr %55, align 8, !tbaa !11
  %32470 = call double @f64_reinterpret_i64(i64 noundef %32469)
  store double %32470, ptr %61, align 8, !tbaa !13
  %32471 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %32471, ptr %56, align 8, !tbaa !11
  %32472 = load i64, ptr %56, align 8, !tbaa !11
  %32473 = call double @f64_reinterpret_i64(i64 noundef %32472)
  store double %32473, ptr %62, align 8, !tbaa !13
  %32474 = load double, ptr %61, align 8, !tbaa !13
  %32475 = load double, ptr %62, align 8, !tbaa !13
  %32476 = fcmp ogt double %32474, %32475
  %32477 = zext i1 %32476 to i32
  store i32 %32477, ptr %46, align 4, !tbaa !9
  %32478 = load i32, ptr %46, align 4, !tbaa !9
  %32479 = zext i32 %32478 to i64
  store i64 %32479, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32480 = load i64, ptr %56, align 8, !tbaa !11
  %32481 = load i64, ptr %55, align 8, !tbaa !11
  %32482 = or i64 %32481, %32480
  store i64 %32482, ptr %55, align 8, !tbaa !11
  %32483 = load ptr, ptr %5, align 8, !tbaa !5
  %32484 = getelementptr inbounds %struct.w2c_hermes, ptr %32483, i32 0, i32 6
  %32485 = load i32, ptr %45, align 4, !tbaa !9
  %32486 = zext i32 %32485 to i64
  %32487 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32484, i64 noundef %32486, i64 noundef %32487)
  %32488 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32488, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32489 = load i32, ptr %46, align 4, !tbaa !9
  %32490 = load i32, ptr %45, align 4, !tbaa !9
  %32491 = add i32 %32490, %32489
  store i32 %32491, ptr %45, align 4, !tbaa !9
  %32492 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32492, ptr %6, align 4, !tbaa !9
  br label %2945

32493:                                            ; preds = %32451, %32422
  %32494 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32494, ptr %45, align 4, !tbaa !9
  %32495 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32495, ptr %46, align 4, !tbaa !9
  %32496 = load ptr, ptr %5, align 8, !tbaa !5
  %32497 = getelementptr inbounds %struct.w2c_hermes, ptr %32496, i32 0, i32 6
  %32498 = load i32, ptr %45, align 4, !tbaa !9
  %32499 = zext i32 %32498 to i64
  %32500 = add i64 %32499, 5808
  %32501 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32497, i64 noundef %32500, i32 noundef %32501)
  %32502 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32502, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %32503 = load i32, ptr %46, align 4, !tbaa !9
  %32504 = load i32, ptr %45, align 4, !tbaa !9
  %32505 = add i32 %32504, %32503
  store i32 %32505, ptr %45, align 4, !tbaa !9
  %32506 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32506, ptr %46, align 4, !tbaa !9
  %32507 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32507, ptr %47, align 4, !tbaa !9
  %32508 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32508, ptr %48, align 4, !tbaa !9
  %32509 = load ptr, ptr %5, align 8, !tbaa !5
  %32510 = getelementptr inbounds %struct.w2c_hermes, ptr %32509, i32 0, i32 6
  %32511 = load i32, ptr %48, align 4, !tbaa !9
  %32512 = zext i32 %32511 to i64
  %32513 = add i64 %32512, 2
  %32514 = call i32 @i32_load8_u(ptr noundef %32510, i64 noundef %32513)
  store i32 %32514, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %32515 = load i32, ptr %49, align 4, !tbaa !9
  %32516 = and i32 %32515, 31
  %32517 = load i32, ptr %48, align 4, !tbaa !9
  %32518 = shl i32 %32517, %32516
  store i32 %32518, ptr %48, align 4, !tbaa !9
  %32519 = load i32, ptr %48, align 4, !tbaa !9
  %32520 = load i32, ptr %47, align 4, !tbaa !9
  %32521 = add i32 %32520, %32519
  store i32 %32521, ptr %47, align 4, !tbaa !9
  %32522 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32522, ptr %48, align 4, !tbaa !9
  %32523 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32523, ptr %49, align 4, !tbaa !9
  %32524 = load ptr, ptr %5, align 8, !tbaa !5
  %32525 = getelementptr inbounds %struct.w2c_hermes, ptr %32524, i32 0, i32 6
  %32526 = load i32, ptr %49, align 4, !tbaa !9
  %32527 = zext i32 %32526 to i64
  %32528 = add i64 %32527, 3
  %32529 = call i32 @i32_load8_u(ptr noundef %32525, i64 noundef %32528)
  store i32 %32529, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %32530 = load i32, ptr %50, align 4, !tbaa !9
  %32531 = and i32 %32530, 31
  %32532 = load i32, ptr %49, align 4, !tbaa !9
  %32533 = shl i32 %32532, %32531
  store i32 %32533, ptr %49, align 4, !tbaa !9
  %32534 = load i32, ptr %49, align 4, !tbaa !9
  %32535 = load i32, ptr %48, align 4, !tbaa !9
  %32536 = add i32 %32535, %32534
  store i32 %32536, ptr %48, align 4, !tbaa !9
  %32537 = load ptr, ptr %5, align 8, !tbaa !5
  %32538 = load i32, ptr %45, align 4, !tbaa !9
  %32539 = load i32, ptr %46, align 4, !tbaa !9
  %32540 = load i32, ptr %47, align 4, !tbaa !9
  %32541 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %32537, i32 noundef %32538, i32 noundef %32539, i32 noundef %32540, i32 noundef %32541)
  %32542 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32542, ptr %45, align 4, !tbaa !9
  %32543 = load ptr, ptr %5, align 8, !tbaa !5
  %32544 = getelementptr inbounds %struct.w2c_hermes, ptr %32543, i32 0, i32 6
  %32545 = load i32, ptr %45, align 4, !tbaa !9
  %32546 = zext i32 %32545 to i64
  %32547 = add i64 %32546, 5808
  %32548 = call i32 @i32_load(ptr noundef %32544, i64 noundef %32547)
  store i32 %32548, ptr %45, align 4, !tbaa !9
  %32549 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32549, ptr %6, align 4, !tbaa !9
  %32550 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32550, ptr %45, align 4, !tbaa !9
  %32551 = load ptr, ptr %5, align 8, !tbaa !5
  %32552 = getelementptr inbounds %struct.w2c_hermes, ptr %32551, i32 0, i32 6
  %32553 = load i32, ptr %45, align 4, !tbaa !9
  %32554 = zext i32 %32553 to i64
  %32555 = add i64 %32554, 304
  %32556 = call i32 @i32_load16_u(ptr noundef %32552, i64 noundef %32555)
  store i32 %32556, ptr %45, align 4, !tbaa !9
  %32557 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32557, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %32558 = load i32, ptr %46, align 4, !tbaa !9
  %32559 = load i32, ptr %45, align 4, !tbaa !9
  %32560 = and i32 %32559, %32558
  store i32 %32560, ptr %45, align 4, !tbaa !9
  %32561 = load i32, ptr %45, align 4, !tbaa !9
  %32562 = icmp ne i32 %32561, 0
  %32563 = xor i1 %32562, true
  %32564 = zext i1 %32563 to i32
  store i32 %32564, ptr %45, align 4, !tbaa !9
  %32565 = load i32, ptr %45, align 4, !tbaa !9
  %32566 = icmp ne i32 %32565, 0
  br i1 %32566, label %32567, label %32568

32567:                                            ; preds = %32493
  br label %43136

32568:                                            ; preds = %32493
  %32569 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32569, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %32570 = load ptr, ptr %5, align 8, !tbaa !5
  %32571 = getelementptr inbounds %struct.w2c_hermes, ptr %32570, i32 0, i32 6
  %32572 = load i32, ptr %45, align 4, !tbaa !9
  %32573 = zext i32 %32572 to i64
  %32574 = add i64 %32573, 516
  %32575 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32571, i64 noundef %32574, i32 noundef %32575)
  %32576 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32576, ptr %45, align 4, !tbaa !9
  %32577 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %32577, ptr %46, align 4, !tbaa !9
  %32578 = load ptr, ptr %5, align 8, !tbaa !5
  %32579 = getelementptr inbounds %struct.w2c_hermes, ptr %32578, i32 0, i32 6
  %32580 = load i32, ptr %45, align 4, !tbaa !9
  %32581 = zext i32 %32580 to i64
  %32582 = add i64 %32581, 512
  %32583 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32579, i64 noundef %32582, i32 noundef %32583)
  %32584 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32584, ptr %45, align 4, !tbaa !9
  %32585 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %32585, ptr %46, align 4, !tbaa !9
  %32586 = load ptr, ptr %5, align 8, !tbaa !5
  %32587 = getelementptr inbounds %struct.w2c_hermes, ptr %32586, i32 0, i32 6
  %32588 = load i32, ptr %45, align 4, !tbaa !9
  %32589 = zext i32 %32588 to i64
  %32590 = add i64 %32589, 508
  %32591 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32587, i64 noundef %32590, i32 noundef %32591)
  %32592 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32592, ptr %45, align 4, !tbaa !9
  %32593 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32593, ptr %46, align 4, !tbaa !9
  %32594 = load ptr, ptr %5, align 8, !tbaa !5
  %32595 = getelementptr inbounds %struct.w2c_hermes, ptr %32594, i32 0, i32 6
  %32596 = load i32, ptr %46, align 4, !tbaa !9
  %32597 = zext i32 %32596 to i64
  %32598 = add i64 %32597, 1
  %32599 = call i32 @i32_load8_u(ptr noundef %32595, i64 noundef %32598)
  store i32 %32599, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32600 = load i32, ptr %47, align 4, !tbaa !9
  %32601 = and i32 %32600, 31
  %32602 = load i32, ptr %46, align 4, !tbaa !9
  %32603 = shl i32 %32602, %32601
  store i32 %32603, ptr %46, align 4, !tbaa !9
  %32604 = load i32, ptr %46, align 4, !tbaa !9
  %32605 = load i32, ptr %45, align 4, !tbaa !9
  %32606 = add i32 %32605, %32604
  store i32 %32606, ptr %45, align 4, !tbaa !9
  %32607 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %32607, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %32608 = load i32, ptr %47, align 4, !tbaa !9
  %32609 = and i32 %32608, 31
  %32610 = load i32, ptr %46, align 4, !tbaa !9
  %32611 = lshr i32 %32610, %32609
  store i32 %32611, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %32612 = load i32, ptr %47, align 4, !tbaa !9
  %32613 = load i32, ptr %46, align 4, !tbaa !9
  %32614 = and i32 %32613, %32612
  store i32 %32614, ptr %46, align 4, !tbaa !9
  %32615 = load i32, ptr %46, align 4, !tbaa !9
  %32616 = zext i32 %32615 to i64
  store i64 %32616, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32617 = load i64, ptr %56, align 8, !tbaa !11
  %32618 = load i64, ptr %55, align 8, !tbaa !11
  %32619 = or i64 %32618, %32617
  store i64 %32619, ptr %55, align 8, !tbaa !11
  %32620 = load ptr, ptr %5, align 8, !tbaa !5
  %32621 = getelementptr inbounds %struct.w2c_hermes, ptr %32620, i32 0, i32 6
  %32622 = load i32, ptr %45, align 4, !tbaa !9
  %32623 = zext i32 %32622 to i64
  %32624 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32621, i64 noundef %32623, i64 noundef %32624)
  %32625 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32625, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32626 = load i32, ptr %46, align 4, !tbaa !9
  %32627 = load i32, ptr %45, align 4, !tbaa !9
  %32628 = add i32 %32627, %32626
  store i32 %32628, ptr %45, align 4, !tbaa !9
  %32629 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32629, ptr %6, align 4, !tbaa !9
  br label %2945

32630:                                            ; preds = %3109
  %32631 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32631, ptr %45, align 4, !tbaa !9
  %32632 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32632, ptr %46, align 4, !tbaa !9
  %32633 = load ptr, ptr %5, align 8, !tbaa !5
  %32634 = getelementptr inbounds %struct.w2c_hermes, ptr %32633, i32 0, i32 6
  %32635 = load i32, ptr %46, align 4, !tbaa !9
  %32636 = zext i32 %32635 to i64
  %32637 = add i64 %32636, 2
  %32638 = call i32 @i32_load8_u(ptr noundef %32634, i64 noundef %32637)
  store i32 %32638, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32639 = load i32, ptr %47, align 4, !tbaa !9
  %32640 = and i32 %32639, 31
  %32641 = load i32, ptr %46, align 4, !tbaa !9
  %32642 = shl i32 %32641, %32640
  store i32 %32642, ptr %46, align 4, !tbaa !9
  %32643 = load i32, ptr %46, align 4, !tbaa !9
  %32644 = load i32, ptr %45, align 4, !tbaa !9
  %32645 = add i32 %32644, %32643
  store i32 %32645, ptr %45, align 4, !tbaa !9
  %32646 = load ptr, ptr %5, align 8, !tbaa !5
  %32647 = getelementptr inbounds %struct.w2c_hermes, ptr %32646, i32 0, i32 6
  %32648 = load i32, ptr %45, align 4, !tbaa !9
  %32649 = zext i32 %32648 to i64
  %32650 = call i64 @i64_load(ptr noundef %32647, i64 noundef %32649)
  store i64 %32650, ptr %54, align 8, !tbaa !11
  %32651 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %32651, ptr %41, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32652 = load i64, ptr %54, align 8, !tbaa !11
  %32653 = load i64, ptr %55, align 8, !tbaa !11
  %32654 = icmp ugt i64 %32652, %32653
  %32655 = zext i1 %32654 to i32
  store i32 %32655, ptr %45, align 4, !tbaa !9
  %32656 = load i32, ptr %45, align 4, !tbaa !9
  %32657 = icmp ne i32 %32656, 0
  br i1 %32657, label %32658, label %32659

32658:                                            ; preds = %32630
  br label %32729

32659:                                            ; preds = %32630
  %32660 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32660, ptr %45, align 4, !tbaa !9
  %32661 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32661, ptr %46, align 4, !tbaa !9
  %32662 = load ptr, ptr %5, align 8, !tbaa !5
  %32663 = getelementptr inbounds %struct.w2c_hermes, ptr %32662, i32 0, i32 6
  %32664 = load i32, ptr %46, align 4, !tbaa !9
  %32665 = zext i32 %32664 to i64
  %32666 = add i64 %32665, 3
  %32667 = call i32 @i32_load8_u(ptr noundef %32663, i64 noundef %32666)
  store i32 %32667, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32668 = load i32, ptr %47, align 4, !tbaa !9
  %32669 = and i32 %32668, 31
  %32670 = load i32, ptr %46, align 4, !tbaa !9
  %32671 = shl i32 %32670, %32669
  store i32 %32671, ptr %46, align 4, !tbaa !9
  %32672 = load i32, ptr %46, align 4, !tbaa !9
  %32673 = load i32, ptr %45, align 4, !tbaa !9
  %32674 = add i32 %32673, %32672
  store i32 %32674, ptr %45, align 4, !tbaa !9
  %32675 = load ptr, ptr %5, align 8, !tbaa !5
  %32676 = getelementptr inbounds %struct.w2c_hermes, ptr %32675, i32 0, i32 6
  %32677 = load i32, ptr %45, align 4, !tbaa !9
  %32678 = zext i32 %32677 to i64
  %32679 = call i64 @i64_load(ptr noundef %32676, i64 noundef %32678)
  store i64 %32679, ptr %54, align 8, !tbaa !11
  %32680 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %32680, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32681 = load i64, ptr %54, align 8, !tbaa !11
  %32682 = load i64, ptr %55, align 8, !tbaa !11
  %32683 = icmp ugt i64 %32681, %32682
  %32684 = zext i1 %32683 to i32
  store i32 %32684, ptr %45, align 4, !tbaa !9
  %32685 = load i32, ptr %45, align 4, !tbaa !9
  %32686 = icmp ne i32 %32685, 0
  br i1 %32686, label %32687, label %32688

32687:                                            ; preds = %32659
  br label %32729

32688:                                            ; preds = %32659
  %32689 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32689, ptr %45, align 4, !tbaa !9
  %32690 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32690, ptr %46, align 4, !tbaa !9
  %32691 = load ptr, ptr %5, align 8, !tbaa !5
  %32692 = getelementptr inbounds %struct.w2c_hermes, ptr %32691, i32 0, i32 6
  %32693 = load i32, ptr %46, align 4, !tbaa !9
  %32694 = zext i32 %32693 to i64
  %32695 = add i64 %32694, 1
  %32696 = call i32 @i32_load8_u(ptr noundef %32692, i64 noundef %32695)
  store i32 %32696, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32697 = load i32, ptr %47, align 4, !tbaa !9
  %32698 = and i32 %32697, 31
  %32699 = load i32, ptr %46, align 4, !tbaa !9
  %32700 = shl i32 %32699, %32698
  store i32 %32700, ptr %46, align 4, !tbaa !9
  %32701 = load i32, ptr %46, align 4, !tbaa !9
  %32702 = load i32, ptr %45, align 4, !tbaa !9
  %32703 = add i32 %32702, %32701
  store i32 %32703, ptr %45, align 4, !tbaa !9
  %32704 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %32704, ptr %55, align 8, !tbaa !11
  %32705 = load i64, ptr %55, align 8, !tbaa !11
  %32706 = call double @f64_reinterpret_i64(i64 noundef %32705)
  store double %32706, ptr %61, align 8, !tbaa !13
  %32707 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %32707, ptr %56, align 8, !tbaa !11
  %32708 = load i64, ptr %56, align 8, !tbaa !11
  %32709 = call double @f64_reinterpret_i64(i64 noundef %32708)
  store double %32709, ptr %62, align 8, !tbaa !13
  %32710 = load double, ptr %61, align 8, !tbaa !13
  %32711 = load double, ptr %62, align 8, !tbaa !13
  %32712 = fcmp oge double %32710, %32711
  %32713 = zext i1 %32712 to i32
  store i32 %32713, ptr %46, align 4, !tbaa !9
  %32714 = load i32, ptr %46, align 4, !tbaa !9
  %32715 = zext i32 %32714 to i64
  store i64 %32715, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32716 = load i64, ptr %56, align 8, !tbaa !11
  %32717 = load i64, ptr %55, align 8, !tbaa !11
  %32718 = or i64 %32717, %32716
  store i64 %32718, ptr %55, align 8, !tbaa !11
  %32719 = load ptr, ptr %5, align 8, !tbaa !5
  %32720 = getelementptr inbounds %struct.w2c_hermes, ptr %32719, i32 0, i32 6
  %32721 = load i32, ptr %45, align 4, !tbaa !9
  %32722 = zext i32 %32721 to i64
  %32723 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32720, i64 noundef %32722, i64 noundef %32723)
  %32724 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32724, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32725 = load i32, ptr %46, align 4, !tbaa !9
  %32726 = load i32, ptr %45, align 4, !tbaa !9
  %32727 = add i32 %32726, %32725
  store i32 %32727, ptr %45, align 4, !tbaa !9
  %32728 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32728, ptr %6, align 4, !tbaa !9
  br label %2945

32729:                                            ; preds = %32687, %32658
  %32730 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32730, ptr %45, align 4, !tbaa !9
  %32731 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32731, ptr %46, align 4, !tbaa !9
  %32732 = load ptr, ptr %5, align 8, !tbaa !5
  %32733 = getelementptr inbounds %struct.w2c_hermes, ptr %32732, i32 0, i32 6
  %32734 = load i32, ptr %45, align 4, !tbaa !9
  %32735 = zext i32 %32734 to i64
  %32736 = add i64 %32735, 5808
  %32737 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32733, i64 noundef %32736, i32 noundef %32737)
  %32738 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32738, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %32739 = load i32, ptr %46, align 4, !tbaa !9
  %32740 = load i32, ptr %45, align 4, !tbaa !9
  %32741 = add i32 %32740, %32739
  store i32 %32741, ptr %45, align 4, !tbaa !9
  %32742 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32742, ptr %46, align 4, !tbaa !9
  %32743 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32743, ptr %47, align 4, !tbaa !9
  %32744 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32744, ptr %48, align 4, !tbaa !9
  %32745 = load ptr, ptr %5, align 8, !tbaa !5
  %32746 = getelementptr inbounds %struct.w2c_hermes, ptr %32745, i32 0, i32 6
  %32747 = load i32, ptr %48, align 4, !tbaa !9
  %32748 = zext i32 %32747 to i64
  %32749 = add i64 %32748, 2
  %32750 = call i32 @i32_load8_u(ptr noundef %32746, i64 noundef %32749)
  store i32 %32750, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %32751 = load i32, ptr %49, align 4, !tbaa !9
  %32752 = and i32 %32751, 31
  %32753 = load i32, ptr %48, align 4, !tbaa !9
  %32754 = shl i32 %32753, %32752
  store i32 %32754, ptr %48, align 4, !tbaa !9
  %32755 = load i32, ptr %48, align 4, !tbaa !9
  %32756 = load i32, ptr %47, align 4, !tbaa !9
  %32757 = add i32 %32756, %32755
  store i32 %32757, ptr %47, align 4, !tbaa !9
  %32758 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32758, ptr %48, align 4, !tbaa !9
  %32759 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32759, ptr %49, align 4, !tbaa !9
  %32760 = load ptr, ptr %5, align 8, !tbaa !5
  %32761 = getelementptr inbounds %struct.w2c_hermes, ptr %32760, i32 0, i32 6
  %32762 = load i32, ptr %49, align 4, !tbaa !9
  %32763 = zext i32 %32762 to i64
  %32764 = add i64 %32763, 3
  %32765 = call i32 @i32_load8_u(ptr noundef %32761, i64 noundef %32764)
  store i32 %32765, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %32766 = load i32, ptr %50, align 4, !tbaa !9
  %32767 = and i32 %32766, 31
  %32768 = load i32, ptr %49, align 4, !tbaa !9
  %32769 = shl i32 %32768, %32767
  store i32 %32769, ptr %49, align 4, !tbaa !9
  %32770 = load i32, ptr %49, align 4, !tbaa !9
  %32771 = load i32, ptr %48, align 4, !tbaa !9
  %32772 = add i32 %32771, %32770
  store i32 %32772, ptr %48, align 4, !tbaa !9
  %32773 = load ptr, ptr %5, align 8, !tbaa !5
  %32774 = load i32, ptr %45, align 4, !tbaa !9
  %32775 = load i32, ptr %46, align 4, !tbaa !9
  %32776 = load i32, ptr %47, align 4, !tbaa !9
  %32777 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %32773, i32 noundef %32774, i32 noundef %32775, i32 noundef %32776, i32 noundef %32777)
  %32778 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32778, ptr %45, align 4, !tbaa !9
  %32779 = load ptr, ptr %5, align 8, !tbaa !5
  %32780 = getelementptr inbounds %struct.w2c_hermes, ptr %32779, i32 0, i32 6
  %32781 = load i32, ptr %45, align 4, !tbaa !9
  %32782 = zext i32 %32781 to i64
  %32783 = add i64 %32782, 5808
  %32784 = call i32 @i32_load(ptr noundef %32780, i64 noundef %32783)
  store i32 %32784, ptr %45, align 4, !tbaa !9
  %32785 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32785, ptr %6, align 4, !tbaa !9
  %32786 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32786, ptr %45, align 4, !tbaa !9
  %32787 = load ptr, ptr %5, align 8, !tbaa !5
  %32788 = getelementptr inbounds %struct.w2c_hermes, ptr %32787, i32 0, i32 6
  %32789 = load i32, ptr %45, align 4, !tbaa !9
  %32790 = zext i32 %32789 to i64
  %32791 = add i64 %32790, 304
  %32792 = call i32 @i32_load16_u(ptr noundef %32788, i64 noundef %32791)
  store i32 %32792, ptr %45, align 4, !tbaa !9
  %32793 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32793, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %32794 = load i32, ptr %46, align 4, !tbaa !9
  %32795 = load i32, ptr %45, align 4, !tbaa !9
  %32796 = and i32 %32795, %32794
  store i32 %32796, ptr %45, align 4, !tbaa !9
  %32797 = load i32, ptr %45, align 4, !tbaa !9
  %32798 = icmp ne i32 %32797, 0
  %32799 = xor i1 %32798, true
  %32800 = zext i1 %32799 to i32
  store i32 %32800, ptr %45, align 4, !tbaa !9
  %32801 = load i32, ptr %45, align 4, !tbaa !9
  %32802 = icmp ne i32 %32801, 0
  br i1 %32802, label %32803, label %32804

32803:                                            ; preds = %32729
  br label %43136

32804:                                            ; preds = %32729
  %32805 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32805, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %32806 = load ptr, ptr %5, align 8, !tbaa !5
  %32807 = getelementptr inbounds %struct.w2c_hermes, ptr %32806, i32 0, i32 6
  %32808 = load i32, ptr %45, align 4, !tbaa !9
  %32809 = zext i32 %32808 to i64
  %32810 = add i64 %32809, 516
  %32811 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32807, i64 noundef %32810, i32 noundef %32811)
  %32812 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32812, ptr %45, align 4, !tbaa !9
  %32813 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %32813, ptr %46, align 4, !tbaa !9
  %32814 = load ptr, ptr %5, align 8, !tbaa !5
  %32815 = getelementptr inbounds %struct.w2c_hermes, ptr %32814, i32 0, i32 6
  %32816 = load i32, ptr %45, align 4, !tbaa !9
  %32817 = zext i32 %32816 to i64
  %32818 = add i64 %32817, 512
  %32819 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32815, i64 noundef %32818, i32 noundef %32819)
  %32820 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32820, ptr %45, align 4, !tbaa !9
  %32821 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %32821, ptr %46, align 4, !tbaa !9
  %32822 = load ptr, ptr %5, align 8, !tbaa !5
  %32823 = getelementptr inbounds %struct.w2c_hermes, ptr %32822, i32 0, i32 6
  %32824 = load i32, ptr %45, align 4, !tbaa !9
  %32825 = zext i32 %32824 to i64
  %32826 = add i64 %32825, 508
  %32827 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32823, i64 noundef %32826, i32 noundef %32827)
  %32828 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32828, ptr %45, align 4, !tbaa !9
  %32829 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32829, ptr %46, align 4, !tbaa !9
  %32830 = load ptr, ptr %5, align 8, !tbaa !5
  %32831 = getelementptr inbounds %struct.w2c_hermes, ptr %32830, i32 0, i32 6
  %32832 = load i32, ptr %46, align 4, !tbaa !9
  %32833 = zext i32 %32832 to i64
  %32834 = add i64 %32833, 1
  %32835 = call i32 @i32_load8_u(ptr noundef %32831, i64 noundef %32834)
  store i32 %32835, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32836 = load i32, ptr %47, align 4, !tbaa !9
  %32837 = and i32 %32836, 31
  %32838 = load i32, ptr %46, align 4, !tbaa !9
  %32839 = shl i32 %32838, %32837
  store i32 %32839, ptr %46, align 4, !tbaa !9
  %32840 = load i32, ptr %46, align 4, !tbaa !9
  %32841 = load i32, ptr %45, align 4, !tbaa !9
  %32842 = add i32 %32841, %32840
  store i32 %32842, ptr %45, align 4, !tbaa !9
  %32843 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %32843, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %32844 = load i32, ptr %47, align 4, !tbaa !9
  %32845 = and i32 %32844, 31
  %32846 = load i32, ptr %46, align 4, !tbaa !9
  %32847 = lshr i32 %32846, %32845
  store i32 %32847, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %32848 = load i32, ptr %47, align 4, !tbaa !9
  %32849 = load i32, ptr %46, align 4, !tbaa !9
  %32850 = and i32 %32849, %32848
  store i32 %32850, ptr %46, align 4, !tbaa !9
  %32851 = load i32, ptr %46, align 4, !tbaa !9
  %32852 = zext i32 %32851 to i64
  store i64 %32852, ptr %55, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %56, align 8, !tbaa !11
  %32853 = load i64, ptr %56, align 8, !tbaa !11
  %32854 = load i64, ptr %55, align 8, !tbaa !11
  %32855 = or i64 %32854, %32853
  store i64 %32855, ptr %55, align 8, !tbaa !11
  %32856 = load ptr, ptr %5, align 8, !tbaa !5
  %32857 = getelementptr inbounds %struct.w2c_hermes, ptr %32856, i32 0, i32 6
  %32858 = load i32, ptr %45, align 4, !tbaa !9
  %32859 = zext i32 %32858 to i64
  %32860 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %32857, i64 noundef %32859, i64 noundef %32860)
  %32861 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32861, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32862 = load i32, ptr %46, align 4, !tbaa !9
  %32863 = load i32, ptr %45, align 4, !tbaa !9
  %32864 = add i32 %32863, %32862
  store i32 %32864, ptr %45, align 4, !tbaa !9
  %32865 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32865, ptr %6, align 4, !tbaa !9
  br label %2945

32866:                                            ; preds = %3110
  %32867 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32867, ptr %45, align 4, !tbaa !9
  %32868 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32868, ptr %46, align 4, !tbaa !9
  %32869 = load ptr, ptr %5, align 8, !tbaa !5
  %32870 = getelementptr inbounds %struct.w2c_hermes, ptr %32869, i32 0, i32 6
  %32871 = load i32, ptr %46, align 4, !tbaa !9
  %32872 = zext i32 %32871 to i64
  %32873 = add i64 %32872, 2
  %32874 = call i32 @i32_load8_u(ptr noundef %32870, i64 noundef %32873)
  store i32 %32874, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32875 = load i32, ptr %47, align 4, !tbaa !9
  %32876 = and i32 %32875, 31
  %32877 = load i32, ptr %46, align 4, !tbaa !9
  %32878 = shl i32 %32877, %32876
  store i32 %32878, ptr %46, align 4, !tbaa !9
  %32879 = load i32, ptr %46, align 4, !tbaa !9
  %32880 = load i32, ptr %45, align 4, !tbaa !9
  %32881 = add i32 %32880, %32879
  store i32 %32881, ptr %45, align 4, !tbaa !9
  %32882 = load ptr, ptr %5, align 8, !tbaa !5
  %32883 = getelementptr inbounds %struct.w2c_hermes, ptr %32882, i32 0, i32 6
  %32884 = load i32, ptr %45, align 4, !tbaa !9
  %32885 = zext i32 %32884 to i64
  %32886 = call i64 @i64_load(ptr noundef %32883, i64 noundef %32885)
  store i64 %32886, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32887 = load i64, ptr %54, align 8, !tbaa !11
  %32888 = load i64, ptr %55, align 8, !tbaa !11
  %32889 = icmp ugt i64 %32887, %32888
  %32890 = zext i1 %32889 to i32
  store i32 %32890, ptr %45, align 4, !tbaa !9
  %32891 = load i32, ptr %45, align 4, !tbaa !9
  %32892 = icmp ne i32 %32891, 0
  br i1 %32892, label %32893, label %32894

32893:                                            ; preds = %32866
  br label %32989

32894:                                            ; preds = %32866
  %32895 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32895, ptr %45, align 4, !tbaa !9
  %32896 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32896, ptr %46, align 4, !tbaa !9
  %32897 = load ptr, ptr %5, align 8, !tbaa !5
  %32898 = getelementptr inbounds %struct.w2c_hermes, ptr %32897, i32 0, i32 6
  %32899 = load i32, ptr %46, align 4, !tbaa !9
  %32900 = zext i32 %32899 to i64
  %32901 = add i64 %32900, 3
  %32902 = call i32 @i32_load8_u(ptr noundef %32898, i64 noundef %32901)
  store i32 %32902, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32903 = load i32, ptr %47, align 4, !tbaa !9
  %32904 = and i32 %32903, 31
  %32905 = load i32, ptr %46, align 4, !tbaa !9
  %32906 = shl i32 %32905, %32904
  store i32 %32906, ptr %46, align 4, !tbaa !9
  %32907 = load i32, ptr %46, align 4, !tbaa !9
  %32908 = load i32, ptr %45, align 4, !tbaa !9
  %32909 = add i32 %32908, %32907
  store i32 %32909, ptr %45, align 4, !tbaa !9
  %32910 = load ptr, ptr %5, align 8, !tbaa !5
  %32911 = getelementptr inbounds %struct.w2c_hermes, ptr %32910, i32 0, i32 6
  %32912 = load i32, ptr %45, align 4, !tbaa !9
  %32913 = zext i32 %32912 to i64
  %32914 = call i64 @i64_load(ptr noundef %32911, i64 noundef %32913)
  store i64 %32914, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %32915 = load i64, ptr %54, align 8, !tbaa !11
  %32916 = load i64, ptr %55, align 8, !tbaa !11
  %32917 = icmp ugt i64 %32915, %32916
  %32918 = zext i1 %32917 to i32
  store i32 %32918, ptr %45, align 4, !tbaa !9
  %32919 = load i32, ptr %45, align 4, !tbaa !9
  %32920 = icmp ne i32 %32919, 0
  br i1 %32920, label %32921, label %32922

32921:                                            ; preds = %32894
  br label %32989

32922:                                            ; preds = %32894
  br label %32923

32923:                                            ; preds = %32922, %3111
  %32924 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32924, ptr %45, align 4, !tbaa !9
  %32925 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32925, ptr %46, align 4, !tbaa !9
  %32926 = load ptr, ptr %5, align 8, !tbaa !5
  %32927 = getelementptr inbounds %struct.w2c_hermes, ptr %32926, i32 0, i32 6
  %32928 = load i32, ptr %46, align 4, !tbaa !9
  %32929 = zext i32 %32928 to i64
  %32930 = add i64 %32929, 2
  %32931 = call i32 @i32_load8_u(ptr noundef %32927, i64 noundef %32930)
  store i32 %32931, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %32932 = load i32, ptr %47, align 4, !tbaa !9
  %32933 = and i32 %32932, 31
  %32934 = load i32, ptr %46, align 4, !tbaa !9
  %32935 = shl i32 %32934, %32933
  store i32 %32935, ptr %46, align 4, !tbaa !9
  %32936 = load i32, ptr %46, align 4, !tbaa !9
  %32937 = load i32, ptr %45, align 4, !tbaa !9
  %32938 = add i32 %32937, %32936
  store i32 %32938, ptr %45, align 4, !tbaa !9
  %32939 = load ptr, ptr %5, align 8, !tbaa !5
  %32940 = getelementptr inbounds %struct.w2c_hermes, ptr %32939, i32 0, i32 6
  %32941 = load i32, ptr %45, align 4, !tbaa !9
  %32942 = zext i32 %32941 to i64
  %32943 = call double @f64_load(ptr noundef %32940, i64 noundef %32942)
  store double %32943, ptr %60, align 8, !tbaa !13
  %32944 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %32944, ptr %46, align 4, !tbaa !9
  %32945 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32945, ptr %47, align 4, !tbaa !9
  %32946 = load ptr, ptr %5, align 8, !tbaa !5
  %32947 = getelementptr inbounds %struct.w2c_hermes, ptr %32946, i32 0, i32 6
  %32948 = load i32, ptr %47, align 4, !tbaa !9
  %32949 = zext i32 %32948 to i64
  %32950 = add i64 %32949, 3
  %32951 = call i32 @i32_load8_u(ptr noundef %32947, i64 noundef %32950)
  store i32 %32951, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %32952 = load i32, ptr %48, align 4, !tbaa !9
  %32953 = and i32 %32952, 31
  %32954 = load i32, ptr %47, align 4, !tbaa !9
  %32955 = shl i32 %32954, %32953
  store i32 %32955, ptr %47, align 4, !tbaa !9
  %32956 = load i32, ptr %47, align 4, !tbaa !9
  %32957 = load i32, ptr %46, align 4, !tbaa !9
  %32958 = add i32 %32957, %32956
  store i32 %32958, ptr %46, align 4, !tbaa !9
  %32959 = load ptr, ptr %5, align 8, !tbaa !5
  %32960 = getelementptr inbounds %struct.w2c_hermes, ptr %32959, i32 0, i32 6
  %32961 = load i32, ptr %46, align 4, !tbaa !9
  %32962 = zext i32 %32961 to i64
  %32963 = call double @f64_load(ptr noundef %32960, i64 noundef %32962)
  store double %32963, ptr %61, align 8, !tbaa !13
  %32964 = load double, ptr %60, align 8, !tbaa !13
  %32965 = load double, ptr %61, align 8, !tbaa !13
  %32966 = fcmp olt double %32964, %32965
  %32967 = zext i1 %32966 to i32
  store i32 %32967, ptr %45, align 4, !tbaa !9
  %32968 = load i32, ptr %45, align 4, !tbaa !9
  %32969 = icmp ne i32 %32968, 0
  br i1 %32969, label %32970, label %32983

32970:                                            ; preds = %32923
  %32971 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32971, ptr %45, align 4, !tbaa !9
  %32972 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32972, ptr %46, align 4, !tbaa !9
  %32973 = load ptr, ptr %5, align 8, !tbaa !5
  %32974 = getelementptr inbounds %struct.w2c_hermes, ptr %32973, i32 0, i32 6
  %32975 = load i32, ptr %46, align 4, !tbaa !9
  %32976 = zext i32 %32975 to i64
  %32977 = add i64 %32976, 1
  %32978 = call i32 @i32_load8_s(ptr noundef %32974, i64 noundef %32977)
  store i32 %32978, ptr %46, align 4, !tbaa !9
  %32979 = load i32, ptr %46, align 4, !tbaa !9
  %32980 = load i32, ptr %45, align 4, !tbaa !9
  %32981 = add i32 %32980, %32979
  store i32 %32981, ptr %45, align 4, !tbaa !9
  %32982 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32982, ptr %6, align 4, !tbaa !9
  br label %2945

32983:                                            ; preds = %32923
  %32984 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32984, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %32985 = load i32, ptr %46, align 4, !tbaa !9
  %32986 = load i32, ptr %45, align 4, !tbaa !9
  %32987 = add i32 %32986, %32985
  store i32 %32987, ptr %45, align 4, !tbaa !9
  %32988 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %32988, ptr %6, align 4, !tbaa !9
  br label %2945

32989:                                            ; preds = %32921, %32893
  %32990 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %32990, ptr %45, align 4, !tbaa !9
  %32991 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %32991, ptr %46, align 4, !tbaa !9
  %32992 = load ptr, ptr %5, align 8, !tbaa !5
  %32993 = getelementptr inbounds %struct.w2c_hermes, ptr %32992, i32 0, i32 6
  %32994 = load i32, ptr %45, align 4, !tbaa !9
  %32995 = zext i32 %32994 to i64
  %32996 = add i64 %32995, 5808
  %32997 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %32993, i64 noundef %32996, i32 noundef %32997)
  %32998 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %32998, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %32999 = load i32, ptr %46, align 4, !tbaa !9
  %33000 = load i32, ptr %45, align 4, !tbaa !9
  %33001 = add i32 %33000, %32999
  store i32 %33001, ptr %45, align 4, !tbaa !9
  %33002 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33002, ptr %46, align 4, !tbaa !9
  %33003 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33003, ptr %47, align 4, !tbaa !9
  %33004 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33004, ptr %48, align 4, !tbaa !9
  %33005 = load ptr, ptr %5, align 8, !tbaa !5
  %33006 = getelementptr inbounds %struct.w2c_hermes, ptr %33005, i32 0, i32 6
  %33007 = load i32, ptr %48, align 4, !tbaa !9
  %33008 = zext i32 %33007 to i64
  %33009 = add i64 %33008, 2
  %33010 = call i32 @i32_load8_u(ptr noundef %33006, i64 noundef %33009)
  store i32 %33010, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %33011 = load i32, ptr %49, align 4, !tbaa !9
  %33012 = and i32 %33011, 31
  %33013 = load i32, ptr %48, align 4, !tbaa !9
  %33014 = shl i32 %33013, %33012
  store i32 %33014, ptr %48, align 4, !tbaa !9
  %33015 = load i32, ptr %48, align 4, !tbaa !9
  %33016 = load i32, ptr %47, align 4, !tbaa !9
  %33017 = add i32 %33016, %33015
  store i32 %33017, ptr %47, align 4, !tbaa !9
  %33018 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33018, ptr %48, align 4, !tbaa !9
  %33019 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33019, ptr %49, align 4, !tbaa !9
  %33020 = load ptr, ptr %5, align 8, !tbaa !5
  %33021 = getelementptr inbounds %struct.w2c_hermes, ptr %33020, i32 0, i32 6
  %33022 = load i32, ptr %49, align 4, !tbaa !9
  %33023 = zext i32 %33022 to i64
  %33024 = add i64 %33023, 3
  %33025 = call i32 @i32_load8_u(ptr noundef %33021, i64 noundef %33024)
  store i32 %33025, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %33026 = load i32, ptr %50, align 4, !tbaa !9
  %33027 = and i32 %33026, 31
  %33028 = load i32, ptr %49, align 4, !tbaa !9
  %33029 = shl i32 %33028, %33027
  store i32 %33029, ptr %49, align 4, !tbaa !9
  %33030 = load i32, ptr %49, align 4, !tbaa !9
  %33031 = load i32, ptr %48, align 4, !tbaa !9
  %33032 = add i32 %33031, %33030
  store i32 %33032, ptr %48, align 4, !tbaa !9
  %33033 = load ptr, ptr %5, align 8, !tbaa !5
  %33034 = load i32, ptr %45, align 4, !tbaa !9
  %33035 = load i32, ptr %46, align 4, !tbaa !9
  %33036 = load i32, ptr %47, align 4, !tbaa !9
  %33037 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %33033, i32 noundef %33034, i32 noundef %33035, i32 noundef %33036, i32 noundef %33037)
  %33038 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33038, ptr %45, align 4, !tbaa !9
  %33039 = load ptr, ptr %5, align 8, !tbaa !5
  %33040 = getelementptr inbounds %struct.w2c_hermes, ptr %33039, i32 0, i32 6
  %33041 = load i32, ptr %45, align 4, !tbaa !9
  %33042 = zext i32 %33041 to i64
  %33043 = add i64 %33042, 5808
  %33044 = call i32 @i32_load(ptr noundef %33040, i64 noundef %33043)
  store i32 %33044, ptr %45, align 4, !tbaa !9
  %33045 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33045, ptr %6, align 4, !tbaa !9
  %33046 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33046, ptr %45, align 4, !tbaa !9
  %33047 = load ptr, ptr %5, align 8, !tbaa !5
  %33048 = getelementptr inbounds %struct.w2c_hermes, ptr %33047, i32 0, i32 6
  %33049 = load i32, ptr %45, align 4, !tbaa !9
  %33050 = zext i32 %33049 to i64
  %33051 = add i64 %33050, 304
  %33052 = call i32 @i32_load16_u(ptr noundef %33048, i64 noundef %33051)
  store i32 %33052, ptr %45, align 4, !tbaa !9
  %33053 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33053, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %33054 = load i32, ptr %46, align 4, !tbaa !9
  %33055 = load i32, ptr %45, align 4, !tbaa !9
  %33056 = and i32 %33055, %33054
  store i32 %33056, ptr %45, align 4, !tbaa !9
  %33057 = load i32, ptr %45, align 4, !tbaa !9
  %33058 = icmp ne i32 %33057, 0
  %33059 = xor i1 %33058, true
  %33060 = zext i1 %33059 to i32
  store i32 %33060, ptr %45, align 4, !tbaa !9
  %33061 = load i32, ptr %45, align 4, !tbaa !9
  %33062 = icmp ne i32 %33061, 0
  br i1 %33062, label %33063, label %33064

33063:                                            ; preds = %32989
  br label %43136

33064:                                            ; preds = %32989
  %33065 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33065, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %33066 = load ptr, ptr %5, align 8, !tbaa !5
  %33067 = getelementptr inbounds %struct.w2c_hermes, ptr %33066, i32 0, i32 6
  %33068 = load i32, ptr %45, align 4, !tbaa !9
  %33069 = zext i32 %33068 to i64
  %33070 = add i64 %33069, 516
  %33071 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33067, i64 noundef %33070, i32 noundef %33071)
  %33072 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33072, ptr %45, align 4, !tbaa !9
  %33073 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %33073, ptr %46, align 4, !tbaa !9
  %33074 = load ptr, ptr %5, align 8, !tbaa !5
  %33075 = getelementptr inbounds %struct.w2c_hermes, ptr %33074, i32 0, i32 6
  %33076 = load i32, ptr %45, align 4, !tbaa !9
  %33077 = zext i32 %33076 to i64
  %33078 = add i64 %33077, 512
  %33079 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33075, i64 noundef %33078, i32 noundef %33079)
  %33080 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33080, ptr %45, align 4, !tbaa !9
  %33081 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %33081, ptr %46, align 4, !tbaa !9
  %33082 = load ptr, ptr %5, align 8, !tbaa !5
  %33083 = getelementptr inbounds %struct.w2c_hermes, ptr %33082, i32 0, i32 6
  %33084 = load i32, ptr %45, align 4, !tbaa !9
  %33085 = zext i32 %33084 to i64
  %33086 = add i64 %33085, 508
  %33087 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33083, i64 noundef %33086, i32 noundef %33087)
  %33088 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %33088, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %33089 = load i32, ptr %46, align 4, !tbaa !9
  %33090 = load i32, ptr %45, align 4, !tbaa !9
  %33091 = and i32 %33090, %33089
  store i32 %33091, ptr %45, align 4, !tbaa !9
  %33092 = load i32, ptr %45, align 4, !tbaa !9
  %33093 = icmp ne i32 %33092, 0
  br i1 %33093, label %33094, label %33107

33094:                                            ; preds = %33064
  %33095 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33095, ptr %45, align 4, !tbaa !9
  %33096 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33096, ptr %46, align 4, !tbaa !9
  %33097 = load ptr, ptr %5, align 8, !tbaa !5
  %33098 = getelementptr inbounds %struct.w2c_hermes, ptr %33097, i32 0, i32 6
  %33099 = load i32, ptr %46, align 4, !tbaa !9
  %33100 = zext i32 %33099 to i64
  %33101 = add i64 %33100, 1
  %33102 = call i32 @i32_load8_s(ptr noundef %33098, i64 noundef %33101)
  store i32 %33102, ptr %46, align 4, !tbaa !9
  %33103 = load i32, ptr %46, align 4, !tbaa !9
  %33104 = load i32, ptr %45, align 4, !tbaa !9
  %33105 = add i32 %33104, %33103
  store i32 %33105, ptr %45, align 4, !tbaa !9
  %33106 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33106, ptr %6, align 4, !tbaa !9
  br label %2945

33107:                                            ; preds = %33064
  %33108 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33108, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %33109 = load i32, ptr %46, align 4, !tbaa !9
  %33110 = load i32, ptr %45, align 4, !tbaa !9
  %33111 = add i32 %33110, %33109
  store i32 %33111, ptr %45, align 4, !tbaa !9
  %33112 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33112, ptr %6, align 4, !tbaa !9
  br label %2945

33113:                                            ; preds = %3112
  %33114 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33114, ptr %45, align 4, !tbaa !9
  %33115 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33115, ptr %46, align 4, !tbaa !9
  %33116 = load ptr, ptr %5, align 8, !tbaa !5
  %33117 = getelementptr inbounds %struct.w2c_hermes, ptr %33116, i32 0, i32 6
  %33118 = load i32, ptr %46, align 4, !tbaa !9
  %33119 = zext i32 %33118 to i64
  %33120 = add i64 %33119, 5
  %33121 = call i32 @i32_load8_u(ptr noundef %33117, i64 noundef %33120)
  store i32 %33121, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33122 = load i32, ptr %47, align 4, !tbaa !9
  %33123 = and i32 %33122, 31
  %33124 = load i32, ptr %46, align 4, !tbaa !9
  %33125 = shl i32 %33124, %33123
  store i32 %33125, ptr %46, align 4, !tbaa !9
  %33126 = load i32, ptr %46, align 4, !tbaa !9
  %33127 = load i32, ptr %45, align 4, !tbaa !9
  %33128 = add i32 %33127, %33126
  store i32 %33128, ptr %45, align 4, !tbaa !9
  %33129 = load ptr, ptr %5, align 8, !tbaa !5
  %33130 = getelementptr inbounds %struct.w2c_hermes, ptr %33129, i32 0, i32 6
  %33131 = load i32, ptr %45, align 4, !tbaa !9
  %33132 = zext i32 %33131 to i64
  %33133 = call i64 @i64_load(ptr noundef %33130, i64 noundef %33132)
  store i64 %33133, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33134 = load i64, ptr %54, align 8, !tbaa !11
  %33135 = load i64, ptr %55, align 8, !tbaa !11
  %33136 = icmp ugt i64 %33134, %33135
  %33137 = zext i1 %33136 to i32
  store i32 %33137, ptr %45, align 4, !tbaa !9
  %33138 = load i32, ptr %45, align 4, !tbaa !9
  %33139 = icmp ne i32 %33138, 0
  br i1 %33139, label %33140, label %33141

33140:                                            ; preds = %33113
  br label %33236

33141:                                            ; preds = %33113
  %33142 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33142, ptr %45, align 4, !tbaa !9
  %33143 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33143, ptr %46, align 4, !tbaa !9
  %33144 = load ptr, ptr %5, align 8, !tbaa !5
  %33145 = getelementptr inbounds %struct.w2c_hermes, ptr %33144, i32 0, i32 6
  %33146 = load i32, ptr %46, align 4, !tbaa !9
  %33147 = zext i32 %33146 to i64
  %33148 = add i64 %33147, 6
  %33149 = call i32 @i32_load8_u(ptr noundef %33145, i64 noundef %33148)
  store i32 %33149, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33150 = load i32, ptr %47, align 4, !tbaa !9
  %33151 = and i32 %33150, 31
  %33152 = load i32, ptr %46, align 4, !tbaa !9
  %33153 = shl i32 %33152, %33151
  store i32 %33153, ptr %46, align 4, !tbaa !9
  %33154 = load i32, ptr %46, align 4, !tbaa !9
  %33155 = load i32, ptr %45, align 4, !tbaa !9
  %33156 = add i32 %33155, %33154
  store i32 %33156, ptr %45, align 4, !tbaa !9
  %33157 = load ptr, ptr %5, align 8, !tbaa !5
  %33158 = getelementptr inbounds %struct.w2c_hermes, ptr %33157, i32 0, i32 6
  %33159 = load i32, ptr %45, align 4, !tbaa !9
  %33160 = zext i32 %33159 to i64
  %33161 = call i64 @i64_load(ptr noundef %33158, i64 noundef %33160)
  store i64 %33161, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33162 = load i64, ptr %54, align 8, !tbaa !11
  %33163 = load i64, ptr %55, align 8, !tbaa !11
  %33164 = icmp ugt i64 %33162, %33163
  %33165 = zext i1 %33164 to i32
  store i32 %33165, ptr %45, align 4, !tbaa !9
  %33166 = load i32, ptr %45, align 4, !tbaa !9
  %33167 = icmp ne i32 %33166, 0
  br i1 %33167, label %33168, label %33169

33168:                                            ; preds = %33141
  br label %33236

33169:                                            ; preds = %33141
  br label %33170

33170:                                            ; preds = %33169, %3113
  %33171 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33171, ptr %45, align 4, !tbaa !9
  %33172 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33172, ptr %46, align 4, !tbaa !9
  %33173 = load ptr, ptr %5, align 8, !tbaa !5
  %33174 = getelementptr inbounds %struct.w2c_hermes, ptr %33173, i32 0, i32 6
  %33175 = load i32, ptr %46, align 4, !tbaa !9
  %33176 = zext i32 %33175 to i64
  %33177 = add i64 %33176, 5
  %33178 = call i32 @i32_load8_u(ptr noundef %33174, i64 noundef %33177)
  store i32 %33178, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33179 = load i32, ptr %47, align 4, !tbaa !9
  %33180 = and i32 %33179, 31
  %33181 = load i32, ptr %46, align 4, !tbaa !9
  %33182 = shl i32 %33181, %33180
  store i32 %33182, ptr %46, align 4, !tbaa !9
  %33183 = load i32, ptr %46, align 4, !tbaa !9
  %33184 = load i32, ptr %45, align 4, !tbaa !9
  %33185 = add i32 %33184, %33183
  store i32 %33185, ptr %45, align 4, !tbaa !9
  %33186 = load ptr, ptr %5, align 8, !tbaa !5
  %33187 = getelementptr inbounds %struct.w2c_hermes, ptr %33186, i32 0, i32 6
  %33188 = load i32, ptr %45, align 4, !tbaa !9
  %33189 = zext i32 %33188 to i64
  %33190 = call double @f64_load(ptr noundef %33187, i64 noundef %33189)
  store double %33190, ptr %60, align 8, !tbaa !13
  %33191 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33191, ptr %46, align 4, !tbaa !9
  %33192 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33192, ptr %47, align 4, !tbaa !9
  %33193 = load ptr, ptr %5, align 8, !tbaa !5
  %33194 = getelementptr inbounds %struct.w2c_hermes, ptr %33193, i32 0, i32 6
  %33195 = load i32, ptr %47, align 4, !tbaa !9
  %33196 = zext i32 %33195 to i64
  %33197 = add i64 %33196, 6
  %33198 = call i32 @i32_load8_u(ptr noundef %33194, i64 noundef %33197)
  store i32 %33198, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %33199 = load i32, ptr %48, align 4, !tbaa !9
  %33200 = and i32 %33199, 31
  %33201 = load i32, ptr %47, align 4, !tbaa !9
  %33202 = shl i32 %33201, %33200
  store i32 %33202, ptr %47, align 4, !tbaa !9
  %33203 = load i32, ptr %47, align 4, !tbaa !9
  %33204 = load i32, ptr %46, align 4, !tbaa !9
  %33205 = add i32 %33204, %33203
  store i32 %33205, ptr %46, align 4, !tbaa !9
  %33206 = load ptr, ptr %5, align 8, !tbaa !5
  %33207 = getelementptr inbounds %struct.w2c_hermes, ptr %33206, i32 0, i32 6
  %33208 = load i32, ptr %46, align 4, !tbaa !9
  %33209 = zext i32 %33208 to i64
  %33210 = call double @f64_load(ptr noundef %33207, i64 noundef %33209)
  store double %33210, ptr %61, align 8, !tbaa !13
  %33211 = load double, ptr %60, align 8, !tbaa !13
  %33212 = load double, ptr %61, align 8, !tbaa !13
  %33213 = fcmp olt double %33211, %33212
  %33214 = zext i1 %33213 to i32
  store i32 %33214, ptr %45, align 4, !tbaa !9
  %33215 = load i32, ptr %45, align 4, !tbaa !9
  %33216 = icmp ne i32 %33215, 0
  br i1 %33216, label %33217, label %33230

33217:                                            ; preds = %33170
  %33218 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33218, ptr %45, align 4, !tbaa !9
  %33219 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33219, ptr %46, align 4, !tbaa !9
  %33220 = load ptr, ptr %5, align 8, !tbaa !5
  %33221 = getelementptr inbounds %struct.w2c_hermes, ptr %33220, i32 0, i32 6
  %33222 = load i32, ptr %46, align 4, !tbaa !9
  %33223 = zext i32 %33222 to i64
  %33224 = add i64 %33223, 1
  %33225 = call i32 @i32_load(ptr noundef %33221, i64 noundef %33224)
  store i32 %33225, ptr %46, align 4, !tbaa !9
  %33226 = load i32, ptr %46, align 4, !tbaa !9
  %33227 = load i32, ptr %45, align 4, !tbaa !9
  %33228 = add i32 %33227, %33226
  store i32 %33228, ptr %45, align 4, !tbaa !9
  %33229 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33229, ptr %6, align 4, !tbaa !9
  br label %2945

33230:                                            ; preds = %33170
  %33231 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33231, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %33232 = load i32, ptr %46, align 4, !tbaa !9
  %33233 = load i32, ptr %45, align 4, !tbaa !9
  %33234 = add i32 %33233, %33232
  store i32 %33234, ptr %45, align 4, !tbaa !9
  %33235 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33235, ptr %6, align 4, !tbaa !9
  br label %2945

33236:                                            ; preds = %33168, %33140
  %33237 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33237, ptr %45, align 4, !tbaa !9
  %33238 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33238, ptr %46, align 4, !tbaa !9
  %33239 = load ptr, ptr %5, align 8, !tbaa !5
  %33240 = getelementptr inbounds %struct.w2c_hermes, ptr %33239, i32 0, i32 6
  %33241 = load i32, ptr %45, align 4, !tbaa !9
  %33242 = zext i32 %33241 to i64
  %33243 = add i64 %33242, 5808
  %33244 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33240, i64 noundef %33243, i32 noundef %33244)
  %33245 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33245, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %33246 = load i32, ptr %46, align 4, !tbaa !9
  %33247 = load i32, ptr %45, align 4, !tbaa !9
  %33248 = add i32 %33247, %33246
  store i32 %33248, ptr %45, align 4, !tbaa !9
  %33249 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33249, ptr %46, align 4, !tbaa !9
  %33250 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33250, ptr %47, align 4, !tbaa !9
  %33251 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33251, ptr %48, align 4, !tbaa !9
  %33252 = load ptr, ptr %5, align 8, !tbaa !5
  %33253 = getelementptr inbounds %struct.w2c_hermes, ptr %33252, i32 0, i32 6
  %33254 = load i32, ptr %48, align 4, !tbaa !9
  %33255 = zext i32 %33254 to i64
  %33256 = add i64 %33255, 5
  %33257 = call i32 @i32_load8_u(ptr noundef %33253, i64 noundef %33256)
  store i32 %33257, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %33258 = load i32, ptr %49, align 4, !tbaa !9
  %33259 = and i32 %33258, 31
  %33260 = load i32, ptr %48, align 4, !tbaa !9
  %33261 = shl i32 %33260, %33259
  store i32 %33261, ptr %48, align 4, !tbaa !9
  %33262 = load i32, ptr %48, align 4, !tbaa !9
  %33263 = load i32, ptr %47, align 4, !tbaa !9
  %33264 = add i32 %33263, %33262
  store i32 %33264, ptr %47, align 4, !tbaa !9
  %33265 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33265, ptr %48, align 4, !tbaa !9
  %33266 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33266, ptr %49, align 4, !tbaa !9
  %33267 = load ptr, ptr %5, align 8, !tbaa !5
  %33268 = getelementptr inbounds %struct.w2c_hermes, ptr %33267, i32 0, i32 6
  %33269 = load i32, ptr %49, align 4, !tbaa !9
  %33270 = zext i32 %33269 to i64
  %33271 = add i64 %33270, 6
  %33272 = call i32 @i32_load8_u(ptr noundef %33268, i64 noundef %33271)
  store i32 %33272, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %33273 = load i32, ptr %50, align 4, !tbaa !9
  %33274 = and i32 %33273, 31
  %33275 = load i32, ptr %49, align 4, !tbaa !9
  %33276 = shl i32 %33275, %33274
  store i32 %33276, ptr %49, align 4, !tbaa !9
  %33277 = load i32, ptr %49, align 4, !tbaa !9
  %33278 = load i32, ptr %48, align 4, !tbaa !9
  %33279 = add i32 %33278, %33277
  store i32 %33279, ptr %48, align 4, !tbaa !9
  %33280 = load ptr, ptr %5, align 8, !tbaa !5
  %33281 = load i32, ptr %45, align 4, !tbaa !9
  %33282 = load i32, ptr %46, align 4, !tbaa !9
  %33283 = load i32, ptr %47, align 4, !tbaa !9
  %33284 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %33280, i32 noundef %33281, i32 noundef %33282, i32 noundef %33283, i32 noundef %33284)
  %33285 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33285, ptr %45, align 4, !tbaa !9
  %33286 = load ptr, ptr %5, align 8, !tbaa !5
  %33287 = getelementptr inbounds %struct.w2c_hermes, ptr %33286, i32 0, i32 6
  %33288 = load i32, ptr %45, align 4, !tbaa !9
  %33289 = zext i32 %33288 to i64
  %33290 = add i64 %33289, 5808
  %33291 = call i32 @i32_load(ptr noundef %33287, i64 noundef %33290)
  store i32 %33291, ptr %45, align 4, !tbaa !9
  %33292 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33292, ptr %6, align 4, !tbaa !9
  %33293 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33293, ptr %45, align 4, !tbaa !9
  %33294 = load ptr, ptr %5, align 8, !tbaa !5
  %33295 = getelementptr inbounds %struct.w2c_hermes, ptr %33294, i32 0, i32 6
  %33296 = load i32, ptr %45, align 4, !tbaa !9
  %33297 = zext i32 %33296 to i64
  %33298 = add i64 %33297, 304
  %33299 = call i32 @i32_load16_u(ptr noundef %33295, i64 noundef %33298)
  store i32 %33299, ptr %45, align 4, !tbaa !9
  %33300 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33300, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %33301 = load i32, ptr %46, align 4, !tbaa !9
  %33302 = load i32, ptr %45, align 4, !tbaa !9
  %33303 = and i32 %33302, %33301
  store i32 %33303, ptr %45, align 4, !tbaa !9
  %33304 = load i32, ptr %45, align 4, !tbaa !9
  %33305 = icmp ne i32 %33304, 0
  %33306 = xor i1 %33305, true
  %33307 = zext i1 %33306 to i32
  store i32 %33307, ptr %45, align 4, !tbaa !9
  %33308 = load i32, ptr %45, align 4, !tbaa !9
  %33309 = icmp ne i32 %33308, 0
  br i1 %33309, label %33310, label %33311

33310:                                            ; preds = %33236
  br label %43136

33311:                                            ; preds = %33236
  %33312 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33312, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %33313 = load ptr, ptr %5, align 8, !tbaa !5
  %33314 = getelementptr inbounds %struct.w2c_hermes, ptr %33313, i32 0, i32 6
  %33315 = load i32, ptr %45, align 4, !tbaa !9
  %33316 = zext i32 %33315 to i64
  %33317 = add i64 %33316, 516
  %33318 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33314, i64 noundef %33317, i32 noundef %33318)
  %33319 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33319, ptr %45, align 4, !tbaa !9
  %33320 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %33320, ptr %46, align 4, !tbaa !9
  %33321 = load ptr, ptr %5, align 8, !tbaa !5
  %33322 = getelementptr inbounds %struct.w2c_hermes, ptr %33321, i32 0, i32 6
  %33323 = load i32, ptr %45, align 4, !tbaa !9
  %33324 = zext i32 %33323 to i64
  %33325 = add i64 %33324, 512
  %33326 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33322, i64 noundef %33325, i32 noundef %33326)
  %33327 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33327, ptr %45, align 4, !tbaa !9
  %33328 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %33328, ptr %46, align 4, !tbaa !9
  %33329 = load ptr, ptr %5, align 8, !tbaa !5
  %33330 = getelementptr inbounds %struct.w2c_hermes, ptr %33329, i32 0, i32 6
  %33331 = load i32, ptr %45, align 4, !tbaa !9
  %33332 = zext i32 %33331 to i64
  %33333 = add i64 %33332, 508
  %33334 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33330, i64 noundef %33333, i32 noundef %33334)
  %33335 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %33335, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %33336 = load i32, ptr %46, align 4, !tbaa !9
  %33337 = load i32, ptr %45, align 4, !tbaa !9
  %33338 = and i32 %33337, %33336
  store i32 %33338, ptr %45, align 4, !tbaa !9
  %33339 = load i32, ptr %45, align 4, !tbaa !9
  %33340 = icmp ne i32 %33339, 0
  br i1 %33340, label %33341, label %33354

33341:                                            ; preds = %33311
  %33342 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33342, ptr %45, align 4, !tbaa !9
  %33343 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33343, ptr %46, align 4, !tbaa !9
  %33344 = load ptr, ptr %5, align 8, !tbaa !5
  %33345 = getelementptr inbounds %struct.w2c_hermes, ptr %33344, i32 0, i32 6
  %33346 = load i32, ptr %46, align 4, !tbaa !9
  %33347 = zext i32 %33346 to i64
  %33348 = add i64 %33347, 1
  %33349 = call i32 @i32_load(ptr noundef %33345, i64 noundef %33348)
  store i32 %33349, ptr %46, align 4, !tbaa !9
  %33350 = load i32, ptr %46, align 4, !tbaa !9
  %33351 = load i32, ptr %45, align 4, !tbaa !9
  %33352 = add i32 %33351, %33350
  store i32 %33352, ptr %45, align 4, !tbaa !9
  %33353 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33353, ptr %6, align 4, !tbaa !9
  br label %2945

33354:                                            ; preds = %33311
  %33355 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33355, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %33356 = load i32, ptr %46, align 4, !tbaa !9
  %33357 = load i32, ptr %45, align 4, !tbaa !9
  %33358 = add i32 %33357, %33356
  store i32 %33358, ptr %45, align 4, !tbaa !9
  %33359 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33359, ptr %6, align 4, !tbaa !9
  br label %2945

33360:                                            ; preds = %3114
  %33361 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33361, ptr %45, align 4, !tbaa !9
  %33362 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33362, ptr %46, align 4, !tbaa !9
  %33363 = load ptr, ptr %5, align 8, !tbaa !5
  %33364 = getelementptr inbounds %struct.w2c_hermes, ptr %33363, i32 0, i32 6
  %33365 = load i32, ptr %46, align 4, !tbaa !9
  %33366 = zext i32 %33365 to i64
  %33367 = add i64 %33366, 2
  %33368 = call i32 @i32_load8_u(ptr noundef %33364, i64 noundef %33367)
  store i32 %33368, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33369 = load i32, ptr %47, align 4, !tbaa !9
  %33370 = and i32 %33369, 31
  %33371 = load i32, ptr %46, align 4, !tbaa !9
  %33372 = shl i32 %33371, %33370
  store i32 %33372, ptr %46, align 4, !tbaa !9
  %33373 = load i32, ptr %46, align 4, !tbaa !9
  %33374 = load i32, ptr %45, align 4, !tbaa !9
  %33375 = add i32 %33374, %33373
  store i32 %33375, ptr %45, align 4, !tbaa !9
  %33376 = load ptr, ptr %5, align 8, !tbaa !5
  %33377 = getelementptr inbounds %struct.w2c_hermes, ptr %33376, i32 0, i32 6
  %33378 = load i32, ptr %45, align 4, !tbaa !9
  %33379 = zext i32 %33378 to i64
  %33380 = call i64 @i64_load(ptr noundef %33377, i64 noundef %33379)
  store i64 %33380, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33381 = load i64, ptr %54, align 8, !tbaa !11
  %33382 = load i64, ptr %55, align 8, !tbaa !11
  %33383 = icmp ugt i64 %33381, %33382
  %33384 = zext i1 %33383 to i32
  store i32 %33384, ptr %45, align 4, !tbaa !9
  %33385 = load i32, ptr %45, align 4, !tbaa !9
  %33386 = icmp ne i32 %33385, 0
  br i1 %33386, label %33387, label %33388

33387:                                            ; preds = %33360
  br label %33483

33388:                                            ; preds = %33360
  %33389 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33389, ptr %45, align 4, !tbaa !9
  %33390 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33390, ptr %46, align 4, !tbaa !9
  %33391 = load ptr, ptr %5, align 8, !tbaa !5
  %33392 = getelementptr inbounds %struct.w2c_hermes, ptr %33391, i32 0, i32 6
  %33393 = load i32, ptr %46, align 4, !tbaa !9
  %33394 = zext i32 %33393 to i64
  %33395 = add i64 %33394, 3
  %33396 = call i32 @i32_load8_u(ptr noundef %33392, i64 noundef %33395)
  store i32 %33396, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33397 = load i32, ptr %47, align 4, !tbaa !9
  %33398 = and i32 %33397, 31
  %33399 = load i32, ptr %46, align 4, !tbaa !9
  %33400 = shl i32 %33399, %33398
  store i32 %33400, ptr %46, align 4, !tbaa !9
  %33401 = load i32, ptr %46, align 4, !tbaa !9
  %33402 = load i32, ptr %45, align 4, !tbaa !9
  %33403 = add i32 %33402, %33401
  store i32 %33403, ptr %45, align 4, !tbaa !9
  %33404 = load ptr, ptr %5, align 8, !tbaa !5
  %33405 = getelementptr inbounds %struct.w2c_hermes, ptr %33404, i32 0, i32 6
  %33406 = load i32, ptr %45, align 4, !tbaa !9
  %33407 = zext i32 %33406 to i64
  %33408 = call i64 @i64_load(ptr noundef %33405, i64 noundef %33407)
  store i64 %33408, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33409 = load i64, ptr %54, align 8, !tbaa !11
  %33410 = load i64, ptr %55, align 8, !tbaa !11
  %33411 = icmp ugt i64 %33409, %33410
  %33412 = zext i1 %33411 to i32
  store i32 %33412, ptr %45, align 4, !tbaa !9
  %33413 = load i32, ptr %45, align 4, !tbaa !9
  %33414 = icmp ne i32 %33413, 0
  br i1 %33414, label %33415, label %33416

33415:                                            ; preds = %33388
  br label %33483

33416:                                            ; preds = %33388
  br label %33417

33417:                                            ; preds = %33416, %3115
  %33418 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33418, ptr %45, align 4, !tbaa !9
  %33419 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33419, ptr %46, align 4, !tbaa !9
  %33420 = load ptr, ptr %5, align 8, !tbaa !5
  %33421 = getelementptr inbounds %struct.w2c_hermes, ptr %33420, i32 0, i32 6
  %33422 = load i32, ptr %46, align 4, !tbaa !9
  %33423 = zext i32 %33422 to i64
  %33424 = add i64 %33423, 2
  %33425 = call i32 @i32_load8_u(ptr noundef %33421, i64 noundef %33424)
  store i32 %33425, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33426 = load i32, ptr %47, align 4, !tbaa !9
  %33427 = and i32 %33426, 31
  %33428 = load i32, ptr %46, align 4, !tbaa !9
  %33429 = shl i32 %33428, %33427
  store i32 %33429, ptr %46, align 4, !tbaa !9
  %33430 = load i32, ptr %46, align 4, !tbaa !9
  %33431 = load i32, ptr %45, align 4, !tbaa !9
  %33432 = add i32 %33431, %33430
  store i32 %33432, ptr %45, align 4, !tbaa !9
  %33433 = load ptr, ptr %5, align 8, !tbaa !5
  %33434 = getelementptr inbounds %struct.w2c_hermes, ptr %33433, i32 0, i32 6
  %33435 = load i32, ptr %45, align 4, !tbaa !9
  %33436 = zext i32 %33435 to i64
  %33437 = call double @f64_load(ptr noundef %33434, i64 noundef %33436)
  store double %33437, ptr %60, align 8, !tbaa !13
  %33438 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33438, ptr %46, align 4, !tbaa !9
  %33439 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33439, ptr %47, align 4, !tbaa !9
  %33440 = load ptr, ptr %5, align 8, !tbaa !5
  %33441 = getelementptr inbounds %struct.w2c_hermes, ptr %33440, i32 0, i32 6
  %33442 = load i32, ptr %47, align 4, !tbaa !9
  %33443 = zext i32 %33442 to i64
  %33444 = add i64 %33443, 3
  %33445 = call i32 @i32_load8_u(ptr noundef %33441, i64 noundef %33444)
  store i32 %33445, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %33446 = load i32, ptr %48, align 4, !tbaa !9
  %33447 = and i32 %33446, 31
  %33448 = load i32, ptr %47, align 4, !tbaa !9
  %33449 = shl i32 %33448, %33447
  store i32 %33449, ptr %47, align 4, !tbaa !9
  %33450 = load i32, ptr %47, align 4, !tbaa !9
  %33451 = load i32, ptr %46, align 4, !tbaa !9
  %33452 = add i32 %33451, %33450
  store i32 %33452, ptr %46, align 4, !tbaa !9
  %33453 = load ptr, ptr %5, align 8, !tbaa !5
  %33454 = getelementptr inbounds %struct.w2c_hermes, ptr %33453, i32 0, i32 6
  %33455 = load i32, ptr %46, align 4, !tbaa !9
  %33456 = zext i32 %33455 to i64
  %33457 = call double @f64_load(ptr noundef %33454, i64 noundef %33456)
  store double %33457, ptr %61, align 8, !tbaa !13
  %33458 = load double, ptr %60, align 8, !tbaa !13
  %33459 = load double, ptr %61, align 8, !tbaa !13
  %33460 = fcmp olt double %33458, %33459
  %33461 = zext i1 %33460 to i32
  store i32 %33461, ptr %45, align 4, !tbaa !9
  %33462 = load i32, ptr %45, align 4, !tbaa !9
  %33463 = icmp ne i32 %33462, 0
  br i1 %33463, label %33464, label %33470

33464:                                            ; preds = %33417
  %33465 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33465, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %33466 = load i32, ptr %46, align 4, !tbaa !9
  %33467 = load i32, ptr %45, align 4, !tbaa !9
  %33468 = add i32 %33467, %33466
  store i32 %33468, ptr %45, align 4, !tbaa !9
  %33469 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33469, ptr %6, align 4, !tbaa !9
  br label %2945

33470:                                            ; preds = %33417
  %33471 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33471, ptr %45, align 4, !tbaa !9
  %33472 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33472, ptr %46, align 4, !tbaa !9
  %33473 = load ptr, ptr %5, align 8, !tbaa !5
  %33474 = getelementptr inbounds %struct.w2c_hermes, ptr %33473, i32 0, i32 6
  %33475 = load i32, ptr %46, align 4, !tbaa !9
  %33476 = zext i32 %33475 to i64
  %33477 = add i64 %33476, 1
  %33478 = call i32 @i32_load8_s(ptr noundef %33474, i64 noundef %33477)
  store i32 %33478, ptr %46, align 4, !tbaa !9
  %33479 = load i32, ptr %46, align 4, !tbaa !9
  %33480 = load i32, ptr %45, align 4, !tbaa !9
  %33481 = add i32 %33480, %33479
  store i32 %33481, ptr %45, align 4, !tbaa !9
  %33482 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33482, ptr %6, align 4, !tbaa !9
  br label %2945

33483:                                            ; preds = %33415, %33387
  %33484 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33484, ptr %45, align 4, !tbaa !9
  %33485 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33485, ptr %46, align 4, !tbaa !9
  %33486 = load ptr, ptr %5, align 8, !tbaa !5
  %33487 = getelementptr inbounds %struct.w2c_hermes, ptr %33486, i32 0, i32 6
  %33488 = load i32, ptr %45, align 4, !tbaa !9
  %33489 = zext i32 %33488 to i64
  %33490 = add i64 %33489, 5808
  %33491 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33487, i64 noundef %33490, i32 noundef %33491)
  %33492 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33492, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %33493 = load i32, ptr %46, align 4, !tbaa !9
  %33494 = load i32, ptr %45, align 4, !tbaa !9
  %33495 = add i32 %33494, %33493
  store i32 %33495, ptr %45, align 4, !tbaa !9
  %33496 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33496, ptr %46, align 4, !tbaa !9
  %33497 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33497, ptr %47, align 4, !tbaa !9
  %33498 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33498, ptr %48, align 4, !tbaa !9
  %33499 = load ptr, ptr %5, align 8, !tbaa !5
  %33500 = getelementptr inbounds %struct.w2c_hermes, ptr %33499, i32 0, i32 6
  %33501 = load i32, ptr %48, align 4, !tbaa !9
  %33502 = zext i32 %33501 to i64
  %33503 = add i64 %33502, 2
  %33504 = call i32 @i32_load8_u(ptr noundef %33500, i64 noundef %33503)
  store i32 %33504, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %33505 = load i32, ptr %49, align 4, !tbaa !9
  %33506 = and i32 %33505, 31
  %33507 = load i32, ptr %48, align 4, !tbaa !9
  %33508 = shl i32 %33507, %33506
  store i32 %33508, ptr %48, align 4, !tbaa !9
  %33509 = load i32, ptr %48, align 4, !tbaa !9
  %33510 = load i32, ptr %47, align 4, !tbaa !9
  %33511 = add i32 %33510, %33509
  store i32 %33511, ptr %47, align 4, !tbaa !9
  %33512 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33512, ptr %48, align 4, !tbaa !9
  %33513 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33513, ptr %49, align 4, !tbaa !9
  %33514 = load ptr, ptr %5, align 8, !tbaa !5
  %33515 = getelementptr inbounds %struct.w2c_hermes, ptr %33514, i32 0, i32 6
  %33516 = load i32, ptr %49, align 4, !tbaa !9
  %33517 = zext i32 %33516 to i64
  %33518 = add i64 %33517, 3
  %33519 = call i32 @i32_load8_u(ptr noundef %33515, i64 noundef %33518)
  store i32 %33519, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %33520 = load i32, ptr %50, align 4, !tbaa !9
  %33521 = and i32 %33520, 31
  %33522 = load i32, ptr %49, align 4, !tbaa !9
  %33523 = shl i32 %33522, %33521
  store i32 %33523, ptr %49, align 4, !tbaa !9
  %33524 = load i32, ptr %49, align 4, !tbaa !9
  %33525 = load i32, ptr %48, align 4, !tbaa !9
  %33526 = add i32 %33525, %33524
  store i32 %33526, ptr %48, align 4, !tbaa !9
  %33527 = load ptr, ptr %5, align 8, !tbaa !5
  %33528 = load i32, ptr %45, align 4, !tbaa !9
  %33529 = load i32, ptr %46, align 4, !tbaa !9
  %33530 = load i32, ptr %47, align 4, !tbaa !9
  %33531 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %33527, i32 noundef %33528, i32 noundef %33529, i32 noundef %33530, i32 noundef %33531)
  %33532 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33532, ptr %45, align 4, !tbaa !9
  %33533 = load ptr, ptr %5, align 8, !tbaa !5
  %33534 = getelementptr inbounds %struct.w2c_hermes, ptr %33533, i32 0, i32 6
  %33535 = load i32, ptr %45, align 4, !tbaa !9
  %33536 = zext i32 %33535 to i64
  %33537 = add i64 %33536, 5808
  %33538 = call i32 @i32_load(ptr noundef %33534, i64 noundef %33537)
  store i32 %33538, ptr %45, align 4, !tbaa !9
  %33539 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33539, ptr %6, align 4, !tbaa !9
  %33540 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33540, ptr %45, align 4, !tbaa !9
  %33541 = load ptr, ptr %5, align 8, !tbaa !5
  %33542 = getelementptr inbounds %struct.w2c_hermes, ptr %33541, i32 0, i32 6
  %33543 = load i32, ptr %45, align 4, !tbaa !9
  %33544 = zext i32 %33543 to i64
  %33545 = add i64 %33544, 304
  %33546 = call i32 @i32_load16_u(ptr noundef %33542, i64 noundef %33545)
  store i32 %33546, ptr %45, align 4, !tbaa !9
  %33547 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33547, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %33548 = load i32, ptr %46, align 4, !tbaa !9
  %33549 = load i32, ptr %45, align 4, !tbaa !9
  %33550 = and i32 %33549, %33548
  store i32 %33550, ptr %45, align 4, !tbaa !9
  %33551 = load i32, ptr %45, align 4, !tbaa !9
  %33552 = icmp ne i32 %33551, 0
  %33553 = xor i1 %33552, true
  %33554 = zext i1 %33553 to i32
  store i32 %33554, ptr %45, align 4, !tbaa !9
  %33555 = load i32, ptr %45, align 4, !tbaa !9
  %33556 = icmp ne i32 %33555, 0
  br i1 %33556, label %33557, label %33558

33557:                                            ; preds = %33483
  br label %43136

33558:                                            ; preds = %33483
  %33559 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33559, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %33560 = load ptr, ptr %5, align 8, !tbaa !5
  %33561 = getelementptr inbounds %struct.w2c_hermes, ptr %33560, i32 0, i32 6
  %33562 = load i32, ptr %45, align 4, !tbaa !9
  %33563 = zext i32 %33562 to i64
  %33564 = add i64 %33563, 516
  %33565 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33561, i64 noundef %33564, i32 noundef %33565)
  %33566 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33566, ptr %45, align 4, !tbaa !9
  %33567 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %33567, ptr %46, align 4, !tbaa !9
  %33568 = load ptr, ptr %5, align 8, !tbaa !5
  %33569 = getelementptr inbounds %struct.w2c_hermes, ptr %33568, i32 0, i32 6
  %33570 = load i32, ptr %45, align 4, !tbaa !9
  %33571 = zext i32 %33570 to i64
  %33572 = add i64 %33571, 512
  %33573 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33569, i64 noundef %33572, i32 noundef %33573)
  %33574 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33574, ptr %45, align 4, !tbaa !9
  %33575 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %33575, ptr %46, align 4, !tbaa !9
  %33576 = load ptr, ptr %5, align 8, !tbaa !5
  %33577 = getelementptr inbounds %struct.w2c_hermes, ptr %33576, i32 0, i32 6
  %33578 = load i32, ptr %45, align 4, !tbaa !9
  %33579 = zext i32 %33578 to i64
  %33580 = add i64 %33579, 508
  %33581 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33577, i64 noundef %33580, i32 noundef %33581)
  %33582 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %33582, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %33583 = load i32, ptr %46, align 4, !tbaa !9
  %33584 = load i32, ptr %45, align 4, !tbaa !9
  %33585 = and i32 %33584, %33583
  store i32 %33585, ptr %45, align 4, !tbaa !9
  %33586 = load i32, ptr %45, align 4, !tbaa !9
  %33587 = icmp ne i32 %33586, 0
  br i1 %33587, label %33588, label %33594

33588:                                            ; preds = %33558
  %33589 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33589, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %33590 = load i32, ptr %46, align 4, !tbaa !9
  %33591 = load i32, ptr %45, align 4, !tbaa !9
  %33592 = add i32 %33591, %33590
  store i32 %33592, ptr %45, align 4, !tbaa !9
  %33593 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33593, ptr %6, align 4, !tbaa !9
  br label %2945

33594:                                            ; preds = %33558
  %33595 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33595, ptr %45, align 4, !tbaa !9
  %33596 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33596, ptr %46, align 4, !tbaa !9
  %33597 = load ptr, ptr %5, align 8, !tbaa !5
  %33598 = getelementptr inbounds %struct.w2c_hermes, ptr %33597, i32 0, i32 6
  %33599 = load i32, ptr %46, align 4, !tbaa !9
  %33600 = zext i32 %33599 to i64
  %33601 = add i64 %33600, 1
  %33602 = call i32 @i32_load8_s(ptr noundef %33598, i64 noundef %33601)
  store i32 %33602, ptr %46, align 4, !tbaa !9
  %33603 = load i32, ptr %46, align 4, !tbaa !9
  %33604 = load i32, ptr %45, align 4, !tbaa !9
  %33605 = add i32 %33604, %33603
  store i32 %33605, ptr %45, align 4, !tbaa !9
  %33606 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33606, ptr %6, align 4, !tbaa !9
  br label %2945

33607:                                            ; preds = %3116
  %33608 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33608, ptr %45, align 4, !tbaa !9
  %33609 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33609, ptr %46, align 4, !tbaa !9
  %33610 = load ptr, ptr %5, align 8, !tbaa !5
  %33611 = getelementptr inbounds %struct.w2c_hermes, ptr %33610, i32 0, i32 6
  %33612 = load i32, ptr %46, align 4, !tbaa !9
  %33613 = zext i32 %33612 to i64
  %33614 = add i64 %33613, 5
  %33615 = call i32 @i32_load8_u(ptr noundef %33611, i64 noundef %33614)
  store i32 %33615, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33616 = load i32, ptr %47, align 4, !tbaa !9
  %33617 = and i32 %33616, 31
  %33618 = load i32, ptr %46, align 4, !tbaa !9
  %33619 = shl i32 %33618, %33617
  store i32 %33619, ptr %46, align 4, !tbaa !9
  %33620 = load i32, ptr %46, align 4, !tbaa !9
  %33621 = load i32, ptr %45, align 4, !tbaa !9
  %33622 = add i32 %33621, %33620
  store i32 %33622, ptr %45, align 4, !tbaa !9
  %33623 = load ptr, ptr %5, align 8, !tbaa !5
  %33624 = getelementptr inbounds %struct.w2c_hermes, ptr %33623, i32 0, i32 6
  %33625 = load i32, ptr %45, align 4, !tbaa !9
  %33626 = zext i32 %33625 to i64
  %33627 = call i64 @i64_load(ptr noundef %33624, i64 noundef %33626)
  store i64 %33627, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33628 = load i64, ptr %54, align 8, !tbaa !11
  %33629 = load i64, ptr %55, align 8, !tbaa !11
  %33630 = icmp ugt i64 %33628, %33629
  %33631 = zext i1 %33630 to i32
  store i32 %33631, ptr %45, align 4, !tbaa !9
  %33632 = load i32, ptr %45, align 4, !tbaa !9
  %33633 = icmp ne i32 %33632, 0
  br i1 %33633, label %33634, label %33635

33634:                                            ; preds = %33607
  br label %33730

33635:                                            ; preds = %33607
  %33636 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33636, ptr %45, align 4, !tbaa !9
  %33637 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33637, ptr %46, align 4, !tbaa !9
  %33638 = load ptr, ptr %5, align 8, !tbaa !5
  %33639 = getelementptr inbounds %struct.w2c_hermes, ptr %33638, i32 0, i32 6
  %33640 = load i32, ptr %46, align 4, !tbaa !9
  %33641 = zext i32 %33640 to i64
  %33642 = add i64 %33641, 6
  %33643 = call i32 @i32_load8_u(ptr noundef %33639, i64 noundef %33642)
  store i32 %33643, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33644 = load i32, ptr %47, align 4, !tbaa !9
  %33645 = and i32 %33644, 31
  %33646 = load i32, ptr %46, align 4, !tbaa !9
  %33647 = shl i32 %33646, %33645
  store i32 %33647, ptr %46, align 4, !tbaa !9
  %33648 = load i32, ptr %46, align 4, !tbaa !9
  %33649 = load i32, ptr %45, align 4, !tbaa !9
  %33650 = add i32 %33649, %33648
  store i32 %33650, ptr %45, align 4, !tbaa !9
  %33651 = load ptr, ptr %5, align 8, !tbaa !5
  %33652 = getelementptr inbounds %struct.w2c_hermes, ptr %33651, i32 0, i32 6
  %33653 = load i32, ptr %45, align 4, !tbaa !9
  %33654 = zext i32 %33653 to i64
  %33655 = call i64 @i64_load(ptr noundef %33652, i64 noundef %33654)
  store i64 %33655, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33656 = load i64, ptr %54, align 8, !tbaa !11
  %33657 = load i64, ptr %55, align 8, !tbaa !11
  %33658 = icmp ugt i64 %33656, %33657
  %33659 = zext i1 %33658 to i32
  store i32 %33659, ptr %45, align 4, !tbaa !9
  %33660 = load i32, ptr %45, align 4, !tbaa !9
  %33661 = icmp ne i32 %33660, 0
  br i1 %33661, label %33662, label %33663

33662:                                            ; preds = %33635
  br label %33730

33663:                                            ; preds = %33635
  br label %33664

33664:                                            ; preds = %33663, %3117
  %33665 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33665, ptr %45, align 4, !tbaa !9
  %33666 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33666, ptr %46, align 4, !tbaa !9
  %33667 = load ptr, ptr %5, align 8, !tbaa !5
  %33668 = getelementptr inbounds %struct.w2c_hermes, ptr %33667, i32 0, i32 6
  %33669 = load i32, ptr %46, align 4, !tbaa !9
  %33670 = zext i32 %33669 to i64
  %33671 = add i64 %33670, 5
  %33672 = call i32 @i32_load8_u(ptr noundef %33668, i64 noundef %33671)
  store i32 %33672, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33673 = load i32, ptr %47, align 4, !tbaa !9
  %33674 = and i32 %33673, 31
  %33675 = load i32, ptr %46, align 4, !tbaa !9
  %33676 = shl i32 %33675, %33674
  store i32 %33676, ptr %46, align 4, !tbaa !9
  %33677 = load i32, ptr %46, align 4, !tbaa !9
  %33678 = load i32, ptr %45, align 4, !tbaa !9
  %33679 = add i32 %33678, %33677
  store i32 %33679, ptr %45, align 4, !tbaa !9
  %33680 = load ptr, ptr %5, align 8, !tbaa !5
  %33681 = getelementptr inbounds %struct.w2c_hermes, ptr %33680, i32 0, i32 6
  %33682 = load i32, ptr %45, align 4, !tbaa !9
  %33683 = zext i32 %33682 to i64
  %33684 = call double @f64_load(ptr noundef %33681, i64 noundef %33683)
  store double %33684, ptr %60, align 8, !tbaa !13
  %33685 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33685, ptr %46, align 4, !tbaa !9
  %33686 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33686, ptr %47, align 4, !tbaa !9
  %33687 = load ptr, ptr %5, align 8, !tbaa !5
  %33688 = getelementptr inbounds %struct.w2c_hermes, ptr %33687, i32 0, i32 6
  %33689 = load i32, ptr %47, align 4, !tbaa !9
  %33690 = zext i32 %33689 to i64
  %33691 = add i64 %33690, 6
  %33692 = call i32 @i32_load8_u(ptr noundef %33688, i64 noundef %33691)
  store i32 %33692, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %33693 = load i32, ptr %48, align 4, !tbaa !9
  %33694 = and i32 %33693, 31
  %33695 = load i32, ptr %47, align 4, !tbaa !9
  %33696 = shl i32 %33695, %33694
  store i32 %33696, ptr %47, align 4, !tbaa !9
  %33697 = load i32, ptr %47, align 4, !tbaa !9
  %33698 = load i32, ptr %46, align 4, !tbaa !9
  %33699 = add i32 %33698, %33697
  store i32 %33699, ptr %46, align 4, !tbaa !9
  %33700 = load ptr, ptr %5, align 8, !tbaa !5
  %33701 = getelementptr inbounds %struct.w2c_hermes, ptr %33700, i32 0, i32 6
  %33702 = load i32, ptr %46, align 4, !tbaa !9
  %33703 = zext i32 %33702 to i64
  %33704 = call double @f64_load(ptr noundef %33701, i64 noundef %33703)
  store double %33704, ptr %61, align 8, !tbaa !13
  %33705 = load double, ptr %60, align 8, !tbaa !13
  %33706 = load double, ptr %61, align 8, !tbaa !13
  %33707 = fcmp olt double %33705, %33706
  %33708 = zext i1 %33707 to i32
  store i32 %33708, ptr %45, align 4, !tbaa !9
  %33709 = load i32, ptr %45, align 4, !tbaa !9
  %33710 = icmp ne i32 %33709, 0
  br i1 %33710, label %33711, label %33717

33711:                                            ; preds = %33664
  %33712 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33712, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %33713 = load i32, ptr %46, align 4, !tbaa !9
  %33714 = load i32, ptr %45, align 4, !tbaa !9
  %33715 = add i32 %33714, %33713
  store i32 %33715, ptr %45, align 4, !tbaa !9
  %33716 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33716, ptr %6, align 4, !tbaa !9
  br label %2945

33717:                                            ; preds = %33664
  %33718 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33718, ptr %45, align 4, !tbaa !9
  %33719 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33719, ptr %46, align 4, !tbaa !9
  %33720 = load ptr, ptr %5, align 8, !tbaa !5
  %33721 = getelementptr inbounds %struct.w2c_hermes, ptr %33720, i32 0, i32 6
  %33722 = load i32, ptr %46, align 4, !tbaa !9
  %33723 = zext i32 %33722 to i64
  %33724 = add i64 %33723, 1
  %33725 = call i32 @i32_load(ptr noundef %33721, i64 noundef %33724)
  store i32 %33725, ptr %46, align 4, !tbaa !9
  %33726 = load i32, ptr %46, align 4, !tbaa !9
  %33727 = load i32, ptr %45, align 4, !tbaa !9
  %33728 = add i32 %33727, %33726
  store i32 %33728, ptr %45, align 4, !tbaa !9
  %33729 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33729, ptr %6, align 4, !tbaa !9
  br label %2945

33730:                                            ; preds = %33662, %33634
  %33731 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33731, ptr %45, align 4, !tbaa !9
  %33732 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33732, ptr %46, align 4, !tbaa !9
  %33733 = load ptr, ptr %5, align 8, !tbaa !5
  %33734 = getelementptr inbounds %struct.w2c_hermes, ptr %33733, i32 0, i32 6
  %33735 = load i32, ptr %45, align 4, !tbaa !9
  %33736 = zext i32 %33735 to i64
  %33737 = add i64 %33736, 5808
  %33738 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33734, i64 noundef %33737, i32 noundef %33738)
  %33739 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33739, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %33740 = load i32, ptr %46, align 4, !tbaa !9
  %33741 = load i32, ptr %45, align 4, !tbaa !9
  %33742 = add i32 %33741, %33740
  store i32 %33742, ptr %45, align 4, !tbaa !9
  %33743 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33743, ptr %46, align 4, !tbaa !9
  %33744 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33744, ptr %47, align 4, !tbaa !9
  %33745 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33745, ptr %48, align 4, !tbaa !9
  %33746 = load ptr, ptr %5, align 8, !tbaa !5
  %33747 = getelementptr inbounds %struct.w2c_hermes, ptr %33746, i32 0, i32 6
  %33748 = load i32, ptr %48, align 4, !tbaa !9
  %33749 = zext i32 %33748 to i64
  %33750 = add i64 %33749, 5
  %33751 = call i32 @i32_load8_u(ptr noundef %33747, i64 noundef %33750)
  store i32 %33751, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %33752 = load i32, ptr %49, align 4, !tbaa !9
  %33753 = and i32 %33752, 31
  %33754 = load i32, ptr %48, align 4, !tbaa !9
  %33755 = shl i32 %33754, %33753
  store i32 %33755, ptr %48, align 4, !tbaa !9
  %33756 = load i32, ptr %48, align 4, !tbaa !9
  %33757 = load i32, ptr %47, align 4, !tbaa !9
  %33758 = add i32 %33757, %33756
  store i32 %33758, ptr %47, align 4, !tbaa !9
  %33759 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33759, ptr %48, align 4, !tbaa !9
  %33760 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33760, ptr %49, align 4, !tbaa !9
  %33761 = load ptr, ptr %5, align 8, !tbaa !5
  %33762 = getelementptr inbounds %struct.w2c_hermes, ptr %33761, i32 0, i32 6
  %33763 = load i32, ptr %49, align 4, !tbaa !9
  %33764 = zext i32 %33763 to i64
  %33765 = add i64 %33764, 6
  %33766 = call i32 @i32_load8_u(ptr noundef %33762, i64 noundef %33765)
  store i32 %33766, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %33767 = load i32, ptr %50, align 4, !tbaa !9
  %33768 = and i32 %33767, 31
  %33769 = load i32, ptr %49, align 4, !tbaa !9
  %33770 = shl i32 %33769, %33768
  store i32 %33770, ptr %49, align 4, !tbaa !9
  %33771 = load i32, ptr %49, align 4, !tbaa !9
  %33772 = load i32, ptr %48, align 4, !tbaa !9
  %33773 = add i32 %33772, %33771
  store i32 %33773, ptr %48, align 4, !tbaa !9
  %33774 = load ptr, ptr %5, align 8, !tbaa !5
  %33775 = load i32, ptr %45, align 4, !tbaa !9
  %33776 = load i32, ptr %46, align 4, !tbaa !9
  %33777 = load i32, ptr %47, align 4, !tbaa !9
  %33778 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %33774, i32 noundef %33775, i32 noundef %33776, i32 noundef %33777, i32 noundef %33778)
  %33779 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33779, ptr %45, align 4, !tbaa !9
  %33780 = load ptr, ptr %5, align 8, !tbaa !5
  %33781 = getelementptr inbounds %struct.w2c_hermes, ptr %33780, i32 0, i32 6
  %33782 = load i32, ptr %45, align 4, !tbaa !9
  %33783 = zext i32 %33782 to i64
  %33784 = add i64 %33783, 5808
  %33785 = call i32 @i32_load(ptr noundef %33781, i64 noundef %33784)
  store i32 %33785, ptr %45, align 4, !tbaa !9
  %33786 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33786, ptr %6, align 4, !tbaa !9
  %33787 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33787, ptr %45, align 4, !tbaa !9
  %33788 = load ptr, ptr %5, align 8, !tbaa !5
  %33789 = getelementptr inbounds %struct.w2c_hermes, ptr %33788, i32 0, i32 6
  %33790 = load i32, ptr %45, align 4, !tbaa !9
  %33791 = zext i32 %33790 to i64
  %33792 = add i64 %33791, 304
  %33793 = call i32 @i32_load16_u(ptr noundef %33789, i64 noundef %33792)
  store i32 %33793, ptr %45, align 4, !tbaa !9
  %33794 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33794, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %33795 = load i32, ptr %46, align 4, !tbaa !9
  %33796 = load i32, ptr %45, align 4, !tbaa !9
  %33797 = and i32 %33796, %33795
  store i32 %33797, ptr %45, align 4, !tbaa !9
  %33798 = load i32, ptr %45, align 4, !tbaa !9
  %33799 = icmp ne i32 %33798, 0
  %33800 = xor i1 %33799, true
  %33801 = zext i1 %33800 to i32
  store i32 %33801, ptr %45, align 4, !tbaa !9
  %33802 = load i32, ptr %45, align 4, !tbaa !9
  %33803 = icmp ne i32 %33802, 0
  br i1 %33803, label %33804, label %33805

33804:                                            ; preds = %33730
  br label %43136

33805:                                            ; preds = %33730
  %33806 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33806, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %33807 = load ptr, ptr %5, align 8, !tbaa !5
  %33808 = getelementptr inbounds %struct.w2c_hermes, ptr %33807, i32 0, i32 6
  %33809 = load i32, ptr %45, align 4, !tbaa !9
  %33810 = zext i32 %33809 to i64
  %33811 = add i64 %33810, 516
  %33812 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33808, i64 noundef %33811, i32 noundef %33812)
  %33813 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33813, ptr %45, align 4, !tbaa !9
  %33814 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %33814, ptr %46, align 4, !tbaa !9
  %33815 = load ptr, ptr %5, align 8, !tbaa !5
  %33816 = getelementptr inbounds %struct.w2c_hermes, ptr %33815, i32 0, i32 6
  %33817 = load i32, ptr %45, align 4, !tbaa !9
  %33818 = zext i32 %33817 to i64
  %33819 = add i64 %33818, 512
  %33820 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33816, i64 noundef %33819, i32 noundef %33820)
  %33821 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33821, ptr %45, align 4, !tbaa !9
  %33822 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %33822, ptr %46, align 4, !tbaa !9
  %33823 = load ptr, ptr %5, align 8, !tbaa !5
  %33824 = getelementptr inbounds %struct.w2c_hermes, ptr %33823, i32 0, i32 6
  %33825 = load i32, ptr %45, align 4, !tbaa !9
  %33826 = zext i32 %33825 to i64
  %33827 = add i64 %33826, 508
  %33828 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33824, i64 noundef %33827, i32 noundef %33828)
  %33829 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %33829, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %33830 = load i32, ptr %46, align 4, !tbaa !9
  %33831 = load i32, ptr %45, align 4, !tbaa !9
  %33832 = and i32 %33831, %33830
  store i32 %33832, ptr %45, align 4, !tbaa !9
  %33833 = load i32, ptr %45, align 4, !tbaa !9
  %33834 = icmp ne i32 %33833, 0
  br i1 %33834, label %33835, label %33841

33835:                                            ; preds = %33805
  %33836 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33836, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %33837 = load i32, ptr %46, align 4, !tbaa !9
  %33838 = load i32, ptr %45, align 4, !tbaa !9
  %33839 = add i32 %33838, %33837
  store i32 %33839, ptr %45, align 4, !tbaa !9
  %33840 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33840, ptr %6, align 4, !tbaa !9
  br label %2945

33841:                                            ; preds = %33805
  %33842 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33842, ptr %45, align 4, !tbaa !9
  %33843 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33843, ptr %46, align 4, !tbaa !9
  %33844 = load ptr, ptr %5, align 8, !tbaa !5
  %33845 = getelementptr inbounds %struct.w2c_hermes, ptr %33844, i32 0, i32 6
  %33846 = load i32, ptr %46, align 4, !tbaa !9
  %33847 = zext i32 %33846 to i64
  %33848 = add i64 %33847, 1
  %33849 = call i32 @i32_load(ptr noundef %33845, i64 noundef %33848)
  store i32 %33849, ptr %46, align 4, !tbaa !9
  %33850 = load i32, ptr %46, align 4, !tbaa !9
  %33851 = load i32, ptr %45, align 4, !tbaa !9
  %33852 = add i32 %33851, %33850
  store i32 %33852, ptr %45, align 4, !tbaa !9
  %33853 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33853, ptr %6, align 4, !tbaa !9
  br label %2945

33854:                                            ; preds = %3118
  %33855 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33855, ptr %45, align 4, !tbaa !9
  %33856 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33856, ptr %46, align 4, !tbaa !9
  %33857 = load ptr, ptr %5, align 8, !tbaa !5
  %33858 = getelementptr inbounds %struct.w2c_hermes, ptr %33857, i32 0, i32 6
  %33859 = load i32, ptr %46, align 4, !tbaa !9
  %33860 = zext i32 %33859 to i64
  %33861 = add i64 %33860, 2
  %33862 = call i32 @i32_load8_u(ptr noundef %33858, i64 noundef %33861)
  store i32 %33862, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33863 = load i32, ptr %47, align 4, !tbaa !9
  %33864 = and i32 %33863, 31
  %33865 = load i32, ptr %46, align 4, !tbaa !9
  %33866 = shl i32 %33865, %33864
  store i32 %33866, ptr %46, align 4, !tbaa !9
  %33867 = load i32, ptr %46, align 4, !tbaa !9
  %33868 = load i32, ptr %45, align 4, !tbaa !9
  %33869 = add i32 %33868, %33867
  store i32 %33869, ptr %45, align 4, !tbaa !9
  %33870 = load ptr, ptr %5, align 8, !tbaa !5
  %33871 = getelementptr inbounds %struct.w2c_hermes, ptr %33870, i32 0, i32 6
  %33872 = load i32, ptr %45, align 4, !tbaa !9
  %33873 = zext i32 %33872 to i64
  %33874 = call i64 @i64_load(ptr noundef %33871, i64 noundef %33873)
  store i64 %33874, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33875 = load i64, ptr %54, align 8, !tbaa !11
  %33876 = load i64, ptr %55, align 8, !tbaa !11
  %33877 = icmp ugt i64 %33875, %33876
  %33878 = zext i1 %33877 to i32
  store i32 %33878, ptr %45, align 4, !tbaa !9
  %33879 = load i32, ptr %45, align 4, !tbaa !9
  %33880 = icmp ne i32 %33879, 0
  br i1 %33880, label %33881, label %33882

33881:                                            ; preds = %33854
  br label %33977

33882:                                            ; preds = %33854
  %33883 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33883, ptr %45, align 4, !tbaa !9
  %33884 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33884, ptr %46, align 4, !tbaa !9
  %33885 = load ptr, ptr %5, align 8, !tbaa !5
  %33886 = getelementptr inbounds %struct.w2c_hermes, ptr %33885, i32 0, i32 6
  %33887 = load i32, ptr %46, align 4, !tbaa !9
  %33888 = zext i32 %33887 to i64
  %33889 = add i64 %33888, 3
  %33890 = call i32 @i32_load8_u(ptr noundef %33886, i64 noundef %33889)
  store i32 %33890, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33891 = load i32, ptr %47, align 4, !tbaa !9
  %33892 = and i32 %33891, 31
  %33893 = load i32, ptr %46, align 4, !tbaa !9
  %33894 = shl i32 %33893, %33892
  store i32 %33894, ptr %46, align 4, !tbaa !9
  %33895 = load i32, ptr %46, align 4, !tbaa !9
  %33896 = load i32, ptr %45, align 4, !tbaa !9
  %33897 = add i32 %33896, %33895
  store i32 %33897, ptr %45, align 4, !tbaa !9
  %33898 = load ptr, ptr %5, align 8, !tbaa !5
  %33899 = getelementptr inbounds %struct.w2c_hermes, ptr %33898, i32 0, i32 6
  %33900 = load i32, ptr %45, align 4, !tbaa !9
  %33901 = zext i32 %33900 to i64
  %33902 = call i64 @i64_load(ptr noundef %33899, i64 noundef %33901)
  store i64 %33902, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %33903 = load i64, ptr %54, align 8, !tbaa !11
  %33904 = load i64, ptr %55, align 8, !tbaa !11
  %33905 = icmp ugt i64 %33903, %33904
  %33906 = zext i1 %33905 to i32
  store i32 %33906, ptr %45, align 4, !tbaa !9
  %33907 = load i32, ptr %45, align 4, !tbaa !9
  %33908 = icmp ne i32 %33907, 0
  br i1 %33908, label %33909, label %33910

33909:                                            ; preds = %33882
  br label %33977

33910:                                            ; preds = %33882
  br label %33911

33911:                                            ; preds = %33910, %3119
  %33912 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33912, ptr %45, align 4, !tbaa !9
  %33913 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33913, ptr %46, align 4, !tbaa !9
  %33914 = load ptr, ptr %5, align 8, !tbaa !5
  %33915 = getelementptr inbounds %struct.w2c_hermes, ptr %33914, i32 0, i32 6
  %33916 = load i32, ptr %46, align 4, !tbaa !9
  %33917 = zext i32 %33916 to i64
  %33918 = add i64 %33917, 2
  %33919 = call i32 @i32_load8_u(ptr noundef %33915, i64 noundef %33918)
  store i32 %33919, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %33920 = load i32, ptr %47, align 4, !tbaa !9
  %33921 = and i32 %33920, 31
  %33922 = load i32, ptr %46, align 4, !tbaa !9
  %33923 = shl i32 %33922, %33921
  store i32 %33923, ptr %46, align 4, !tbaa !9
  %33924 = load i32, ptr %46, align 4, !tbaa !9
  %33925 = load i32, ptr %45, align 4, !tbaa !9
  %33926 = add i32 %33925, %33924
  store i32 %33926, ptr %45, align 4, !tbaa !9
  %33927 = load ptr, ptr %5, align 8, !tbaa !5
  %33928 = getelementptr inbounds %struct.w2c_hermes, ptr %33927, i32 0, i32 6
  %33929 = load i32, ptr %45, align 4, !tbaa !9
  %33930 = zext i32 %33929 to i64
  %33931 = call double @f64_load(ptr noundef %33928, i64 noundef %33930)
  store double %33931, ptr %60, align 8, !tbaa !13
  %33932 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33932, ptr %46, align 4, !tbaa !9
  %33933 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33933, ptr %47, align 4, !tbaa !9
  %33934 = load ptr, ptr %5, align 8, !tbaa !5
  %33935 = getelementptr inbounds %struct.w2c_hermes, ptr %33934, i32 0, i32 6
  %33936 = load i32, ptr %47, align 4, !tbaa !9
  %33937 = zext i32 %33936 to i64
  %33938 = add i64 %33937, 3
  %33939 = call i32 @i32_load8_u(ptr noundef %33935, i64 noundef %33938)
  store i32 %33939, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %33940 = load i32, ptr %48, align 4, !tbaa !9
  %33941 = and i32 %33940, 31
  %33942 = load i32, ptr %47, align 4, !tbaa !9
  %33943 = shl i32 %33942, %33941
  store i32 %33943, ptr %47, align 4, !tbaa !9
  %33944 = load i32, ptr %47, align 4, !tbaa !9
  %33945 = load i32, ptr %46, align 4, !tbaa !9
  %33946 = add i32 %33945, %33944
  store i32 %33946, ptr %46, align 4, !tbaa !9
  %33947 = load ptr, ptr %5, align 8, !tbaa !5
  %33948 = getelementptr inbounds %struct.w2c_hermes, ptr %33947, i32 0, i32 6
  %33949 = load i32, ptr %46, align 4, !tbaa !9
  %33950 = zext i32 %33949 to i64
  %33951 = call double @f64_load(ptr noundef %33948, i64 noundef %33950)
  store double %33951, ptr %61, align 8, !tbaa !13
  %33952 = load double, ptr %60, align 8, !tbaa !13
  %33953 = load double, ptr %61, align 8, !tbaa !13
  %33954 = fcmp ole double %33952, %33953
  %33955 = zext i1 %33954 to i32
  store i32 %33955, ptr %45, align 4, !tbaa !9
  %33956 = load i32, ptr %45, align 4, !tbaa !9
  %33957 = icmp ne i32 %33956, 0
  br i1 %33957, label %33958, label %33971

33958:                                            ; preds = %33911
  %33959 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33959, ptr %45, align 4, !tbaa !9
  %33960 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33960, ptr %46, align 4, !tbaa !9
  %33961 = load ptr, ptr %5, align 8, !tbaa !5
  %33962 = getelementptr inbounds %struct.w2c_hermes, ptr %33961, i32 0, i32 6
  %33963 = load i32, ptr %46, align 4, !tbaa !9
  %33964 = zext i32 %33963 to i64
  %33965 = add i64 %33964, 1
  %33966 = call i32 @i32_load8_s(ptr noundef %33962, i64 noundef %33965)
  store i32 %33966, ptr %46, align 4, !tbaa !9
  %33967 = load i32, ptr %46, align 4, !tbaa !9
  %33968 = load i32, ptr %45, align 4, !tbaa !9
  %33969 = add i32 %33968, %33967
  store i32 %33969, ptr %45, align 4, !tbaa !9
  %33970 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33970, ptr %6, align 4, !tbaa !9
  br label %2945

33971:                                            ; preds = %33911
  %33972 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33972, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %33973 = load i32, ptr %46, align 4, !tbaa !9
  %33974 = load i32, ptr %45, align 4, !tbaa !9
  %33975 = add i32 %33974, %33973
  store i32 %33975, ptr %45, align 4, !tbaa !9
  %33976 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %33976, ptr %6, align 4, !tbaa !9
  br label %2945

33977:                                            ; preds = %33909, %33881
  %33978 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33978, ptr %45, align 4, !tbaa !9
  %33979 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33979, ptr %46, align 4, !tbaa !9
  %33980 = load ptr, ptr %5, align 8, !tbaa !5
  %33981 = getelementptr inbounds %struct.w2c_hermes, ptr %33980, i32 0, i32 6
  %33982 = load i32, ptr %45, align 4, !tbaa !9
  %33983 = zext i32 %33982 to i64
  %33984 = add i64 %33983, 5808
  %33985 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %33981, i64 noundef %33984, i32 noundef %33985)
  %33986 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %33986, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %33987 = load i32, ptr %46, align 4, !tbaa !9
  %33988 = load i32, ptr %45, align 4, !tbaa !9
  %33989 = add i32 %33988, %33987
  store i32 %33989, ptr %45, align 4, !tbaa !9
  %33990 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %33990, ptr %46, align 4, !tbaa !9
  %33991 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %33991, ptr %47, align 4, !tbaa !9
  %33992 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %33992, ptr %48, align 4, !tbaa !9
  %33993 = load ptr, ptr %5, align 8, !tbaa !5
  %33994 = getelementptr inbounds %struct.w2c_hermes, ptr %33993, i32 0, i32 6
  %33995 = load i32, ptr %48, align 4, !tbaa !9
  %33996 = zext i32 %33995 to i64
  %33997 = add i64 %33996, 2
  %33998 = call i32 @i32_load8_u(ptr noundef %33994, i64 noundef %33997)
  store i32 %33998, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %33999 = load i32, ptr %49, align 4, !tbaa !9
  %34000 = and i32 %33999, 31
  %34001 = load i32, ptr %48, align 4, !tbaa !9
  %34002 = shl i32 %34001, %34000
  store i32 %34002, ptr %48, align 4, !tbaa !9
  %34003 = load i32, ptr %48, align 4, !tbaa !9
  %34004 = load i32, ptr %47, align 4, !tbaa !9
  %34005 = add i32 %34004, %34003
  store i32 %34005, ptr %47, align 4, !tbaa !9
  %34006 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34006, ptr %48, align 4, !tbaa !9
  %34007 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34007, ptr %49, align 4, !tbaa !9
  %34008 = load ptr, ptr %5, align 8, !tbaa !5
  %34009 = getelementptr inbounds %struct.w2c_hermes, ptr %34008, i32 0, i32 6
  %34010 = load i32, ptr %49, align 4, !tbaa !9
  %34011 = zext i32 %34010 to i64
  %34012 = add i64 %34011, 3
  %34013 = call i32 @i32_load8_u(ptr noundef %34009, i64 noundef %34012)
  store i32 %34013, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %34014 = load i32, ptr %50, align 4, !tbaa !9
  %34015 = and i32 %34014, 31
  %34016 = load i32, ptr %49, align 4, !tbaa !9
  %34017 = shl i32 %34016, %34015
  store i32 %34017, ptr %49, align 4, !tbaa !9
  %34018 = load i32, ptr %49, align 4, !tbaa !9
  %34019 = load i32, ptr %48, align 4, !tbaa !9
  %34020 = add i32 %34019, %34018
  store i32 %34020, ptr %48, align 4, !tbaa !9
  %34021 = load ptr, ptr %5, align 8, !tbaa !5
  %34022 = load i32, ptr %45, align 4, !tbaa !9
  %34023 = load i32, ptr %46, align 4, !tbaa !9
  %34024 = load i32, ptr %47, align 4, !tbaa !9
  %34025 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %34021, i32 noundef %34022, i32 noundef %34023, i32 noundef %34024, i32 noundef %34025)
  %34026 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34026, ptr %45, align 4, !tbaa !9
  %34027 = load ptr, ptr %5, align 8, !tbaa !5
  %34028 = getelementptr inbounds %struct.w2c_hermes, ptr %34027, i32 0, i32 6
  %34029 = load i32, ptr %45, align 4, !tbaa !9
  %34030 = zext i32 %34029 to i64
  %34031 = add i64 %34030, 5808
  %34032 = call i32 @i32_load(ptr noundef %34028, i64 noundef %34031)
  store i32 %34032, ptr %45, align 4, !tbaa !9
  %34033 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34033, ptr %6, align 4, !tbaa !9
  %34034 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34034, ptr %45, align 4, !tbaa !9
  %34035 = load ptr, ptr %5, align 8, !tbaa !5
  %34036 = getelementptr inbounds %struct.w2c_hermes, ptr %34035, i32 0, i32 6
  %34037 = load i32, ptr %45, align 4, !tbaa !9
  %34038 = zext i32 %34037 to i64
  %34039 = add i64 %34038, 304
  %34040 = call i32 @i32_load16_u(ptr noundef %34036, i64 noundef %34039)
  store i32 %34040, ptr %45, align 4, !tbaa !9
  %34041 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34041, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %34042 = load i32, ptr %46, align 4, !tbaa !9
  %34043 = load i32, ptr %45, align 4, !tbaa !9
  %34044 = and i32 %34043, %34042
  store i32 %34044, ptr %45, align 4, !tbaa !9
  %34045 = load i32, ptr %45, align 4, !tbaa !9
  %34046 = icmp ne i32 %34045, 0
  %34047 = xor i1 %34046, true
  %34048 = zext i1 %34047 to i32
  store i32 %34048, ptr %45, align 4, !tbaa !9
  %34049 = load i32, ptr %45, align 4, !tbaa !9
  %34050 = icmp ne i32 %34049, 0
  br i1 %34050, label %34051, label %34052

34051:                                            ; preds = %33977
  br label %43136

34052:                                            ; preds = %33977
  %34053 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34053, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %34054 = load ptr, ptr %5, align 8, !tbaa !5
  %34055 = getelementptr inbounds %struct.w2c_hermes, ptr %34054, i32 0, i32 6
  %34056 = load i32, ptr %45, align 4, !tbaa !9
  %34057 = zext i32 %34056 to i64
  %34058 = add i64 %34057, 516
  %34059 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34055, i64 noundef %34058, i32 noundef %34059)
  %34060 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34060, ptr %45, align 4, !tbaa !9
  %34061 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %34061, ptr %46, align 4, !tbaa !9
  %34062 = load ptr, ptr %5, align 8, !tbaa !5
  %34063 = getelementptr inbounds %struct.w2c_hermes, ptr %34062, i32 0, i32 6
  %34064 = load i32, ptr %45, align 4, !tbaa !9
  %34065 = zext i32 %34064 to i64
  %34066 = add i64 %34065, 512
  %34067 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34063, i64 noundef %34066, i32 noundef %34067)
  %34068 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34068, ptr %45, align 4, !tbaa !9
  %34069 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %34069, ptr %46, align 4, !tbaa !9
  %34070 = load ptr, ptr %5, align 8, !tbaa !5
  %34071 = getelementptr inbounds %struct.w2c_hermes, ptr %34070, i32 0, i32 6
  %34072 = load i32, ptr %45, align 4, !tbaa !9
  %34073 = zext i32 %34072 to i64
  %34074 = add i64 %34073, 508
  %34075 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34071, i64 noundef %34074, i32 noundef %34075)
  %34076 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %34076, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %34077 = load i32, ptr %46, align 4, !tbaa !9
  %34078 = load i32, ptr %45, align 4, !tbaa !9
  %34079 = and i32 %34078, %34077
  store i32 %34079, ptr %45, align 4, !tbaa !9
  %34080 = load i32, ptr %45, align 4, !tbaa !9
  %34081 = icmp ne i32 %34080, 0
  br i1 %34081, label %34082, label %34095

34082:                                            ; preds = %34052
  %34083 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34083, ptr %45, align 4, !tbaa !9
  %34084 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34084, ptr %46, align 4, !tbaa !9
  %34085 = load ptr, ptr %5, align 8, !tbaa !5
  %34086 = getelementptr inbounds %struct.w2c_hermes, ptr %34085, i32 0, i32 6
  %34087 = load i32, ptr %46, align 4, !tbaa !9
  %34088 = zext i32 %34087 to i64
  %34089 = add i64 %34088, 1
  %34090 = call i32 @i32_load8_s(ptr noundef %34086, i64 noundef %34089)
  store i32 %34090, ptr %46, align 4, !tbaa !9
  %34091 = load i32, ptr %46, align 4, !tbaa !9
  %34092 = load i32, ptr %45, align 4, !tbaa !9
  %34093 = add i32 %34092, %34091
  store i32 %34093, ptr %45, align 4, !tbaa !9
  %34094 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34094, ptr %6, align 4, !tbaa !9
  br label %2945

34095:                                            ; preds = %34052
  %34096 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34096, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %34097 = load i32, ptr %46, align 4, !tbaa !9
  %34098 = load i32, ptr %45, align 4, !tbaa !9
  %34099 = add i32 %34098, %34097
  store i32 %34099, ptr %45, align 4, !tbaa !9
  %34100 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34100, ptr %6, align 4, !tbaa !9
  br label %2945

34101:                                            ; preds = %3120
  %34102 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34102, ptr %45, align 4, !tbaa !9
  %34103 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34103, ptr %46, align 4, !tbaa !9
  %34104 = load ptr, ptr %5, align 8, !tbaa !5
  %34105 = getelementptr inbounds %struct.w2c_hermes, ptr %34104, i32 0, i32 6
  %34106 = load i32, ptr %46, align 4, !tbaa !9
  %34107 = zext i32 %34106 to i64
  %34108 = add i64 %34107, 5
  %34109 = call i32 @i32_load8_u(ptr noundef %34105, i64 noundef %34108)
  store i32 %34109, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34110 = load i32, ptr %47, align 4, !tbaa !9
  %34111 = and i32 %34110, 31
  %34112 = load i32, ptr %46, align 4, !tbaa !9
  %34113 = shl i32 %34112, %34111
  store i32 %34113, ptr %46, align 4, !tbaa !9
  %34114 = load i32, ptr %46, align 4, !tbaa !9
  %34115 = load i32, ptr %45, align 4, !tbaa !9
  %34116 = add i32 %34115, %34114
  store i32 %34116, ptr %45, align 4, !tbaa !9
  %34117 = load ptr, ptr %5, align 8, !tbaa !5
  %34118 = getelementptr inbounds %struct.w2c_hermes, ptr %34117, i32 0, i32 6
  %34119 = load i32, ptr %45, align 4, !tbaa !9
  %34120 = zext i32 %34119 to i64
  %34121 = call i64 @i64_load(ptr noundef %34118, i64 noundef %34120)
  store i64 %34121, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34122 = load i64, ptr %54, align 8, !tbaa !11
  %34123 = load i64, ptr %55, align 8, !tbaa !11
  %34124 = icmp ugt i64 %34122, %34123
  %34125 = zext i1 %34124 to i32
  store i32 %34125, ptr %45, align 4, !tbaa !9
  %34126 = load i32, ptr %45, align 4, !tbaa !9
  %34127 = icmp ne i32 %34126, 0
  br i1 %34127, label %34128, label %34129

34128:                                            ; preds = %34101
  br label %34224

34129:                                            ; preds = %34101
  %34130 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34130, ptr %45, align 4, !tbaa !9
  %34131 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34131, ptr %46, align 4, !tbaa !9
  %34132 = load ptr, ptr %5, align 8, !tbaa !5
  %34133 = getelementptr inbounds %struct.w2c_hermes, ptr %34132, i32 0, i32 6
  %34134 = load i32, ptr %46, align 4, !tbaa !9
  %34135 = zext i32 %34134 to i64
  %34136 = add i64 %34135, 6
  %34137 = call i32 @i32_load8_u(ptr noundef %34133, i64 noundef %34136)
  store i32 %34137, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34138 = load i32, ptr %47, align 4, !tbaa !9
  %34139 = and i32 %34138, 31
  %34140 = load i32, ptr %46, align 4, !tbaa !9
  %34141 = shl i32 %34140, %34139
  store i32 %34141, ptr %46, align 4, !tbaa !9
  %34142 = load i32, ptr %46, align 4, !tbaa !9
  %34143 = load i32, ptr %45, align 4, !tbaa !9
  %34144 = add i32 %34143, %34142
  store i32 %34144, ptr %45, align 4, !tbaa !9
  %34145 = load ptr, ptr %5, align 8, !tbaa !5
  %34146 = getelementptr inbounds %struct.w2c_hermes, ptr %34145, i32 0, i32 6
  %34147 = load i32, ptr %45, align 4, !tbaa !9
  %34148 = zext i32 %34147 to i64
  %34149 = call i64 @i64_load(ptr noundef %34146, i64 noundef %34148)
  store i64 %34149, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34150 = load i64, ptr %54, align 8, !tbaa !11
  %34151 = load i64, ptr %55, align 8, !tbaa !11
  %34152 = icmp ugt i64 %34150, %34151
  %34153 = zext i1 %34152 to i32
  store i32 %34153, ptr %45, align 4, !tbaa !9
  %34154 = load i32, ptr %45, align 4, !tbaa !9
  %34155 = icmp ne i32 %34154, 0
  br i1 %34155, label %34156, label %34157

34156:                                            ; preds = %34129
  br label %34224

34157:                                            ; preds = %34129
  br label %34158

34158:                                            ; preds = %34157, %3121
  %34159 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34159, ptr %45, align 4, !tbaa !9
  %34160 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34160, ptr %46, align 4, !tbaa !9
  %34161 = load ptr, ptr %5, align 8, !tbaa !5
  %34162 = getelementptr inbounds %struct.w2c_hermes, ptr %34161, i32 0, i32 6
  %34163 = load i32, ptr %46, align 4, !tbaa !9
  %34164 = zext i32 %34163 to i64
  %34165 = add i64 %34164, 5
  %34166 = call i32 @i32_load8_u(ptr noundef %34162, i64 noundef %34165)
  store i32 %34166, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34167 = load i32, ptr %47, align 4, !tbaa !9
  %34168 = and i32 %34167, 31
  %34169 = load i32, ptr %46, align 4, !tbaa !9
  %34170 = shl i32 %34169, %34168
  store i32 %34170, ptr %46, align 4, !tbaa !9
  %34171 = load i32, ptr %46, align 4, !tbaa !9
  %34172 = load i32, ptr %45, align 4, !tbaa !9
  %34173 = add i32 %34172, %34171
  store i32 %34173, ptr %45, align 4, !tbaa !9
  %34174 = load ptr, ptr %5, align 8, !tbaa !5
  %34175 = getelementptr inbounds %struct.w2c_hermes, ptr %34174, i32 0, i32 6
  %34176 = load i32, ptr %45, align 4, !tbaa !9
  %34177 = zext i32 %34176 to i64
  %34178 = call double @f64_load(ptr noundef %34175, i64 noundef %34177)
  store double %34178, ptr %60, align 8, !tbaa !13
  %34179 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34179, ptr %46, align 4, !tbaa !9
  %34180 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34180, ptr %47, align 4, !tbaa !9
  %34181 = load ptr, ptr %5, align 8, !tbaa !5
  %34182 = getelementptr inbounds %struct.w2c_hermes, ptr %34181, i32 0, i32 6
  %34183 = load i32, ptr %47, align 4, !tbaa !9
  %34184 = zext i32 %34183 to i64
  %34185 = add i64 %34184, 6
  %34186 = call i32 @i32_load8_u(ptr noundef %34182, i64 noundef %34185)
  store i32 %34186, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %34187 = load i32, ptr %48, align 4, !tbaa !9
  %34188 = and i32 %34187, 31
  %34189 = load i32, ptr %47, align 4, !tbaa !9
  %34190 = shl i32 %34189, %34188
  store i32 %34190, ptr %47, align 4, !tbaa !9
  %34191 = load i32, ptr %47, align 4, !tbaa !9
  %34192 = load i32, ptr %46, align 4, !tbaa !9
  %34193 = add i32 %34192, %34191
  store i32 %34193, ptr %46, align 4, !tbaa !9
  %34194 = load ptr, ptr %5, align 8, !tbaa !5
  %34195 = getelementptr inbounds %struct.w2c_hermes, ptr %34194, i32 0, i32 6
  %34196 = load i32, ptr %46, align 4, !tbaa !9
  %34197 = zext i32 %34196 to i64
  %34198 = call double @f64_load(ptr noundef %34195, i64 noundef %34197)
  store double %34198, ptr %61, align 8, !tbaa !13
  %34199 = load double, ptr %60, align 8, !tbaa !13
  %34200 = load double, ptr %61, align 8, !tbaa !13
  %34201 = fcmp ole double %34199, %34200
  %34202 = zext i1 %34201 to i32
  store i32 %34202, ptr %45, align 4, !tbaa !9
  %34203 = load i32, ptr %45, align 4, !tbaa !9
  %34204 = icmp ne i32 %34203, 0
  br i1 %34204, label %34205, label %34218

34205:                                            ; preds = %34158
  %34206 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34206, ptr %45, align 4, !tbaa !9
  %34207 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34207, ptr %46, align 4, !tbaa !9
  %34208 = load ptr, ptr %5, align 8, !tbaa !5
  %34209 = getelementptr inbounds %struct.w2c_hermes, ptr %34208, i32 0, i32 6
  %34210 = load i32, ptr %46, align 4, !tbaa !9
  %34211 = zext i32 %34210 to i64
  %34212 = add i64 %34211, 1
  %34213 = call i32 @i32_load(ptr noundef %34209, i64 noundef %34212)
  store i32 %34213, ptr %46, align 4, !tbaa !9
  %34214 = load i32, ptr %46, align 4, !tbaa !9
  %34215 = load i32, ptr %45, align 4, !tbaa !9
  %34216 = add i32 %34215, %34214
  store i32 %34216, ptr %45, align 4, !tbaa !9
  %34217 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34217, ptr %6, align 4, !tbaa !9
  br label %2945

34218:                                            ; preds = %34158
  %34219 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34219, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %34220 = load i32, ptr %46, align 4, !tbaa !9
  %34221 = load i32, ptr %45, align 4, !tbaa !9
  %34222 = add i32 %34221, %34220
  store i32 %34222, ptr %45, align 4, !tbaa !9
  %34223 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34223, ptr %6, align 4, !tbaa !9
  br label %2945

34224:                                            ; preds = %34156, %34128
  %34225 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34225, ptr %45, align 4, !tbaa !9
  %34226 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34226, ptr %46, align 4, !tbaa !9
  %34227 = load ptr, ptr %5, align 8, !tbaa !5
  %34228 = getelementptr inbounds %struct.w2c_hermes, ptr %34227, i32 0, i32 6
  %34229 = load i32, ptr %45, align 4, !tbaa !9
  %34230 = zext i32 %34229 to i64
  %34231 = add i64 %34230, 5808
  %34232 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34228, i64 noundef %34231, i32 noundef %34232)
  %34233 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34233, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %34234 = load i32, ptr %46, align 4, !tbaa !9
  %34235 = load i32, ptr %45, align 4, !tbaa !9
  %34236 = add i32 %34235, %34234
  store i32 %34236, ptr %45, align 4, !tbaa !9
  %34237 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34237, ptr %46, align 4, !tbaa !9
  %34238 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34238, ptr %47, align 4, !tbaa !9
  %34239 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34239, ptr %48, align 4, !tbaa !9
  %34240 = load ptr, ptr %5, align 8, !tbaa !5
  %34241 = getelementptr inbounds %struct.w2c_hermes, ptr %34240, i32 0, i32 6
  %34242 = load i32, ptr %48, align 4, !tbaa !9
  %34243 = zext i32 %34242 to i64
  %34244 = add i64 %34243, 5
  %34245 = call i32 @i32_load8_u(ptr noundef %34241, i64 noundef %34244)
  store i32 %34245, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %34246 = load i32, ptr %49, align 4, !tbaa !9
  %34247 = and i32 %34246, 31
  %34248 = load i32, ptr %48, align 4, !tbaa !9
  %34249 = shl i32 %34248, %34247
  store i32 %34249, ptr %48, align 4, !tbaa !9
  %34250 = load i32, ptr %48, align 4, !tbaa !9
  %34251 = load i32, ptr %47, align 4, !tbaa !9
  %34252 = add i32 %34251, %34250
  store i32 %34252, ptr %47, align 4, !tbaa !9
  %34253 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34253, ptr %48, align 4, !tbaa !9
  %34254 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34254, ptr %49, align 4, !tbaa !9
  %34255 = load ptr, ptr %5, align 8, !tbaa !5
  %34256 = getelementptr inbounds %struct.w2c_hermes, ptr %34255, i32 0, i32 6
  %34257 = load i32, ptr %49, align 4, !tbaa !9
  %34258 = zext i32 %34257 to i64
  %34259 = add i64 %34258, 6
  %34260 = call i32 @i32_load8_u(ptr noundef %34256, i64 noundef %34259)
  store i32 %34260, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %34261 = load i32, ptr %50, align 4, !tbaa !9
  %34262 = and i32 %34261, 31
  %34263 = load i32, ptr %49, align 4, !tbaa !9
  %34264 = shl i32 %34263, %34262
  store i32 %34264, ptr %49, align 4, !tbaa !9
  %34265 = load i32, ptr %49, align 4, !tbaa !9
  %34266 = load i32, ptr %48, align 4, !tbaa !9
  %34267 = add i32 %34266, %34265
  store i32 %34267, ptr %48, align 4, !tbaa !9
  %34268 = load ptr, ptr %5, align 8, !tbaa !5
  %34269 = load i32, ptr %45, align 4, !tbaa !9
  %34270 = load i32, ptr %46, align 4, !tbaa !9
  %34271 = load i32, ptr %47, align 4, !tbaa !9
  %34272 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %34268, i32 noundef %34269, i32 noundef %34270, i32 noundef %34271, i32 noundef %34272)
  %34273 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34273, ptr %45, align 4, !tbaa !9
  %34274 = load ptr, ptr %5, align 8, !tbaa !5
  %34275 = getelementptr inbounds %struct.w2c_hermes, ptr %34274, i32 0, i32 6
  %34276 = load i32, ptr %45, align 4, !tbaa !9
  %34277 = zext i32 %34276 to i64
  %34278 = add i64 %34277, 5808
  %34279 = call i32 @i32_load(ptr noundef %34275, i64 noundef %34278)
  store i32 %34279, ptr %45, align 4, !tbaa !9
  %34280 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34280, ptr %6, align 4, !tbaa !9
  %34281 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34281, ptr %45, align 4, !tbaa !9
  %34282 = load ptr, ptr %5, align 8, !tbaa !5
  %34283 = getelementptr inbounds %struct.w2c_hermes, ptr %34282, i32 0, i32 6
  %34284 = load i32, ptr %45, align 4, !tbaa !9
  %34285 = zext i32 %34284 to i64
  %34286 = add i64 %34285, 304
  %34287 = call i32 @i32_load16_u(ptr noundef %34283, i64 noundef %34286)
  store i32 %34287, ptr %45, align 4, !tbaa !9
  %34288 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34288, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %34289 = load i32, ptr %46, align 4, !tbaa !9
  %34290 = load i32, ptr %45, align 4, !tbaa !9
  %34291 = and i32 %34290, %34289
  store i32 %34291, ptr %45, align 4, !tbaa !9
  %34292 = load i32, ptr %45, align 4, !tbaa !9
  %34293 = icmp ne i32 %34292, 0
  %34294 = xor i1 %34293, true
  %34295 = zext i1 %34294 to i32
  store i32 %34295, ptr %45, align 4, !tbaa !9
  %34296 = load i32, ptr %45, align 4, !tbaa !9
  %34297 = icmp ne i32 %34296, 0
  br i1 %34297, label %34298, label %34299

34298:                                            ; preds = %34224
  br label %43136

34299:                                            ; preds = %34224
  %34300 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34300, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %34301 = load ptr, ptr %5, align 8, !tbaa !5
  %34302 = getelementptr inbounds %struct.w2c_hermes, ptr %34301, i32 0, i32 6
  %34303 = load i32, ptr %45, align 4, !tbaa !9
  %34304 = zext i32 %34303 to i64
  %34305 = add i64 %34304, 516
  %34306 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34302, i64 noundef %34305, i32 noundef %34306)
  %34307 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34307, ptr %45, align 4, !tbaa !9
  %34308 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %34308, ptr %46, align 4, !tbaa !9
  %34309 = load ptr, ptr %5, align 8, !tbaa !5
  %34310 = getelementptr inbounds %struct.w2c_hermes, ptr %34309, i32 0, i32 6
  %34311 = load i32, ptr %45, align 4, !tbaa !9
  %34312 = zext i32 %34311 to i64
  %34313 = add i64 %34312, 512
  %34314 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34310, i64 noundef %34313, i32 noundef %34314)
  %34315 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34315, ptr %45, align 4, !tbaa !9
  %34316 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %34316, ptr %46, align 4, !tbaa !9
  %34317 = load ptr, ptr %5, align 8, !tbaa !5
  %34318 = getelementptr inbounds %struct.w2c_hermes, ptr %34317, i32 0, i32 6
  %34319 = load i32, ptr %45, align 4, !tbaa !9
  %34320 = zext i32 %34319 to i64
  %34321 = add i64 %34320, 508
  %34322 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34318, i64 noundef %34321, i32 noundef %34322)
  %34323 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %34323, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %34324 = load i32, ptr %46, align 4, !tbaa !9
  %34325 = load i32, ptr %45, align 4, !tbaa !9
  %34326 = and i32 %34325, %34324
  store i32 %34326, ptr %45, align 4, !tbaa !9
  %34327 = load i32, ptr %45, align 4, !tbaa !9
  %34328 = icmp ne i32 %34327, 0
  br i1 %34328, label %34329, label %34342

34329:                                            ; preds = %34299
  %34330 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34330, ptr %45, align 4, !tbaa !9
  %34331 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34331, ptr %46, align 4, !tbaa !9
  %34332 = load ptr, ptr %5, align 8, !tbaa !5
  %34333 = getelementptr inbounds %struct.w2c_hermes, ptr %34332, i32 0, i32 6
  %34334 = load i32, ptr %46, align 4, !tbaa !9
  %34335 = zext i32 %34334 to i64
  %34336 = add i64 %34335, 1
  %34337 = call i32 @i32_load(ptr noundef %34333, i64 noundef %34336)
  store i32 %34337, ptr %46, align 4, !tbaa !9
  %34338 = load i32, ptr %46, align 4, !tbaa !9
  %34339 = load i32, ptr %45, align 4, !tbaa !9
  %34340 = add i32 %34339, %34338
  store i32 %34340, ptr %45, align 4, !tbaa !9
  %34341 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34341, ptr %6, align 4, !tbaa !9
  br label %2945

34342:                                            ; preds = %34299
  %34343 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34343, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %34344 = load i32, ptr %46, align 4, !tbaa !9
  %34345 = load i32, ptr %45, align 4, !tbaa !9
  %34346 = add i32 %34345, %34344
  store i32 %34346, ptr %45, align 4, !tbaa !9
  %34347 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34347, ptr %6, align 4, !tbaa !9
  br label %2945

34348:                                            ; preds = %3122
  %34349 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34349, ptr %45, align 4, !tbaa !9
  %34350 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34350, ptr %46, align 4, !tbaa !9
  %34351 = load ptr, ptr %5, align 8, !tbaa !5
  %34352 = getelementptr inbounds %struct.w2c_hermes, ptr %34351, i32 0, i32 6
  %34353 = load i32, ptr %46, align 4, !tbaa !9
  %34354 = zext i32 %34353 to i64
  %34355 = add i64 %34354, 2
  %34356 = call i32 @i32_load8_u(ptr noundef %34352, i64 noundef %34355)
  store i32 %34356, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34357 = load i32, ptr %47, align 4, !tbaa !9
  %34358 = and i32 %34357, 31
  %34359 = load i32, ptr %46, align 4, !tbaa !9
  %34360 = shl i32 %34359, %34358
  store i32 %34360, ptr %46, align 4, !tbaa !9
  %34361 = load i32, ptr %46, align 4, !tbaa !9
  %34362 = load i32, ptr %45, align 4, !tbaa !9
  %34363 = add i32 %34362, %34361
  store i32 %34363, ptr %45, align 4, !tbaa !9
  %34364 = load ptr, ptr %5, align 8, !tbaa !5
  %34365 = getelementptr inbounds %struct.w2c_hermes, ptr %34364, i32 0, i32 6
  %34366 = load i32, ptr %45, align 4, !tbaa !9
  %34367 = zext i32 %34366 to i64
  %34368 = call i64 @i64_load(ptr noundef %34365, i64 noundef %34367)
  store i64 %34368, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34369 = load i64, ptr %54, align 8, !tbaa !11
  %34370 = load i64, ptr %55, align 8, !tbaa !11
  %34371 = icmp ugt i64 %34369, %34370
  %34372 = zext i1 %34371 to i32
  store i32 %34372, ptr %45, align 4, !tbaa !9
  %34373 = load i32, ptr %45, align 4, !tbaa !9
  %34374 = icmp ne i32 %34373, 0
  br i1 %34374, label %34375, label %34376

34375:                                            ; preds = %34348
  br label %34471

34376:                                            ; preds = %34348
  %34377 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34377, ptr %45, align 4, !tbaa !9
  %34378 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34378, ptr %46, align 4, !tbaa !9
  %34379 = load ptr, ptr %5, align 8, !tbaa !5
  %34380 = getelementptr inbounds %struct.w2c_hermes, ptr %34379, i32 0, i32 6
  %34381 = load i32, ptr %46, align 4, !tbaa !9
  %34382 = zext i32 %34381 to i64
  %34383 = add i64 %34382, 3
  %34384 = call i32 @i32_load8_u(ptr noundef %34380, i64 noundef %34383)
  store i32 %34384, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34385 = load i32, ptr %47, align 4, !tbaa !9
  %34386 = and i32 %34385, 31
  %34387 = load i32, ptr %46, align 4, !tbaa !9
  %34388 = shl i32 %34387, %34386
  store i32 %34388, ptr %46, align 4, !tbaa !9
  %34389 = load i32, ptr %46, align 4, !tbaa !9
  %34390 = load i32, ptr %45, align 4, !tbaa !9
  %34391 = add i32 %34390, %34389
  store i32 %34391, ptr %45, align 4, !tbaa !9
  %34392 = load ptr, ptr %5, align 8, !tbaa !5
  %34393 = getelementptr inbounds %struct.w2c_hermes, ptr %34392, i32 0, i32 6
  %34394 = load i32, ptr %45, align 4, !tbaa !9
  %34395 = zext i32 %34394 to i64
  %34396 = call i64 @i64_load(ptr noundef %34393, i64 noundef %34395)
  store i64 %34396, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34397 = load i64, ptr %54, align 8, !tbaa !11
  %34398 = load i64, ptr %55, align 8, !tbaa !11
  %34399 = icmp ugt i64 %34397, %34398
  %34400 = zext i1 %34399 to i32
  store i32 %34400, ptr %45, align 4, !tbaa !9
  %34401 = load i32, ptr %45, align 4, !tbaa !9
  %34402 = icmp ne i32 %34401, 0
  br i1 %34402, label %34403, label %34404

34403:                                            ; preds = %34376
  br label %34471

34404:                                            ; preds = %34376
  br label %34405

34405:                                            ; preds = %34404, %3123
  %34406 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34406, ptr %45, align 4, !tbaa !9
  %34407 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34407, ptr %46, align 4, !tbaa !9
  %34408 = load ptr, ptr %5, align 8, !tbaa !5
  %34409 = getelementptr inbounds %struct.w2c_hermes, ptr %34408, i32 0, i32 6
  %34410 = load i32, ptr %46, align 4, !tbaa !9
  %34411 = zext i32 %34410 to i64
  %34412 = add i64 %34411, 2
  %34413 = call i32 @i32_load8_u(ptr noundef %34409, i64 noundef %34412)
  store i32 %34413, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34414 = load i32, ptr %47, align 4, !tbaa !9
  %34415 = and i32 %34414, 31
  %34416 = load i32, ptr %46, align 4, !tbaa !9
  %34417 = shl i32 %34416, %34415
  store i32 %34417, ptr %46, align 4, !tbaa !9
  %34418 = load i32, ptr %46, align 4, !tbaa !9
  %34419 = load i32, ptr %45, align 4, !tbaa !9
  %34420 = add i32 %34419, %34418
  store i32 %34420, ptr %45, align 4, !tbaa !9
  %34421 = load ptr, ptr %5, align 8, !tbaa !5
  %34422 = getelementptr inbounds %struct.w2c_hermes, ptr %34421, i32 0, i32 6
  %34423 = load i32, ptr %45, align 4, !tbaa !9
  %34424 = zext i32 %34423 to i64
  %34425 = call double @f64_load(ptr noundef %34422, i64 noundef %34424)
  store double %34425, ptr %60, align 8, !tbaa !13
  %34426 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34426, ptr %46, align 4, !tbaa !9
  %34427 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34427, ptr %47, align 4, !tbaa !9
  %34428 = load ptr, ptr %5, align 8, !tbaa !5
  %34429 = getelementptr inbounds %struct.w2c_hermes, ptr %34428, i32 0, i32 6
  %34430 = load i32, ptr %47, align 4, !tbaa !9
  %34431 = zext i32 %34430 to i64
  %34432 = add i64 %34431, 3
  %34433 = call i32 @i32_load8_u(ptr noundef %34429, i64 noundef %34432)
  store i32 %34433, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %34434 = load i32, ptr %48, align 4, !tbaa !9
  %34435 = and i32 %34434, 31
  %34436 = load i32, ptr %47, align 4, !tbaa !9
  %34437 = shl i32 %34436, %34435
  store i32 %34437, ptr %47, align 4, !tbaa !9
  %34438 = load i32, ptr %47, align 4, !tbaa !9
  %34439 = load i32, ptr %46, align 4, !tbaa !9
  %34440 = add i32 %34439, %34438
  store i32 %34440, ptr %46, align 4, !tbaa !9
  %34441 = load ptr, ptr %5, align 8, !tbaa !5
  %34442 = getelementptr inbounds %struct.w2c_hermes, ptr %34441, i32 0, i32 6
  %34443 = load i32, ptr %46, align 4, !tbaa !9
  %34444 = zext i32 %34443 to i64
  %34445 = call double @f64_load(ptr noundef %34442, i64 noundef %34444)
  store double %34445, ptr %61, align 8, !tbaa !13
  %34446 = load double, ptr %60, align 8, !tbaa !13
  %34447 = load double, ptr %61, align 8, !tbaa !13
  %34448 = fcmp ole double %34446, %34447
  %34449 = zext i1 %34448 to i32
  store i32 %34449, ptr %45, align 4, !tbaa !9
  %34450 = load i32, ptr %45, align 4, !tbaa !9
  %34451 = icmp ne i32 %34450, 0
  br i1 %34451, label %34452, label %34458

34452:                                            ; preds = %34405
  %34453 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34453, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %34454 = load i32, ptr %46, align 4, !tbaa !9
  %34455 = load i32, ptr %45, align 4, !tbaa !9
  %34456 = add i32 %34455, %34454
  store i32 %34456, ptr %45, align 4, !tbaa !9
  %34457 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34457, ptr %6, align 4, !tbaa !9
  br label %2945

34458:                                            ; preds = %34405
  %34459 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34459, ptr %45, align 4, !tbaa !9
  %34460 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34460, ptr %46, align 4, !tbaa !9
  %34461 = load ptr, ptr %5, align 8, !tbaa !5
  %34462 = getelementptr inbounds %struct.w2c_hermes, ptr %34461, i32 0, i32 6
  %34463 = load i32, ptr %46, align 4, !tbaa !9
  %34464 = zext i32 %34463 to i64
  %34465 = add i64 %34464, 1
  %34466 = call i32 @i32_load8_s(ptr noundef %34462, i64 noundef %34465)
  store i32 %34466, ptr %46, align 4, !tbaa !9
  %34467 = load i32, ptr %46, align 4, !tbaa !9
  %34468 = load i32, ptr %45, align 4, !tbaa !9
  %34469 = add i32 %34468, %34467
  store i32 %34469, ptr %45, align 4, !tbaa !9
  %34470 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34470, ptr %6, align 4, !tbaa !9
  br label %2945

34471:                                            ; preds = %34403, %34375
  %34472 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34472, ptr %45, align 4, !tbaa !9
  %34473 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34473, ptr %46, align 4, !tbaa !9
  %34474 = load ptr, ptr %5, align 8, !tbaa !5
  %34475 = getelementptr inbounds %struct.w2c_hermes, ptr %34474, i32 0, i32 6
  %34476 = load i32, ptr %45, align 4, !tbaa !9
  %34477 = zext i32 %34476 to i64
  %34478 = add i64 %34477, 5808
  %34479 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34475, i64 noundef %34478, i32 noundef %34479)
  %34480 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34480, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %34481 = load i32, ptr %46, align 4, !tbaa !9
  %34482 = load i32, ptr %45, align 4, !tbaa !9
  %34483 = add i32 %34482, %34481
  store i32 %34483, ptr %45, align 4, !tbaa !9
  %34484 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34484, ptr %46, align 4, !tbaa !9
  %34485 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34485, ptr %47, align 4, !tbaa !9
  %34486 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34486, ptr %48, align 4, !tbaa !9
  %34487 = load ptr, ptr %5, align 8, !tbaa !5
  %34488 = getelementptr inbounds %struct.w2c_hermes, ptr %34487, i32 0, i32 6
  %34489 = load i32, ptr %48, align 4, !tbaa !9
  %34490 = zext i32 %34489 to i64
  %34491 = add i64 %34490, 2
  %34492 = call i32 @i32_load8_u(ptr noundef %34488, i64 noundef %34491)
  store i32 %34492, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %34493 = load i32, ptr %49, align 4, !tbaa !9
  %34494 = and i32 %34493, 31
  %34495 = load i32, ptr %48, align 4, !tbaa !9
  %34496 = shl i32 %34495, %34494
  store i32 %34496, ptr %48, align 4, !tbaa !9
  %34497 = load i32, ptr %48, align 4, !tbaa !9
  %34498 = load i32, ptr %47, align 4, !tbaa !9
  %34499 = add i32 %34498, %34497
  store i32 %34499, ptr %47, align 4, !tbaa !9
  %34500 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34500, ptr %48, align 4, !tbaa !9
  %34501 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34501, ptr %49, align 4, !tbaa !9
  %34502 = load ptr, ptr %5, align 8, !tbaa !5
  %34503 = getelementptr inbounds %struct.w2c_hermes, ptr %34502, i32 0, i32 6
  %34504 = load i32, ptr %49, align 4, !tbaa !9
  %34505 = zext i32 %34504 to i64
  %34506 = add i64 %34505, 3
  %34507 = call i32 @i32_load8_u(ptr noundef %34503, i64 noundef %34506)
  store i32 %34507, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %34508 = load i32, ptr %50, align 4, !tbaa !9
  %34509 = and i32 %34508, 31
  %34510 = load i32, ptr %49, align 4, !tbaa !9
  %34511 = shl i32 %34510, %34509
  store i32 %34511, ptr %49, align 4, !tbaa !9
  %34512 = load i32, ptr %49, align 4, !tbaa !9
  %34513 = load i32, ptr %48, align 4, !tbaa !9
  %34514 = add i32 %34513, %34512
  store i32 %34514, ptr %48, align 4, !tbaa !9
  %34515 = load ptr, ptr %5, align 8, !tbaa !5
  %34516 = load i32, ptr %45, align 4, !tbaa !9
  %34517 = load i32, ptr %46, align 4, !tbaa !9
  %34518 = load i32, ptr %47, align 4, !tbaa !9
  %34519 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %34515, i32 noundef %34516, i32 noundef %34517, i32 noundef %34518, i32 noundef %34519)
  %34520 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34520, ptr %45, align 4, !tbaa !9
  %34521 = load ptr, ptr %5, align 8, !tbaa !5
  %34522 = getelementptr inbounds %struct.w2c_hermes, ptr %34521, i32 0, i32 6
  %34523 = load i32, ptr %45, align 4, !tbaa !9
  %34524 = zext i32 %34523 to i64
  %34525 = add i64 %34524, 5808
  %34526 = call i32 @i32_load(ptr noundef %34522, i64 noundef %34525)
  store i32 %34526, ptr %45, align 4, !tbaa !9
  %34527 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34527, ptr %6, align 4, !tbaa !9
  %34528 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34528, ptr %45, align 4, !tbaa !9
  %34529 = load ptr, ptr %5, align 8, !tbaa !5
  %34530 = getelementptr inbounds %struct.w2c_hermes, ptr %34529, i32 0, i32 6
  %34531 = load i32, ptr %45, align 4, !tbaa !9
  %34532 = zext i32 %34531 to i64
  %34533 = add i64 %34532, 304
  %34534 = call i32 @i32_load16_u(ptr noundef %34530, i64 noundef %34533)
  store i32 %34534, ptr %45, align 4, !tbaa !9
  %34535 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34535, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %34536 = load i32, ptr %46, align 4, !tbaa !9
  %34537 = load i32, ptr %45, align 4, !tbaa !9
  %34538 = and i32 %34537, %34536
  store i32 %34538, ptr %45, align 4, !tbaa !9
  %34539 = load i32, ptr %45, align 4, !tbaa !9
  %34540 = icmp ne i32 %34539, 0
  %34541 = xor i1 %34540, true
  %34542 = zext i1 %34541 to i32
  store i32 %34542, ptr %45, align 4, !tbaa !9
  %34543 = load i32, ptr %45, align 4, !tbaa !9
  %34544 = icmp ne i32 %34543, 0
  br i1 %34544, label %34545, label %34546

34545:                                            ; preds = %34471
  br label %43136

34546:                                            ; preds = %34471
  %34547 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34547, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %34548 = load ptr, ptr %5, align 8, !tbaa !5
  %34549 = getelementptr inbounds %struct.w2c_hermes, ptr %34548, i32 0, i32 6
  %34550 = load i32, ptr %45, align 4, !tbaa !9
  %34551 = zext i32 %34550 to i64
  %34552 = add i64 %34551, 516
  %34553 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34549, i64 noundef %34552, i32 noundef %34553)
  %34554 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34554, ptr %45, align 4, !tbaa !9
  %34555 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %34555, ptr %46, align 4, !tbaa !9
  %34556 = load ptr, ptr %5, align 8, !tbaa !5
  %34557 = getelementptr inbounds %struct.w2c_hermes, ptr %34556, i32 0, i32 6
  %34558 = load i32, ptr %45, align 4, !tbaa !9
  %34559 = zext i32 %34558 to i64
  %34560 = add i64 %34559, 512
  %34561 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34557, i64 noundef %34560, i32 noundef %34561)
  %34562 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34562, ptr %45, align 4, !tbaa !9
  %34563 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %34563, ptr %46, align 4, !tbaa !9
  %34564 = load ptr, ptr %5, align 8, !tbaa !5
  %34565 = getelementptr inbounds %struct.w2c_hermes, ptr %34564, i32 0, i32 6
  %34566 = load i32, ptr %45, align 4, !tbaa !9
  %34567 = zext i32 %34566 to i64
  %34568 = add i64 %34567, 508
  %34569 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34565, i64 noundef %34568, i32 noundef %34569)
  %34570 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %34570, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %34571 = load i32, ptr %46, align 4, !tbaa !9
  %34572 = load i32, ptr %45, align 4, !tbaa !9
  %34573 = and i32 %34572, %34571
  store i32 %34573, ptr %45, align 4, !tbaa !9
  %34574 = load i32, ptr %45, align 4, !tbaa !9
  %34575 = icmp ne i32 %34574, 0
  br i1 %34575, label %34576, label %34582

34576:                                            ; preds = %34546
  %34577 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34577, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %34578 = load i32, ptr %46, align 4, !tbaa !9
  %34579 = load i32, ptr %45, align 4, !tbaa !9
  %34580 = add i32 %34579, %34578
  store i32 %34580, ptr %45, align 4, !tbaa !9
  %34581 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34581, ptr %6, align 4, !tbaa !9
  br label %2945

34582:                                            ; preds = %34546
  %34583 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34583, ptr %45, align 4, !tbaa !9
  %34584 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34584, ptr %46, align 4, !tbaa !9
  %34585 = load ptr, ptr %5, align 8, !tbaa !5
  %34586 = getelementptr inbounds %struct.w2c_hermes, ptr %34585, i32 0, i32 6
  %34587 = load i32, ptr %46, align 4, !tbaa !9
  %34588 = zext i32 %34587 to i64
  %34589 = add i64 %34588, 1
  %34590 = call i32 @i32_load8_s(ptr noundef %34586, i64 noundef %34589)
  store i32 %34590, ptr %46, align 4, !tbaa !9
  %34591 = load i32, ptr %46, align 4, !tbaa !9
  %34592 = load i32, ptr %45, align 4, !tbaa !9
  %34593 = add i32 %34592, %34591
  store i32 %34593, ptr %45, align 4, !tbaa !9
  %34594 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34594, ptr %6, align 4, !tbaa !9
  br label %2945

34595:                                            ; preds = %3124
  %34596 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34596, ptr %45, align 4, !tbaa !9
  %34597 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34597, ptr %46, align 4, !tbaa !9
  %34598 = load ptr, ptr %5, align 8, !tbaa !5
  %34599 = getelementptr inbounds %struct.w2c_hermes, ptr %34598, i32 0, i32 6
  %34600 = load i32, ptr %46, align 4, !tbaa !9
  %34601 = zext i32 %34600 to i64
  %34602 = add i64 %34601, 5
  %34603 = call i32 @i32_load8_u(ptr noundef %34599, i64 noundef %34602)
  store i32 %34603, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34604 = load i32, ptr %47, align 4, !tbaa !9
  %34605 = and i32 %34604, 31
  %34606 = load i32, ptr %46, align 4, !tbaa !9
  %34607 = shl i32 %34606, %34605
  store i32 %34607, ptr %46, align 4, !tbaa !9
  %34608 = load i32, ptr %46, align 4, !tbaa !9
  %34609 = load i32, ptr %45, align 4, !tbaa !9
  %34610 = add i32 %34609, %34608
  store i32 %34610, ptr %45, align 4, !tbaa !9
  %34611 = load ptr, ptr %5, align 8, !tbaa !5
  %34612 = getelementptr inbounds %struct.w2c_hermes, ptr %34611, i32 0, i32 6
  %34613 = load i32, ptr %45, align 4, !tbaa !9
  %34614 = zext i32 %34613 to i64
  %34615 = call i64 @i64_load(ptr noundef %34612, i64 noundef %34614)
  store i64 %34615, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34616 = load i64, ptr %54, align 8, !tbaa !11
  %34617 = load i64, ptr %55, align 8, !tbaa !11
  %34618 = icmp ugt i64 %34616, %34617
  %34619 = zext i1 %34618 to i32
  store i32 %34619, ptr %45, align 4, !tbaa !9
  %34620 = load i32, ptr %45, align 4, !tbaa !9
  %34621 = icmp ne i32 %34620, 0
  br i1 %34621, label %34622, label %34623

34622:                                            ; preds = %34595
  br label %34718

34623:                                            ; preds = %34595
  %34624 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34624, ptr %45, align 4, !tbaa !9
  %34625 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34625, ptr %46, align 4, !tbaa !9
  %34626 = load ptr, ptr %5, align 8, !tbaa !5
  %34627 = getelementptr inbounds %struct.w2c_hermes, ptr %34626, i32 0, i32 6
  %34628 = load i32, ptr %46, align 4, !tbaa !9
  %34629 = zext i32 %34628 to i64
  %34630 = add i64 %34629, 6
  %34631 = call i32 @i32_load8_u(ptr noundef %34627, i64 noundef %34630)
  store i32 %34631, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34632 = load i32, ptr %47, align 4, !tbaa !9
  %34633 = and i32 %34632, 31
  %34634 = load i32, ptr %46, align 4, !tbaa !9
  %34635 = shl i32 %34634, %34633
  store i32 %34635, ptr %46, align 4, !tbaa !9
  %34636 = load i32, ptr %46, align 4, !tbaa !9
  %34637 = load i32, ptr %45, align 4, !tbaa !9
  %34638 = add i32 %34637, %34636
  store i32 %34638, ptr %45, align 4, !tbaa !9
  %34639 = load ptr, ptr %5, align 8, !tbaa !5
  %34640 = getelementptr inbounds %struct.w2c_hermes, ptr %34639, i32 0, i32 6
  %34641 = load i32, ptr %45, align 4, !tbaa !9
  %34642 = zext i32 %34641 to i64
  %34643 = call i64 @i64_load(ptr noundef %34640, i64 noundef %34642)
  store i64 %34643, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34644 = load i64, ptr %54, align 8, !tbaa !11
  %34645 = load i64, ptr %55, align 8, !tbaa !11
  %34646 = icmp ugt i64 %34644, %34645
  %34647 = zext i1 %34646 to i32
  store i32 %34647, ptr %45, align 4, !tbaa !9
  %34648 = load i32, ptr %45, align 4, !tbaa !9
  %34649 = icmp ne i32 %34648, 0
  br i1 %34649, label %34650, label %34651

34650:                                            ; preds = %34623
  br label %34718

34651:                                            ; preds = %34623
  br label %34652

34652:                                            ; preds = %34651, %3125
  %34653 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34653, ptr %45, align 4, !tbaa !9
  %34654 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34654, ptr %46, align 4, !tbaa !9
  %34655 = load ptr, ptr %5, align 8, !tbaa !5
  %34656 = getelementptr inbounds %struct.w2c_hermes, ptr %34655, i32 0, i32 6
  %34657 = load i32, ptr %46, align 4, !tbaa !9
  %34658 = zext i32 %34657 to i64
  %34659 = add i64 %34658, 5
  %34660 = call i32 @i32_load8_u(ptr noundef %34656, i64 noundef %34659)
  store i32 %34660, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34661 = load i32, ptr %47, align 4, !tbaa !9
  %34662 = and i32 %34661, 31
  %34663 = load i32, ptr %46, align 4, !tbaa !9
  %34664 = shl i32 %34663, %34662
  store i32 %34664, ptr %46, align 4, !tbaa !9
  %34665 = load i32, ptr %46, align 4, !tbaa !9
  %34666 = load i32, ptr %45, align 4, !tbaa !9
  %34667 = add i32 %34666, %34665
  store i32 %34667, ptr %45, align 4, !tbaa !9
  %34668 = load ptr, ptr %5, align 8, !tbaa !5
  %34669 = getelementptr inbounds %struct.w2c_hermes, ptr %34668, i32 0, i32 6
  %34670 = load i32, ptr %45, align 4, !tbaa !9
  %34671 = zext i32 %34670 to i64
  %34672 = call double @f64_load(ptr noundef %34669, i64 noundef %34671)
  store double %34672, ptr %60, align 8, !tbaa !13
  %34673 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34673, ptr %46, align 4, !tbaa !9
  %34674 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34674, ptr %47, align 4, !tbaa !9
  %34675 = load ptr, ptr %5, align 8, !tbaa !5
  %34676 = getelementptr inbounds %struct.w2c_hermes, ptr %34675, i32 0, i32 6
  %34677 = load i32, ptr %47, align 4, !tbaa !9
  %34678 = zext i32 %34677 to i64
  %34679 = add i64 %34678, 6
  %34680 = call i32 @i32_load8_u(ptr noundef %34676, i64 noundef %34679)
  store i32 %34680, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %34681 = load i32, ptr %48, align 4, !tbaa !9
  %34682 = and i32 %34681, 31
  %34683 = load i32, ptr %47, align 4, !tbaa !9
  %34684 = shl i32 %34683, %34682
  store i32 %34684, ptr %47, align 4, !tbaa !9
  %34685 = load i32, ptr %47, align 4, !tbaa !9
  %34686 = load i32, ptr %46, align 4, !tbaa !9
  %34687 = add i32 %34686, %34685
  store i32 %34687, ptr %46, align 4, !tbaa !9
  %34688 = load ptr, ptr %5, align 8, !tbaa !5
  %34689 = getelementptr inbounds %struct.w2c_hermes, ptr %34688, i32 0, i32 6
  %34690 = load i32, ptr %46, align 4, !tbaa !9
  %34691 = zext i32 %34690 to i64
  %34692 = call double @f64_load(ptr noundef %34689, i64 noundef %34691)
  store double %34692, ptr %61, align 8, !tbaa !13
  %34693 = load double, ptr %60, align 8, !tbaa !13
  %34694 = load double, ptr %61, align 8, !tbaa !13
  %34695 = fcmp ole double %34693, %34694
  %34696 = zext i1 %34695 to i32
  store i32 %34696, ptr %45, align 4, !tbaa !9
  %34697 = load i32, ptr %45, align 4, !tbaa !9
  %34698 = icmp ne i32 %34697, 0
  br i1 %34698, label %34699, label %34705

34699:                                            ; preds = %34652
  %34700 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34700, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %34701 = load i32, ptr %46, align 4, !tbaa !9
  %34702 = load i32, ptr %45, align 4, !tbaa !9
  %34703 = add i32 %34702, %34701
  store i32 %34703, ptr %45, align 4, !tbaa !9
  %34704 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34704, ptr %6, align 4, !tbaa !9
  br label %2945

34705:                                            ; preds = %34652
  %34706 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34706, ptr %45, align 4, !tbaa !9
  %34707 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34707, ptr %46, align 4, !tbaa !9
  %34708 = load ptr, ptr %5, align 8, !tbaa !5
  %34709 = getelementptr inbounds %struct.w2c_hermes, ptr %34708, i32 0, i32 6
  %34710 = load i32, ptr %46, align 4, !tbaa !9
  %34711 = zext i32 %34710 to i64
  %34712 = add i64 %34711, 1
  %34713 = call i32 @i32_load(ptr noundef %34709, i64 noundef %34712)
  store i32 %34713, ptr %46, align 4, !tbaa !9
  %34714 = load i32, ptr %46, align 4, !tbaa !9
  %34715 = load i32, ptr %45, align 4, !tbaa !9
  %34716 = add i32 %34715, %34714
  store i32 %34716, ptr %45, align 4, !tbaa !9
  %34717 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34717, ptr %6, align 4, !tbaa !9
  br label %2945

34718:                                            ; preds = %34650, %34622
  %34719 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34719, ptr %45, align 4, !tbaa !9
  %34720 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34720, ptr %46, align 4, !tbaa !9
  %34721 = load ptr, ptr %5, align 8, !tbaa !5
  %34722 = getelementptr inbounds %struct.w2c_hermes, ptr %34721, i32 0, i32 6
  %34723 = load i32, ptr %45, align 4, !tbaa !9
  %34724 = zext i32 %34723 to i64
  %34725 = add i64 %34724, 5808
  %34726 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34722, i64 noundef %34725, i32 noundef %34726)
  %34727 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34727, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %34728 = load i32, ptr %46, align 4, !tbaa !9
  %34729 = load i32, ptr %45, align 4, !tbaa !9
  %34730 = add i32 %34729, %34728
  store i32 %34730, ptr %45, align 4, !tbaa !9
  %34731 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34731, ptr %46, align 4, !tbaa !9
  %34732 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34732, ptr %47, align 4, !tbaa !9
  %34733 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34733, ptr %48, align 4, !tbaa !9
  %34734 = load ptr, ptr %5, align 8, !tbaa !5
  %34735 = getelementptr inbounds %struct.w2c_hermes, ptr %34734, i32 0, i32 6
  %34736 = load i32, ptr %48, align 4, !tbaa !9
  %34737 = zext i32 %34736 to i64
  %34738 = add i64 %34737, 5
  %34739 = call i32 @i32_load8_u(ptr noundef %34735, i64 noundef %34738)
  store i32 %34739, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %34740 = load i32, ptr %49, align 4, !tbaa !9
  %34741 = and i32 %34740, 31
  %34742 = load i32, ptr %48, align 4, !tbaa !9
  %34743 = shl i32 %34742, %34741
  store i32 %34743, ptr %48, align 4, !tbaa !9
  %34744 = load i32, ptr %48, align 4, !tbaa !9
  %34745 = load i32, ptr %47, align 4, !tbaa !9
  %34746 = add i32 %34745, %34744
  store i32 %34746, ptr %47, align 4, !tbaa !9
  %34747 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34747, ptr %48, align 4, !tbaa !9
  %34748 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34748, ptr %49, align 4, !tbaa !9
  %34749 = load ptr, ptr %5, align 8, !tbaa !5
  %34750 = getelementptr inbounds %struct.w2c_hermes, ptr %34749, i32 0, i32 6
  %34751 = load i32, ptr %49, align 4, !tbaa !9
  %34752 = zext i32 %34751 to i64
  %34753 = add i64 %34752, 6
  %34754 = call i32 @i32_load8_u(ptr noundef %34750, i64 noundef %34753)
  store i32 %34754, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %34755 = load i32, ptr %50, align 4, !tbaa !9
  %34756 = and i32 %34755, 31
  %34757 = load i32, ptr %49, align 4, !tbaa !9
  %34758 = shl i32 %34757, %34756
  store i32 %34758, ptr %49, align 4, !tbaa !9
  %34759 = load i32, ptr %49, align 4, !tbaa !9
  %34760 = load i32, ptr %48, align 4, !tbaa !9
  %34761 = add i32 %34760, %34759
  store i32 %34761, ptr %48, align 4, !tbaa !9
  %34762 = load ptr, ptr %5, align 8, !tbaa !5
  %34763 = load i32, ptr %45, align 4, !tbaa !9
  %34764 = load i32, ptr %46, align 4, !tbaa !9
  %34765 = load i32, ptr %47, align 4, !tbaa !9
  %34766 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %34762, i32 noundef %34763, i32 noundef %34764, i32 noundef %34765, i32 noundef %34766)
  %34767 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34767, ptr %45, align 4, !tbaa !9
  %34768 = load ptr, ptr %5, align 8, !tbaa !5
  %34769 = getelementptr inbounds %struct.w2c_hermes, ptr %34768, i32 0, i32 6
  %34770 = load i32, ptr %45, align 4, !tbaa !9
  %34771 = zext i32 %34770 to i64
  %34772 = add i64 %34771, 5808
  %34773 = call i32 @i32_load(ptr noundef %34769, i64 noundef %34772)
  store i32 %34773, ptr %45, align 4, !tbaa !9
  %34774 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34774, ptr %6, align 4, !tbaa !9
  %34775 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34775, ptr %45, align 4, !tbaa !9
  %34776 = load ptr, ptr %5, align 8, !tbaa !5
  %34777 = getelementptr inbounds %struct.w2c_hermes, ptr %34776, i32 0, i32 6
  %34778 = load i32, ptr %45, align 4, !tbaa !9
  %34779 = zext i32 %34778 to i64
  %34780 = add i64 %34779, 304
  %34781 = call i32 @i32_load16_u(ptr noundef %34777, i64 noundef %34780)
  store i32 %34781, ptr %45, align 4, !tbaa !9
  %34782 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34782, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %34783 = load i32, ptr %46, align 4, !tbaa !9
  %34784 = load i32, ptr %45, align 4, !tbaa !9
  %34785 = and i32 %34784, %34783
  store i32 %34785, ptr %45, align 4, !tbaa !9
  %34786 = load i32, ptr %45, align 4, !tbaa !9
  %34787 = icmp ne i32 %34786, 0
  %34788 = xor i1 %34787, true
  %34789 = zext i1 %34788 to i32
  store i32 %34789, ptr %45, align 4, !tbaa !9
  %34790 = load i32, ptr %45, align 4, !tbaa !9
  %34791 = icmp ne i32 %34790, 0
  br i1 %34791, label %34792, label %34793

34792:                                            ; preds = %34718
  br label %43136

34793:                                            ; preds = %34718
  %34794 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34794, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %34795 = load ptr, ptr %5, align 8, !tbaa !5
  %34796 = getelementptr inbounds %struct.w2c_hermes, ptr %34795, i32 0, i32 6
  %34797 = load i32, ptr %45, align 4, !tbaa !9
  %34798 = zext i32 %34797 to i64
  %34799 = add i64 %34798, 516
  %34800 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34796, i64 noundef %34799, i32 noundef %34800)
  %34801 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34801, ptr %45, align 4, !tbaa !9
  %34802 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %34802, ptr %46, align 4, !tbaa !9
  %34803 = load ptr, ptr %5, align 8, !tbaa !5
  %34804 = getelementptr inbounds %struct.w2c_hermes, ptr %34803, i32 0, i32 6
  %34805 = load i32, ptr %45, align 4, !tbaa !9
  %34806 = zext i32 %34805 to i64
  %34807 = add i64 %34806, 512
  %34808 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34804, i64 noundef %34807, i32 noundef %34808)
  %34809 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34809, ptr %45, align 4, !tbaa !9
  %34810 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %34810, ptr %46, align 4, !tbaa !9
  %34811 = load ptr, ptr %5, align 8, !tbaa !5
  %34812 = getelementptr inbounds %struct.w2c_hermes, ptr %34811, i32 0, i32 6
  %34813 = load i32, ptr %45, align 4, !tbaa !9
  %34814 = zext i32 %34813 to i64
  %34815 = add i64 %34814, 508
  %34816 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34812, i64 noundef %34815, i32 noundef %34816)
  %34817 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %34817, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %34818 = load i32, ptr %46, align 4, !tbaa !9
  %34819 = load i32, ptr %45, align 4, !tbaa !9
  %34820 = and i32 %34819, %34818
  store i32 %34820, ptr %45, align 4, !tbaa !9
  %34821 = load i32, ptr %45, align 4, !tbaa !9
  %34822 = icmp ne i32 %34821, 0
  br i1 %34822, label %34823, label %34829

34823:                                            ; preds = %34793
  %34824 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34824, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %34825 = load i32, ptr %46, align 4, !tbaa !9
  %34826 = load i32, ptr %45, align 4, !tbaa !9
  %34827 = add i32 %34826, %34825
  store i32 %34827, ptr %45, align 4, !tbaa !9
  %34828 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34828, ptr %6, align 4, !tbaa !9
  br label %2945

34829:                                            ; preds = %34793
  %34830 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34830, ptr %45, align 4, !tbaa !9
  %34831 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34831, ptr %46, align 4, !tbaa !9
  %34832 = load ptr, ptr %5, align 8, !tbaa !5
  %34833 = getelementptr inbounds %struct.w2c_hermes, ptr %34832, i32 0, i32 6
  %34834 = load i32, ptr %46, align 4, !tbaa !9
  %34835 = zext i32 %34834 to i64
  %34836 = add i64 %34835, 1
  %34837 = call i32 @i32_load(ptr noundef %34833, i64 noundef %34836)
  store i32 %34837, ptr %46, align 4, !tbaa !9
  %34838 = load i32, ptr %46, align 4, !tbaa !9
  %34839 = load i32, ptr %45, align 4, !tbaa !9
  %34840 = add i32 %34839, %34838
  store i32 %34840, ptr %45, align 4, !tbaa !9
  %34841 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34841, ptr %6, align 4, !tbaa !9
  br label %2945

34842:                                            ; preds = %3126
  %34843 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34843, ptr %45, align 4, !tbaa !9
  %34844 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34844, ptr %46, align 4, !tbaa !9
  %34845 = load ptr, ptr %5, align 8, !tbaa !5
  %34846 = getelementptr inbounds %struct.w2c_hermes, ptr %34845, i32 0, i32 6
  %34847 = load i32, ptr %46, align 4, !tbaa !9
  %34848 = zext i32 %34847 to i64
  %34849 = add i64 %34848, 2
  %34850 = call i32 @i32_load8_u(ptr noundef %34846, i64 noundef %34849)
  store i32 %34850, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34851 = load i32, ptr %47, align 4, !tbaa !9
  %34852 = and i32 %34851, 31
  %34853 = load i32, ptr %46, align 4, !tbaa !9
  %34854 = shl i32 %34853, %34852
  store i32 %34854, ptr %46, align 4, !tbaa !9
  %34855 = load i32, ptr %46, align 4, !tbaa !9
  %34856 = load i32, ptr %45, align 4, !tbaa !9
  %34857 = add i32 %34856, %34855
  store i32 %34857, ptr %45, align 4, !tbaa !9
  %34858 = load ptr, ptr %5, align 8, !tbaa !5
  %34859 = getelementptr inbounds %struct.w2c_hermes, ptr %34858, i32 0, i32 6
  %34860 = load i32, ptr %45, align 4, !tbaa !9
  %34861 = zext i32 %34860 to i64
  %34862 = call i64 @i64_load(ptr noundef %34859, i64 noundef %34861)
  store i64 %34862, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34863 = load i64, ptr %54, align 8, !tbaa !11
  %34864 = load i64, ptr %55, align 8, !tbaa !11
  %34865 = icmp ugt i64 %34863, %34864
  %34866 = zext i1 %34865 to i32
  store i32 %34866, ptr %45, align 4, !tbaa !9
  %34867 = load i32, ptr %45, align 4, !tbaa !9
  %34868 = icmp ne i32 %34867, 0
  br i1 %34868, label %34869, label %34870

34869:                                            ; preds = %34842
  br label %34965

34870:                                            ; preds = %34842
  %34871 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34871, ptr %45, align 4, !tbaa !9
  %34872 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34872, ptr %46, align 4, !tbaa !9
  %34873 = load ptr, ptr %5, align 8, !tbaa !5
  %34874 = getelementptr inbounds %struct.w2c_hermes, ptr %34873, i32 0, i32 6
  %34875 = load i32, ptr %46, align 4, !tbaa !9
  %34876 = zext i32 %34875 to i64
  %34877 = add i64 %34876, 3
  %34878 = call i32 @i32_load8_u(ptr noundef %34874, i64 noundef %34877)
  store i32 %34878, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34879 = load i32, ptr %47, align 4, !tbaa !9
  %34880 = and i32 %34879, 31
  %34881 = load i32, ptr %46, align 4, !tbaa !9
  %34882 = shl i32 %34881, %34880
  store i32 %34882, ptr %46, align 4, !tbaa !9
  %34883 = load i32, ptr %46, align 4, !tbaa !9
  %34884 = load i32, ptr %45, align 4, !tbaa !9
  %34885 = add i32 %34884, %34883
  store i32 %34885, ptr %45, align 4, !tbaa !9
  %34886 = load ptr, ptr %5, align 8, !tbaa !5
  %34887 = getelementptr inbounds %struct.w2c_hermes, ptr %34886, i32 0, i32 6
  %34888 = load i32, ptr %45, align 4, !tbaa !9
  %34889 = zext i32 %34888 to i64
  %34890 = call i64 @i64_load(ptr noundef %34887, i64 noundef %34889)
  store i64 %34890, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %34891 = load i64, ptr %54, align 8, !tbaa !11
  %34892 = load i64, ptr %55, align 8, !tbaa !11
  %34893 = icmp ugt i64 %34891, %34892
  %34894 = zext i1 %34893 to i32
  store i32 %34894, ptr %45, align 4, !tbaa !9
  %34895 = load i32, ptr %45, align 4, !tbaa !9
  %34896 = icmp ne i32 %34895, 0
  br i1 %34896, label %34897, label %34898

34897:                                            ; preds = %34870
  br label %34965

34898:                                            ; preds = %34870
  br label %34899

34899:                                            ; preds = %34898, %3127
  %34900 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34900, ptr %45, align 4, !tbaa !9
  %34901 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34901, ptr %46, align 4, !tbaa !9
  %34902 = load ptr, ptr %5, align 8, !tbaa !5
  %34903 = getelementptr inbounds %struct.w2c_hermes, ptr %34902, i32 0, i32 6
  %34904 = load i32, ptr %46, align 4, !tbaa !9
  %34905 = zext i32 %34904 to i64
  %34906 = add i64 %34905, 2
  %34907 = call i32 @i32_load8_u(ptr noundef %34903, i64 noundef %34906)
  store i32 %34907, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %34908 = load i32, ptr %47, align 4, !tbaa !9
  %34909 = and i32 %34908, 31
  %34910 = load i32, ptr %46, align 4, !tbaa !9
  %34911 = shl i32 %34910, %34909
  store i32 %34911, ptr %46, align 4, !tbaa !9
  %34912 = load i32, ptr %46, align 4, !tbaa !9
  %34913 = load i32, ptr %45, align 4, !tbaa !9
  %34914 = add i32 %34913, %34912
  store i32 %34914, ptr %45, align 4, !tbaa !9
  %34915 = load ptr, ptr %5, align 8, !tbaa !5
  %34916 = getelementptr inbounds %struct.w2c_hermes, ptr %34915, i32 0, i32 6
  %34917 = load i32, ptr %45, align 4, !tbaa !9
  %34918 = zext i32 %34917 to i64
  %34919 = call double @f64_load(ptr noundef %34916, i64 noundef %34918)
  store double %34919, ptr %60, align 8, !tbaa !13
  %34920 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34920, ptr %46, align 4, !tbaa !9
  %34921 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34921, ptr %47, align 4, !tbaa !9
  %34922 = load ptr, ptr %5, align 8, !tbaa !5
  %34923 = getelementptr inbounds %struct.w2c_hermes, ptr %34922, i32 0, i32 6
  %34924 = load i32, ptr %47, align 4, !tbaa !9
  %34925 = zext i32 %34924 to i64
  %34926 = add i64 %34925, 3
  %34927 = call i32 @i32_load8_u(ptr noundef %34923, i64 noundef %34926)
  store i32 %34927, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %34928 = load i32, ptr %48, align 4, !tbaa !9
  %34929 = and i32 %34928, 31
  %34930 = load i32, ptr %47, align 4, !tbaa !9
  %34931 = shl i32 %34930, %34929
  store i32 %34931, ptr %47, align 4, !tbaa !9
  %34932 = load i32, ptr %47, align 4, !tbaa !9
  %34933 = load i32, ptr %46, align 4, !tbaa !9
  %34934 = add i32 %34933, %34932
  store i32 %34934, ptr %46, align 4, !tbaa !9
  %34935 = load ptr, ptr %5, align 8, !tbaa !5
  %34936 = getelementptr inbounds %struct.w2c_hermes, ptr %34935, i32 0, i32 6
  %34937 = load i32, ptr %46, align 4, !tbaa !9
  %34938 = zext i32 %34937 to i64
  %34939 = call double @f64_load(ptr noundef %34936, i64 noundef %34938)
  store double %34939, ptr %61, align 8, !tbaa !13
  %34940 = load double, ptr %60, align 8, !tbaa !13
  %34941 = load double, ptr %61, align 8, !tbaa !13
  %34942 = fcmp ogt double %34940, %34941
  %34943 = zext i1 %34942 to i32
  store i32 %34943, ptr %45, align 4, !tbaa !9
  %34944 = load i32, ptr %45, align 4, !tbaa !9
  %34945 = icmp ne i32 %34944, 0
  br i1 %34945, label %34946, label %34959

34946:                                            ; preds = %34899
  %34947 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34947, ptr %45, align 4, !tbaa !9
  %34948 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34948, ptr %46, align 4, !tbaa !9
  %34949 = load ptr, ptr %5, align 8, !tbaa !5
  %34950 = getelementptr inbounds %struct.w2c_hermes, ptr %34949, i32 0, i32 6
  %34951 = load i32, ptr %46, align 4, !tbaa !9
  %34952 = zext i32 %34951 to i64
  %34953 = add i64 %34952, 1
  %34954 = call i32 @i32_load8_s(ptr noundef %34950, i64 noundef %34953)
  store i32 %34954, ptr %46, align 4, !tbaa !9
  %34955 = load i32, ptr %46, align 4, !tbaa !9
  %34956 = load i32, ptr %45, align 4, !tbaa !9
  %34957 = add i32 %34956, %34955
  store i32 %34957, ptr %45, align 4, !tbaa !9
  %34958 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34958, ptr %6, align 4, !tbaa !9
  br label %2945

34959:                                            ; preds = %34899
  %34960 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34960, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %34961 = load i32, ptr %46, align 4, !tbaa !9
  %34962 = load i32, ptr %45, align 4, !tbaa !9
  %34963 = add i32 %34962, %34961
  store i32 %34963, ptr %45, align 4, !tbaa !9
  %34964 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %34964, ptr %6, align 4, !tbaa !9
  br label %2945

34965:                                            ; preds = %34897, %34869
  %34966 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34966, ptr %45, align 4, !tbaa !9
  %34967 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34967, ptr %46, align 4, !tbaa !9
  %34968 = load ptr, ptr %5, align 8, !tbaa !5
  %34969 = getelementptr inbounds %struct.w2c_hermes, ptr %34968, i32 0, i32 6
  %34970 = load i32, ptr %45, align 4, !tbaa !9
  %34971 = zext i32 %34970 to i64
  %34972 = add i64 %34971, 5808
  %34973 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %34969, i64 noundef %34972, i32 noundef %34973)
  %34974 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %34974, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %34975 = load i32, ptr %46, align 4, !tbaa !9
  %34976 = load i32, ptr %45, align 4, !tbaa !9
  %34977 = add i32 %34976, %34975
  store i32 %34977, ptr %45, align 4, !tbaa !9
  %34978 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %34978, ptr %46, align 4, !tbaa !9
  %34979 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34979, ptr %47, align 4, !tbaa !9
  %34980 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34980, ptr %48, align 4, !tbaa !9
  %34981 = load ptr, ptr %5, align 8, !tbaa !5
  %34982 = getelementptr inbounds %struct.w2c_hermes, ptr %34981, i32 0, i32 6
  %34983 = load i32, ptr %48, align 4, !tbaa !9
  %34984 = zext i32 %34983 to i64
  %34985 = add i64 %34984, 2
  %34986 = call i32 @i32_load8_u(ptr noundef %34982, i64 noundef %34985)
  store i32 %34986, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %34987 = load i32, ptr %49, align 4, !tbaa !9
  %34988 = and i32 %34987, 31
  %34989 = load i32, ptr %48, align 4, !tbaa !9
  %34990 = shl i32 %34989, %34988
  store i32 %34990, ptr %48, align 4, !tbaa !9
  %34991 = load i32, ptr %48, align 4, !tbaa !9
  %34992 = load i32, ptr %47, align 4, !tbaa !9
  %34993 = add i32 %34992, %34991
  store i32 %34993, ptr %47, align 4, !tbaa !9
  %34994 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %34994, ptr %48, align 4, !tbaa !9
  %34995 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %34995, ptr %49, align 4, !tbaa !9
  %34996 = load ptr, ptr %5, align 8, !tbaa !5
  %34997 = getelementptr inbounds %struct.w2c_hermes, ptr %34996, i32 0, i32 6
  %34998 = load i32, ptr %49, align 4, !tbaa !9
  %34999 = zext i32 %34998 to i64
  %35000 = add i64 %34999, 3
  %35001 = call i32 @i32_load8_u(ptr noundef %34997, i64 noundef %35000)
  store i32 %35001, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %35002 = load i32, ptr %50, align 4, !tbaa !9
  %35003 = and i32 %35002, 31
  %35004 = load i32, ptr %49, align 4, !tbaa !9
  %35005 = shl i32 %35004, %35003
  store i32 %35005, ptr %49, align 4, !tbaa !9
  %35006 = load i32, ptr %49, align 4, !tbaa !9
  %35007 = load i32, ptr %48, align 4, !tbaa !9
  %35008 = add i32 %35007, %35006
  store i32 %35008, ptr %48, align 4, !tbaa !9
  %35009 = load ptr, ptr %5, align 8, !tbaa !5
  %35010 = load i32, ptr %45, align 4, !tbaa !9
  %35011 = load i32, ptr %46, align 4, !tbaa !9
  %35012 = load i32, ptr %47, align 4, !tbaa !9
  %35013 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %35009, i32 noundef %35010, i32 noundef %35011, i32 noundef %35012, i32 noundef %35013)
  %35014 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35014, ptr %45, align 4, !tbaa !9
  %35015 = load ptr, ptr %5, align 8, !tbaa !5
  %35016 = getelementptr inbounds %struct.w2c_hermes, ptr %35015, i32 0, i32 6
  %35017 = load i32, ptr %45, align 4, !tbaa !9
  %35018 = zext i32 %35017 to i64
  %35019 = add i64 %35018, 5808
  %35020 = call i32 @i32_load(ptr noundef %35016, i64 noundef %35019)
  store i32 %35020, ptr %45, align 4, !tbaa !9
  %35021 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35021, ptr %6, align 4, !tbaa !9
  %35022 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35022, ptr %45, align 4, !tbaa !9
  %35023 = load ptr, ptr %5, align 8, !tbaa !5
  %35024 = getelementptr inbounds %struct.w2c_hermes, ptr %35023, i32 0, i32 6
  %35025 = load i32, ptr %45, align 4, !tbaa !9
  %35026 = zext i32 %35025 to i64
  %35027 = add i64 %35026, 304
  %35028 = call i32 @i32_load16_u(ptr noundef %35024, i64 noundef %35027)
  store i32 %35028, ptr %45, align 4, !tbaa !9
  %35029 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35029, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %35030 = load i32, ptr %46, align 4, !tbaa !9
  %35031 = load i32, ptr %45, align 4, !tbaa !9
  %35032 = and i32 %35031, %35030
  store i32 %35032, ptr %45, align 4, !tbaa !9
  %35033 = load i32, ptr %45, align 4, !tbaa !9
  %35034 = icmp ne i32 %35033, 0
  %35035 = xor i1 %35034, true
  %35036 = zext i1 %35035 to i32
  store i32 %35036, ptr %45, align 4, !tbaa !9
  %35037 = load i32, ptr %45, align 4, !tbaa !9
  %35038 = icmp ne i32 %35037, 0
  br i1 %35038, label %35039, label %35040

35039:                                            ; preds = %34965
  br label %43136

35040:                                            ; preds = %34965
  %35041 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35041, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %35042 = load ptr, ptr %5, align 8, !tbaa !5
  %35043 = getelementptr inbounds %struct.w2c_hermes, ptr %35042, i32 0, i32 6
  %35044 = load i32, ptr %45, align 4, !tbaa !9
  %35045 = zext i32 %35044 to i64
  %35046 = add i64 %35045, 516
  %35047 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35043, i64 noundef %35046, i32 noundef %35047)
  %35048 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35048, ptr %45, align 4, !tbaa !9
  %35049 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %35049, ptr %46, align 4, !tbaa !9
  %35050 = load ptr, ptr %5, align 8, !tbaa !5
  %35051 = getelementptr inbounds %struct.w2c_hermes, ptr %35050, i32 0, i32 6
  %35052 = load i32, ptr %45, align 4, !tbaa !9
  %35053 = zext i32 %35052 to i64
  %35054 = add i64 %35053, 512
  %35055 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35051, i64 noundef %35054, i32 noundef %35055)
  %35056 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35056, ptr %45, align 4, !tbaa !9
  %35057 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %35057, ptr %46, align 4, !tbaa !9
  %35058 = load ptr, ptr %5, align 8, !tbaa !5
  %35059 = getelementptr inbounds %struct.w2c_hermes, ptr %35058, i32 0, i32 6
  %35060 = load i32, ptr %45, align 4, !tbaa !9
  %35061 = zext i32 %35060 to i64
  %35062 = add i64 %35061, 508
  %35063 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35059, i64 noundef %35062, i32 noundef %35063)
  %35064 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %35064, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %35065 = load i32, ptr %46, align 4, !tbaa !9
  %35066 = load i32, ptr %45, align 4, !tbaa !9
  %35067 = and i32 %35066, %35065
  store i32 %35067, ptr %45, align 4, !tbaa !9
  %35068 = load i32, ptr %45, align 4, !tbaa !9
  %35069 = icmp ne i32 %35068, 0
  br i1 %35069, label %35070, label %35083

35070:                                            ; preds = %35040
  %35071 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35071, ptr %45, align 4, !tbaa !9
  %35072 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35072, ptr %46, align 4, !tbaa !9
  %35073 = load ptr, ptr %5, align 8, !tbaa !5
  %35074 = getelementptr inbounds %struct.w2c_hermes, ptr %35073, i32 0, i32 6
  %35075 = load i32, ptr %46, align 4, !tbaa !9
  %35076 = zext i32 %35075 to i64
  %35077 = add i64 %35076, 1
  %35078 = call i32 @i32_load8_s(ptr noundef %35074, i64 noundef %35077)
  store i32 %35078, ptr %46, align 4, !tbaa !9
  %35079 = load i32, ptr %46, align 4, !tbaa !9
  %35080 = load i32, ptr %45, align 4, !tbaa !9
  %35081 = add i32 %35080, %35079
  store i32 %35081, ptr %45, align 4, !tbaa !9
  %35082 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35082, ptr %6, align 4, !tbaa !9
  br label %2945

35083:                                            ; preds = %35040
  %35084 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35084, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %35085 = load i32, ptr %46, align 4, !tbaa !9
  %35086 = load i32, ptr %45, align 4, !tbaa !9
  %35087 = add i32 %35086, %35085
  store i32 %35087, ptr %45, align 4, !tbaa !9
  %35088 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35088, ptr %6, align 4, !tbaa !9
  br label %2945

35089:                                            ; preds = %3128
  %35090 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35090, ptr %45, align 4, !tbaa !9
  %35091 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35091, ptr %46, align 4, !tbaa !9
  %35092 = load ptr, ptr %5, align 8, !tbaa !5
  %35093 = getelementptr inbounds %struct.w2c_hermes, ptr %35092, i32 0, i32 6
  %35094 = load i32, ptr %46, align 4, !tbaa !9
  %35095 = zext i32 %35094 to i64
  %35096 = add i64 %35095, 5
  %35097 = call i32 @i32_load8_u(ptr noundef %35093, i64 noundef %35096)
  store i32 %35097, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35098 = load i32, ptr %47, align 4, !tbaa !9
  %35099 = and i32 %35098, 31
  %35100 = load i32, ptr %46, align 4, !tbaa !9
  %35101 = shl i32 %35100, %35099
  store i32 %35101, ptr %46, align 4, !tbaa !9
  %35102 = load i32, ptr %46, align 4, !tbaa !9
  %35103 = load i32, ptr %45, align 4, !tbaa !9
  %35104 = add i32 %35103, %35102
  store i32 %35104, ptr %45, align 4, !tbaa !9
  %35105 = load ptr, ptr %5, align 8, !tbaa !5
  %35106 = getelementptr inbounds %struct.w2c_hermes, ptr %35105, i32 0, i32 6
  %35107 = load i32, ptr %45, align 4, !tbaa !9
  %35108 = zext i32 %35107 to i64
  %35109 = call i64 @i64_load(ptr noundef %35106, i64 noundef %35108)
  store i64 %35109, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35110 = load i64, ptr %54, align 8, !tbaa !11
  %35111 = load i64, ptr %55, align 8, !tbaa !11
  %35112 = icmp ugt i64 %35110, %35111
  %35113 = zext i1 %35112 to i32
  store i32 %35113, ptr %45, align 4, !tbaa !9
  %35114 = load i32, ptr %45, align 4, !tbaa !9
  %35115 = icmp ne i32 %35114, 0
  br i1 %35115, label %35116, label %35117

35116:                                            ; preds = %35089
  br label %35212

35117:                                            ; preds = %35089
  %35118 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35118, ptr %45, align 4, !tbaa !9
  %35119 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35119, ptr %46, align 4, !tbaa !9
  %35120 = load ptr, ptr %5, align 8, !tbaa !5
  %35121 = getelementptr inbounds %struct.w2c_hermes, ptr %35120, i32 0, i32 6
  %35122 = load i32, ptr %46, align 4, !tbaa !9
  %35123 = zext i32 %35122 to i64
  %35124 = add i64 %35123, 6
  %35125 = call i32 @i32_load8_u(ptr noundef %35121, i64 noundef %35124)
  store i32 %35125, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35126 = load i32, ptr %47, align 4, !tbaa !9
  %35127 = and i32 %35126, 31
  %35128 = load i32, ptr %46, align 4, !tbaa !9
  %35129 = shl i32 %35128, %35127
  store i32 %35129, ptr %46, align 4, !tbaa !9
  %35130 = load i32, ptr %46, align 4, !tbaa !9
  %35131 = load i32, ptr %45, align 4, !tbaa !9
  %35132 = add i32 %35131, %35130
  store i32 %35132, ptr %45, align 4, !tbaa !9
  %35133 = load ptr, ptr %5, align 8, !tbaa !5
  %35134 = getelementptr inbounds %struct.w2c_hermes, ptr %35133, i32 0, i32 6
  %35135 = load i32, ptr %45, align 4, !tbaa !9
  %35136 = zext i32 %35135 to i64
  %35137 = call i64 @i64_load(ptr noundef %35134, i64 noundef %35136)
  store i64 %35137, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35138 = load i64, ptr %54, align 8, !tbaa !11
  %35139 = load i64, ptr %55, align 8, !tbaa !11
  %35140 = icmp ugt i64 %35138, %35139
  %35141 = zext i1 %35140 to i32
  store i32 %35141, ptr %45, align 4, !tbaa !9
  %35142 = load i32, ptr %45, align 4, !tbaa !9
  %35143 = icmp ne i32 %35142, 0
  br i1 %35143, label %35144, label %35145

35144:                                            ; preds = %35117
  br label %35212

35145:                                            ; preds = %35117
  br label %35146

35146:                                            ; preds = %35145, %3129
  %35147 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35147, ptr %45, align 4, !tbaa !9
  %35148 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35148, ptr %46, align 4, !tbaa !9
  %35149 = load ptr, ptr %5, align 8, !tbaa !5
  %35150 = getelementptr inbounds %struct.w2c_hermes, ptr %35149, i32 0, i32 6
  %35151 = load i32, ptr %46, align 4, !tbaa !9
  %35152 = zext i32 %35151 to i64
  %35153 = add i64 %35152, 5
  %35154 = call i32 @i32_load8_u(ptr noundef %35150, i64 noundef %35153)
  store i32 %35154, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35155 = load i32, ptr %47, align 4, !tbaa !9
  %35156 = and i32 %35155, 31
  %35157 = load i32, ptr %46, align 4, !tbaa !9
  %35158 = shl i32 %35157, %35156
  store i32 %35158, ptr %46, align 4, !tbaa !9
  %35159 = load i32, ptr %46, align 4, !tbaa !9
  %35160 = load i32, ptr %45, align 4, !tbaa !9
  %35161 = add i32 %35160, %35159
  store i32 %35161, ptr %45, align 4, !tbaa !9
  %35162 = load ptr, ptr %5, align 8, !tbaa !5
  %35163 = getelementptr inbounds %struct.w2c_hermes, ptr %35162, i32 0, i32 6
  %35164 = load i32, ptr %45, align 4, !tbaa !9
  %35165 = zext i32 %35164 to i64
  %35166 = call double @f64_load(ptr noundef %35163, i64 noundef %35165)
  store double %35166, ptr %60, align 8, !tbaa !13
  %35167 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35167, ptr %46, align 4, !tbaa !9
  %35168 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35168, ptr %47, align 4, !tbaa !9
  %35169 = load ptr, ptr %5, align 8, !tbaa !5
  %35170 = getelementptr inbounds %struct.w2c_hermes, ptr %35169, i32 0, i32 6
  %35171 = load i32, ptr %47, align 4, !tbaa !9
  %35172 = zext i32 %35171 to i64
  %35173 = add i64 %35172, 6
  %35174 = call i32 @i32_load8_u(ptr noundef %35170, i64 noundef %35173)
  store i32 %35174, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %35175 = load i32, ptr %48, align 4, !tbaa !9
  %35176 = and i32 %35175, 31
  %35177 = load i32, ptr %47, align 4, !tbaa !9
  %35178 = shl i32 %35177, %35176
  store i32 %35178, ptr %47, align 4, !tbaa !9
  %35179 = load i32, ptr %47, align 4, !tbaa !9
  %35180 = load i32, ptr %46, align 4, !tbaa !9
  %35181 = add i32 %35180, %35179
  store i32 %35181, ptr %46, align 4, !tbaa !9
  %35182 = load ptr, ptr %5, align 8, !tbaa !5
  %35183 = getelementptr inbounds %struct.w2c_hermes, ptr %35182, i32 0, i32 6
  %35184 = load i32, ptr %46, align 4, !tbaa !9
  %35185 = zext i32 %35184 to i64
  %35186 = call double @f64_load(ptr noundef %35183, i64 noundef %35185)
  store double %35186, ptr %61, align 8, !tbaa !13
  %35187 = load double, ptr %60, align 8, !tbaa !13
  %35188 = load double, ptr %61, align 8, !tbaa !13
  %35189 = fcmp ogt double %35187, %35188
  %35190 = zext i1 %35189 to i32
  store i32 %35190, ptr %45, align 4, !tbaa !9
  %35191 = load i32, ptr %45, align 4, !tbaa !9
  %35192 = icmp ne i32 %35191, 0
  br i1 %35192, label %35193, label %35206

35193:                                            ; preds = %35146
  %35194 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35194, ptr %45, align 4, !tbaa !9
  %35195 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35195, ptr %46, align 4, !tbaa !9
  %35196 = load ptr, ptr %5, align 8, !tbaa !5
  %35197 = getelementptr inbounds %struct.w2c_hermes, ptr %35196, i32 0, i32 6
  %35198 = load i32, ptr %46, align 4, !tbaa !9
  %35199 = zext i32 %35198 to i64
  %35200 = add i64 %35199, 1
  %35201 = call i32 @i32_load(ptr noundef %35197, i64 noundef %35200)
  store i32 %35201, ptr %46, align 4, !tbaa !9
  %35202 = load i32, ptr %46, align 4, !tbaa !9
  %35203 = load i32, ptr %45, align 4, !tbaa !9
  %35204 = add i32 %35203, %35202
  store i32 %35204, ptr %45, align 4, !tbaa !9
  %35205 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35205, ptr %6, align 4, !tbaa !9
  br label %2945

35206:                                            ; preds = %35146
  %35207 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35207, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %35208 = load i32, ptr %46, align 4, !tbaa !9
  %35209 = load i32, ptr %45, align 4, !tbaa !9
  %35210 = add i32 %35209, %35208
  store i32 %35210, ptr %45, align 4, !tbaa !9
  %35211 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35211, ptr %6, align 4, !tbaa !9
  br label %2945

35212:                                            ; preds = %35144, %35116
  %35213 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35213, ptr %45, align 4, !tbaa !9
  %35214 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35214, ptr %46, align 4, !tbaa !9
  %35215 = load ptr, ptr %5, align 8, !tbaa !5
  %35216 = getelementptr inbounds %struct.w2c_hermes, ptr %35215, i32 0, i32 6
  %35217 = load i32, ptr %45, align 4, !tbaa !9
  %35218 = zext i32 %35217 to i64
  %35219 = add i64 %35218, 5808
  %35220 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35216, i64 noundef %35219, i32 noundef %35220)
  %35221 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35221, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %35222 = load i32, ptr %46, align 4, !tbaa !9
  %35223 = load i32, ptr %45, align 4, !tbaa !9
  %35224 = add i32 %35223, %35222
  store i32 %35224, ptr %45, align 4, !tbaa !9
  %35225 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35225, ptr %46, align 4, !tbaa !9
  %35226 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35226, ptr %47, align 4, !tbaa !9
  %35227 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35227, ptr %48, align 4, !tbaa !9
  %35228 = load ptr, ptr %5, align 8, !tbaa !5
  %35229 = getelementptr inbounds %struct.w2c_hermes, ptr %35228, i32 0, i32 6
  %35230 = load i32, ptr %48, align 4, !tbaa !9
  %35231 = zext i32 %35230 to i64
  %35232 = add i64 %35231, 5
  %35233 = call i32 @i32_load8_u(ptr noundef %35229, i64 noundef %35232)
  store i32 %35233, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %35234 = load i32, ptr %49, align 4, !tbaa !9
  %35235 = and i32 %35234, 31
  %35236 = load i32, ptr %48, align 4, !tbaa !9
  %35237 = shl i32 %35236, %35235
  store i32 %35237, ptr %48, align 4, !tbaa !9
  %35238 = load i32, ptr %48, align 4, !tbaa !9
  %35239 = load i32, ptr %47, align 4, !tbaa !9
  %35240 = add i32 %35239, %35238
  store i32 %35240, ptr %47, align 4, !tbaa !9
  %35241 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35241, ptr %48, align 4, !tbaa !9
  %35242 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35242, ptr %49, align 4, !tbaa !9
  %35243 = load ptr, ptr %5, align 8, !tbaa !5
  %35244 = getelementptr inbounds %struct.w2c_hermes, ptr %35243, i32 0, i32 6
  %35245 = load i32, ptr %49, align 4, !tbaa !9
  %35246 = zext i32 %35245 to i64
  %35247 = add i64 %35246, 6
  %35248 = call i32 @i32_load8_u(ptr noundef %35244, i64 noundef %35247)
  store i32 %35248, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %35249 = load i32, ptr %50, align 4, !tbaa !9
  %35250 = and i32 %35249, 31
  %35251 = load i32, ptr %49, align 4, !tbaa !9
  %35252 = shl i32 %35251, %35250
  store i32 %35252, ptr %49, align 4, !tbaa !9
  %35253 = load i32, ptr %49, align 4, !tbaa !9
  %35254 = load i32, ptr %48, align 4, !tbaa !9
  %35255 = add i32 %35254, %35253
  store i32 %35255, ptr %48, align 4, !tbaa !9
  %35256 = load ptr, ptr %5, align 8, !tbaa !5
  %35257 = load i32, ptr %45, align 4, !tbaa !9
  %35258 = load i32, ptr %46, align 4, !tbaa !9
  %35259 = load i32, ptr %47, align 4, !tbaa !9
  %35260 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %35256, i32 noundef %35257, i32 noundef %35258, i32 noundef %35259, i32 noundef %35260)
  %35261 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35261, ptr %45, align 4, !tbaa !9
  %35262 = load ptr, ptr %5, align 8, !tbaa !5
  %35263 = getelementptr inbounds %struct.w2c_hermes, ptr %35262, i32 0, i32 6
  %35264 = load i32, ptr %45, align 4, !tbaa !9
  %35265 = zext i32 %35264 to i64
  %35266 = add i64 %35265, 5808
  %35267 = call i32 @i32_load(ptr noundef %35263, i64 noundef %35266)
  store i32 %35267, ptr %45, align 4, !tbaa !9
  %35268 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35268, ptr %6, align 4, !tbaa !9
  %35269 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35269, ptr %45, align 4, !tbaa !9
  %35270 = load ptr, ptr %5, align 8, !tbaa !5
  %35271 = getelementptr inbounds %struct.w2c_hermes, ptr %35270, i32 0, i32 6
  %35272 = load i32, ptr %45, align 4, !tbaa !9
  %35273 = zext i32 %35272 to i64
  %35274 = add i64 %35273, 304
  %35275 = call i32 @i32_load16_u(ptr noundef %35271, i64 noundef %35274)
  store i32 %35275, ptr %45, align 4, !tbaa !9
  %35276 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35276, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %35277 = load i32, ptr %46, align 4, !tbaa !9
  %35278 = load i32, ptr %45, align 4, !tbaa !9
  %35279 = and i32 %35278, %35277
  store i32 %35279, ptr %45, align 4, !tbaa !9
  %35280 = load i32, ptr %45, align 4, !tbaa !9
  %35281 = icmp ne i32 %35280, 0
  %35282 = xor i1 %35281, true
  %35283 = zext i1 %35282 to i32
  store i32 %35283, ptr %45, align 4, !tbaa !9
  %35284 = load i32, ptr %45, align 4, !tbaa !9
  %35285 = icmp ne i32 %35284, 0
  br i1 %35285, label %35286, label %35287

35286:                                            ; preds = %35212
  br label %43136

35287:                                            ; preds = %35212
  %35288 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35288, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %35289 = load ptr, ptr %5, align 8, !tbaa !5
  %35290 = getelementptr inbounds %struct.w2c_hermes, ptr %35289, i32 0, i32 6
  %35291 = load i32, ptr %45, align 4, !tbaa !9
  %35292 = zext i32 %35291 to i64
  %35293 = add i64 %35292, 516
  %35294 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35290, i64 noundef %35293, i32 noundef %35294)
  %35295 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35295, ptr %45, align 4, !tbaa !9
  %35296 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %35296, ptr %46, align 4, !tbaa !9
  %35297 = load ptr, ptr %5, align 8, !tbaa !5
  %35298 = getelementptr inbounds %struct.w2c_hermes, ptr %35297, i32 0, i32 6
  %35299 = load i32, ptr %45, align 4, !tbaa !9
  %35300 = zext i32 %35299 to i64
  %35301 = add i64 %35300, 512
  %35302 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35298, i64 noundef %35301, i32 noundef %35302)
  %35303 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35303, ptr %45, align 4, !tbaa !9
  %35304 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %35304, ptr %46, align 4, !tbaa !9
  %35305 = load ptr, ptr %5, align 8, !tbaa !5
  %35306 = getelementptr inbounds %struct.w2c_hermes, ptr %35305, i32 0, i32 6
  %35307 = load i32, ptr %45, align 4, !tbaa !9
  %35308 = zext i32 %35307 to i64
  %35309 = add i64 %35308, 508
  %35310 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35306, i64 noundef %35309, i32 noundef %35310)
  %35311 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %35311, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %35312 = load i32, ptr %46, align 4, !tbaa !9
  %35313 = load i32, ptr %45, align 4, !tbaa !9
  %35314 = and i32 %35313, %35312
  store i32 %35314, ptr %45, align 4, !tbaa !9
  %35315 = load i32, ptr %45, align 4, !tbaa !9
  %35316 = icmp ne i32 %35315, 0
  br i1 %35316, label %35317, label %35330

35317:                                            ; preds = %35287
  %35318 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35318, ptr %45, align 4, !tbaa !9
  %35319 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35319, ptr %46, align 4, !tbaa !9
  %35320 = load ptr, ptr %5, align 8, !tbaa !5
  %35321 = getelementptr inbounds %struct.w2c_hermes, ptr %35320, i32 0, i32 6
  %35322 = load i32, ptr %46, align 4, !tbaa !9
  %35323 = zext i32 %35322 to i64
  %35324 = add i64 %35323, 1
  %35325 = call i32 @i32_load(ptr noundef %35321, i64 noundef %35324)
  store i32 %35325, ptr %46, align 4, !tbaa !9
  %35326 = load i32, ptr %46, align 4, !tbaa !9
  %35327 = load i32, ptr %45, align 4, !tbaa !9
  %35328 = add i32 %35327, %35326
  store i32 %35328, ptr %45, align 4, !tbaa !9
  %35329 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35329, ptr %6, align 4, !tbaa !9
  br label %2945

35330:                                            ; preds = %35287
  %35331 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35331, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %35332 = load i32, ptr %46, align 4, !tbaa !9
  %35333 = load i32, ptr %45, align 4, !tbaa !9
  %35334 = add i32 %35333, %35332
  store i32 %35334, ptr %45, align 4, !tbaa !9
  %35335 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35335, ptr %6, align 4, !tbaa !9
  br label %2945

35336:                                            ; preds = %3130
  %35337 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35337, ptr %45, align 4, !tbaa !9
  %35338 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35338, ptr %46, align 4, !tbaa !9
  %35339 = load ptr, ptr %5, align 8, !tbaa !5
  %35340 = getelementptr inbounds %struct.w2c_hermes, ptr %35339, i32 0, i32 6
  %35341 = load i32, ptr %46, align 4, !tbaa !9
  %35342 = zext i32 %35341 to i64
  %35343 = add i64 %35342, 2
  %35344 = call i32 @i32_load8_u(ptr noundef %35340, i64 noundef %35343)
  store i32 %35344, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35345 = load i32, ptr %47, align 4, !tbaa !9
  %35346 = and i32 %35345, 31
  %35347 = load i32, ptr %46, align 4, !tbaa !9
  %35348 = shl i32 %35347, %35346
  store i32 %35348, ptr %46, align 4, !tbaa !9
  %35349 = load i32, ptr %46, align 4, !tbaa !9
  %35350 = load i32, ptr %45, align 4, !tbaa !9
  %35351 = add i32 %35350, %35349
  store i32 %35351, ptr %45, align 4, !tbaa !9
  %35352 = load ptr, ptr %5, align 8, !tbaa !5
  %35353 = getelementptr inbounds %struct.w2c_hermes, ptr %35352, i32 0, i32 6
  %35354 = load i32, ptr %45, align 4, !tbaa !9
  %35355 = zext i32 %35354 to i64
  %35356 = call i64 @i64_load(ptr noundef %35353, i64 noundef %35355)
  store i64 %35356, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35357 = load i64, ptr %54, align 8, !tbaa !11
  %35358 = load i64, ptr %55, align 8, !tbaa !11
  %35359 = icmp ugt i64 %35357, %35358
  %35360 = zext i1 %35359 to i32
  store i32 %35360, ptr %45, align 4, !tbaa !9
  %35361 = load i32, ptr %45, align 4, !tbaa !9
  %35362 = icmp ne i32 %35361, 0
  br i1 %35362, label %35363, label %35364

35363:                                            ; preds = %35336
  br label %35459

35364:                                            ; preds = %35336
  %35365 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35365, ptr %45, align 4, !tbaa !9
  %35366 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35366, ptr %46, align 4, !tbaa !9
  %35367 = load ptr, ptr %5, align 8, !tbaa !5
  %35368 = getelementptr inbounds %struct.w2c_hermes, ptr %35367, i32 0, i32 6
  %35369 = load i32, ptr %46, align 4, !tbaa !9
  %35370 = zext i32 %35369 to i64
  %35371 = add i64 %35370, 3
  %35372 = call i32 @i32_load8_u(ptr noundef %35368, i64 noundef %35371)
  store i32 %35372, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35373 = load i32, ptr %47, align 4, !tbaa !9
  %35374 = and i32 %35373, 31
  %35375 = load i32, ptr %46, align 4, !tbaa !9
  %35376 = shl i32 %35375, %35374
  store i32 %35376, ptr %46, align 4, !tbaa !9
  %35377 = load i32, ptr %46, align 4, !tbaa !9
  %35378 = load i32, ptr %45, align 4, !tbaa !9
  %35379 = add i32 %35378, %35377
  store i32 %35379, ptr %45, align 4, !tbaa !9
  %35380 = load ptr, ptr %5, align 8, !tbaa !5
  %35381 = getelementptr inbounds %struct.w2c_hermes, ptr %35380, i32 0, i32 6
  %35382 = load i32, ptr %45, align 4, !tbaa !9
  %35383 = zext i32 %35382 to i64
  %35384 = call i64 @i64_load(ptr noundef %35381, i64 noundef %35383)
  store i64 %35384, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35385 = load i64, ptr %54, align 8, !tbaa !11
  %35386 = load i64, ptr %55, align 8, !tbaa !11
  %35387 = icmp ugt i64 %35385, %35386
  %35388 = zext i1 %35387 to i32
  store i32 %35388, ptr %45, align 4, !tbaa !9
  %35389 = load i32, ptr %45, align 4, !tbaa !9
  %35390 = icmp ne i32 %35389, 0
  br i1 %35390, label %35391, label %35392

35391:                                            ; preds = %35364
  br label %35459

35392:                                            ; preds = %35364
  br label %35393

35393:                                            ; preds = %35392, %3131
  %35394 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35394, ptr %45, align 4, !tbaa !9
  %35395 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35395, ptr %46, align 4, !tbaa !9
  %35396 = load ptr, ptr %5, align 8, !tbaa !5
  %35397 = getelementptr inbounds %struct.w2c_hermes, ptr %35396, i32 0, i32 6
  %35398 = load i32, ptr %46, align 4, !tbaa !9
  %35399 = zext i32 %35398 to i64
  %35400 = add i64 %35399, 2
  %35401 = call i32 @i32_load8_u(ptr noundef %35397, i64 noundef %35400)
  store i32 %35401, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35402 = load i32, ptr %47, align 4, !tbaa !9
  %35403 = and i32 %35402, 31
  %35404 = load i32, ptr %46, align 4, !tbaa !9
  %35405 = shl i32 %35404, %35403
  store i32 %35405, ptr %46, align 4, !tbaa !9
  %35406 = load i32, ptr %46, align 4, !tbaa !9
  %35407 = load i32, ptr %45, align 4, !tbaa !9
  %35408 = add i32 %35407, %35406
  store i32 %35408, ptr %45, align 4, !tbaa !9
  %35409 = load ptr, ptr %5, align 8, !tbaa !5
  %35410 = getelementptr inbounds %struct.w2c_hermes, ptr %35409, i32 0, i32 6
  %35411 = load i32, ptr %45, align 4, !tbaa !9
  %35412 = zext i32 %35411 to i64
  %35413 = call double @f64_load(ptr noundef %35410, i64 noundef %35412)
  store double %35413, ptr %60, align 8, !tbaa !13
  %35414 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35414, ptr %46, align 4, !tbaa !9
  %35415 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35415, ptr %47, align 4, !tbaa !9
  %35416 = load ptr, ptr %5, align 8, !tbaa !5
  %35417 = getelementptr inbounds %struct.w2c_hermes, ptr %35416, i32 0, i32 6
  %35418 = load i32, ptr %47, align 4, !tbaa !9
  %35419 = zext i32 %35418 to i64
  %35420 = add i64 %35419, 3
  %35421 = call i32 @i32_load8_u(ptr noundef %35417, i64 noundef %35420)
  store i32 %35421, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %35422 = load i32, ptr %48, align 4, !tbaa !9
  %35423 = and i32 %35422, 31
  %35424 = load i32, ptr %47, align 4, !tbaa !9
  %35425 = shl i32 %35424, %35423
  store i32 %35425, ptr %47, align 4, !tbaa !9
  %35426 = load i32, ptr %47, align 4, !tbaa !9
  %35427 = load i32, ptr %46, align 4, !tbaa !9
  %35428 = add i32 %35427, %35426
  store i32 %35428, ptr %46, align 4, !tbaa !9
  %35429 = load ptr, ptr %5, align 8, !tbaa !5
  %35430 = getelementptr inbounds %struct.w2c_hermes, ptr %35429, i32 0, i32 6
  %35431 = load i32, ptr %46, align 4, !tbaa !9
  %35432 = zext i32 %35431 to i64
  %35433 = call double @f64_load(ptr noundef %35430, i64 noundef %35432)
  store double %35433, ptr %61, align 8, !tbaa !13
  %35434 = load double, ptr %60, align 8, !tbaa !13
  %35435 = load double, ptr %61, align 8, !tbaa !13
  %35436 = fcmp ogt double %35434, %35435
  %35437 = zext i1 %35436 to i32
  store i32 %35437, ptr %45, align 4, !tbaa !9
  %35438 = load i32, ptr %45, align 4, !tbaa !9
  %35439 = icmp ne i32 %35438, 0
  br i1 %35439, label %35440, label %35446

35440:                                            ; preds = %35393
  %35441 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35441, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %35442 = load i32, ptr %46, align 4, !tbaa !9
  %35443 = load i32, ptr %45, align 4, !tbaa !9
  %35444 = add i32 %35443, %35442
  store i32 %35444, ptr %45, align 4, !tbaa !9
  %35445 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35445, ptr %6, align 4, !tbaa !9
  br label %2945

35446:                                            ; preds = %35393
  %35447 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35447, ptr %45, align 4, !tbaa !9
  %35448 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35448, ptr %46, align 4, !tbaa !9
  %35449 = load ptr, ptr %5, align 8, !tbaa !5
  %35450 = getelementptr inbounds %struct.w2c_hermes, ptr %35449, i32 0, i32 6
  %35451 = load i32, ptr %46, align 4, !tbaa !9
  %35452 = zext i32 %35451 to i64
  %35453 = add i64 %35452, 1
  %35454 = call i32 @i32_load8_s(ptr noundef %35450, i64 noundef %35453)
  store i32 %35454, ptr %46, align 4, !tbaa !9
  %35455 = load i32, ptr %46, align 4, !tbaa !9
  %35456 = load i32, ptr %45, align 4, !tbaa !9
  %35457 = add i32 %35456, %35455
  store i32 %35457, ptr %45, align 4, !tbaa !9
  %35458 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35458, ptr %6, align 4, !tbaa !9
  br label %2945

35459:                                            ; preds = %35391, %35363
  %35460 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35460, ptr %45, align 4, !tbaa !9
  %35461 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35461, ptr %46, align 4, !tbaa !9
  %35462 = load ptr, ptr %5, align 8, !tbaa !5
  %35463 = getelementptr inbounds %struct.w2c_hermes, ptr %35462, i32 0, i32 6
  %35464 = load i32, ptr %45, align 4, !tbaa !9
  %35465 = zext i32 %35464 to i64
  %35466 = add i64 %35465, 5808
  %35467 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35463, i64 noundef %35466, i32 noundef %35467)
  %35468 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35468, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %35469 = load i32, ptr %46, align 4, !tbaa !9
  %35470 = load i32, ptr %45, align 4, !tbaa !9
  %35471 = add i32 %35470, %35469
  store i32 %35471, ptr %45, align 4, !tbaa !9
  %35472 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35472, ptr %46, align 4, !tbaa !9
  %35473 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35473, ptr %47, align 4, !tbaa !9
  %35474 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35474, ptr %48, align 4, !tbaa !9
  %35475 = load ptr, ptr %5, align 8, !tbaa !5
  %35476 = getelementptr inbounds %struct.w2c_hermes, ptr %35475, i32 0, i32 6
  %35477 = load i32, ptr %48, align 4, !tbaa !9
  %35478 = zext i32 %35477 to i64
  %35479 = add i64 %35478, 2
  %35480 = call i32 @i32_load8_u(ptr noundef %35476, i64 noundef %35479)
  store i32 %35480, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %35481 = load i32, ptr %49, align 4, !tbaa !9
  %35482 = and i32 %35481, 31
  %35483 = load i32, ptr %48, align 4, !tbaa !9
  %35484 = shl i32 %35483, %35482
  store i32 %35484, ptr %48, align 4, !tbaa !9
  %35485 = load i32, ptr %48, align 4, !tbaa !9
  %35486 = load i32, ptr %47, align 4, !tbaa !9
  %35487 = add i32 %35486, %35485
  store i32 %35487, ptr %47, align 4, !tbaa !9
  %35488 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35488, ptr %48, align 4, !tbaa !9
  %35489 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35489, ptr %49, align 4, !tbaa !9
  %35490 = load ptr, ptr %5, align 8, !tbaa !5
  %35491 = getelementptr inbounds %struct.w2c_hermes, ptr %35490, i32 0, i32 6
  %35492 = load i32, ptr %49, align 4, !tbaa !9
  %35493 = zext i32 %35492 to i64
  %35494 = add i64 %35493, 3
  %35495 = call i32 @i32_load8_u(ptr noundef %35491, i64 noundef %35494)
  store i32 %35495, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %35496 = load i32, ptr %50, align 4, !tbaa !9
  %35497 = and i32 %35496, 31
  %35498 = load i32, ptr %49, align 4, !tbaa !9
  %35499 = shl i32 %35498, %35497
  store i32 %35499, ptr %49, align 4, !tbaa !9
  %35500 = load i32, ptr %49, align 4, !tbaa !9
  %35501 = load i32, ptr %48, align 4, !tbaa !9
  %35502 = add i32 %35501, %35500
  store i32 %35502, ptr %48, align 4, !tbaa !9
  %35503 = load ptr, ptr %5, align 8, !tbaa !5
  %35504 = load i32, ptr %45, align 4, !tbaa !9
  %35505 = load i32, ptr %46, align 4, !tbaa !9
  %35506 = load i32, ptr %47, align 4, !tbaa !9
  %35507 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %35503, i32 noundef %35504, i32 noundef %35505, i32 noundef %35506, i32 noundef %35507)
  %35508 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35508, ptr %45, align 4, !tbaa !9
  %35509 = load ptr, ptr %5, align 8, !tbaa !5
  %35510 = getelementptr inbounds %struct.w2c_hermes, ptr %35509, i32 0, i32 6
  %35511 = load i32, ptr %45, align 4, !tbaa !9
  %35512 = zext i32 %35511 to i64
  %35513 = add i64 %35512, 5808
  %35514 = call i32 @i32_load(ptr noundef %35510, i64 noundef %35513)
  store i32 %35514, ptr %45, align 4, !tbaa !9
  %35515 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35515, ptr %6, align 4, !tbaa !9
  %35516 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35516, ptr %45, align 4, !tbaa !9
  %35517 = load ptr, ptr %5, align 8, !tbaa !5
  %35518 = getelementptr inbounds %struct.w2c_hermes, ptr %35517, i32 0, i32 6
  %35519 = load i32, ptr %45, align 4, !tbaa !9
  %35520 = zext i32 %35519 to i64
  %35521 = add i64 %35520, 304
  %35522 = call i32 @i32_load16_u(ptr noundef %35518, i64 noundef %35521)
  store i32 %35522, ptr %45, align 4, !tbaa !9
  %35523 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35523, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %35524 = load i32, ptr %46, align 4, !tbaa !9
  %35525 = load i32, ptr %45, align 4, !tbaa !9
  %35526 = and i32 %35525, %35524
  store i32 %35526, ptr %45, align 4, !tbaa !9
  %35527 = load i32, ptr %45, align 4, !tbaa !9
  %35528 = icmp ne i32 %35527, 0
  %35529 = xor i1 %35528, true
  %35530 = zext i1 %35529 to i32
  store i32 %35530, ptr %45, align 4, !tbaa !9
  %35531 = load i32, ptr %45, align 4, !tbaa !9
  %35532 = icmp ne i32 %35531, 0
  br i1 %35532, label %35533, label %35534

35533:                                            ; preds = %35459
  br label %43136

35534:                                            ; preds = %35459
  %35535 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35535, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %35536 = load ptr, ptr %5, align 8, !tbaa !5
  %35537 = getelementptr inbounds %struct.w2c_hermes, ptr %35536, i32 0, i32 6
  %35538 = load i32, ptr %45, align 4, !tbaa !9
  %35539 = zext i32 %35538 to i64
  %35540 = add i64 %35539, 516
  %35541 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35537, i64 noundef %35540, i32 noundef %35541)
  %35542 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35542, ptr %45, align 4, !tbaa !9
  %35543 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %35543, ptr %46, align 4, !tbaa !9
  %35544 = load ptr, ptr %5, align 8, !tbaa !5
  %35545 = getelementptr inbounds %struct.w2c_hermes, ptr %35544, i32 0, i32 6
  %35546 = load i32, ptr %45, align 4, !tbaa !9
  %35547 = zext i32 %35546 to i64
  %35548 = add i64 %35547, 512
  %35549 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35545, i64 noundef %35548, i32 noundef %35549)
  %35550 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35550, ptr %45, align 4, !tbaa !9
  %35551 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %35551, ptr %46, align 4, !tbaa !9
  %35552 = load ptr, ptr %5, align 8, !tbaa !5
  %35553 = getelementptr inbounds %struct.w2c_hermes, ptr %35552, i32 0, i32 6
  %35554 = load i32, ptr %45, align 4, !tbaa !9
  %35555 = zext i32 %35554 to i64
  %35556 = add i64 %35555, 508
  %35557 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35553, i64 noundef %35556, i32 noundef %35557)
  %35558 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %35558, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %35559 = load i32, ptr %46, align 4, !tbaa !9
  %35560 = load i32, ptr %45, align 4, !tbaa !9
  %35561 = and i32 %35560, %35559
  store i32 %35561, ptr %45, align 4, !tbaa !9
  %35562 = load i32, ptr %45, align 4, !tbaa !9
  %35563 = icmp ne i32 %35562, 0
  br i1 %35563, label %35564, label %35570

35564:                                            ; preds = %35534
  %35565 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35565, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %35566 = load i32, ptr %46, align 4, !tbaa !9
  %35567 = load i32, ptr %45, align 4, !tbaa !9
  %35568 = add i32 %35567, %35566
  store i32 %35568, ptr %45, align 4, !tbaa !9
  %35569 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35569, ptr %6, align 4, !tbaa !9
  br label %2945

35570:                                            ; preds = %35534
  %35571 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35571, ptr %45, align 4, !tbaa !9
  %35572 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35572, ptr %46, align 4, !tbaa !9
  %35573 = load ptr, ptr %5, align 8, !tbaa !5
  %35574 = getelementptr inbounds %struct.w2c_hermes, ptr %35573, i32 0, i32 6
  %35575 = load i32, ptr %46, align 4, !tbaa !9
  %35576 = zext i32 %35575 to i64
  %35577 = add i64 %35576, 1
  %35578 = call i32 @i32_load8_s(ptr noundef %35574, i64 noundef %35577)
  store i32 %35578, ptr %46, align 4, !tbaa !9
  %35579 = load i32, ptr %46, align 4, !tbaa !9
  %35580 = load i32, ptr %45, align 4, !tbaa !9
  %35581 = add i32 %35580, %35579
  store i32 %35581, ptr %45, align 4, !tbaa !9
  %35582 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35582, ptr %6, align 4, !tbaa !9
  br label %2945

35583:                                            ; preds = %3132
  %35584 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35584, ptr %45, align 4, !tbaa !9
  %35585 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35585, ptr %46, align 4, !tbaa !9
  %35586 = load ptr, ptr %5, align 8, !tbaa !5
  %35587 = getelementptr inbounds %struct.w2c_hermes, ptr %35586, i32 0, i32 6
  %35588 = load i32, ptr %46, align 4, !tbaa !9
  %35589 = zext i32 %35588 to i64
  %35590 = add i64 %35589, 5
  %35591 = call i32 @i32_load8_u(ptr noundef %35587, i64 noundef %35590)
  store i32 %35591, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35592 = load i32, ptr %47, align 4, !tbaa !9
  %35593 = and i32 %35592, 31
  %35594 = load i32, ptr %46, align 4, !tbaa !9
  %35595 = shl i32 %35594, %35593
  store i32 %35595, ptr %46, align 4, !tbaa !9
  %35596 = load i32, ptr %46, align 4, !tbaa !9
  %35597 = load i32, ptr %45, align 4, !tbaa !9
  %35598 = add i32 %35597, %35596
  store i32 %35598, ptr %45, align 4, !tbaa !9
  %35599 = load ptr, ptr %5, align 8, !tbaa !5
  %35600 = getelementptr inbounds %struct.w2c_hermes, ptr %35599, i32 0, i32 6
  %35601 = load i32, ptr %45, align 4, !tbaa !9
  %35602 = zext i32 %35601 to i64
  %35603 = call i64 @i64_load(ptr noundef %35600, i64 noundef %35602)
  store i64 %35603, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35604 = load i64, ptr %54, align 8, !tbaa !11
  %35605 = load i64, ptr %55, align 8, !tbaa !11
  %35606 = icmp ugt i64 %35604, %35605
  %35607 = zext i1 %35606 to i32
  store i32 %35607, ptr %45, align 4, !tbaa !9
  %35608 = load i32, ptr %45, align 4, !tbaa !9
  %35609 = icmp ne i32 %35608, 0
  br i1 %35609, label %35610, label %35611

35610:                                            ; preds = %35583
  br label %35706

35611:                                            ; preds = %35583
  %35612 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35612, ptr %45, align 4, !tbaa !9
  %35613 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35613, ptr %46, align 4, !tbaa !9
  %35614 = load ptr, ptr %5, align 8, !tbaa !5
  %35615 = getelementptr inbounds %struct.w2c_hermes, ptr %35614, i32 0, i32 6
  %35616 = load i32, ptr %46, align 4, !tbaa !9
  %35617 = zext i32 %35616 to i64
  %35618 = add i64 %35617, 6
  %35619 = call i32 @i32_load8_u(ptr noundef %35615, i64 noundef %35618)
  store i32 %35619, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35620 = load i32, ptr %47, align 4, !tbaa !9
  %35621 = and i32 %35620, 31
  %35622 = load i32, ptr %46, align 4, !tbaa !9
  %35623 = shl i32 %35622, %35621
  store i32 %35623, ptr %46, align 4, !tbaa !9
  %35624 = load i32, ptr %46, align 4, !tbaa !9
  %35625 = load i32, ptr %45, align 4, !tbaa !9
  %35626 = add i32 %35625, %35624
  store i32 %35626, ptr %45, align 4, !tbaa !9
  %35627 = load ptr, ptr %5, align 8, !tbaa !5
  %35628 = getelementptr inbounds %struct.w2c_hermes, ptr %35627, i32 0, i32 6
  %35629 = load i32, ptr %45, align 4, !tbaa !9
  %35630 = zext i32 %35629 to i64
  %35631 = call i64 @i64_load(ptr noundef %35628, i64 noundef %35630)
  store i64 %35631, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35632 = load i64, ptr %54, align 8, !tbaa !11
  %35633 = load i64, ptr %55, align 8, !tbaa !11
  %35634 = icmp ugt i64 %35632, %35633
  %35635 = zext i1 %35634 to i32
  store i32 %35635, ptr %45, align 4, !tbaa !9
  %35636 = load i32, ptr %45, align 4, !tbaa !9
  %35637 = icmp ne i32 %35636, 0
  br i1 %35637, label %35638, label %35639

35638:                                            ; preds = %35611
  br label %35706

35639:                                            ; preds = %35611
  br label %35640

35640:                                            ; preds = %35639, %3133
  %35641 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35641, ptr %45, align 4, !tbaa !9
  %35642 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35642, ptr %46, align 4, !tbaa !9
  %35643 = load ptr, ptr %5, align 8, !tbaa !5
  %35644 = getelementptr inbounds %struct.w2c_hermes, ptr %35643, i32 0, i32 6
  %35645 = load i32, ptr %46, align 4, !tbaa !9
  %35646 = zext i32 %35645 to i64
  %35647 = add i64 %35646, 5
  %35648 = call i32 @i32_load8_u(ptr noundef %35644, i64 noundef %35647)
  store i32 %35648, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35649 = load i32, ptr %47, align 4, !tbaa !9
  %35650 = and i32 %35649, 31
  %35651 = load i32, ptr %46, align 4, !tbaa !9
  %35652 = shl i32 %35651, %35650
  store i32 %35652, ptr %46, align 4, !tbaa !9
  %35653 = load i32, ptr %46, align 4, !tbaa !9
  %35654 = load i32, ptr %45, align 4, !tbaa !9
  %35655 = add i32 %35654, %35653
  store i32 %35655, ptr %45, align 4, !tbaa !9
  %35656 = load ptr, ptr %5, align 8, !tbaa !5
  %35657 = getelementptr inbounds %struct.w2c_hermes, ptr %35656, i32 0, i32 6
  %35658 = load i32, ptr %45, align 4, !tbaa !9
  %35659 = zext i32 %35658 to i64
  %35660 = call double @f64_load(ptr noundef %35657, i64 noundef %35659)
  store double %35660, ptr %60, align 8, !tbaa !13
  %35661 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35661, ptr %46, align 4, !tbaa !9
  %35662 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35662, ptr %47, align 4, !tbaa !9
  %35663 = load ptr, ptr %5, align 8, !tbaa !5
  %35664 = getelementptr inbounds %struct.w2c_hermes, ptr %35663, i32 0, i32 6
  %35665 = load i32, ptr %47, align 4, !tbaa !9
  %35666 = zext i32 %35665 to i64
  %35667 = add i64 %35666, 6
  %35668 = call i32 @i32_load8_u(ptr noundef %35664, i64 noundef %35667)
  store i32 %35668, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %35669 = load i32, ptr %48, align 4, !tbaa !9
  %35670 = and i32 %35669, 31
  %35671 = load i32, ptr %47, align 4, !tbaa !9
  %35672 = shl i32 %35671, %35670
  store i32 %35672, ptr %47, align 4, !tbaa !9
  %35673 = load i32, ptr %47, align 4, !tbaa !9
  %35674 = load i32, ptr %46, align 4, !tbaa !9
  %35675 = add i32 %35674, %35673
  store i32 %35675, ptr %46, align 4, !tbaa !9
  %35676 = load ptr, ptr %5, align 8, !tbaa !5
  %35677 = getelementptr inbounds %struct.w2c_hermes, ptr %35676, i32 0, i32 6
  %35678 = load i32, ptr %46, align 4, !tbaa !9
  %35679 = zext i32 %35678 to i64
  %35680 = call double @f64_load(ptr noundef %35677, i64 noundef %35679)
  store double %35680, ptr %61, align 8, !tbaa !13
  %35681 = load double, ptr %60, align 8, !tbaa !13
  %35682 = load double, ptr %61, align 8, !tbaa !13
  %35683 = fcmp ogt double %35681, %35682
  %35684 = zext i1 %35683 to i32
  store i32 %35684, ptr %45, align 4, !tbaa !9
  %35685 = load i32, ptr %45, align 4, !tbaa !9
  %35686 = icmp ne i32 %35685, 0
  br i1 %35686, label %35687, label %35693

35687:                                            ; preds = %35640
  %35688 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35688, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %35689 = load i32, ptr %46, align 4, !tbaa !9
  %35690 = load i32, ptr %45, align 4, !tbaa !9
  %35691 = add i32 %35690, %35689
  store i32 %35691, ptr %45, align 4, !tbaa !9
  %35692 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35692, ptr %6, align 4, !tbaa !9
  br label %2945

35693:                                            ; preds = %35640
  %35694 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35694, ptr %45, align 4, !tbaa !9
  %35695 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35695, ptr %46, align 4, !tbaa !9
  %35696 = load ptr, ptr %5, align 8, !tbaa !5
  %35697 = getelementptr inbounds %struct.w2c_hermes, ptr %35696, i32 0, i32 6
  %35698 = load i32, ptr %46, align 4, !tbaa !9
  %35699 = zext i32 %35698 to i64
  %35700 = add i64 %35699, 1
  %35701 = call i32 @i32_load(ptr noundef %35697, i64 noundef %35700)
  store i32 %35701, ptr %46, align 4, !tbaa !9
  %35702 = load i32, ptr %46, align 4, !tbaa !9
  %35703 = load i32, ptr %45, align 4, !tbaa !9
  %35704 = add i32 %35703, %35702
  store i32 %35704, ptr %45, align 4, !tbaa !9
  %35705 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35705, ptr %6, align 4, !tbaa !9
  br label %2945

35706:                                            ; preds = %35638, %35610
  %35707 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35707, ptr %45, align 4, !tbaa !9
  %35708 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35708, ptr %46, align 4, !tbaa !9
  %35709 = load ptr, ptr %5, align 8, !tbaa !5
  %35710 = getelementptr inbounds %struct.w2c_hermes, ptr %35709, i32 0, i32 6
  %35711 = load i32, ptr %45, align 4, !tbaa !9
  %35712 = zext i32 %35711 to i64
  %35713 = add i64 %35712, 5808
  %35714 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35710, i64 noundef %35713, i32 noundef %35714)
  %35715 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35715, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %35716 = load i32, ptr %46, align 4, !tbaa !9
  %35717 = load i32, ptr %45, align 4, !tbaa !9
  %35718 = add i32 %35717, %35716
  store i32 %35718, ptr %45, align 4, !tbaa !9
  %35719 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35719, ptr %46, align 4, !tbaa !9
  %35720 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35720, ptr %47, align 4, !tbaa !9
  %35721 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35721, ptr %48, align 4, !tbaa !9
  %35722 = load ptr, ptr %5, align 8, !tbaa !5
  %35723 = getelementptr inbounds %struct.w2c_hermes, ptr %35722, i32 0, i32 6
  %35724 = load i32, ptr %48, align 4, !tbaa !9
  %35725 = zext i32 %35724 to i64
  %35726 = add i64 %35725, 5
  %35727 = call i32 @i32_load8_u(ptr noundef %35723, i64 noundef %35726)
  store i32 %35727, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %35728 = load i32, ptr %49, align 4, !tbaa !9
  %35729 = and i32 %35728, 31
  %35730 = load i32, ptr %48, align 4, !tbaa !9
  %35731 = shl i32 %35730, %35729
  store i32 %35731, ptr %48, align 4, !tbaa !9
  %35732 = load i32, ptr %48, align 4, !tbaa !9
  %35733 = load i32, ptr %47, align 4, !tbaa !9
  %35734 = add i32 %35733, %35732
  store i32 %35734, ptr %47, align 4, !tbaa !9
  %35735 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35735, ptr %48, align 4, !tbaa !9
  %35736 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35736, ptr %49, align 4, !tbaa !9
  %35737 = load ptr, ptr %5, align 8, !tbaa !5
  %35738 = getelementptr inbounds %struct.w2c_hermes, ptr %35737, i32 0, i32 6
  %35739 = load i32, ptr %49, align 4, !tbaa !9
  %35740 = zext i32 %35739 to i64
  %35741 = add i64 %35740, 6
  %35742 = call i32 @i32_load8_u(ptr noundef %35738, i64 noundef %35741)
  store i32 %35742, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %35743 = load i32, ptr %50, align 4, !tbaa !9
  %35744 = and i32 %35743, 31
  %35745 = load i32, ptr %49, align 4, !tbaa !9
  %35746 = shl i32 %35745, %35744
  store i32 %35746, ptr %49, align 4, !tbaa !9
  %35747 = load i32, ptr %49, align 4, !tbaa !9
  %35748 = load i32, ptr %48, align 4, !tbaa !9
  %35749 = add i32 %35748, %35747
  store i32 %35749, ptr %48, align 4, !tbaa !9
  %35750 = load ptr, ptr %5, align 8, !tbaa !5
  %35751 = load i32, ptr %45, align 4, !tbaa !9
  %35752 = load i32, ptr %46, align 4, !tbaa !9
  %35753 = load i32, ptr %47, align 4, !tbaa !9
  %35754 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %35750, i32 noundef %35751, i32 noundef %35752, i32 noundef %35753, i32 noundef %35754)
  %35755 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35755, ptr %45, align 4, !tbaa !9
  %35756 = load ptr, ptr %5, align 8, !tbaa !5
  %35757 = getelementptr inbounds %struct.w2c_hermes, ptr %35756, i32 0, i32 6
  %35758 = load i32, ptr %45, align 4, !tbaa !9
  %35759 = zext i32 %35758 to i64
  %35760 = add i64 %35759, 5808
  %35761 = call i32 @i32_load(ptr noundef %35757, i64 noundef %35760)
  store i32 %35761, ptr %45, align 4, !tbaa !9
  %35762 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35762, ptr %6, align 4, !tbaa !9
  %35763 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35763, ptr %45, align 4, !tbaa !9
  %35764 = load ptr, ptr %5, align 8, !tbaa !5
  %35765 = getelementptr inbounds %struct.w2c_hermes, ptr %35764, i32 0, i32 6
  %35766 = load i32, ptr %45, align 4, !tbaa !9
  %35767 = zext i32 %35766 to i64
  %35768 = add i64 %35767, 304
  %35769 = call i32 @i32_load16_u(ptr noundef %35765, i64 noundef %35768)
  store i32 %35769, ptr %45, align 4, !tbaa !9
  %35770 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35770, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %35771 = load i32, ptr %46, align 4, !tbaa !9
  %35772 = load i32, ptr %45, align 4, !tbaa !9
  %35773 = and i32 %35772, %35771
  store i32 %35773, ptr %45, align 4, !tbaa !9
  %35774 = load i32, ptr %45, align 4, !tbaa !9
  %35775 = icmp ne i32 %35774, 0
  %35776 = xor i1 %35775, true
  %35777 = zext i1 %35776 to i32
  store i32 %35777, ptr %45, align 4, !tbaa !9
  %35778 = load i32, ptr %45, align 4, !tbaa !9
  %35779 = icmp ne i32 %35778, 0
  br i1 %35779, label %35780, label %35781

35780:                                            ; preds = %35706
  br label %43136

35781:                                            ; preds = %35706
  %35782 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35782, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %35783 = load ptr, ptr %5, align 8, !tbaa !5
  %35784 = getelementptr inbounds %struct.w2c_hermes, ptr %35783, i32 0, i32 6
  %35785 = load i32, ptr %45, align 4, !tbaa !9
  %35786 = zext i32 %35785 to i64
  %35787 = add i64 %35786, 516
  %35788 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35784, i64 noundef %35787, i32 noundef %35788)
  %35789 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35789, ptr %45, align 4, !tbaa !9
  %35790 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %35790, ptr %46, align 4, !tbaa !9
  %35791 = load ptr, ptr %5, align 8, !tbaa !5
  %35792 = getelementptr inbounds %struct.w2c_hermes, ptr %35791, i32 0, i32 6
  %35793 = load i32, ptr %45, align 4, !tbaa !9
  %35794 = zext i32 %35793 to i64
  %35795 = add i64 %35794, 512
  %35796 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35792, i64 noundef %35795, i32 noundef %35796)
  %35797 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35797, ptr %45, align 4, !tbaa !9
  %35798 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %35798, ptr %46, align 4, !tbaa !9
  %35799 = load ptr, ptr %5, align 8, !tbaa !5
  %35800 = getelementptr inbounds %struct.w2c_hermes, ptr %35799, i32 0, i32 6
  %35801 = load i32, ptr %45, align 4, !tbaa !9
  %35802 = zext i32 %35801 to i64
  %35803 = add i64 %35802, 508
  %35804 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35800, i64 noundef %35803, i32 noundef %35804)
  %35805 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %35805, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %35806 = load i32, ptr %46, align 4, !tbaa !9
  %35807 = load i32, ptr %45, align 4, !tbaa !9
  %35808 = and i32 %35807, %35806
  store i32 %35808, ptr %45, align 4, !tbaa !9
  %35809 = load i32, ptr %45, align 4, !tbaa !9
  %35810 = icmp ne i32 %35809, 0
  br i1 %35810, label %35811, label %35817

35811:                                            ; preds = %35781
  %35812 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35812, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %35813 = load i32, ptr %46, align 4, !tbaa !9
  %35814 = load i32, ptr %45, align 4, !tbaa !9
  %35815 = add i32 %35814, %35813
  store i32 %35815, ptr %45, align 4, !tbaa !9
  %35816 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35816, ptr %6, align 4, !tbaa !9
  br label %2945

35817:                                            ; preds = %35781
  %35818 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35818, ptr %45, align 4, !tbaa !9
  %35819 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35819, ptr %46, align 4, !tbaa !9
  %35820 = load ptr, ptr %5, align 8, !tbaa !5
  %35821 = getelementptr inbounds %struct.w2c_hermes, ptr %35820, i32 0, i32 6
  %35822 = load i32, ptr %46, align 4, !tbaa !9
  %35823 = zext i32 %35822 to i64
  %35824 = add i64 %35823, 1
  %35825 = call i32 @i32_load(ptr noundef %35821, i64 noundef %35824)
  store i32 %35825, ptr %46, align 4, !tbaa !9
  %35826 = load i32, ptr %46, align 4, !tbaa !9
  %35827 = load i32, ptr %45, align 4, !tbaa !9
  %35828 = add i32 %35827, %35826
  store i32 %35828, ptr %45, align 4, !tbaa !9
  %35829 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35829, ptr %6, align 4, !tbaa !9
  br label %2945

35830:                                            ; preds = %3134
  %35831 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35831, ptr %45, align 4, !tbaa !9
  %35832 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35832, ptr %46, align 4, !tbaa !9
  %35833 = load ptr, ptr %5, align 8, !tbaa !5
  %35834 = getelementptr inbounds %struct.w2c_hermes, ptr %35833, i32 0, i32 6
  %35835 = load i32, ptr %46, align 4, !tbaa !9
  %35836 = zext i32 %35835 to i64
  %35837 = add i64 %35836, 2
  %35838 = call i32 @i32_load8_u(ptr noundef %35834, i64 noundef %35837)
  store i32 %35838, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35839 = load i32, ptr %47, align 4, !tbaa !9
  %35840 = and i32 %35839, 31
  %35841 = load i32, ptr %46, align 4, !tbaa !9
  %35842 = shl i32 %35841, %35840
  store i32 %35842, ptr %46, align 4, !tbaa !9
  %35843 = load i32, ptr %46, align 4, !tbaa !9
  %35844 = load i32, ptr %45, align 4, !tbaa !9
  %35845 = add i32 %35844, %35843
  store i32 %35845, ptr %45, align 4, !tbaa !9
  %35846 = load ptr, ptr %5, align 8, !tbaa !5
  %35847 = getelementptr inbounds %struct.w2c_hermes, ptr %35846, i32 0, i32 6
  %35848 = load i32, ptr %45, align 4, !tbaa !9
  %35849 = zext i32 %35848 to i64
  %35850 = call i64 @i64_load(ptr noundef %35847, i64 noundef %35849)
  store i64 %35850, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35851 = load i64, ptr %54, align 8, !tbaa !11
  %35852 = load i64, ptr %55, align 8, !tbaa !11
  %35853 = icmp ugt i64 %35851, %35852
  %35854 = zext i1 %35853 to i32
  store i32 %35854, ptr %45, align 4, !tbaa !9
  %35855 = load i32, ptr %45, align 4, !tbaa !9
  %35856 = icmp ne i32 %35855, 0
  br i1 %35856, label %35857, label %35858

35857:                                            ; preds = %35830
  br label %35953

35858:                                            ; preds = %35830
  %35859 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35859, ptr %45, align 4, !tbaa !9
  %35860 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35860, ptr %46, align 4, !tbaa !9
  %35861 = load ptr, ptr %5, align 8, !tbaa !5
  %35862 = getelementptr inbounds %struct.w2c_hermes, ptr %35861, i32 0, i32 6
  %35863 = load i32, ptr %46, align 4, !tbaa !9
  %35864 = zext i32 %35863 to i64
  %35865 = add i64 %35864, 3
  %35866 = call i32 @i32_load8_u(ptr noundef %35862, i64 noundef %35865)
  store i32 %35866, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35867 = load i32, ptr %47, align 4, !tbaa !9
  %35868 = and i32 %35867, 31
  %35869 = load i32, ptr %46, align 4, !tbaa !9
  %35870 = shl i32 %35869, %35868
  store i32 %35870, ptr %46, align 4, !tbaa !9
  %35871 = load i32, ptr %46, align 4, !tbaa !9
  %35872 = load i32, ptr %45, align 4, !tbaa !9
  %35873 = add i32 %35872, %35871
  store i32 %35873, ptr %45, align 4, !tbaa !9
  %35874 = load ptr, ptr %5, align 8, !tbaa !5
  %35875 = getelementptr inbounds %struct.w2c_hermes, ptr %35874, i32 0, i32 6
  %35876 = load i32, ptr %45, align 4, !tbaa !9
  %35877 = zext i32 %35876 to i64
  %35878 = call i64 @i64_load(ptr noundef %35875, i64 noundef %35877)
  store i64 %35878, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %35879 = load i64, ptr %54, align 8, !tbaa !11
  %35880 = load i64, ptr %55, align 8, !tbaa !11
  %35881 = icmp ugt i64 %35879, %35880
  %35882 = zext i1 %35881 to i32
  store i32 %35882, ptr %45, align 4, !tbaa !9
  %35883 = load i32, ptr %45, align 4, !tbaa !9
  %35884 = icmp ne i32 %35883, 0
  br i1 %35884, label %35885, label %35886

35885:                                            ; preds = %35858
  br label %35953

35886:                                            ; preds = %35858
  br label %35887

35887:                                            ; preds = %35886, %3135
  %35888 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35888, ptr %45, align 4, !tbaa !9
  %35889 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35889, ptr %46, align 4, !tbaa !9
  %35890 = load ptr, ptr %5, align 8, !tbaa !5
  %35891 = getelementptr inbounds %struct.w2c_hermes, ptr %35890, i32 0, i32 6
  %35892 = load i32, ptr %46, align 4, !tbaa !9
  %35893 = zext i32 %35892 to i64
  %35894 = add i64 %35893, 2
  %35895 = call i32 @i32_load8_u(ptr noundef %35891, i64 noundef %35894)
  store i32 %35895, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %35896 = load i32, ptr %47, align 4, !tbaa !9
  %35897 = and i32 %35896, 31
  %35898 = load i32, ptr %46, align 4, !tbaa !9
  %35899 = shl i32 %35898, %35897
  store i32 %35899, ptr %46, align 4, !tbaa !9
  %35900 = load i32, ptr %46, align 4, !tbaa !9
  %35901 = load i32, ptr %45, align 4, !tbaa !9
  %35902 = add i32 %35901, %35900
  store i32 %35902, ptr %45, align 4, !tbaa !9
  %35903 = load ptr, ptr %5, align 8, !tbaa !5
  %35904 = getelementptr inbounds %struct.w2c_hermes, ptr %35903, i32 0, i32 6
  %35905 = load i32, ptr %45, align 4, !tbaa !9
  %35906 = zext i32 %35905 to i64
  %35907 = call double @f64_load(ptr noundef %35904, i64 noundef %35906)
  store double %35907, ptr %60, align 8, !tbaa !13
  %35908 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35908, ptr %46, align 4, !tbaa !9
  %35909 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35909, ptr %47, align 4, !tbaa !9
  %35910 = load ptr, ptr %5, align 8, !tbaa !5
  %35911 = getelementptr inbounds %struct.w2c_hermes, ptr %35910, i32 0, i32 6
  %35912 = load i32, ptr %47, align 4, !tbaa !9
  %35913 = zext i32 %35912 to i64
  %35914 = add i64 %35913, 3
  %35915 = call i32 @i32_load8_u(ptr noundef %35911, i64 noundef %35914)
  store i32 %35915, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %35916 = load i32, ptr %48, align 4, !tbaa !9
  %35917 = and i32 %35916, 31
  %35918 = load i32, ptr %47, align 4, !tbaa !9
  %35919 = shl i32 %35918, %35917
  store i32 %35919, ptr %47, align 4, !tbaa !9
  %35920 = load i32, ptr %47, align 4, !tbaa !9
  %35921 = load i32, ptr %46, align 4, !tbaa !9
  %35922 = add i32 %35921, %35920
  store i32 %35922, ptr %46, align 4, !tbaa !9
  %35923 = load ptr, ptr %5, align 8, !tbaa !5
  %35924 = getelementptr inbounds %struct.w2c_hermes, ptr %35923, i32 0, i32 6
  %35925 = load i32, ptr %46, align 4, !tbaa !9
  %35926 = zext i32 %35925 to i64
  %35927 = call double @f64_load(ptr noundef %35924, i64 noundef %35926)
  store double %35927, ptr %61, align 8, !tbaa !13
  %35928 = load double, ptr %60, align 8, !tbaa !13
  %35929 = load double, ptr %61, align 8, !tbaa !13
  %35930 = fcmp oge double %35928, %35929
  %35931 = zext i1 %35930 to i32
  store i32 %35931, ptr %45, align 4, !tbaa !9
  %35932 = load i32, ptr %45, align 4, !tbaa !9
  %35933 = icmp ne i32 %35932, 0
  br i1 %35933, label %35934, label %35947

35934:                                            ; preds = %35887
  %35935 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35935, ptr %45, align 4, !tbaa !9
  %35936 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35936, ptr %46, align 4, !tbaa !9
  %35937 = load ptr, ptr %5, align 8, !tbaa !5
  %35938 = getelementptr inbounds %struct.w2c_hermes, ptr %35937, i32 0, i32 6
  %35939 = load i32, ptr %46, align 4, !tbaa !9
  %35940 = zext i32 %35939 to i64
  %35941 = add i64 %35940, 1
  %35942 = call i32 @i32_load8_s(ptr noundef %35938, i64 noundef %35941)
  store i32 %35942, ptr %46, align 4, !tbaa !9
  %35943 = load i32, ptr %46, align 4, !tbaa !9
  %35944 = load i32, ptr %45, align 4, !tbaa !9
  %35945 = add i32 %35944, %35943
  store i32 %35945, ptr %45, align 4, !tbaa !9
  %35946 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35946, ptr %6, align 4, !tbaa !9
  br label %2945

35947:                                            ; preds = %35887
  %35948 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35948, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %35949 = load i32, ptr %46, align 4, !tbaa !9
  %35950 = load i32, ptr %45, align 4, !tbaa !9
  %35951 = add i32 %35950, %35949
  store i32 %35951, ptr %45, align 4, !tbaa !9
  %35952 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %35952, ptr %6, align 4, !tbaa !9
  br label %2945

35953:                                            ; preds = %35885, %35857
  %35954 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35954, ptr %45, align 4, !tbaa !9
  %35955 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35955, ptr %46, align 4, !tbaa !9
  %35956 = load ptr, ptr %5, align 8, !tbaa !5
  %35957 = getelementptr inbounds %struct.w2c_hermes, ptr %35956, i32 0, i32 6
  %35958 = load i32, ptr %45, align 4, !tbaa !9
  %35959 = zext i32 %35958 to i64
  %35960 = add i64 %35959, 5808
  %35961 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %35957, i64 noundef %35960, i32 noundef %35961)
  %35962 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %35962, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %35963 = load i32, ptr %46, align 4, !tbaa !9
  %35964 = load i32, ptr %45, align 4, !tbaa !9
  %35965 = add i32 %35964, %35963
  store i32 %35965, ptr %45, align 4, !tbaa !9
  %35966 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %35966, ptr %46, align 4, !tbaa !9
  %35967 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35967, ptr %47, align 4, !tbaa !9
  %35968 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35968, ptr %48, align 4, !tbaa !9
  %35969 = load ptr, ptr %5, align 8, !tbaa !5
  %35970 = getelementptr inbounds %struct.w2c_hermes, ptr %35969, i32 0, i32 6
  %35971 = load i32, ptr %48, align 4, !tbaa !9
  %35972 = zext i32 %35971 to i64
  %35973 = add i64 %35972, 2
  %35974 = call i32 @i32_load8_u(ptr noundef %35970, i64 noundef %35973)
  store i32 %35974, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %35975 = load i32, ptr %49, align 4, !tbaa !9
  %35976 = and i32 %35975, 31
  %35977 = load i32, ptr %48, align 4, !tbaa !9
  %35978 = shl i32 %35977, %35976
  store i32 %35978, ptr %48, align 4, !tbaa !9
  %35979 = load i32, ptr %48, align 4, !tbaa !9
  %35980 = load i32, ptr %47, align 4, !tbaa !9
  %35981 = add i32 %35980, %35979
  store i32 %35981, ptr %47, align 4, !tbaa !9
  %35982 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %35982, ptr %48, align 4, !tbaa !9
  %35983 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %35983, ptr %49, align 4, !tbaa !9
  %35984 = load ptr, ptr %5, align 8, !tbaa !5
  %35985 = getelementptr inbounds %struct.w2c_hermes, ptr %35984, i32 0, i32 6
  %35986 = load i32, ptr %49, align 4, !tbaa !9
  %35987 = zext i32 %35986 to i64
  %35988 = add i64 %35987, 3
  %35989 = call i32 @i32_load8_u(ptr noundef %35985, i64 noundef %35988)
  store i32 %35989, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %35990 = load i32, ptr %50, align 4, !tbaa !9
  %35991 = and i32 %35990, 31
  %35992 = load i32, ptr %49, align 4, !tbaa !9
  %35993 = shl i32 %35992, %35991
  store i32 %35993, ptr %49, align 4, !tbaa !9
  %35994 = load i32, ptr %49, align 4, !tbaa !9
  %35995 = load i32, ptr %48, align 4, !tbaa !9
  %35996 = add i32 %35995, %35994
  store i32 %35996, ptr %48, align 4, !tbaa !9
  %35997 = load ptr, ptr %5, align 8, !tbaa !5
  %35998 = load i32, ptr %45, align 4, !tbaa !9
  %35999 = load i32, ptr %46, align 4, !tbaa !9
  %36000 = load i32, ptr %47, align 4, !tbaa !9
  %36001 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %35997, i32 noundef %35998, i32 noundef %35999, i32 noundef %36000, i32 noundef %36001)
  %36002 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36002, ptr %45, align 4, !tbaa !9
  %36003 = load ptr, ptr %5, align 8, !tbaa !5
  %36004 = getelementptr inbounds %struct.w2c_hermes, ptr %36003, i32 0, i32 6
  %36005 = load i32, ptr %45, align 4, !tbaa !9
  %36006 = zext i32 %36005 to i64
  %36007 = add i64 %36006, 5808
  %36008 = call i32 @i32_load(ptr noundef %36004, i64 noundef %36007)
  store i32 %36008, ptr %45, align 4, !tbaa !9
  %36009 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36009, ptr %6, align 4, !tbaa !9
  %36010 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36010, ptr %45, align 4, !tbaa !9
  %36011 = load ptr, ptr %5, align 8, !tbaa !5
  %36012 = getelementptr inbounds %struct.w2c_hermes, ptr %36011, i32 0, i32 6
  %36013 = load i32, ptr %45, align 4, !tbaa !9
  %36014 = zext i32 %36013 to i64
  %36015 = add i64 %36014, 304
  %36016 = call i32 @i32_load16_u(ptr noundef %36012, i64 noundef %36015)
  store i32 %36016, ptr %45, align 4, !tbaa !9
  %36017 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36017, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %36018 = load i32, ptr %46, align 4, !tbaa !9
  %36019 = load i32, ptr %45, align 4, !tbaa !9
  %36020 = and i32 %36019, %36018
  store i32 %36020, ptr %45, align 4, !tbaa !9
  %36021 = load i32, ptr %45, align 4, !tbaa !9
  %36022 = icmp ne i32 %36021, 0
  %36023 = xor i1 %36022, true
  %36024 = zext i1 %36023 to i32
  store i32 %36024, ptr %45, align 4, !tbaa !9
  %36025 = load i32, ptr %45, align 4, !tbaa !9
  %36026 = icmp ne i32 %36025, 0
  br i1 %36026, label %36027, label %36028

36027:                                            ; preds = %35953
  br label %43136

36028:                                            ; preds = %35953
  %36029 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36029, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %36030 = load ptr, ptr %5, align 8, !tbaa !5
  %36031 = getelementptr inbounds %struct.w2c_hermes, ptr %36030, i32 0, i32 6
  %36032 = load i32, ptr %45, align 4, !tbaa !9
  %36033 = zext i32 %36032 to i64
  %36034 = add i64 %36033, 516
  %36035 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36031, i64 noundef %36034, i32 noundef %36035)
  %36036 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36036, ptr %45, align 4, !tbaa !9
  %36037 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %36037, ptr %46, align 4, !tbaa !9
  %36038 = load ptr, ptr %5, align 8, !tbaa !5
  %36039 = getelementptr inbounds %struct.w2c_hermes, ptr %36038, i32 0, i32 6
  %36040 = load i32, ptr %45, align 4, !tbaa !9
  %36041 = zext i32 %36040 to i64
  %36042 = add i64 %36041, 512
  %36043 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36039, i64 noundef %36042, i32 noundef %36043)
  %36044 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36044, ptr %45, align 4, !tbaa !9
  %36045 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %36045, ptr %46, align 4, !tbaa !9
  %36046 = load ptr, ptr %5, align 8, !tbaa !5
  %36047 = getelementptr inbounds %struct.w2c_hermes, ptr %36046, i32 0, i32 6
  %36048 = load i32, ptr %45, align 4, !tbaa !9
  %36049 = zext i32 %36048 to i64
  %36050 = add i64 %36049, 508
  %36051 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36047, i64 noundef %36050, i32 noundef %36051)
  %36052 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %36052, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %36053 = load i32, ptr %46, align 4, !tbaa !9
  %36054 = load i32, ptr %45, align 4, !tbaa !9
  %36055 = and i32 %36054, %36053
  store i32 %36055, ptr %45, align 4, !tbaa !9
  %36056 = load i32, ptr %45, align 4, !tbaa !9
  %36057 = icmp ne i32 %36056, 0
  br i1 %36057, label %36058, label %36071

36058:                                            ; preds = %36028
  %36059 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36059, ptr %45, align 4, !tbaa !9
  %36060 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36060, ptr %46, align 4, !tbaa !9
  %36061 = load ptr, ptr %5, align 8, !tbaa !5
  %36062 = getelementptr inbounds %struct.w2c_hermes, ptr %36061, i32 0, i32 6
  %36063 = load i32, ptr %46, align 4, !tbaa !9
  %36064 = zext i32 %36063 to i64
  %36065 = add i64 %36064, 1
  %36066 = call i32 @i32_load8_s(ptr noundef %36062, i64 noundef %36065)
  store i32 %36066, ptr %46, align 4, !tbaa !9
  %36067 = load i32, ptr %46, align 4, !tbaa !9
  %36068 = load i32, ptr %45, align 4, !tbaa !9
  %36069 = add i32 %36068, %36067
  store i32 %36069, ptr %45, align 4, !tbaa !9
  %36070 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36070, ptr %6, align 4, !tbaa !9
  br label %2945

36071:                                            ; preds = %36028
  %36072 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36072, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %36073 = load i32, ptr %46, align 4, !tbaa !9
  %36074 = load i32, ptr %45, align 4, !tbaa !9
  %36075 = add i32 %36074, %36073
  store i32 %36075, ptr %45, align 4, !tbaa !9
  %36076 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36076, ptr %6, align 4, !tbaa !9
  br label %2945

36077:                                            ; preds = %3136
  %36078 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36078, ptr %45, align 4, !tbaa !9
  %36079 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36079, ptr %46, align 4, !tbaa !9
  %36080 = load ptr, ptr %5, align 8, !tbaa !5
  %36081 = getelementptr inbounds %struct.w2c_hermes, ptr %36080, i32 0, i32 6
  %36082 = load i32, ptr %46, align 4, !tbaa !9
  %36083 = zext i32 %36082 to i64
  %36084 = add i64 %36083, 5
  %36085 = call i32 @i32_load8_u(ptr noundef %36081, i64 noundef %36084)
  store i32 %36085, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36086 = load i32, ptr %47, align 4, !tbaa !9
  %36087 = and i32 %36086, 31
  %36088 = load i32, ptr %46, align 4, !tbaa !9
  %36089 = shl i32 %36088, %36087
  store i32 %36089, ptr %46, align 4, !tbaa !9
  %36090 = load i32, ptr %46, align 4, !tbaa !9
  %36091 = load i32, ptr %45, align 4, !tbaa !9
  %36092 = add i32 %36091, %36090
  store i32 %36092, ptr %45, align 4, !tbaa !9
  %36093 = load ptr, ptr %5, align 8, !tbaa !5
  %36094 = getelementptr inbounds %struct.w2c_hermes, ptr %36093, i32 0, i32 6
  %36095 = load i32, ptr %45, align 4, !tbaa !9
  %36096 = zext i32 %36095 to i64
  %36097 = call i64 @i64_load(ptr noundef %36094, i64 noundef %36096)
  store i64 %36097, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %36098 = load i64, ptr %54, align 8, !tbaa !11
  %36099 = load i64, ptr %55, align 8, !tbaa !11
  %36100 = icmp ugt i64 %36098, %36099
  %36101 = zext i1 %36100 to i32
  store i32 %36101, ptr %45, align 4, !tbaa !9
  %36102 = load i32, ptr %45, align 4, !tbaa !9
  %36103 = icmp ne i32 %36102, 0
  br i1 %36103, label %36104, label %36105

36104:                                            ; preds = %36077
  br label %36200

36105:                                            ; preds = %36077
  %36106 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36106, ptr %45, align 4, !tbaa !9
  %36107 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36107, ptr %46, align 4, !tbaa !9
  %36108 = load ptr, ptr %5, align 8, !tbaa !5
  %36109 = getelementptr inbounds %struct.w2c_hermes, ptr %36108, i32 0, i32 6
  %36110 = load i32, ptr %46, align 4, !tbaa !9
  %36111 = zext i32 %36110 to i64
  %36112 = add i64 %36111, 6
  %36113 = call i32 @i32_load8_u(ptr noundef %36109, i64 noundef %36112)
  store i32 %36113, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36114 = load i32, ptr %47, align 4, !tbaa !9
  %36115 = and i32 %36114, 31
  %36116 = load i32, ptr %46, align 4, !tbaa !9
  %36117 = shl i32 %36116, %36115
  store i32 %36117, ptr %46, align 4, !tbaa !9
  %36118 = load i32, ptr %46, align 4, !tbaa !9
  %36119 = load i32, ptr %45, align 4, !tbaa !9
  %36120 = add i32 %36119, %36118
  store i32 %36120, ptr %45, align 4, !tbaa !9
  %36121 = load ptr, ptr %5, align 8, !tbaa !5
  %36122 = getelementptr inbounds %struct.w2c_hermes, ptr %36121, i32 0, i32 6
  %36123 = load i32, ptr %45, align 4, !tbaa !9
  %36124 = zext i32 %36123 to i64
  %36125 = call i64 @i64_load(ptr noundef %36122, i64 noundef %36124)
  store i64 %36125, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %36126 = load i64, ptr %54, align 8, !tbaa !11
  %36127 = load i64, ptr %55, align 8, !tbaa !11
  %36128 = icmp ugt i64 %36126, %36127
  %36129 = zext i1 %36128 to i32
  store i32 %36129, ptr %45, align 4, !tbaa !9
  %36130 = load i32, ptr %45, align 4, !tbaa !9
  %36131 = icmp ne i32 %36130, 0
  br i1 %36131, label %36132, label %36133

36132:                                            ; preds = %36105
  br label %36200

36133:                                            ; preds = %36105
  br label %36134

36134:                                            ; preds = %36133, %3137
  %36135 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36135, ptr %45, align 4, !tbaa !9
  %36136 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36136, ptr %46, align 4, !tbaa !9
  %36137 = load ptr, ptr %5, align 8, !tbaa !5
  %36138 = getelementptr inbounds %struct.w2c_hermes, ptr %36137, i32 0, i32 6
  %36139 = load i32, ptr %46, align 4, !tbaa !9
  %36140 = zext i32 %36139 to i64
  %36141 = add i64 %36140, 5
  %36142 = call i32 @i32_load8_u(ptr noundef %36138, i64 noundef %36141)
  store i32 %36142, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36143 = load i32, ptr %47, align 4, !tbaa !9
  %36144 = and i32 %36143, 31
  %36145 = load i32, ptr %46, align 4, !tbaa !9
  %36146 = shl i32 %36145, %36144
  store i32 %36146, ptr %46, align 4, !tbaa !9
  %36147 = load i32, ptr %46, align 4, !tbaa !9
  %36148 = load i32, ptr %45, align 4, !tbaa !9
  %36149 = add i32 %36148, %36147
  store i32 %36149, ptr %45, align 4, !tbaa !9
  %36150 = load ptr, ptr %5, align 8, !tbaa !5
  %36151 = getelementptr inbounds %struct.w2c_hermes, ptr %36150, i32 0, i32 6
  %36152 = load i32, ptr %45, align 4, !tbaa !9
  %36153 = zext i32 %36152 to i64
  %36154 = call double @f64_load(ptr noundef %36151, i64 noundef %36153)
  store double %36154, ptr %60, align 8, !tbaa !13
  %36155 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36155, ptr %46, align 4, !tbaa !9
  %36156 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36156, ptr %47, align 4, !tbaa !9
  %36157 = load ptr, ptr %5, align 8, !tbaa !5
  %36158 = getelementptr inbounds %struct.w2c_hermes, ptr %36157, i32 0, i32 6
  %36159 = load i32, ptr %47, align 4, !tbaa !9
  %36160 = zext i32 %36159 to i64
  %36161 = add i64 %36160, 6
  %36162 = call i32 @i32_load8_u(ptr noundef %36158, i64 noundef %36161)
  store i32 %36162, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %36163 = load i32, ptr %48, align 4, !tbaa !9
  %36164 = and i32 %36163, 31
  %36165 = load i32, ptr %47, align 4, !tbaa !9
  %36166 = shl i32 %36165, %36164
  store i32 %36166, ptr %47, align 4, !tbaa !9
  %36167 = load i32, ptr %47, align 4, !tbaa !9
  %36168 = load i32, ptr %46, align 4, !tbaa !9
  %36169 = add i32 %36168, %36167
  store i32 %36169, ptr %46, align 4, !tbaa !9
  %36170 = load ptr, ptr %5, align 8, !tbaa !5
  %36171 = getelementptr inbounds %struct.w2c_hermes, ptr %36170, i32 0, i32 6
  %36172 = load i32, ptr %46, align 4, !tbaa !9
  %36173 = zext i32 %36172 to i64
  %36174 = call double @f64_load(ptr noundef %36171, i64 noundef %36173)
  store double %36174, ptr %61, align 8, !tbaa !13
  %36175 = load double, ptr %60, align 8, !tbaa !13
  %36176 = load double, ptr %61, align 8, !tbaa !13
  %36177 = fcmp oge double %36175, %36176
  %36178 = zext i1 %36177 to i32
  store i32 %36178, ptr %45, align 4, !tbaa !9
  %36179 = load i32, ptr %45, align 4, !tbaa !9
  %36180 = icmp ne i32 %36179, 0
  br i1 %36180, label %36181, label %36194

36181:                                            ; preds = %36134
  %36182 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36182, ptr %45, align 4, !tbaa !9
  %36183 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36183, ptr %46, align 4, !tbaa !9
  %36184 = load ptr, ptr %5, align 8, !tbaa !5
  %36185 = getelementptr inbounds %struct.w2c_hermes, ptr %36184, i32 0, i32 6
  %36186 = load i32, ptr %46, align 4, !tbaa !9
  %36187 = zext i32 %36186 to i64
  %36188 = add i64 %36187, 1
  %36189 = call i32 @i32_load(ptr noundef %36185, i64 noundef %36188)
  store i32 %36189, ptr %46, align 4, !tbaa !9
  %36190 = load i32, ptr %46, align 4, !tbaa !9
  %36191 = load i32, ptr %45, align 4, !tbaa !9
  %36192 = add i32 %36191, %36190
  store i32 %36192, ptr %45, align 4, !tbaa !9
  %36193 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36193, ptr %6, align 4, !tbaa !9
  br label %2945

36194:                                            ; preds = %36134
  %36195 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36195, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %36196 = load i32, ptr %46, align 4, !tbaa !9
  %36197 = load i32, ptr %45, align 4, !tbaa !9
  %36198 = add i32 %36197, %36196
  store i32 %36198, ptr %45, align 4, !tbaa !9
  %36199 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36199, ptr %6, align 4, !tbaa !9
  br label %2945

36200:                                            ; preds = %36132, %36104
  %36201 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36201, ptr %45, align 4, !tbaa !9
  %36202 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36202, ptr %46, align 4, !tbaa !9
  %36203 = load ptr, ptr %5, align 8, !tbaa !5
  %36204 = getelementptr inbounds %struct.w2c_hermes, ptr %36203, i32 0, i32 6
  %36205 = load i32, ptr %45, align 4, !tbaa !9
  %36206 = zext i32 %36205 to i64
  %36207 = add i64 %36206, 5808
  %36208 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36204, i64 noundef %36207, i32 noundef %36208)
  %36209 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36209, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %36210 = load i32, ptr %46, align 4, !tbaa !9
  %36211 = load i32, ptr %45, align 4, !tbaa !9
  %36212 = add i32 %36211, %36210
  store i32 %36212, ptr %45, align 4, !tbaa !9
  %36213 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36213, ptr %46, align 4, !tbaa !9
  %36214 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36214, ptr %47, align 4, !tbaa !9
  %36215 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36215, ptr %48, align 4, !tbaa !9
  %36216 = load ptr, ptr %5, align 8, !tbaa !5
  %36217 = getelementptr inbounds %struct.w2c_hermes, ptr %36216, i32 0, i32 6
  %36218 = load i32, ptr %48, align 4, !tbaa !9
  %36219 = zext i32 %36218 to i64
  %36220 = add i64 %36219, 5
  %36221 = call i32 @i32_load8_u(ptr noundef %36217, i64 noundef %36220)
  store i32 %36221, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %36222 = load i32, ptr %49, align 4, !tbaa !9
  %36223 = and i32 %36222, 31
  %36224 = load i32, ptr %48, align 4, !tbaa !9
  %36225 = shl i32 %36224, %36223
  store i32 %36225, ptr %48, align 4, !tbaa !9
  %36226 = load i32, ptr %48, align 4, !tbaa !9
  %36227 = load i32, ptr %47, align 4, !tbaa !9
  %36228 = add i32 %36227, %36226
  store i32 %36228, ptr %47, align 4, !tbaa !9
  %36229 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36229, ptr %48, align 4, !tbaa !9
  %36230 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36230, ptr %49, align 4, !tbaa !9
  %36231 = load ptr, ptr %5, align 8, !tbaa !5
  %36232 = getelementptr inbounds %struct.w2c_hermes, ptr %36231, i32 0, i32 6
  %36233 = load i32, ptr %49, align 4, !tbaa !9
  %36234 = zext i32 %36233 to i64
  %36235 = add i64 %36234, 6
  %36236 = call i32 @i32_load8_u(ptr noundef %36232, i64 noundef %36235)
  store i32 %36236, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %36237 = load i32, ptr %50, align 4, !tbaa !9
  %36238 = and i32 %36237, 31
  %36239 = load i32, ptr %49, align 4, !tbaa !9
  %36240 = shl i32 %36239, %36238
  store i32 %36240, ptr %49, align 4, !tbaa !9
  %36241 = load i32, ptr %49, align 4, !tbaa !9
  %36242 = load i32, ptr %48, align 4, !tbaa !9
  %36243 = add i32 %36242, %36241
  store i32 %36243, ptr %48, align 4, !tbaa !9
  %36244 = load ptr, ptr %5, align 8, !tbaa !5
  %36245 = load i32, ptr %45, align 4, !tbaa !9
  %36246 = load i32, ptr %46, align 4, !tbaa !9
  %36247 = load i32, ptr %47, align 4, !tbaa !9
  %36248 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %36244, i32 noundef %36245, i32 noundef %36246, i32 noundef %36247, i32 noundef %36248)
  %36249 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36249, ptr %45, align 4, !tbaa !9
  %36250 = load ptr, ptr %5, align 8, !tbaa !5
  %36251 = getelementptr inbounds %struct.w2c_hermes, ptr %36250, i32 0, i32 6
  %36252 = load i32, ptr %45, align 4, !tbaa !9
  %36253 = zext i32 %36252 to i64
  %36254 = add i64 %36253, 5808
  %36255 = call i32 @i32_load(ptr noundef %36251, i64 noundef %36254)
  store i32 %36255, ptr %45, align 4, !tbaa !9
  %36256 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36256, ptr %6, align 4, !tbaa !9
  %36257 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36257, ptr %45, align 4, !tbaa !9
  %36258 = load ptr, ptr %5, align 8, !tbaa !5
  %36259 = getelementptr inbounds %struct.w2c_hermes, ptr %36258, i32 0, i32 6
  %36260 = load i32, ptr %45, align 4, !tbaa !9
  %36261 = zext i32 %36260 to i64
  %36262 = add i64 %36261, 304
  %36263 = call i32 @i32_load16_u(ptr noundef %36259, i64 noundef %36262)
  store i32 %36263, ptr %45, align 4, !tbaa !9
  %36264 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36264, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %36265 = load i32, ptr %46, align 4, !tbaa !9
  %36266 = load i32, ptr %45, align 4, !tbaa !9
  %36267 = and i32 %36266, %36265
  store i32 %36267, ptr %45, align 4, !tbaa !9
  %36268 = load i32, ptr %45, align 4, !tbaa !9
  %36269 = icmp ne i32 %36268, 0
  %36270 = xor i1 %36269, true
  %36271 = zext i1 %36270 to i32
  store i32 %36271, ptr %45, align 4, !tbaa !9
  %36272 = load i32, ptr %45, align 4, !tbaa !9
  %36273 = icmp ne i32 %36272, 0
  br i1 %36273, label %36274, label %36275

36274:                                            ; preds = %36200
  br label %43136

36275:                                            ; preds = %36200
  %36276 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36276, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %36277 = load ptr, ptr %5, align 8, !tbaa !5
  %36278 = getelementptr inbounds %struct.w2c_hermes, ptr %36277, i32 0, i32 6
  %36279 = load i32, ptr %45, align 4, !tbaa !9
  %36280 = zext i32 %36279 to i64
  %36281 = add i64 %36280, 516
  %36282 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36278, i64 noundef %36281, i32 noundef %36282)
  %36283 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36283, ptr %45, align 4, !tbaa !9
  %36284 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %36284, ptr %46, align 4, !tbaa !9
  %36285 = load ptr, ptr %5, align 8, !tbaa !5
  %36286 = getelementptr inbounds %struct.w2c_hermes, ptr %36285, i32 0, i32 6
  %36287 = load i32, ptr %45, align 4, !tbaa !9
  %36288 = zext i32 %36287 to i64
  %36289 = add i64 %36288, 512
  %36290 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36286, i64 noundef %36289, i32 noundef %36290)
  %36291 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36291, ptr %45, align 4, !tbaa !9
  %36292 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %36292, ptr %46, align 4, !tbaa !9
  %36293 = load ptr, ptr %5, align 8, !tbaa !5
  %36294 = getelementptr inbounds %struct.w2c_hermes, ptr %36293, i32 0, i32 6
  %36295 = load i32, ptr %45, align 4, !tbaa !9
  %36296 = zext i32 %36295 to i64
  %36297 = add i64 %36296, 508
  %36298 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36294, i64 noundef %36297, i32 noundef %36298)
  %36299 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %36299, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %36300 = load i32, ptr %46, align 4, !tbaa !9
  %36301 = load i32, ptr %45, align 4, !tbaa !9
  %36302 = and i32 %36301, %36300
  store i32 %36302, ptr %45, align 4, !tbaa !9
  %36303 = load i32, ptr %45, align 4, !tbaa !9
  %36304 = icmp ne i32 %36303, 0
  br i1 %36304, label %36305, label %36318

36305:                                            ; preds = %36275
  %36306 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36306, ptr %45, align 4, !tbaa !9
  %36307 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36307, ptr %46, align 4, !tbaa !9
  %36308 = load ptr, ptr %5, align 8, !tbaa !5
  %36309 = getelementptr inbounds %struct.w2c_hermes, ptr %36308, i32 0, i32 6
  %36310 = load i32, ptr %46, align 4, !tbaa !9
  %36311 = zext i32 %36310 to i64
  %36312 = add i64 %36311, 1
  %36313 = call i32 @i32_load(ptr noundef %36309, i64 noundef %36312)
  store i32 %36313, ptr %46, align 4, !tbaa !9
  %36314 = load i32, ptr %46, align 4, !tbaa !9
  %36315 = load i32, ptr %45, align 4, !tbaa !9
  %36316 = add i32 %36315, %36314
  store i32 %36316, ptr %45, align 4, !tbaa !9
  %36317 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36317, ptr %6, align 4, !tbaa !9
  br label %2945

36318:                                            ; preds = %36275
  %36319 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36319, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %36320 = load i32, ptr %46, align 4, !tbaa !9
  %36321 = load i32, ptr %45, align 4, !tbaa !9
  %36322 = add i32 %36321, %36320
  store i32 %36322, ptr %45, align 4, !tbaa !9
  %36323 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36323, ptr %6, align 4, !tbaa !9
  br label %2945

36324:                                            ; preds = %3138
  %36325 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36325, ptr %45, align 4, !tbaa !9
  %36326 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36326, ptr %46, align 4, !tbaa !9
  %36327 = load ptr, ptr %5, align 8, !tbaa !5
  %36328 = getelementptr inbounds %struct.w2c_hermes, ptr %36327, i32 0, i32 6
  %36329 = load i32, ptr %46, align 4, !tbaa !9
  %36330 = zext i32 %36329 to i64
  %36331 = add i64 %36330, 2
  %36332 = call i32 @i32_load8_u(ptr noundef %36328, i64 noundef %36331)
  store i32 %36332, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36333 = load i32, ptr %47, align 4, !tbaa !9
  %36334 = and i32 %36333, 31
  %36335 = load i32, ptr %46, align 4, !tbaa !9
  %36336 = shl i32 %36335, %36334
  store i32 %36336, ptr %46, align 4, !tbaa !9
  %36337 = load i32, ptr %46, align 4, !tbaa !9
  %36338 = load i32, ptr %45, align 4, !tbaa !9
  %36339 = add i32 %36338, %36337
  store i32 %36339, ptr %45, align 4, !tbaa !9
  %36340 = load ptr, ptr %5, align 8, !tbaa !5
  %36341 = getelementptr inbounds %struct.w2c_hermes, ptr %36340, i32 0, i32 6
  %36342 = load i32, ptr %45, align 4, !tbaa !9
  %36343 = zext i32 %36342 to i64
  %36344 = call i64 @i64_load(ptr noundef %36341, i64 noundef %36343)
  store i64 %36344, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %36345 = load i64, ptr %54, align 8, !tbaa !11
  %36346 = load i64, ptr %55, align 8, !tbaa !11
  %36347 = icmp ugt i64 %36345, %36346
  %36348 = zext i1 %36347 to i32
  store i32 %36348, ptr %45, align 4, !tbaa !9
  %36349 = load i32, ptr %45, align 4, !tbaa !9
  %36350 = icmp ne i32 %36349, 0
  br i1 %36350, label %36351, label %36352

36351:                                            ; preds = %36324
  br label %36447

36352:                                            ; preds = %36324
  %36353 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36353, ptr %45, align 4, !tbaa !9
  %36354 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36354, ptr %46, align 4, !tbaa !9
  %36355 = load ptr, ptr %5, align 8, !tbaa !5
  %36356 = getelementptr inbounds %struct.w2c_hermes, ptr %36355, i32 0, i32 6
  %36357 = load i32, ptr %46, align 4, !tbaa !9
  %36358 = zext i32 %36357 to i64
  %36359 = add i64 %36358, 3
  %36360 = call i32 @i32_load8_u(ptr noundef %36356, i64 noundef %36359)
  store i32 %36360, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36361 = load i32, ptr %47, align 4, !tbaa !9
  %36362 = and i32 %36361, 31
  %36363 = load i32, ptr %46, align 4, !tbaa !9
  %36364 = shl i32 %36363, %36362
  store i32 %36364, ptr %46, align 4, !tbaa !9
  %36365 = load i32, ptr %46, align 4, !tbaa !9
  %36366 = load i32, ptr %45, align 4, !tbaa !9
  %36367 = add i32 %36366, %36365
  store i32 %36367, ptr %45, align 4, !tbaa !9
  %36368 = load ptr, ptr %5, align 8, !tbaa !5
  %36369 = getelementptr inbounds %struct.w2c_hermes, ptr %36368, i32 0, i32 6
  %36370 = load i32, ptr %45, align 4, !tbaa !9
  %36371 = zext i32 %36370 to i64
  %36372 = call i64 @i64_load(ptr noundef %36369, i64 noundef %36371)
  store i64 %36372, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %36373 = load i64, ptr %54, align 8, !tbaa !11
  %36374 = load i64, ptr %55, align 8, !tbaa !11
  %36375 = icmp ugt i64 %36373, %36374
  %36376 = zext i1 %36375 to i32
  store i32 %36376, ptr %45, align 4, !tbaa !9
  %36377 = load i32, ptr %45, align 4, !tbaa !9
  %36378 = icmp ne i32 %36377, 0
  br i1 %36378, label %36379, label %36380

36379:                                            ; preds = %36352
  br label %36447

36380:                                            ; preds = %36352
  br label %36381

36381:                                            ; preds = %36380, %3139
  %36382 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36382, ptr %45, align 4, !tbaa !9
  %36383 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36383, ptr %46, align 4, !tbaa !9
  %36384 = load ptr, ptr %5, align 8, !tbaa !5
  %36385 = getelementptr inbounds %struct.w2c_hermes, ptr %36384, i32 0, i32 6
  %36386 = load i32, ptr %46, align 4, !tbaa !9
  %36387 = zext i32 %36386 to i64
  %36388 = add i64 %36387, 2
  %36389 = call i32 @i32_load8_u(ptr noundef %36385, i64 noundef %36388)
  store i32 %36389, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36390 = load i32, ptr %47, align 4, !tbaa !9
  %36391 = and i32 %36390, 31
  %36392 = load i32, ptr %46, align 4, !tbaa !9
  %36393 = shl i32 %36392, %36391
  store i32 %36393, ptr %46, align 4, !tbaa !9
  %36394 = load i32, ptr %46, align 4, !tbaa !9
  %36395 = load i32, ptr %45, align 4, !tbaa !9
  %36396 = add i32 %36395, %36394
  store i32 %36396, ptr %45, align 4, !tbaa !9
  %36397 = load ptr, ptr %5, align 8, !tbaa !5
  %36398 = getelementptr inbounds %struct.w2c_hermes, ptr %36397, i32 0, i32 6
  %36399 = load i32, ptr %45, align 4, !tbaa !9
  %36400 = zext i32 %36399 to i64
  %36401 = call double @f64_load(ptr noundef %36398, i64 noundef %36400)
  store double %36401, ptr %60, align 8, !tbaa !13
  %36402 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36402, ptr %46, align 4, !tbaa !9
  %36403 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36403, ptr %47, align 4, !tbaa !9
  %36404 = load ptr, ptr %5, align 8, !tbaa !5
  %36405 = getelementptr inbounds %struct.w2c_hermes, ptr %36404, i32 0, i32 6
  %36406 = load i32, ptr %47, align 4, !tbaa !9
  %36407 = zext i32 %36406 to i64
  %36408 = add i64 %36407, 3
  %36409 = call i32 @i32_load8_u(ptr noundef %36405, i64 noundef %36408)
  store i32 %36409, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %36410 = load i32, ptr %48, align 4, !tbaa !9
  %36411 = and i32 %36410, 31
  %36412 = load i32, ptr %47, align 4, !tbaa !9
  %36413 = shl i32 %36412, %36411
  store i32 %36413, ptr %47, align 4, !tbaa !9
  %36414 = load i32, ptr %47, align 4, !tbaa !9
  %36415 = load i32, ptr %46, align 4, !tbaa !9
  %36416 = add i32 %36415, %36414
  store i32 %36416, ptr %46, align 4, !tbaa !9
  %36417 = load ptr, ptr %5, align 8, !tbaa !5
  %36418 = getelementptr inbounds %struct.w2c_hermes, ptr %36417, i32 0, i32 6
  %36419 = load i32, ptr %46, align 4, !tbaa !9
  %36420 = zext i32 %36419 to i64
  %36421 = call double @f64_load(ptr noundef %36418, i64 noundef %36420)
  store double %36421, ptr %61, align 8, !tbaa !13
  %36422 = load double, ptr %60, align 8, !tbaa !13
  %36423 = load double, ptr %61, align 8, !tbaa !13
  %36424 = fcmp oge double %36422, %36423
  %36425 = zext i1 %36424 to i32
  store i32 %36425, ptr %45, align 4, !tbaa !9
  %36426 = load i32, ptr %45, align 4, !tbaa !9
  %36427 = icmp ne i32 %36426, 0
  br i1 %36427, label %36428, label %36434

36428:                                            ; preds = %36381
  %36429 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36429, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %36430 = load i32, ptr %46, align 4, !tbaa !9
  %36431 = load i32, ptr %45, align 4, !tbaa !9
  %36432 = add i32 %36431, %36430
  store i32 %36432, ptr %45, align 4, !tbaa !9
  %36433 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36433, ptr %6, align 4, !tbaa !9
  br label %2945

36434:                                            ; preds = %36381
  %36435 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36435, ptr %45, align 4, !tbaa !9
  %36436 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36436, ptr %46, align 4, !tbaa !9
  %36437 = load ptr, ptr %5, align 8, !tbaa !5
  %36438 = getelementptr inbounds %struct.w2c_hermes, ptr %36437, i32 0, i32 6
  %36439 = load i32, ptr %46, align 4, !tbaa !9
  %36440 = zext i32 %36439 to i64
  %36441 = add i64 %36440, 1
  %36442 = call i32 @i32_load8_s(ptr noundef %36438, i64 noundef %36441)
  store i32 %36442, ptr %46, align 4, !tbaa !9
  %36443 = load i32, ptr %46, align 4, !tbaa !9
  %36444 = load i32, ptr %45, align 4, !tbaa !9
  %36445 = add i32 %36444, %36443
  store i32 %36445, ptr %45, align 4, !tbaa !9
  %36446 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36446, ptr %6, align 4, !tbaa !9
  br label %2945

36447:                                            ; preds = %36379, %36351
  %36448 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36448, ptr %45, align 4, !tbaa !9
  %36449 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36449, ptr %46, align 4, !tbaa !9
  %36450 = load ptr, ptr %5, align 8, !tbaa !5
  %36451 = getelementptr inbounds %struct.w2c_hermes, ptr %36450, i32 0, i32 6
  %36452 = load i32, ptr %45, align 4, !tbaa !9
  %36453 = zext i32 %36452 to i64
  %36454 = add i64 %36453, 5808
  %36455 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36451, i64 noundef %36454, i32 noundef %36455)
  %36456 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36456, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %36457 = load i32, ptr %46, align 4, !tbaa !9
  %36458 = load i32, ptr %45, align 4, !tbaa !9
  %36459 = add i32 %36458, %36457
  store i32 %36459, ptr %45, align 4, !tbaa !9
  %36460 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36460, ptr %46, align 4, !tbaa !9
  %36461 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36461, ptr %47, align 4, !tbaa !9
  %36462 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36462, ptr %48, align 4, !tbaa !9
  %36463 = load ptr, ptr %5, align 8, !tbaa !5
  %36464 = getelementptr inbounds %struct.w2c_hermes, ptr %36463, i32 0, i32 6
  %36465 = load i32, ptr %48, align 4, !tbaa !9
  %36466 = zext i32 %36465 to i64
  %36467 = add i64 %36466, 2
  %36468 = call i32 @i32_load8_u(ptr noundef %36464, i64 noundef %36467)
  store i32 %36468, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %36469 = load i32, ptr %49, align 4, !tbaa !9
  %36470 = and i32 %36469, 31
  %36471 = load i32, ptr %48, align 4, !tbaa !9
  %36472 = shl i32 %36471, %36470
  store i32 %36472, ptr %48, align 4, !tbaa !9
  %36473 = load i32, ptr %48, align 4, !tbaa !9
  %36474 = load i32, ptr %47, align 4, !tbaa !9
  %36475 = add i32 %36474, %36473
  store i32 %36475, ptr %47, align 4, !tbaa !9
  %36476 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36476, ptr %48, align 4, !tbaa !9
  %36477 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36477, ptr %49, align 4, !tbaa !9
  %36478 = load ptr, ptr %5, align 8, !tbaa !5
  %36479 = getelementptr inbounds %struct.w2c_hermes, ptr %36478, i32 0, i32 6
  %36480 = load i32, ptr %49, align 4, !tbaa !9
  %36481 = zext i32 %36480 to i64
  %36482 = add i64 %36481, 3
  %36483 = call i32 @i32_load8_u(ptr noundef %36479, i64 noundef %36482)
  store i32 %36483, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %36484 = load i32, ptr %50, align 4, !tbaa !9
  %36485 = and i32 %36484, 31
  %36486 = load i32, ptr %49, align 4, !tbaa !9
  %36487 = shl i32 %36486, %36485
  store i32 %36487, ptr %49, align 4, !tbaa !9
  %36488 = load i32, ptr %49, align 4, !tbaa !9
  %36489 = load i32, ptr %48, align 4, !tbaa !9
  %36490 = add i32 %36489, %36488
  store i32 %36490, ptr %48, align 4, !tbaa !9
  %36491 = load ptr, ptr %5, align 8, !tbaa !5
  %36492 = load i32, ptr %45, align 4, !tbaa !9
  %36493 = load i32, ptr %46, align 4, !tbaa !9
  %36494 = load i32, ptr %47, align 4, !tbaa !9
  %36495 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %36491, i32 noundef %36492, i32 noundef %36493, i32 noundef %36494, i32 noundef %36495)
  %36496 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36496, ptr %45, align 4, !tbaa !9
  %36497 = load ptr, ptr %5, align 8, !tbaa !5
  %36498 = getelementptr inbounds %struct.w2c_hermes, ptr %36497, i32 0, i32 6
  %36499 = load i32, ptr %45, align 4, !tbaa !9
  %36500 = zext i32 %36499 to i64
  %36501 = add i64 %36500, 5808
  %36502 = call i32 @i32_load(ptr noundef %36498, i64 noundef %36501)
  store i32 %36502, ptr %45, align 4, !tbaa !9
  %36503 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36503, ptr %6, align 4, !tbaa !9
  %36504 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36504, ptr %45, align 4, !tbaa !9
  %36505 = load ptr, ptr %5, align 8, !tbaa !5
  %36506 = getelementptr inbounds %struct.w2c_hermes, ptr %36505, i32 0, i32 6
  %36507 = load i32, ptr %45, align 4, !tbaa !9
  %36508 = zext i32 %36507 to i64
  %36509 = add i64 %36508, 304
  %36510 = call i32 @i32_load16_u(ptr noundef %36506, i64 noundef %36509)
  store i32 %36510, ptr %45, align 4, !tbaa !9
  %36511 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36511, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %36512 = load i32, ptr %46, align 4, !tbaa !9
  %36513 = load i32, ptr %45, align 4, !tbaa !9
  %36514 = and i32 %36513, %36512
  store i32 %36514, ptr %45, align 4, !tbaa !9
  %36515 = load i32, ptr %45, align 4, !tbaa !9
  %36516 = icmp ne i32 %36515, 0
  %36517 = xor i1 %36516, true
  %36518 = zext i1 %36517 to i32
  store i32 %36518, ptr %45, align 4, !tbaa !9
  %36519 = load i32, ptr %45, align 4, !tbaa !9
  %36520 = icmp ne i32 %36519, 0
  br i1 %36520, label %36521, label %36522

36521:                                            ; preds = %36447
  br label %43136

36522:                                            ; preds = %36447
  %36523 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36523, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %36524 = load ptr, ptr %5, align 8, !tbaa !5
  %36525 = getelementptr inbounds %struct.w2c_hermes, ptr %36524, i32 0, i32 6
  %36526 = load i32, ptr %45, align 4, !tbaa !9
  %36527 = zext i32 %36526 to i64
  %36528 = add i64 %36527, 516
  %36529 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36525, i64 noundef %36528, i32 noundef %36529)
  %36530 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36530, ptr %45, align 4, !tbaa !9
  %36531 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %36531, ptr %46, align 4, !tbaa !9
  %36532 = load ptr, ptr %5, align 8, !tbaa !5
  %36533 = getelementptr inbounds %struct.w2c_hermes, ptr %36532, i32 0, i32 6
  %36534 = load i32, ptr %45, align 4, !tbaa !9
  %36535 = zext i32 %36534 to i64
  %36536 = add i64 %36535, 512
  %36537 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36533, i64 noundef %36536, i32 noundef %36537)
  %36538 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36538, ptr %45, align 4, !tbaa !9
  %36539 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %36539, ptr %46, align 4, !tbaa !9
  %36540 = load ptr, ptr %5, align 8, !tbaa !5
  %36541 = getelementptr inbounds %struct.w2c_hermes, ptr %36540, i32 0, i32 6
  %36542 = load i32, ptr %45, align 4, !tbaa !9
  %36543 = zext i32 %36542 to i64
  %36544 = add i64 %36543, 508
  %36545 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36541, i64 noundef %36544, i32 noundef %36545)
  %36546 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %36546, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %36547 = load i32, ptr %46, align 4, !tbaa !9
  %36548 = load i32, ptr %45, align 4, !tbaa !9
  %36549 = and i32 %36548, %36547
  store i32 %36549, ptr %45, align 4, !tbaa !9
  %36550 = load i32, ptr %45, align 4, !tbaa !9
  %36551 = icmp ne i32 %36550, 0
  br i1 %36551, label %36552, label %36558

36552:                                            ; preds = %36522
  %36553 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36553, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %36554 = load i32, ptr %46, align 4, !tbaa !9
  %36555 = load i32, ptr %45, align 4, !tbaa !9
  %36556 = add i32 %36555, %36554
  store i32 %36556, ptr %45, align 4, !tbaa !9
  %36557 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36557, ptr %6, align 4, !tbaa !9
  br label %2945

36558:                                            ; preds = %36522
  %36559 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36559, ptr %45, align 4, !tbaa !9
  %36560 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36560, ptr %46, align 4, !tbaa !9
  %36561 = load ptr, ptr %5, align 8, !tbaa !5
  %36562 = getelementptr inbounds %struct.w2c_hermes, ptr %36561, i32 0, i32 6
  %36563 = load i32, ptr %46, align 4, !tbaa !9
  %36564 = zext i32 %36563 to i64
  %36565 = add i64 %36564, 1
  %36566 = call i32 @i32_load8_s(ptr noundef %36562, i64 noundef %36565)
  store i32 %36566, ptr %46, align 4, !tbaa !9
  %36567 = load i32, ptr %46, align 4, !tbaa !9
  %36568 = load i32, ptr %45, align 4, !tbaa !9
  %36569 = add i32 %36568, %36567
  store i32 %36569, ptr %45, align 4, !tbaa !9
  %36570 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36570, ptr %6, align 4, !tbaa !9
  br label %2945

36571:                                            ; preds = %3140
  %36572 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36572, ptr %45, align 4, !tbaa !9
  %36573 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36573, ptr %46, align 4, !tbaa !9
  %36574 = load ptr, ptr %5, align 8, !tbaa !5
  %36575 = getelementptr inbounds %struct.w2c_hermes, ptr %36574, i32 0, i32 6
  %36576 = load i32, ptr %46, align 4, !tbaa !9
  %36577 = zext i32 %36576 to i64
  %36578 = add i64 %36577, 5
  %36579 = call i32 @i32_load8_u(ptr noundef %36575, i64 noundef %36578)
  store i32 %36579, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36580 = load i32, ptr %47, align 4, !tbaa !9
  %36581 = and i32 %36580, 31
  %36582 = load i32, ptr %46, align 4, !tbaa !9
  %36583 = shl i32 %36582, %36581
  store i32 %36583, ptr %46, align 4, !tbaa !9
  %36584 = load i32, ptr %46, align 4, !tbaa !9
  %36585 = load i32, ptr %45, align 4, !tbaa !9
  %36586 = add i32 %36585, %36584
  store i32 %36586, ptr %45, align 4, !tbaa !9
  %36587 = load ptr, ptr %5, align 8, !tbaa !5
  %36588 = getelementptr inbounds %struct.w2c_hermes, ptr %36587, i32 0, i32 6
  %36589 = load i32, ptr %45, align 4, !tbaa !9
  %36590 = zext i32 %36589 to i64
  %36591 = call i64 @i64_load(ptr noundef %36588, i64 noundef %36590)
  store i64 %36591, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %36592 = load i64, ptr %54, align 8, !tbaa !11
  %36593 = load i64, ptr %55, align 8, !tbaa !11
  %36594 = icmp ugt i64 %36592, %36593
  %36595 = zext i1 %36594 to i32
  store i32 %36595, ptr %45, align 4, !tbaa !9
  %36596 = load i32, ptr %45, align 4, !tbaa !9
  %36597 = icmp ne i32 %36596, 0
  br i1 %36597, label %36598, label %36599

36598:                                            ; preds = %36571
  br label %36694

36599:                                            ; preds = %36571
  %36600 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36600, ptr %45, align 4, !tbaa !9
  %36601 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36601, ptr %46, align 4, !tbaa !9
  %36602 = load ptr, ptr %5, align 8, !tbaa !5
  %36603 = getelementptr inbounds %struct.w2c_hermes, ptr %36602, i32 0, i32 6
  %36604 = load i32, ptr %46, align 4, !tbaa !9
  %36605 = zext i32 %36604 to i64
  %36606 = add i64 %36605, 6
  %36607 = call i32 @i32_load8_u(ptr noundef %36603, i64 noundef %36606)
  store i32 %36607, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36608 = load i32, ptr %47, align 4, !tbaa !9
  %36609 = and i32 %36608, 31
  %36610 = load i32, ptr %46, align 4, !tbaa !9
  %36611 = shl i32 %36610, %36609
  store i32 %36611, ptr %46, align 4, !tbaa !9
  %36612 = load i32, ptr %46, align 4, !tbaa !9
  %36613 = load i32, ptr %45, align 4, !tbaa !9
  %36614 = add i32 %36613, %36612
  store i32 %36614, ptr %45, align 4, !tbaa !9
  %36615 = load ptr, ptr %5, align 8, !tbaa !5
  %36616 = getelementptr inbounds %struct.w2c_hermes, ptr %36615, i32 0, i32 6
  %36617 = load i32, ptr %45, align 4, !tbaa !9
  %36618 = zext i32 %36617 to i64
  %36619 = call i64 @i64_load(ptr noundef %36616, i64 noundef %36618)
  store i64 %36619, ptr %54, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %36620 = load i64, ptr %54, align 8, !tbaa !11
  %36621 = load i64, ptr %55, align 8, !tbaa !11
  %36622 = icmp ugt i64 %36620, %36621
  %36623 = zext i1 %36622 to i32
  store i32 %36623, ptr %45, align 4, !tbaa !9
  %36624 = load i32, ptr %45, align 4, !tbaa !9
  %36625 = icmp ne i32 %36624, 0
  br i1 %36625, label %36626, label %36627

36626:                                            ; preds = %36599
  br label %36694

36627:                                            ; preds = %36599
  br label %36628

36628:                                            ; preds = %36627, %3141
  %36629 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36629, ptr %45, align 4, !tbaa !9
  %36630 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36630, ptr %46, align 4, !tbaa !9
  %36631 = load ptr, ptr %5, align 8, !tbaa !5
  %36632 = getelementptr inbounds %struct.w2c_hermes, ptr %36631, i32 0, i32 6
  %36633 = load i32, ptr %46, align 4, !tbaa !9
  %36634 = zext i32 %36633 to i64
  %36635 = add i64 %36634, 5
  %36636 = call i32 @i32_load8_u(ptr noundef %36632, i64 noundef %36635)
  store i32 %36636, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36637 = load i32, ptr %47, align 4, !tbaa !9
  %36638 = and i32 %36637, 31
  %36639 = load i32, ptr %46, align 4, !tbaa !9
  %36640 = shl i32 %36639, %36638
  store i32 %36640, ptr %46, align 4, !tbaa !9
  %36641 = load i32, ptr %46, align 4, !tbaa !9
  %36642 = load i32, ptr %45, align 4, !tbaa !9
  %36643 = add i32 %36642, %36641
  store i32 %36643, ptr %45, align 4, !tbaa !9
  %36644 = load ptr, ptr %5, align 8, !tbaa !5
  %36645 = getelementptr inbounds %struct.w2c_hermes, ptr %36644, i32 0, i32 6
  %36646 = load i32, ptr %45, align 4, !tbaa !9
  %36647 = zext i32 %36646 to i64
  %36648 = call double @f64_load(ptr noundef %36645, i64 noundef %36647)
  store double %36648, ptr %60, align 8, !tbaa !13
  %36649 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36649, ptr %46, align 4, !tbaa !9
  %36650 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36650, ptr %47, align 4, !tbaa !9
  %36651 = load ptr, ptr %5, align 8, !tbaa !5
  %36652 = getelementptr inbounds %struct.w2c_hermes, ptr %36651, i32 0, i32 6
  %36653 = load i32, ptr %47, align 4, !tbaa !9
  %36654 = zext i32 %36653 to i64
  %36655 = add i64 %36654, 6
  %36656 = call i32 @i32_load8_u(ptr noundef %36652, i64 noundef %36655)
  store i32 %36656, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %36657 = load i32, ptr %48, align 4, !tbaa !9
  %36658 = and i32 %36657, 31
  %36659 = load i32, ptr %47, align 4, !tbaa !9
  %36660 = shl i32 %36659, %36658
  store i32 %36660, ptr %47, align 4, !tbaa !9
  %36661 = load i32, ptr %47, align 4, !tbaa !9
  %36662 = load i32, ptr %46, align 4, !tbaa !9
  %36663 = add i32 %36662, %36661
  store i32 %36663, ptr %46, align 4, !tbaa !9
  %36664 = load ptr, ptr %5, align 8, !tbaa !5
  %36665 = getelementptr inbounds %struct.w2c_hermes, ptr %36664, i32 0, i32 6
  %36666 = load i32, ptr %46, align 4, !tbaa !9
  %36667 = zext i32 %36666 to i64
  %36668 = call double @f64_load(ptr noundef %36665, i64 noundef %36667)
  store double %36668, ptr %61, align 8, !tbaa !13
  %36669 = load double, ptr %60, align 8, !tbaa !13
  %36670 = load double, ptr %61, align 8, !tbaa !13
  %36671 = fcmp oge double %36669, %36670
  %36672 = zext i1 %36671 to i32
  store i32 %36672, ptr %45, align 4, !tbaa !9
  %36673 = load i32, ptr %45, align 4, !tbaa !9
  %36674 = icmp ne i32 %36673, 0
  br i1 %36674, label %36675, label %36681

36675:                                            ; preds = %36628
  %36676 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36676, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %36677 = load i32, ptr %46, align 4, !tbaa !9
  %36678 = load i32, ptr %45, align 4, !tbaa !9
  %36679 = add i32 %36678, %36677
  store i32 %36679, ptr %45, align 4, !tbaa !9
  %36680 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36680, ptr %6, align 4, !tbaa !9
  br label %2945

36681:                                            ; preds = %36628
  %36682 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36682, ptr %45, align 4, !tbaa !9
  %36683 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36683, ptr %46, align 4, !tbaa !9
  %36684 = load ptr, ptr %5, align 8, !tbaa !5
  %36685 = getelementptr inbounds %struct.w2c_hermes, ptr %36684, i32 0, i32 6
  %36686 = load i32, ptr %46, align 4, !tbaa !9
  %36687 = zext i32 %36686 to i64
  %36688 = add i64 %36687, 1
  %36689 = call i32 @i32_load(ptr noundef %36685, i64 noundef %36688)
  store i32 %36689, ptr %46, align 4, !tbaa !9
  %36690 = load i32, ptr %46, align 4, !tbaa !9
  %36691 = load i32, ptr %45, align 4, !tbaa !9
  %36692 = add i32 %36691, %36690
  store i32 %36692, ptr %45, align 4, !tbaa !9
  %36693 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36693, ptr %6, align 4, !tbaa !9
  br label %2945

36694:                                            ; preds = %36626, %36598
  %36695 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36695, ptr %45, align 4, !tbaa !9
  %36696 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36696, ptr %46, align 4, !tbaa !9
  %36697 = load ptr, ptr %5, align 8, !tbaa !5
  %36698 = getelementptr inbounds %struct.w2c_hermes, ptr %36697, i32 0, i32 6
  %36699 = load i32, ptr %45, align 4, !tbaa !9
  %36700 = zext i32 %36699 to i64
  %36701 = add i64 %36700, 5808
  %36702 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36698, i64 noundef %36701, i32 noundef %36702)
  %36703 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36703, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %36704 = load i32, ptr %46, align 4, !tbaa !9
  %36705 = load i32, ptr %45, align 4, !tbaa !9
  %36706 = add i32 %36705, %36704
  store i32 %36706, ptr %45, align 4, !tbaa !9
  %36707 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36707, ptr %46, align 4, !tbaa !9
  %36708 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36708, ptr %47, align 4, !tbaa !9
  %36709 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36709, ptr %48, align 4, !tbaa !9
  %36710 = load ptr, ptr %5, align 8, !tbaa !5
  %36711 = getelementptr inbounds %struct.w2c_hermes, ptr %36710, i32 0, i32 6
  %36712 = load i32, ptr %48, align 4, !tbaa !9
  %36713 = zext i32 %36712 to i64
  %36714 = add i64 %36713, 5
  %36715 = call i32 @i32_load8_u(ptr noundef %36711, i64 noundef %36714)
  store i32 %36715, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %36716 = load i32, ptr %49, align 4, !tbaa !9
  %36717 = and i32 %36716, 31
  %36718 = load i32, ptr %48, align 4, !tbaa !9
  %36719 = shl i32 %36718, %36717
  store i32 %36719, ptr %48, align 4, !tbaa !9
  %36720 = load i32, ptr %48, align 4, !tbaa !9
  %36721 = load i32, ptr %47, align 4, !tbaa !9
  %36722 = add i32 %36721, %36720
  store i32 %36722, ptr %47, align 4, !tbaa !9
  %36723 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36723, ptr %48, align 4, !tbaa !9
  %36724 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36724, ptr %49, align 4, !tbaa !9
  %36725 = load ptr, ptr %5, align 8, !tbaa !5
  %36726 = getelementptr inbounds %struct.w2c_hermes, ptr %36725, i32 0, i32 6
  %36727 = load i32, ptr %49, align 4, !tbaa !9
  %36728 = zext i32 %36727 to i64
  %36729 = add i64 %36728, 6
  %36730 = call i32 @i32_load8_u(ptr noundef %36726, i64 noundef %36729)
  store i32 %36730, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %36731 = load i32, ptr %50, align 4, !tbaa !9
  %36732 = and i32 %36731, 31
  %36733 = load i32, ptr %49, align 4, !tbaa !9
  %36734 = shl i32 %36733, %36732
  store i32 %36734, ptr %49, align 4, !tbaa !9
  %36735 = load i32, ptr %49, align 4, !tbaa !9
  %36736 = load i32, ptr %48, align 4, !tbaa !9
  %36737 = add i32 %36736, %36735
  store i32 %36737, ptr %48, align 4, !tbaa !9
  %36738 = load ptr, ptr %5, align 8, !tbaa !5
  %36739 = load i32, ptr %45, align 4, !tbaa !9
  %36740 = load i32, ptr %46, align 4, !tbaa !9
  %36741 = load i32, ptr %47, align 4, !tbaa !9
  %36742 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %36738, i32 noundef %36739, i32 noundef %36740, i32 noundef %36741, i32 noundef %36742)
  %36743 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %36743, ptr %45, align 4, !tbaa !9
  %36744 = load ptr, ptr %5, align 8, !tbaa !5
  %36745 = getelementptr inbounds %struct.w2c_hermes, ptr %36744, i32 0, i32 6
  %36746 = load i32, ptr %45, align 4, !tbaa !9
  %36747 = zext i32 %36746 to i64
  %36748 = add i64 %36747, 5808
  %36749 = call i32 @i32_load(ptr noundef %36745, i64 noundef %36748)
  store i32 %36749, ptr %45, align 4, !tbaa !9
  %36750 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36750, ptr %6, align 4, !tbaa !9
  %36751 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36751, ptr %45, align 4, !tbaa !9
  %36752 = load ptr, ptr %5, align 8, !tbaa !5
  %36753 = getelementptr inbounds %struct.w2c_hermes, ptr %36752, i32 0, i32 6
  %36754 = load i32, ptr %45, align 4, !tbaa !9
  %36755 = zext i32 %36754 to i64
  %36756 = add i64 %36755, 304
  %36757 = call i32 @i32_load16_u(ptr noundef %36753, i64 noundef %36756)
  store i32 %36757, ptr %45, align 4, !tbaa !9
  %36758 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36758, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %36759 = load i32, ptr %46, align 4, !tbaa !9
  %36760 = load i32, ptr %45, align 4, !tbaa !9
  %36761 = and i32 %36760, %36759
  store i32 %36761, ptr %45, align 4, !tbaa !9
  %36762 = load i32, ptr %45, align 4, !tbaa !9
  %36763 = icmp ne i32 %36762, 0
  %36764 = xor i1 %36763, true
  %36765 = zext i1 %36764 to i32
  store i32 %36765, ptr %45, align 4, !tbaa !9
  %36766 = load i32, ptr %45, align 4, !tbaa !9
  %36767 = icmp ne i32 %36766, 0
  br i1 %36767, label %36768, label %36769

36768:                                            ; preds = %36694
  br label %43136

36769:                                            ; preds = %36694
  %36770 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36770, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %36771 = load ptr, ptr %5, align 8, !tbaa !5
  %36772 = getelementptr inbounds %struct.w2c_hermes, ptr %36771, i32 0, i32 6
  %36773 = load i32, ptr %45, align 4, !tbaa !9
  %36774 = zext i32 %36773 to i64
  %36775 = add i64 %36774, 516
  %36776 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36772, i64 noundef %36775, i32 noundef %36776)
  %36777 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36777, ptr %45, align 4, !tbaa !9
  %36778 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %36778, ptr %46, align 4, !tbaa !9
  %36779 = load ptr, ptr %5, align 8, !tbaa !5
  %36780 = getelementptr inbounds %struct.w2c_hermes, ptr %36779, i32 0, i32 6
  %36781 = load i32, ptr %45, align 4, !tbaa !9
  %36782 = zext i32 %36781 to i64
  %36783 = add i64 %36782, 512
  %36784 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36780, i64 noundef %36783, i32 noundef %36784)
  %36785 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %36785, ptr %45, align 4, !tbaa !9
  %36786 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %36786, ptr %46, align 4, !tbaa !9
  %36787 = load ptr, ptr %5, align 8, !tbaa !5
  %36788 = getelementptr inbounds %struct.w2c_hermes, ptr %36787, i32 0, i32 6
  %36789 = load i32, ptr %45, align 4, !tbaa !9
  %36790 = zext i32 %36789 to i64
  %36791 = add i64 %36790, 508
  %36792 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %36788, i64 noundef %36791, i32 noundef %36792)
  %36793 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %36793, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %36794 = load i32, ptr %46, align 4, !tbaa !9
  %36795 = load i32, ptr %45, align 4, !tbaa !9
  %36796 = and i32 %36795, %36794
  store i32 %36796, ptr %45, align 4, !tbaa !9
  %36797 = load i32, ptr %45, align 4, !tbaa !9
  %36798 = icmp ne i32 %36797, 0
  br i1 %36798, label %36799, label %36805

36799:                                            ; preds = %36769
  %36800 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36800, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %36801 = load i32, ptr %46, align 4, !tbaa !9
  %36802 = load i32, ptr %45, align 4, !tbaa !9
  %36803 = add i32 %36802, %36801
  store i32 %36803, ptr %45, align 4, !tbaa !9
  %36804 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36804, ptr %6, align 4, !tbaa !9
  br label %2945

36805:                                            ; preds = %36769
  %36806 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36806, ptr %45, align 4, !tbaa !9
  %36807 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36807, ptr %46, align 4, !tbaa !9
  %36808 = load ptr, ptr %5, align 8, !tbaa !5
  %36809 = getelementptr inbounds %struct.w2c_hermes, ptr %36808, i32 0, i32 6
  %36810 = load i32, ptr %46, align 4, !tbaa !9
  %36811 = zext i32 %36810 to i64
  %36812 = add i64 %36811, 1
  %36813 = call i32 @i32_load(ptr noundef %36809, i64 noundef %36812)
  store i32 %36813, ptr %46, align 4, !tbaa !9
  %36814 = load i32, ptr %46, align 4, !tbaa !9
  %36815 = load i32, ptr %45, align 4, !tbaa !9
  %36816 = add i32 %36815, %36814
  store i32 %36816, ptr %45, align 4, !tbaa !9
  %36817 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36817, ptr %6, align 4, !tbaa !9
  br label %2945

36818:                                            ; preds = %3142
  %36819 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36819, ptr %45, align 4, !tbaa !9
  %36820 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36820, ptr %46, align 4, !tbaa !9
  %36821 = load ptr, ptr %5, align 8, !tbaa !5
  %36822 = getelementptr inbounds %struct.w2c_hermes, ptr %36821, i32 0, i32 6
  %36823 = load i32, ptr %46, align 4, !tbaa !9
  %36824 = zext i32 %36823 to i64
  %36825 = add i64 %36824, 2
  %36826 = call i32 @i32_load8_u(ptr noundef %36822, i64 noundef %36825)
  store i32 %36826, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36827 = load i32, ptr %47, align 4, !tbaa !9
  %36828 = and i32 %36827, 31
  %36829 = load i32, ptr %46, align 4, !tbaa !9
  %36830 = shl i32 %36829, %36828
  store i32 %36830, ptr %46, align 4, !tbaa !9
  %36831 = load i32, ptr %46, align 4, !tbaa !9
  %36832 = load i32, ptr %45, align 4, !tbaa !9
  %36833 = add i32 %36832, %36831
  store i32 %36833, ptr %45, align 4, !tbaa !9
  %36834 = load ptr, ptr %5, align 8, !tbaa !5
  %36835 = getelementptr inbounds %struct.w2c_hermes, ptr %36834, i32 0, i32 6
  %36836 = load i32, ptr %45, align 4, !tbaa !9
  %36837 = zext i32 %36836 to i64
  %36838 = call i64 @i64_load(ptr noundef %36835, i64 noundef %36837)
  store i64 %36838, ptr %54, align 8, !tbaa !11
  %36839 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36839, ptr %46, align 4, !tbaa !9
  %36840 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36840, ptr %47, align 4, !tbaa !9
  %36841 = load ptr, ptr %5, align 8, !tbaa !5
  %36842 = getelementptr inbounds %struct.w2c_hermes, ptr %36841, i32 0, i32 6
  %36843 = load i32, ptr %47, align 4, !tbaa !9
  %36844 = zext i32 %36843 to i64
  %36845 = add i64 %36844, 3
  %36846 = call i32 @i32_load8_u(ptr noundef %36842, i64 noundef %36845)
  store i32 %36846, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %36847 = load i32, ptr %48, align 4, !tbaa !9
  %36848 = and i32 %36847, 31
  %36849 = load i32, ptr %47, align 4, !tbaa !9
  %36850 = shl i32 %36849, %36848
  store i32 %36850, ptr %47, align 4, !tbaa !9
  %36851 = load i32, ptr %47, align 4, !tbaa !9
  %36852 = load i32, ptr %46, align 4, !tbaa !9
  %36853 = add i32 %36852, %36851
  store i32 %36853, ptr %46, align 4, !tbaa !9
  %36854 = load ptr, ptr %5, align 8, !tbaa !5
  %36855 = getelementptr inbounds %struct.w2c_hermes, ptr %36854, i32 0, i32 6
  %36856 = load i32, ptr %46, align 4, !tbaa !9
  %36857 = zext i32 %36856 to i64
  %36858 = call i64 @i64_load(ptr noundef %36855, i64 noundef %36857)
  store i64 %36858, ptr %55, align 8, !tbaa !11
  %36859 = load ptr, ptr %5, align 8, !tbaa !5
  %36860 = load i64, ptr %54, align 8, !tbaa !11
  %36861 = load i64, ptr %55, align 8, !tbaa !11
  %36862 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %36859, i64 noundef %36860, i64 noundef %36861)
  store i32 %36862, ptr %45, align 4, !tbaa !9
  %36863 = load i32, ptr %45, align 4, !tbaa !9
  %36864 = icmp ne i32 %36863, 0
  br i1 %36864, label %36865, label %36878

36865:                                            ; preds = %36818
  %36866 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36866, ptr %45, align 4, !tbaa !9
  %36867 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36867, ptr %46, align 4, !tbaa !9
  %36868 = load ptr, ptr %5, align 8, !tbaa !5
  %36869 = getelementptr inbounds %struct.w2c_hermes, ptr %36868, i32 0, i32 6
  %36870 = load i32, ptr %46, align 4, !tbaa !9
  %36871 = zext i32 %36870 to i64
  %36872 = add i64 %36871, 1
  %36873 = call i32 @i32_load8_s(ptr noundef %36869, i64 noundef %36872)
  store i32 %36873, ptr %46, align 4, !tbaa !9
  %36874 = load i32, ptr %46, align 4, !tbaa !9
  %36875 = load i32, ptr %45, align 4, !tbaa !9
  %36876 = add i32 %36875, %36874
  store i32 %36876, ptr %45, align 4, !tbaa !9
  %36877 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36877, ptr %6, align 4, !tbaa !9
  br label %2945

36878:                                            ; preds = %36818
  %36879 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36879, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %36880 = load i32, ptr %46, align 4, !tbaa !9
  %36881 = load i32, ptr %45, align 4, !tbaa !9
  %36882 = add i32 %36881, %36880
  store i32 %36882, ptr %45, align 4, !tbaa !9
  %36883 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36883, ptr %6, align 4, !tbaa !9
  br label %2945

36884:                                            ; preds = %3143
  %36885 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36885, ptr %45, align 4, !tbaa !9
  %36886 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36886, ptr %46, align 4, !tbaa !9
  %36887 = load ptr, ptr %5, align 8, !tbaa !5
  %36888 = getelementptr inbounds %struct.w2c_hermes, ptr %36887, i32 0, i32 6
  %36889 = load i32, ptr %46, align 4, !tbaa !9
  %36890 = zext i32 %36889 to i64
  %36891 = add i64 %36890, 5
  %36892 = call i32 @i32_load8_u(ptr noundef %36888, i64 noundef %36891)
  store i32 %36892, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36893 = load i32, ptr %47, align 4, !tbaa !9
  %36894 = and i32 %36893, 31
  %36895 = load i32, ptr %46, align 4, !tbaa !9
  %36896 = shl i32 %36895, %36894
  store i32 %36896, ptr %46, align 4, !tbaa !9
  %36897 = load i32, ptr %46, align 4, !tbaa !9
  %36898 = load i32, ptr %45, align 4, !tbaa !9
  %36899 = add i32 %36898, %36897
  store i32 %36899, ptr %45, align 4, !tbaa !9
  %36900 = load ptr, ptr %5, align 8, !tbaa !5
  %36901 = getelementptr inbounds %struct.w2c_hermes, ptr %36900, i32 0, i32 6
  %36902 = load i32, ptr %45, align 4, !tbaa !9
  %36903 = zext i32 %36902 to i64
  %36904 = call i64 @i64_load(ptr noundef %36901, i64 noundef %36903)
  store i64 %36904, ptr %54, align 8, !tbaa !11
  %36905 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36905, ptr %46, align 4, !tbaa !9
  %36906 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36906, ptr %47, align 4, !tbaa !9
  %36907 = load ptr, ptr %5, align 8, !tbaa !5
  %36908 = getelementptr inbounds %struct.w2c_hermes, ptr %36907, i32 0, i32 6
  %36909 = load i32, ptr %47, align 4, !tbaa !9
  %36910 = zext i32 %36909 to i64
  %36911 = add i64 %36910, 6
  %36912 = call i32 @i32_load8_u(ptr noundef %36908, i64 noundef %36911)
  store i32 %36912, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %36913 = load i32, ptr %48, align 4, !tbaa !9
  %36914 = and i32 %36913, 31
  %36915 = load i32, ptr %47, align 4, !tbaa !9
  %36916 = shl i32 %36915, %36914
  store i32 %36916, ptr %47, align 4, !tbaa !9
  %36917 = load i32, ptr %47, align 4, !tbaa !9
  %36918 = load i32, ptr %46, align 4, !tbaa !9
  %36919 = add i32 %36918, %36917
  store i32 %36919, ptr %46, align 4, !tbaa !9
  %36920 = load ptr, ptr %5, align 8, !tbaa !5
  %36921 = getelementptr inbounds %struct.w2c_hermes, ptr %36920, i32 0, i32 6
  %36922 = load i32, ptr %46, align 4, !tbaa !9
  %36923 = zext i32 %36922 to i64
  %36924 = call i64 @i64_load(ptr noundef %36921, i64 noundef %36923)
  store i64 %36924, ptr %55, align 8, !tbaa !11
  %36925 = load ptr, ptr %5, align 8, !tbaa !5
  %36926 = load i64, ptr %54, align 8, !tbaa !11
  %36927 = load i64, ptr %55, align 8, !tbaa !11
  %36928 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %36925, i64 noundef %36926, i64 noundef %36927)
  store i32 %36928, ptr %45, align 4, !tbaa !9
  %36929 = load i32, ptr %45, align 4, !tbaa !9
  %36930 = icmp ne i32 %36929, 0
  br i1 %36930, label %36931, label %36944

36931:                                            ; preds = %36884
  %36932 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36932, ptr %45, align 4, !tbaa !9
  %36933 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36933, ptr %46, align 4, !tbaa !9
  %36934 = load ptr, ptr %5, align 8, !tbaa !5
  %36935 = getelementptr inbounds %struct.w2c_hermes, ptr %36934, i32 0, i32 6
  %36936 = load i32, ptr %46, align 4, !tbaa !9
  %36937 = zext i32 %36936 to i64
  %36938 = add i64 %36937, 1
  %36939 = call i32 @i32_load(ptr noundef %36935, i64 noundef %36938)
  store i32 %36939, ptr %46, align 4, !tbaa !9
  %36940 = load i32, ptr %46, align 4, !tbaa !9
  %36941 = load i32, ptr %45, align 4, !tbaa !9
  %36942 = add i32 %36941, %36940
  store i32 %36942, ptr %45, align 4, !tbaa !9
  %36943 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36943, ptr %6, align 4, !tbaa !9
  br label %2945

36944:                                            ; preds = %36884
  %36945 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36945, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %36946 = load i32, ptr %46, align 4, !tbaa !9
  %36947 = load i32, ptr %45, align 4, !tbaa !9
  %36948 = add i32 %36947, %36946
  store i32 %36948, ptr %45, align 4, !tbaa !9
  %36949 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %36949, ptr %6, align 4, !tbaa !9
  br label %2945

36950:                                            ; preds = %3144
  %36951 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36951, ptr %45, align 4, !tbaa !9
  %36952 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36952, ptr %46, align 4, !tbaa !9
  %36953 = load ptr, ptr %5, align 8, !tbaa !5
  %36954 = getelementptr inbounds %struct.w2c_hermes, ptr %36953, i32 0, i32 6
  %36955 = load i32, ptr %46, align 4, !tbaa !9
  %36956 = zext i32 %36955 to i64
  %36957 = add i64 %36956, 2
  %36958 = call i32 @i32_load8_u(ptr noundef %36954, i64 noundef %36957)
  store i32 %36958, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %36959 = load i32, ptr %47, align 4, !tbaa !9
  %36960 = and i32 %36959, 31
  %36961 = load i32, ptr %46, align 4, !tbaa !9
  %36962 = shl i32 %36961, %36960
  store i32 %36962, ptr %46, align 4, !tbaa !9
  %36963 = load i32, ptr %46, align 4, !tbaa !9
  %36964 = load i32, ptr %45, align 4, !tbaa !9
  %36965 = add i32 %36964, %36963
  store i32 %36965, ptr %45, align 4, !tbaa !9
  %36966 = load ptr, ptr %5, align 8, !tbaa !5
  %36967 = getelementptr inbounds %struct.w2c_hermes, ptr %36966, i32 0, i32 6
  %36968 = load i32, ptr %45, align 4, !tbaa !9
  %36969 = zext i32 %36968 to i64
  %36970 = call i64 @i64_load(ptr noundef %36967, i64 noundef %36969)
  store i64 %36970, ptr %54, align 8, !tbaa !11
  %36971 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %36971, ptr %46, align 4, !tbaa !9
  %36972 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36972, ptr %47, align 4, !tbaa !9
  %36973 = load ptr, ptr %5, align 8, !tbaa !5
  %36974 = getelementptr inbounds %struct.w2c_hermes, ptr %36973, i32 0, i32 6
  %36975 = load i32, ptr %47, align 4, !tbaa !9
  %36976 = zext i32 %36975 to i64
  %36977 = add i64 %36976, 3
  %36978 = call i32 @i32_load8_u(ptr noundef %36974, i64 noundef %36977)
  store i32 %36978, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %36979 = load i32, ptr %48, align 4, !tbaa !9
  %36980 = and i32 %36979, 31
  %36981 = load i32, ptr %47, align 4, !tbaa !9
  %36982 = shl i32 %36981, %36980
  store i32 %36982, ptr %47, align 4, !tbaa !9
  %36983 = load i32, ptr %47, align 4, !tbaa !9
  %36984 = load i32, ptr %46, align 4, !tbaa !9
  %36985 = add i32 %36984, %36983
  store i32 %36985, ptr %46, align 4, !tbaa !9
  %36986 = load ptr, ptr %5, align 8, !tbaa !5
  %36987 = getelementptr inbounds %struct.w2c_hermes, ptr %36986, i32 0, i32 6
  %36988 = load i32, ptr %46, align 4, !tbaa !9
  %36989 = zext i32 %36988 to i64
  %36990 = call i64 @i64_load(ptr noundef %36987, i64 noundef %36989)
  store i64 %36990, ptr %55, align 8, !tbaa !11
  %36991 = load ptr, ptr %5, align 8, !tbaa !5
  %36992 = load i64, ptr %54, align 8, !tbaa !11
  %36993 = load i64, ptr %55, align 8, !tbaa !11
  %36994 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %36991, i64 noundef %36992, i64 noundef %36993)
  store i32 %36994, ptr %45, align 4, !tbaa !9
  %36995 = load i32, ptr %45, align 4, !tbaa !9
  %36996 = icmp ne i32 %36995, 0
  br i1 %36996, label %36997, label %37003

36997:                                            ; preds = %36950
  %36998 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %36998, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %36999 = load i32, ptr %46, align 4, !tbaa !9
  %37000 = load i32, ptr %45, align 4, !tbaa !9
  %37001 = add i32 %37000, %36999
  store i32 %37001, ptr %45, align 4, !tbaa !9
  %37002 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37002, ptr %6, align 4, !tbaa !9
  br label %2945

37003:                                            ; preds = %36950
  %37004 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37004, ptr %45, align 4, !tbaa !9
  %37005 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37005, ptr %46, align 4, !tbaa !9
  %37006 = load ptr, ptr %5, align 8, !tbaa !5
  %37007 = getelementptr inbounds %struct.w2c_hermes, ptr %37006, i32 0, i32 6
  %37008 = load i32, ptr %46, align 4, !tbaa !9
  %37009 = zext i32 %37008 to i64
  %37010 = add i64 %37009, 1
  %37011 = call i32 @i32_load8_s(ptr noundef %37007, i64 noundef %37010)
  store i32 %37011, ptr %46, align 4, !tbaa !9
  %37012 = load i32, ptr %46, align 4, !tbaa !9
  %37013 = load i32, ptr %45, align 4, !tbaa !9
  %37014 = add i32 %37013, %37012
  store i32 %37014, ptr %45, align 4, !tbaa !9
  %37015 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37015, ptr %6, align 4, !tbaa !9
  br label %2945

37016:                                            ; preds = %3145
  %37017 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37017, ptr %45, align 4, !tbaa !9
  %37018 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37018, ptr %46, align 4, !tbaa !9
  %37019 = load ptr, ptr %5, align 8, !tbaa !5
  %37020 = getelementptr inbounds %struct.w2c_hermes, ptr %37019, i32 0, i32 6
  %37021 = load i32, ptr %46, align 4, !tbaa !9
  %37022 = zext i32 %37021 to i64
  %37023 = add i64 %37022, 5
  %37024 = call i32 @i32_load8_u(ptr noundef %37020, i64 noundef %37023)
  store i32 %37024, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %37025 = load i32, ptr %47, align 4, !tbaa !9
  %37026 = and i32 %37025, 31
  %37027 = load i32, ptr %46, align 4, !tbaa !9
  %37028 = shl i32 %37027, %37026
  store i32 %37028, ptr %46, align 4, !tbaa !9
  %37029 = load i32, ptr %46, align 4, !tbaa !9
  %37030 = load i32, ptr %45, align 4, !tbaa !9
  %37031 = add i32 %37030, %37029
  store i32 %37031, ptr %45, align 4, !tbaa !9
  %37032 = load ptr, ptr %5, align 8, !tbaa !5
  %37033 = getelementptr inbounds %struct.w2c_hermes, ptr %37032, i32 0, i32 6
  %37034 = load i32, ptr %45, align 4, !tbaa !9
  %37035 = zext i32 %37034 to i64
  %37036 = call i64 @i64_load(ptr noundef %37033, i64 noundef %37035)
  store i64 %37036, ptr %54, align 8, !tbaa !11
  %37037 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37037, ptr %46, align 4, !tbaa !9
  %37038 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37038, ptr %47, align 4, !tbaa !9
  %37039 = load ptr, ptr %5, align 8, !tbaa !5
  %37040 = getelementptr inbounds %struct.w2c_hermes, ptr %37039, i32 0, i32 6
  %37041 = load i32, ptr %47, align 4, !tbaa !9
  %37042 = zext i32 %37041 to i64
  %37043 = add i64 %37042, 6
  %37044 = call i32 @i32_load8_u(ptr noundef %37040, i64 noundef %37043)
  store i32 %37044, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %37045 = load i32, ptr %48, align 4, !tbaa !9
  %37046 = and i32 %37045, 31
  %37047 = load i32, ptr %47, align 4, !tbaa !9
  %37048 = shl i32 %37047, %37046
  store i32 %37048, ptr %47, align 4, !tbaa !9
  %37049 = load i32, ptr %47, align 4, !tbaa !9
  %37050 = load i32, ptr %46, align 4, !tbaa !9
  %37051 = add i32 %37050, %37049
  store i32 %37051, ptr %46, align 4, !tbaa !9
  %37052 = load ptr, ptr %5, align 8, !tbaa !5
  %37053 = getelementptr inbounds %struct.w2c_hermes, ptr %37052, i32 0, i32 6
  %37054 = load i32, ptr %46, align 4, !tbaa !9
  %37055 = zext i32 %37054 to i64
  %37056 = call i64 @i64_load(ptr noundef %37053, i64 noundef %37055)
  store i64 %37056, ptr %55, align 8, !tbaa !11
  %37057 = load ptr, ptr %5, align 8, !tbaa !5
  %37058 = load i64, ptr %54, align 8, !tbaa !11
  %37059 = load i64, ptr %55, align 8, !tbaa !11
  %37060 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %37057, i64 noundef %37058, i64 noundef %37059)
  store i32 %37060, ptr %45, align 4, !tbaa !9
  %37061 = load i32, ptr %45, align 4, !tbaa !9
  %37062 = icmp ne i32 %37061, 0
  br i1 %37062, label %37063, label %37069

37063:                                            ; preds = %37016
  %37064 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37064, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %37065 = load i32, ptr %46, align 4, !tbaa !9
  %37066 = load i32, ptr %45, align 4, !tbaa !9
  %37067 = add i32 %37066, %37065
  store i32 %37067, ptr %45, align 4, !tbaa !9
  %37068 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37068, ptr %6, align 4, !tbaa !9
  br label %2945

37069:                                            ; preds = %37016
  %37070 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37070, ptr %45, align 4, !tbaa !9
  %37071 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37071, ptr %46, align 4, !tbaa !9
  %37072 = load ptr, ptr %5, align 8, !tbaa !5
  %37073 = getelementptr inbounds %struct.w2c_hermes, ptr %37072, i32 0, i32 6
  %37074 = load i32, ptr %46, align 4, !tbaa !9
  %37075 = zext i32 %37074 to i64
  %37076 = add i64 %37075, 1
  %37077 = call i32 @i32_load(ptr noundef %37073, i64 noundef %37076)
  store i32 %37077, ptr %46, align 4, !tbaa !9
  %37078 = load i32, ptr %46, align 4, !tbaa !9
  %37079 = load i32, ptr %45, align 4, !tbaa !9
  %37080 = add i32 %37079, %37078
  store i32 %37080, ptr %45, align 4, !tbaa !9
  %37081 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37081, ptr %6, align 4, !tbaa !9
  br label %2945

37082:                                            ; preds = %3146
  %37083 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37083, ptr %45, align 4, !tbaa !9
  %37084 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37084, ptr %46, align 4, !tbaa !9
  %37085 = load ptr, ptr %5, align 8, !tbaa !5
  %37086 = getelementptr inbounds %struct.w2c_hermes, ptr %37085, i32 0, i32 6
  %37087 = load i32, ptr %45, align 4, !tbaa !9
  %37088 = zext i32 %37087 to i64
  %37089 = add i64 %37088, 5808
  %37090 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37086, i64 noundef %37089, i32 noundef %37090)
  %37091 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37091, ptr %45, align 4, !tbaa !9
  store i32 116, ptr %46, align 4, !tbaa !9
  %37092 = load i32, ptr %46, align 4, !tbaa !9
  %37093 = load i32, ptr %45, align 4, !tbaa !9
  %37094 = add i32 %37093, %37092
  store i32 %37094, ptr %45, align 4, !tbaa !9
  %37095 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37095, ptr %46, align 4, !tbaa !9
  %37096 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37096, ptr %47, align 4, !tbaa !9
  %37097 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37097, ptr %48, align 4, !tbaa !9
  %37098 = load ptr, ptr %5, align 8, !tbaa !5
  %37099 = getelementptr inbounds %struct.w2c_hermes, ptr %37098, i32 0, i32 6
  %37100 = load i32, ptr %48, align 4, !tbaa !9
  %37101 = zext i32 %37100 to i64
  %37102 = add i64 %37101, 2
  %37103 = call i32 @i32_load8_u(ptr noundef %37099, i64 noundef %37102)
  store i32 %37103, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %37104 = load i32, ptr %49, align 4, !tbaa !9
  %37105 = and i32 %37104, 31
  %37106 = load i32, ptr %48, align 4, !tbaa !9
  %37107 = shl i32 %37106, %37105
  store i32 %37107, ptr %48, align 4, !tbaa !9
  %37108 = load i32, ptr %48, align 4, !tbaa !9
  %37109 = load i32, ptr %47, align 4, !tbaa !9
  %37110 = add i32 %37109, %37108
  store i32 %37110, ptr %47, align 4, !tbaa !9
  %37111 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37111, ptr %48, align 4, !tbaa !9
  %37112 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37112, ptr %49, align 4, !tbaa !9
  %37113 = load ptr, ptr %5, align 8, !tbaa !5
  %37114 = getelementptr inbounds %struct.w2c_hermes, ptr %37113, i32 0, i32 6
  %37115 = load i32, ptr %49, align 4, !tbaa !9
  %37116 = zext i32 %37115 to i64
  %37117 = add i64 %37116, 3
  %37118 = call i32 @i32_load8_u(ptr noundef %37114, i64 noundef %37117)
  store i32 %37118, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %37119 = load i32, ptr %50, align 4, !tbaa !9
  %37120 = and i32 %37119, 31
  %37121 = load i32, ptr %49, align 4, !tbaa !9
  %37122 = shl i32 %37121, %37120
  store i32 %37122, ptr %49, align 4, !tbaa !9
  %37123 = load i32, ptr %49, align 4, !tbaa !9
  %37124 = load i32, ptr %48, align 4, !tbaa !9
  %37125 = add i32 %37124, %37123
  store i32 %37125, ptr %48, align 4, !tbaa !9
  %37126 = load ptr, ptr %5, align 8, !tbaa !5
  %37127 = load i32, ptr %45, align 4, !tbaa !9
  %37128 = load i32, ptr %46, align 4, !tbaa !9
  %37129 = load i32, ptr %47, align 4, !tbaa !9
  %37130 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %37126, i32 noundef %37127, i32 noundef %37128, i32 noundef %37129, i32 noundef %37130)
  %37131 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37131, ptr %45, align 4, !tbaa !9
  %37132 = load ptr, ptr %5, align 8, !tbaa !5
  %37133 = getelementptr inbounds %struct.w2c_hermes, ptr %37132, i32 0, i32 6
  %37134 = load i32, ptr %45, align 4, !tbaa !9
  %37135 = zext i32 %37134 to i64
  %37136 = add i64 %37135, 5808
  %37137 = call i32 @i32_load(ptr noundef %37133, i64 noundef %37136)
  store i32 %37137, ptr %45, align 4, !tbaa !9
  %37138 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37138, ptr %6, align 4, !tbaa !9
  %37139 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37139, ptr %45, align 4, !tbaa !9
  %37140 = load ptr, ptr %5, align 8, !tbaa !5
  %37141 = getelementptr inbounds %struct.w2c_hermes, ptr %37140, i32 0, i32 6
  %37142 = load i32, ptr %45, align 4, !tbaa !9
  %37143 = zext i32 %37142 to i64
  %37144 = add i64 %37143, 116
  %37145 = call i32 @i32_load16_u(ptr noundef %37141, i64 noundef %37144)
  store i32 %37145, ptr %45, align 4, !tbaa !9
  %37146 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37146, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %37147 = load i32, ptr %46, align 4, !tbaa !9
  %37148 = load i32, ptr %45, align 4, !tbaa !9
  %37149 = and i32 %37148, %37147
  store i32 %37149, ptr %45, align 4, !tbaa !9
  %37150 = load i32, ptr %45, align 4, !tbaa !9
  %37151 = icmp ne i32 %37150, 0
  %37152 = xor i1 %37151, true
  %37153 = zext i1 %37152 to i32
  store i32 %37153, ptr %45, align 4, !tbaa !9
  %37154 = load i32, ptr %45, align 4, !tbaa !9
  %37155 = icmp ne i32 %37154, 0
  br i1 %37155, label %37156, label %37157

37156:                                            ; preds = %37082
  br label %43136

37157:                                            ; preds = %37082
  %37158 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37158, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37159 = load ptr, ptr %5, align 8, !tbaa !5
  %37160 = getelementptr inbounds %struct.w2c_hermes, ptr %37159, i32 0, i32 6
  %37161 = load i32, ptr %45, align 4, !tbaa !9
  %37162 = zext i32 %37161 to i64
  %37163 = add i64 %37162, 516
  %37164 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37160, i64 noundef %37163, i32 noundef %37164)
  %37165 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37165, ptr %45, align 4, !tbaa !9
  %37166 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %37166, ptr %46, align 4, !tbaa !9
  %37167 = load ptr, ptr %5, align 8, !tbaa !5
  %37168 = getelementptr inbounds %struct.w2c_hermes, ptr %37167, i32 0, i32 6
  %37169 = load i32, ptr %45, align 4, !tbaa !9
  %37170 = zext i32 %37169 to i64
  %37171 = add i64 %37170, 512
  %37172 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37168, i64 noundef %37171, i32 noundef %37172)
  %37173 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37173, ptr %45, align 4, !tbaa !9
  %37174 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %37174, ptr %46, align 4, !tbaa !9
  %37175 = load ptr, ptr %5, align 8, !tbaa !5
  %37176 = getelementptr inbounds %struct.w2c_hermes, ptr %37175, i32 0, i32 6
  %37177 = load i32, ptr %45, align 4, !tbaa !9
  %37178 = zext i32 %37177 to i64
  %37179 = add i64 %37178, 508
  %37180 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37176, i64 noundef %37179, i32 noundef %37180)
  %37181 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37181, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %37182 = load i32, ptr %46, align 4, !tbaa !9
  %37183 = load i32, ptr %45, align 4, !tbaa !9
  %37184 = and i32 %37183, %37182
  store i32 %37184, ptr %45, align 4, !tbaa !9
  %37185 = load i32, ptr %45, align 4, !tbaa !9
  %37186 = icmp ne i32 %37185, 0
  br i1 %37186, label %37187, label %37200

37187:                                            ; preds = %37157
  %37188 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37188, ptr %45, align 4, !tbaa !9
  %37189 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37189, ptr %46, align 4, !tbaa !9
  %37190 = load ptr, ptr %5, align 8, !tbaa !5
  %37191 = getelementptr inbounds %struct.w2c_hermes, ptr %37190, i32 0, i32 6
  %37192 = load i32, ptr %46, align 4, !tbaa !9
  %37193 = zext i32 %37192 to i64
  %37194 = add i64 %37193, 1
  %37195 = call i32 @i32_load8_s(ptr noundef %37191, i64 noundef %37194)
  store i32 %37195, ptr %46, align 4, !tbaa !9
  %37196 = load i32, ptr %46, align 4, !tbaa !9
  %37197 = load i32, ptr %45, align 4, !tbaa !9
  %37198 = add i32 %37197, %37196
  store i32 %37198, ptr %45, align 4, !tbaa !9
  %37199 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37199, ptr %6, align 4, !tbaa !9
  br label %2945

37200:                                            ; preds = %37157
  %37201 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37201, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %37202 = load i32, ptr %46, align 4, !tbaa !9
  %37203 = load i32, ptr %45, align 4, !tbaa !9
  %37204 = add i32 %37203, %37202
  store i32 %37204, ptr %45, align 4, !tbaa !9
  %37205 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37205, ptr %6, align 4, !tbaa !9
  br label %2945

37206:                                            ; preds = %3147
  %37207 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37207, ptr %45, align 4, !tbaa !9
  %37208 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37208, ptr %46, align 4, !tbaa !9
  %37209 = load ptr, ptr %5, align 8, !tbaa !5
  %37210 = getelementptr inbounds %struct.w2c_hermes, ptr %37209, i32 0, i32 6
  %37211 = load i32, ptr %45, align 4, !tbaa !9
  %37212 = zext i32 %37211 to i64
  %37213 = add i64 %37212, 5808
  %37214 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37210, i64 noundef %37213, i32 noundef %37214)
  %37215 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37215, ptr %45, align 4, !tbaa !9
  store i32 112, ptr %46, align 4, !tbaa !9
  %37216 = load i32, ptr %46, align 4, !tbaa !9
  %37217 = load i32, ptr %45, align 4, !tbaa !9
  %37218 = add i32 %37217, %37216
  store i32 %37218, ptr %45, align 4, !tbaa !9
  %37219 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37219, ptr %46, align 4, !tbaa !9
  %37220 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37220, ptr %47, align 4, !tbaa !9
  %37221 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37221, ptr %48, align 4, !tbaa !9
  %37222 = load ptr, ptr %5, align 8, !tbaa !5
  %37223 = getelementptr inbounds %struct.w2c_hermes, ptr %37222, i32 0, i32 6
  %37224 = load i32, ptr %48, align 4, !tbaa !9
  %37225 = zext i32 %37224 to i64
  %37226 = add i64 %37225, 5
  %37227 = call i32 @i32_load8_u(ptr noundef %37223, i64 noundef %37226)
  store i32 %37227, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %37228 = load i32, ptr %49, align 4, !tbaa !9
  %37229 = and i32 %37228, 31
  %37230 = load i32, ptr %48, align 4, !tbaa !9
  %37231 = shl i32 %37230, %37229
  store i32 %37231, ptr %48, align 4, !tbaa !9
  %37232 = load i32, ptr %48, align 4, !tbaa !9
  %37233 = load i32, ptr %47, align 4, !tbaa !9
  %37234 = add i32 %37233, %37232
  store i32 %37234, ptr %47, align 4, !tbaa !9
  %37235 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37235, ptr %48, align 4, !tbaa !9
  %37236 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37236, ptr %49, align 4, !tbaa !9
  %37237 = load ptr, ptr %5, align 8, !tbaa !5
  %37238 = getelementptr inbounds %struct.w2c_hermes, ptr %37237, i32 0, i32 6
  %37239 = load i32, ptr %49, align 4, !tbaa !9
  %37240 = zext i32 %37239 to i64
  %37241 = add i64 %37240, 6
  %37242 = call i32 @i32_load8_u(ptr noundef %37238, i64 noundef %37241)
  store i32 %37242, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %37243 = load i32, ptr %50, align 4, !tbaa !9
  %37244 = and i32 %37243, 31
  %37245 = load i32, ptr %49, align 4, !tbaa !9
  %37246 = shl i32 %37245, %37244
  store i32 %37246, ptr %49, align 4, !tbaa !9
  %37247 = load i32, ptr %49, align 4, !tbaa !9
  %37248 = load i32, ptr %48, align 4, !tbaa !9
  %37249 = add i32 %37248, %37247
  store i32 %37249, ptr %48, align 4, !tbaa !9
  %37250 = load ptr, ptr %5, align 8, !tbaa !5
  %37251 = load i32, ptr %45, align 4, !tbaa !9
  %37252 = load i32, ptr %46, align 4, !tbaa !9
  %37253 = load i32, ptr %47, align 4, !tbaa !9
  %37254 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %37250, i32 noundef %37251, i32 noundef %37252, i32 noundef %37253, i32 noundef %37254)
  %37255 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37255, ptr %45, align 4, !tbaa !9
  %37256 = load ptr, ptr %5, align 8, !tbaa !5
  %37257 = getelementptr inbounds %struct.w2c_hermes, ptr %37256, i32 0, i32 6
  %37258 = load i32, ptr %45, align 4, !tbaa !9
  %37259 = zext i32 %37258 to i64
  %37260 = add i64 %37259, 5808
  %37261 = call i32 @i32_load(ptr noundef %37257, i64 noundef %37260)
  store i32 %37261, ptr %45, align 4, !tbaa !9
  %37262 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37262, ptr %6, align 4, !tbaa !9
  %37263 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37263, ptr %45, align 4, !tbaa !9
  %37264 = load ptr, ptr %5, align 8, !tbaa !5
  %37265 = getelementptr inbounds %struct.w2c_hermes, ptr %37264, i32 0, i32 6
  %37266 = load i32, ptr %45, align 4, !tbaa !9
  %37267 = zext i32 %37266 to i64
  %37268 = add i64 %37267, 112
  %37269 = call i32 @i32_load16_u(ptr noundef %37265, i64 noundef %37268)
  store i32 %37269, ptr %45, align 4, !tbaa !9
  %37270 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37270, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %37271 = load i32, ptr %46, align 4, !tbaa !9
  %37272 = load i32, ptr %45, align 4, !tbaa !9
  %37273 = and i32 %37272, %37271
  store i32 %37273, ptr %45, align 4, !tbaa !9
  %37274 = load i32, ptr %45, align 4, !tbaa !9
  %37275 = icmp ne i32 %37274, 0
  %37276 = xor i1 %37275, true
  %37277 = zext i1 %37276 to i32
  store i32 %37277, ptr %45, align 4, !tbaa !9
  %37278 = load i32, ptr %45, align 4, !tbaa !9
  %37279 = icmp ne i32 %37278, 0
  br i1 %37279, label %37280, label %37281

37280:                                            ; preds = %37206
  br label %43136

37281:                                            ; preds = %37206
  %37282 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37282, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37283 = load ptr, ptr %5, align 8, !tbaa !5
  %37284 = getelementptr inbounds %struct.w2c_hermes, ptr %37283, i32 0, i32 6
  %37285 = load i32, ptr %45, align 4, !tbaa !9
  %37286 = zext i32 %37285 to i64
  %37287 = add i64 %37286, 516
  %37288 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37284, i64 noundef %37287, i32 noundef %37288)
  %37289 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37289, ptr %45, align 4, !tbaa !9
  %37290 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %37290, ptr %46, align 4, !tbaa !9
  %37291 = load ptr, ptr %5, align 8, !tbaa !5
  %37292 = getelementptr inbounds %struct.w2c_hermes, ptr %37291, i32 0, i32 6
  %37293 = load i32, ptr %45, align 4, !tbaa !9
  %37294 = zext i32 %37293 to i64
  %37295 = add i64 %37294, 512
  %37296 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37292, i64 noundef %37295, i32 noundef %37296)
  %37297 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37297, ptr %45, align 4, !tbaa !9
  %37298 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %37298, ptr %46, align 4, !tbaa !9
  %37299 = load ptr, ptr %5, align 8, !tbaa !5
  %37300 = getelementptr inbounds %struct.w2c_hermes, ptr %37299, i32 0, i32 6
  %37301 = load i32, ptr %45, align 4, !tbaa !9
  %37302 = zext i32 %37301 to i64
  %37303 = add i64 %37302, 508
  %37304 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37300, i64 noundef %37303, i32 noundef %37304)
  %37305 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37305, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %37306 = load i32, ptr %46, align 4, !tbaa !9
  %37307 = load i32, ptr %45, align 4, !tbaa !9
  %37308 = and i32 %37307, %37306
  store i32 %37308, ptr %45, align 4, !tbaa !9
  %37309 = load i32, ptr %45, align 4, !tbaa !9
  %37310 = icmp ne i32 %37309, 0
  br i1 %37310, label %37311, label %37324

37311:                                            ; preds = %37281
  %37312 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37312, ptr %45, align 4, !tbaa !9
  %37313 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37313, ptr %46, align 4, !tbaa !9
  %37314 = load ptr, ptr %5, align 8, !tbaa !5
  %37315 = getelementptr inbounds %struct.w2c_hermes, ptr %37314, i32 0, i32 6
  %37316 = load i32, ptr %46, align 4, !tbaa !9
  %37317 = zext i32 %37316 to i64
  %37318 = add i64 %37317, 1
  %37319 = call i32 @i32_load(ptr noundef %37315, i64 noundef %37318)
  store i32 %37319, ptr %46, align 4, !tbaa !9
  %37320 = load i32, ptr %46, align 4, !tbaa !9
  %37321 = load i32, ptr %45, align 4, !tbaa !9
  %37322 = add i32 %37321, %37320
  store i32 %37322, ptr %45, align 4, !tbaa !9
  %37323 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37323, ptr %6, align 4, !tbaa !9
  br label %2945

37324:                                            ; preds = %37281
  %37325 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37325, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %37326 = load i32, ptr %46, align 4, !tbaa !9
  %37327 = load i32, ptr %45, align 4, !tbaa !9
  %37328 = add i32 %37327, %37326
  store i32 %37328, ptr %45, align 4, !tbaa !9
  %37329 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37329, ptr %6, align 4, !tbaa !9
  br label %2945

37330:                                            ; preds = %3148
  %37331 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37331, ptr %45, align 4, !tbaa !9
  %37332 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37332, ptr %46, align 4, !tbaa !9
  %37333 = load ptr, ptr %5, align 8, !tbaa !5
  %37334 = getelementptr inbounds %struct.w2c_hermes, ptr %37333, i32 0, i32 6
  %37335 = load i32, ptr %45, align 4, !tbaa !9
  %37336 = zext i32 %37335 to i64
  %37337 = add i64 %37336, 5808
  %37338 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37334, i64 noundef %37337, i32 noundef %37338)
  %37339 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37339, ptr %45, align 4, !tbaa !9
  store i32 108, ptr %46, align 4, !tbaa !9
  %37340 = load i32, ptr %46, align 4, !tbaa !9
  %37341 = load i32, ptr %45, align 4, !tbaa !9
  %37342 = add i32 %37341, %37340
  store i32 %37342, ptr %45, align 4, !tbaa !9
  %37343 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37343, ptr %46, align 4, !tbaa !9
  %37344 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37344, ptr %47, align 4, !tbaa !9
  %37345 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37345, ptr %48, align 4, !tbaa !9
  %37346 = load ptr, ptr %5, align 8, !tbaa !5
  %37347 = getelementptr inbounds %struct.w2c_hermes, ptr %37346, i32 0, i32 6
  %37348 = load i32, ptr %48, align 4, !tbaa !9
  %37349 = zext i32 %37348 to i64
  %37350 = add i64 %37349, 2
  %37351 = call i32 @i32_load8_u(ptr noundef %37347, i64 noundef %37350)
  store i32 %37351, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %37352 = load i32, ptr %49, align 4, !tbaa !9
  %37353 = and i32 %37352, 31
  %37354 = load i32, ptr %48, align 4, !tbaa !9
  %37355 = shl i32 %37354, %37353
  store i32 %37355, ptr %48, align 4, !tbaa !9
  %37356 = load i32, ptr %48, align 4, !tbaa !9
  %37357 = load i32, ptr %47, align 4, !tbaa !9
  %37358 = add i32 %37357, %37356
  store i32 %37358, ptr %47, align 4, !tbaa !9
  %37359 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37359, ptr %48, align 4, !tbaa !9
  %37360 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37360, ptr %49, align 4, !tbaa !9
  %37361 = load ptr, ptr %5, align 8, !tbaa !5
  %37362 = getelementptr inbounds %struct.w2c_hermes, ptr %37361, i32 0, i32 6
  %37363 = load i32, ptr %49, align 4, !tbaa !9
  %37364 = zext i32 %37363 to i64
  %37365 = add i64 %37364, 3
  %37366 = call i32 @i32_load8_u(ptr noundef %37362, i64 noundef %37365)
  store i32 %37366, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %37367 = load i32, ptr %50, align 4, !tbaa !9
  %37368 = and i32 %37367, 31
  %37369 = load i32, ptr %49, align 4, !tbaa !9
  %37370 = shl i32 %37369, %37368
  store i32 %37370, ptr %49, align 4, !tbaa !9
  %37371 = load i32, ptr %49, align 4, !tbaa !9
  %37372 = load i32, ptr %48, align 4, !tbaa !9
  %37373 = add i32 %37372, %37371
  store i32 %37373, ptr %48, align 4, !tbaa !9
  %37374 = load ptr, ptr %5, align 8, !tbaa !5
  %37375 = load i32, ptr %45, align 4, !tbaa !9
  %37376 = load i32, ptr %46, align 4, !tbaa !9
  %37377 = load i32, ptr %47, align 4, !tbaa !9
  %37378 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %37374, i32 noundef %37375, i32 noundef %37376, i32 noundef %37377, i32 noundef %37378)
  %37379 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37379, ptr %45, align 4, !tbaa !9
  %37380 = load ptr, ptr %5, align 8, !tbaa !5
  %37381 = getelementptr inbounds %struct.w2c_hermes, ptr %37380, i32 0, i32 6
  %37382 = load i32, ptr %45, align 4, !tbaa !9
  %37383 = zext i32 %37382 to i64
  %37384 = add i64 %37383, 5808
  %37385 = call i32 @i32_load(ptr noundef %37381, i64 noundef %37384)
  store i32 %37385, ptr %45, align 4, !tbaa !9
  %37386 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37386, ptr %6, align 4, !tbaa !9
  %37387 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37387, ptr %45, align 4, !tbaa !9
  %37388 = load ptr, ptr %5, align 8, !tbaa !5
  %37389 = getelementptr inbounds %struct.w2c_hermes, ptr %37388, i32 0, i32 6
  %37390 = load i32, ptr %45, align 4, !tbaa !9
  %37391 = zext i32 %37390 to i64
  %37392 = add i64 %37391, 108
  %37393 = call i32 @i32_load16_u(ptr noundef %37389, i64 noundef %37392)
  store i32 %37393, ptr %45, align 4, !tbaa !9
  %37394 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37394, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %37395 = load i32, ptr %46, align 4, !tbaa !9
  %37396 = load i32, ptr %45, align 4, !tbaa !9
  %37397 = and i32 %37396, %37395
  store i32 %37397, ptr %45, align 4, !tbaa !9
  %37398 = load i32, ptr %45, align 4, !tbaa !9
  %37399 = icmp ne i32 %37398, 0
  %37400 = xor i1 %37399, true
  %37401 = zext i1 %37400 to i32
  store i32 %37401, ptr %45, align 4, !tbaa !9
  %37402 = load i32, ptr %45, align 4, !tbaa !9
  %37403 = icmp ne i32 %37402, 0
  br i1 %37403, label %37404, label %37405

37404:                                            ; preds = %37330
  br label %43136

37405:                                            ; preds = %37330
  %37406 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37406, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37407 = load ptr, ptr %5, align 8, !tbaa !5
  %37408 = getelementptr inbounds %struct.w2c_hermes, ptr %37407, i32 0, i32 6
  %37409 = load i32, ptr %45, align 4, !tbaa !9
  %37410 = zext i32 %37409 to i64
  %37411 = add i64 %37410, 516
  %37412 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37408, i64 noundef %37411, i32 noundef %37412)
  %37413 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37413, ptr %45, align 4, !tbaa !9
  %37414 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %37414, ptr %46, align 4, !tbaa !9
  %37415 = load ptr, ptr %5, align 8, !tbaa !5
  %37416 = getelementptr inbounds %struct.w2c_hermes, ptr %37415, i32 0, i32 6
  %37417 = load i32, ptr %45, align 4, !tbaa !9
  %37418 = zext i32 %37417 to i64
  %37419 = add i64 %37418, 512
  %37420 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37416, i64 noundef %37419, i32 noundef %37420)
  %37421 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37421, ptr %45, align 4, !tbaa !9
  %37422 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %37422, ptr %46, align 4, !tbaa !9
  %37423 = load ptr, ptr %5, align 8, !tbaa !5
  %37424 = getelementptr inbounds %struct.w2c_hermes, ptr %37423, i32 0, i32 6
  %37425 = load i32, ptr %45, align 4, !tbaa !9
  %37426 = zext i32 %37425 to i64
  %37427 = add i64 %37426, 508
  %37428 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37424, i64 noundef %37427, i32 noundef %37428)
  %37429 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37429, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %37430 = load i32, ptr %46, align 4, !tbaa !9
  %37431 = load i32, ptr %45, align 4, !tbaa !9
  %37432 = and i32 %37431, %37430
  store i32 %37432, ptr %45, align 4, !tbaa !9
  %37433 = load i32, ptr %45, align 4, !tbaa !9
  %37434 = icmp ne i32 %37433, 0
  br i1 %37434, label %37435, label %37441

37435:                                            ; preds = %37405
  %37436 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37436, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %37437 = load i32, ptr %46, align 4, !tbaa !9
  %37438 = load i32, ptr %45, align 4, !tbaa !9
  %37439 = add i32 %37438, %37437
  store i32 %37439, ptr %45, align 4, !tbaa !9
  %37440 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37440, ptr %6, align 4, !tbaa !9
  br label %2945

37441:                                            ; preds = %37405
  %37442 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37442, ptr %45, align 4, !tbaa !9
  %37443 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37443, ptr %46, align 4, !tbaa !9
  %37444 = load ptr, ptr %5, align 8, !tbaa !5
  %37445 = getelementptr inbounds %struct.w2c_hermes, ptr %37444, i32 0, i32 6
  %37446 = load i32, ptr %46, align 4, !tbaa !9
  %37447 = zext i32 %37446 to i64
  %37448 = add i64 %37447, 1
  %37449 = call i32 @i32_load8_s(ptr noundef %37445, i64 noundef %37448)
  store i32 %37449, ptr %46, align 4, !tbaa !9
  %37450 = load i32, ptr %46, align 4, !tbaa !9
  %37451 = load i32, ptr %45, align 4, !tbaa !9
  %37452 = add i32 %37451, %37450
  store i32 %37452, ptr %45, align 4, !tbaa !9
  %37453 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37453, ptr %6, align 4, !tbaa !9
  br label %2945

37454:                                            ; preds = %3149
  %37455 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37455, ptr %45, align 4, !tbaa !9
  %37456 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37456, ptr %46, align 4, !tbaa !9
  %37457 = load ptr, ptr %5, align 8, !tbaa !5
  %37458 = getelementptr inbounds %struct.w2c_hermes, ptr %37457, i32 0, i32 6
  %37459 = load i32, ptr %45, align 4, !tbaa !9
  %37460 = zext i32 %37459 to i64
  %37461 = add i64 %37460, 5808
  %37462 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37458, i64 noundef %37461, i32 noundef %37462)
  %37463 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37463, ptr %45, align 4, !tbaa !9
  store i32 104, ptr %46, align 4, !tbaa !9
  %37464 = load i32, ptr %46, align 4, !tbaa !9
  %37465 = load i32, ptr %45, align 4, !tbaa !9
  %37466 = add i32 %37465, %37464
  store i32 %37466, ptr %45, align 4, !tbaa !9
  %37467 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37467, ptr %46, align 4, !tbaa !9
  %37468 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37468, ptr %47, align 4, !tbaa !9
  %37469 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37469, ptr %48, align 4, !tbaa !9
  %37470 = load ptr, ptr %5, align 8, !tbaa !5
  %37471 = getelementptr inbounds %struct.w2c_hermes, ptr %37470, i32 0, i32 6
  %37472 = load i32, ptr %48, align 4, !tbaa !9
  %37473 = zext i32 %37472 to i64
  %37474 = add i64 %37473, 5
  %37475 = call i32 @i32_load8_u(ptr noundef %37471, i64 noundef %37474)
  store i32 %37475, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %37476 = load i32, ptr %49, align 4, !tbaa !9
  %37477 = and i32 %37476, 31
  %37478 = load i32, ptr %48, align 4, !tbaa !9
  %37479 = shl i32 %37478, %37477
  store i32 %37479, ptr %48, align 4, !tbaa !9
  %37480 = load i32, ptr %48, align 4, !tbaa !9
  %37481 = load i32, ptr %47, align 4, !tbaa !9
  %37482 = add i32 %37481, %37480
  store i32 %37482, ptr %47, align 4, !tbaa !9
  %37483 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37483, ptr %48, align 4, !tbaa !9
  %37484 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37484, ptr %49, align 4, !tbaa !9
  %37485 = load ptr, ptr %5, align 8, !tbaa !5
  %37486 = getelementptr inbounds %struct.w2c_hermes, ptr %37485, i32 0, i32 6
  %37487 = load i32, ptr %49, align 4, !tbaa !9
  %37488 = zext i32 %37487 to i64
  %37489 = add i64 %37488, 6
  %37490 = call i32 @i32_load8_u(ptr noundef %37486, i64 noundef %37489)
  store i32 %37490, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %37491 = load i32, ptr %50, align 4, !tbaa !9
  %37492 = and i32 %37491, 31
  %37493 = load i32, ptr %49, align 4, !tbaa !9
  %37494 = shl i32 %37493, %37492
  store i32 %37494, ptr %49, align 4, !tbaa !9
  %37495 = load i32, ptr %49, align 4, !tbaa !9
  %37496 = load i32, ptr %48, align 4, !tbaa !9
  %37497 = add i32 %37496, %37495
  store i32 %37497, ptr %48, align 4, !tbaa !9
  %37498 = load ptr, ptr %5, align 8, !tbaa !5
  %37499 = load i32, ptr %45, align 4, !tbaa !9
  %37500 = load i32, ptr %46, align 4, !tbaa !9
  %37501 = load i32, ptr %47, align 4, !tbaa !9
  %37502 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %37498, i32 noundef %37499, i32 noundef %37500, i32 noundef %37501, i32 noundef %37502)
  %37503 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37503, ptr %45, align 4, !tbaa !9
  %37504 = load ptr, ptr %5, align 8, !tbaa !5
  %37505 = getelementptr inbounds %struct.w2c_hermes, ptr %37504, i32 0, i32 6
  %37506 = load i32, ptr %45, align 4, !tbaa !9
  %37507 = zext i32 %37506 to i64
  %37508 = add i64 %37507, 5808
  %37509 = call i32 @i32_load(ptr noundef %37505, i64 noundef %37508)
  store i32 %37509, ptr %45, align 4, !tbaa !9
  %37510 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37510, ptr %6, align 4, !tbaa !9
  %37511 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37511, ptr %45, align 4, !tbaa !9
  %37512 = load ptr, ptr %5, align 8, !tbaa !5
  %37513 = getelementptr inbounds %struct.w2c_hermes, ptr %37512, i32 0, i32 6
  %37514 = load i32, ptr %45, align 4, !tbaa !9
  %37515 = zext i32 %37514 to i64
  %37516 = add i64 %37515, 104
  %37517 = call i32 @i32_load16_u(ptr noundef %37513, i64 noundef %37516)
  store i32 %37517, ptr %45, align 4, !tbaa !9
  %37518 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37518, ptr %7, align 4, !tbaa !9
  store i32 255, ptr %46, align 4, !tbaa !9
  %37519 = load i32, ptr %46, align 4, !tbaa !9
  %37520 = load i32, ptr %45, align 4, !tbaa !9
  %37521 = and i32 %37520, %37519
  store i32 %37521, ptr %45, align 4, !tbaa !9
  %37522 = load i32, ptr %45, align 4, !tbaa !9
  %37523 = icmp ne i32 %37522, 0
  %37524 = xor i1 %37523, true
  %37525 = zext i1 %37524 to i32
  store i32 %37525, ptr %45, align 4, !tbaa !9
  %37526 = load i32, ptr %45, align 4, !tbaa !9
  %37527 = icmp ne i32 %37526, 0
  br i1 %37527, label %37528, label %37529

37528:                                            ; preds = %37454
  br label %43136

37529:                                            ; preds = %37454
  %37530 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37530, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37531 = load ptr, ptr %5, align 8, !tbaa !5
  %37532 = getelementptr inbounds %struct.w2c_hermes, ptr %37531, i32 0, i32 6
  %37533 = load i32, ptr %45, align 4, !tbaa !9
  %37534 = zext i32 %37533 to i64
  %37535 = add i64 %37534, 516
  %37536 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37532, i64 noundef %37535, i32 noundef %37536)
  %37537 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37537, ptr %45, align 4, !tbaa !9
  %37538 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %37538, ptr %46, align 4, !tbaa !9
  %37539 = load ptr, ptr %5, align 8, !tbaa !5
  %37540 = getelementptr inbounds %struct.w2c_hermes, ptr %37539, i32 0, i32 6
  %37541 = load i32, ptr %45, align 4, !tbaa !9
  %37542 = zext i32 %37541 to i64
  %37543 = add i64 %37542, 512
  %37544 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37540, i64 noundef %37543, i32 noundef %37544)
  %37545 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37545, ptr %45, align 4, !tbaa !9
  %37546 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %37546, ptr %46, align 4, !tbaa !9
  %37547 = load ptr, ptr %5, align 8, !tbaa !5
  %37548 = getelementptr inbounds %struct.w2c_hermes, ptr %37547, i32 0, i32 6
  %37549 = load i32, ptr %45, align 4, !tbaa !9
  %37550 = zext i32 %37549 to i64
  %37551 = add i64 %37550, 508
  %37552 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37548, i64 noundef %37551, i32 noundef %37552)
  %37553 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37553, ptr %45, align 4, !tbaa !9
  store i32 256, ptr %46, align 4, !tbaa !9
  %37554 = load i32, ptr %46, align 4, !tbaa !9
  %37555 = load i32, ptr %45, align 4, !tbaa !9
  %37556 = and i32 %37555, %37554
  store i32 %37556, ptr %45, align 4, !tbaa !9
  %37557 = load i32, ptr %45, align 4, !tbaa !9
  %37558 = icmp ne i32 %37557, 0
  br i1 %37558, label %37559, label %37565

37559:                                            ; preds = %37529
  %37560 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37560, ptr %45, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %37561 = load i32, ptr %46, align 4, !tbaa !9
  %37562 = load i32, ptr %45, align 4, !tbaa !9
  %37563 = add i32 %37562, %37561
  store i32 %37563, ptr %45, align 4, !tbaa !9
  %37564 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37564, ptr %6, align 4, !tbaa !9
  br label %2945

37565:                                            ; preds = %37529
  %37566 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37566, ptr %45, align 4, !tbaa !9
  %37567 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37567, ptr %46, align 4, !tbaa !9
  %37568 = load ptr, ptr %5, align 8, !tbaa !5
  %37569 = getelementptr inbounds %struct.w2c_hermes, ptr %37568, i32 0, i32 6
  %37570 = load i32, ptr %46, align 4, !tbaa !9
  %37571 = zext i32 %37570 to i64
  %37572 = add i64 %37571, 1
  %37573 = call i32 @i32_load(ptr noundef %37569, i64 noundef %37572)
  store i32 %37573, ptr %46, align 4, !tbaa !9
  %37574 = load i32, ptr %46, align 4, !tbaa !9
  %37575 = load i32, ptr %45, align 4, !tbaa !9
  %37576 = add i32 %37575, %37574
  store i32 %37576, ptr %45, align 4, !tbaa !9
  %37577 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37577, ptr %6, align 4, !tbaa !9
  br label %2945

37578:                                            ; preds = %3150
  %37579 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37579, ptr %45, align 4, !tbaa !9
  %37580 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37580, ptr %46, align 4, !tbaa !9
  %37581 = load ptr, ptr %5, align 8, !tbaa !5
  %37582 = getelementptr inbounds %struct.w2c_hermes, ptr %37581, i32 0, i32 6
  %37583 = load i32, ptr %45, align 4, !tbaa !9
  %37584 = zext i32 %37583 to i64
  %37585 = add i64 %37584, 5808
  %37586 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37582, i64 noundef %37585, i32 noundef %37586)
  %37587 = load ptr, ptr %5, align 8, !tbaa !5
  %37588 = getelementptr inbounds %struct.w2c_hermes, ptr %37587, i32 0, i32 3
  %37589 = load i32, ptr %37588, align 8, !tbaa !15
  store i32 %37589, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %37590 = load i32, ptr %46, align 4, !tbaa !9
  %37591 = load i32, ptr %45, align 4, !tbaa !9
  %37592 = sub i32 %37591, %37590
  store i32 %37592, ptr %45, align 4, !tbaa !9
  %37593 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37593, ptr %13, align 4, !tbaa !9
  %37594 = load i32, ptr %45, align 4, !tbaa !9
  %37595 = load ptr, ptr %5, align 8, !tbaa !5
  %37596 = getelementptr inbounds %struct.w2c_hermes, ptr %37595, i32 0, i32 3
  store i32 %37594, ptr %37596, align 8, !tbaa !15
  %37597 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37597, ptr %45, align 4, !tbaa !9
  %37598 = load ptr, ptr %5, align 8, !tbaa !5
  %37599 = getelementptr inbounds %struct.w2c_hermes, ptr %37598, i32 0, i32 6
  %37600 = load i32, ptr %45, align 4, !tbaa !9
  %37601 = zext i32 %37600 to i64
  %37602 = add i64 %37601, 1
  %37603 = call i32 @i32_load8_u(ptr noundef %37599, i64 noundef %37602)
  store i32 %37603, ptr %45, align 4, !tbaa !9
  %37604 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37604, ptr %12, align 4, !tbaa !9
  %37605 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37605, ptr %45, align 4, !tbaa !9
  %37606 = load ptr, ptr %5, align 8, !tbaa !5
  %37607 = getelementptr inbounds %struct.w2c_hermes, ptr %37606, i32 0, i32 6
  %37608 = load i32, ptr %45, align 4, !tbaa !9
  %37609 = zext i32 %37608 to i64
  %37610 = add i64 %37609, 3
  %37611 = call i32 @i32_load8_u(ptr noundef %37607, i64 noundef %37610)
  store i32 %37611, ptr %45, align 4, !tbaa !9
  %37612 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37612, ptr %8, align 4, !tbaa !9
  %37613 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37613, ptr %45, align 4, !tbaa !9
  store i32 319, ptr %46, align 4, !tbaa !9
  store i32 318, ptr %47, align 4, !tbaa !9
  %37614 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37614, ptr %48, align 4, !tbaa !9
  %37615 = load ptr, ptr %5, align 8, !tbaa !5
  %37616 = getelementptr inbounds %struct.w2c_hermes, ptr %37615, i32 0, i32 6
  %37617 = load i32, ptr %48, align 4, !tbaa !9
  %37618 = zext i32 %37617 to i64
  %37619 = add i64 %37618, 4
  %37620 = call i32 @i32_load8_u(ptr noundef %37616, i64 noundef %37619)
  store i32 %37620, ptr %48, align 4, !tbaa !9
  %37621 = load i32, ptr %48, align 4, !tbaa !9
  %37622 = icmp ne i32 %37621, 0
  br i1 %37622, label %37623, label %37625

37623:                                            ; preds = %37578
  %37624 = load i32, ptr %46, align 4, !tbaa !9
  br label %37627

37625:                                            ; preds = %37578
  %37626 = load i32, ptr %47, align 4, !tbaa !9
  br label %37627

37627:                                            ; preds = %37625, %37623
  %37628 = phi i32 [ %37624, %37623 ], [ %37626, %37625 ]
  store i32 %37628, ptr %46, align 4, !tbaa !9
  %37629 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %37629, ptr %7, align 4, !tbaa !9
  %37630 = load ptr, ptr %5, align 8, !tbaa !5
  %37631 = getelementptr inbounds %struct.w2c_hermes, ptr %37630, i32 0, i32 6
  %37632 = load i32, ptr %45, align 4, !tbaa !9
  %37633 = zext i32 %37632 to i64
  %37634 = add i64 %37633, 24
  %37635 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37631, i64 noundef %37634, i32 noundef %37635)
  %37636 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37636, ptr %45, align 4, !tbaa !9
  %37637 = load ptr, ptr %5, align 8, !tbaa !5
  %37638 = getelementptr inbounds %struct.w2c_hermes, ptr %37637, i32 0, i32 6
  %37639 = load i32, ptr %45, align 4, !tbaa !9
  %37640 = zext i32 %37639 to i64
  %37641 = add i64 %37640, 2
  %37642 = call i32 @i32_load8_u(ptr noundef %37638, i64 noundef %37641)
  store i32 %37642, ptr %45, align 4, !tbaa !9
  %37643 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37643, ptr %6, align 4, !tbaa !9
  %37644 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37644, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37645 = load ptr, ptr %5, align 8, !tbaa !5
  %37646 = getelementptr inbounds %struct.w2c_hermes, ptr %37645, i32 0, i32 6
  %37647 = load i32, ptr %45, align 4, !tbaa !9
  %37648 = zext i32 %37647 to i64
  %37649 = add i64 %37648, 20
  %37650 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37646, i64 noundef %37649, i32 noundef %37650)
  %37651 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37651, ptr %45, align 4, !tbaa !9
  %37652 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37652, ptr %46, align 4, !tbaa !9
  %37653 = load ptr, ptr %5, align 8, !tbaa !5
  %37654 = getelementptr inbounds %struct.w2c_hermes, ptr %37653, i32 0, i32 6
  %37655 = load i32, ptr %45, align 4, !tbaa !9
  %37656 = zext i32 %37655 to i64
  %37657 = add i64 %37656, 16
  %37658 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37654, i64 noundef %37657, i32 noundef %37658)
  %37659 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37659, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37660 = load ptr, ptr %5, align 8, !tbaa !5
  %37661 = getelementptr inbounds %struct.w2c_hermes, ptr %37660, i32 0, i32 6
  %37662 = load i32, ptr %45, align 4, !tbaa !9
  %37663 = zext i32 %37662 to i64
  %37664 = add i64 %37663, 12
  %37665 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37661, i64 noundef %37664, i32 noundef %37665)
  %37666 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37666, ptr %45, align 4, !tbaa !9
  store i32 28, ptr %46, align 4, !tbaa !9
  %37667 = load i32, ptr %46, align 4, !tbaa !9
  %37668 = load i32, ptr %45, align 4, !tbaa !9
  %37669 = add i32 %37668, %37667
  store i32 %37669, ptr %45, align 4, !tbaa !9
  %37670 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37670, ptr %46, align 4, !tbaa !9
  %37671 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %37671, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %37672 = load i32, ptr %48, align 4, !tbaa !9
  %37673 = and i32 %37672, 31
  %37674 = load i32, ptr %47, align 4, !tbaa !9
  %37675 = shl i32 %37674, %37673
  store i32 %37675, ptr %47, align 4, !tbaa !9
  %37676 = load i32, ptr %47, align 4, !tbaa !9
  %37677 = load i32, ptr %46, align 4, !tbaa !9
  %37678 = add i32 %37677, %37676
  store i32 %37678, ptr %46, align 4, !tbaa !9
  %37679 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37679, ptr %47, align 4, !tbaa !9
  %37680 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37680, ptr %48, align 4, !tbaa !9
  %37681 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37681, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %37682 = load i32, ptr %50, align 4, !tbaa !9
  %37683 = and i32 %37682, 31
  %37684 = load i32, ptr %49, align 4, !tbaa !9
  %37685 = shl i32 %37684, %37683
  store i32 %37685, ptr %49, align 4, !tbaa !9
  %37686 = load i32, ptr %49, align 4, !tbaa !9
  %37687 = load i32, ptr %48, align 4, !tbaa !9
  %37688 = add i32 %37687, %37686
  store i32 %37688, ptr %48, align 4, !tbaa !9
  %37689 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37689, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %37690 = load i32, ptr %50, align 4, !tbaa !9
  %37691 = load i32, ptr %49, align 4, !tbaa !9
  %37692 = add i32 %37691, %37690
  store i32 %37692, ptr %49, align 4, !tbaa !9
  %37693 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37693, ptr %50, align 4, !tbaa !9
  %37694 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37694, ptr %51, align 4, !tbaa !9
  store i32 3, ptr %52, align 4, !tbaa !9
  %37695 = load i32, ptr %52, align 4, !tbaa !9
  %37696 = and i32 %37695, 31
  %37697 = load i32, ptr %51, align 4, !tbaa !9
  %37698 = shl i32 %37697, %37696
  store i32 %37698, ptr %51, align 4, !tbaa !9
  %37699 = load i32, ptr %51, align 4, !tbaa !9
  %37700 = load i32, ptr %50, align 4, !tbaa !9
  %37701 = add i32 %37700, %37699
  store i32 %37701, ptr %50, align 4, !tbaa !9
  %37702 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37702, ptr %51, align 4, !tbaa !9
  store i32 12, ptr %52, align 4, !tbaa !9
  %37703 = load i32, ptr %52, align 4, !tbaa !9
  %37704 = load i32, ptr %51, align 4, !tbaa !9
  %37705 = add i32 %37704, %37703
  store i32 %37705, ptr %51, align 4, !tbaa !9
  %37706 = load ptr, ptr %5, align 8, !tbaa !5
  %37707 = load i32, ptr %45, align 4, !tbaa !9
  %37708 = load i32, ptr %46, align 4, !tbaa !9
  %37709 = load i32, ptr %47, align 4, !tbaa !9
  %37710 = load i32, ptr %48, align 4, !tbaa !9
  %37711 = load i32, ptr %49, align 4, !tbaa !9
  %37712 = load i32, ptr %50, align 4, !tbaa !9
  %37713 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %37706, i32 noundef %37707, i32 noundef %37708, i32 noundef %37709, i32 noundef %37710, i32 noundef %37711, i32 noundef %37712, i32 noundef %37713)
  %37714 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37714, ptr %45, align 4, !tbaa !9
  %37715 = load ptr, ptr %5, align 8, !tbaa !5
  %37716 = getelementptr inbounds %struct.w2c_hermes, ptr %37715, i32 0, i32 6
  %37717 = load i32, ptr %45, align 4, !tbaa !9
  %37718 = zext i32 %37717 to i64
  %37719 = add i64 %37718, 28
  %37720 = call i32 @i32_load8_s(ptr noundef %37716, i64 noundef %37719)
  store i32 %37720, ptr %45, align 4, !tbaa !9
  %37721 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37721, ptr %7, align 4, !tbaa !9
  %37722 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37722, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %37723 = load i32, ptr %46, align 4, !tbaa !9
  %37724 = load i32, ptr %45, align 4, !tbaa !9
  %37725 = add i32 %37724, %37723
  store i32 %37725, ptr %45, align 4, !tbaa !9
  %37726 = load i32, ptr %45, align 4, !tbaa !9
  %37727 = load ptr, ptr %5, align 8, !tbaa !5
  %37728 = getelementptr inbounds %struct.w2c_hermes, ptr %37727, i32 0, i32 3
  store i32 %37726, ptr %37728, align 8, !tbaa !15
  %37729 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37729, ptr %45, align 4, !tbaa !9
  %37730 = load ptr, ptr %5, align 8, !tbaa !5
  %37731 = getelementptr inbounds %struct.w2c_hermes, ptr %37730, i32 0, i32 6
  %37732 = load i32, ptr %45, align 4, !tbaa !9
  %37733 = zext i32 %37732 to i64
  %37734 = add i64 %37733, 5808
  %37735 = call i32 @i32_load(ptr noundef %37731, i64 noundef %37734)
  store i32 %37735, ptr %45, align 4, !tbaa !9
  %37736 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37736, ptr %6, align 4, !tbaa !9
  %37737 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37737, ptr %45, align 4, !tbaa !9
  %37738 = load i32, ptr %45, align 4, !tbaa !9
  %37739 = icmp ne i32 %37738, 0
  %37740 = xor i1 %37739, true
  %37741 = zext i1 %37740 to i32
  store i32 %37741, ptr %45, align 4, !tbaa !9
  %37742 = load i32, ptr %45, align 4, !tbaa !9
  %37743 = icmp ne i32 %37742, 0
  br i1 %37743, label %37744, label %37745

37744:                                            ; preds = %37627
  br label %43136

37745:                                            ; preds = %37627
  %37746 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37746, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %37747 = load ptr, ptr %5, align 8, !tbaa !5
  %37748 = getelementptr inbounds %struct.w2c_hermes, ptr %37747, i32 0, i32 6
  %37749 = load i32, ptr %45, align 4, !tbaa !9
  %37750 = zext i32 %37749 to i64
  %37751 = add i64 %37750, 516
  %37752 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37748, i64 noundef %37751, i32 noundef %37752)
  %37753 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37753, ptr %45, align 4, !tbaa !9
  %37754 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %37754, ptr %46, align 4, !tbaa !9
  %37755 = load ptr, ptr %5, align 8, !tbaa !5
  %37756 = getelementptr inbounds %struct.w2c_hermes, ptr %37755, i32 0, i32 6
  %37757 = load i32, ptr %45, align 4, !tbaa !9
  %37758 = zext i32 %37757 to i64
  %37759 = add i64 %37758, 512
  %37760 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37756, i64 noundef %37759, i32 noundef %37760)
  %37761 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %37761, ptr %45, align 4, !tbaa !9
  %37762 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %37762, ptr %46, align 4, !tbaa !9
  %37763 = load ptr, ptr %5, align 8, !tbaa !5
  %37764 = getelementptr inbounds %struct.w2c_hermes, ptr %37763, i32 0, i32 6
  %37765 = load i32, ptr %45, align 4, !tbaa !9
  %37766 = zext i32 %37765 to i64
  %37767 = add i64 %37766, 508
  %37768 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37764, i64 noundef %37767, i32 noundef %37768)
  %37769 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37769, ptr %45, align 4, !tbaa !9
  store i32 5, ptr %46, align 4, !tbaa !9
  %37770 = load i32, ptr %46, align 4, !tbaa !9
  %37771 = load i32, ptr %45, align 4, !tbaa !9
  %37772 = add i32 %37771, %37770
  store i32 %37772, ptr %45, align 4, !tbaa !9
  %37773 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37773, ptr %6, align 4, !tbaa !9
  br label %2945

37774:                                            ; preds = %3151
  %37775 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37775, ptr %45, align 4, !tbaa !9
  %37776 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37776, ptr %46, align 4, !tbaa !9
  %37777 = load ptr, ptr %5, align 8, !tbaa !5
  %37778 = getelementptr inbounds %struct.w2c_hermes, ptr %37777, i32 0, i32 6
  %37779 = load i32, ptr %45, align 4, !tbaa !9
  %37780 = zext i32 %37779 to i64
  %37781 = add i64 %37780, 5808
  %37782 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37778, i64 noundef %37781, i32 noundef %37782)
  %37783 = load ptr, ptr %5, align 8, !tbaa !5
  %37784 = getelementptr inbounds %struct.w2c_hermes, ptr %37783, i32 0, i32 3
  %37785 = load i32, ptr %37784, align 8, !tbaa !15
  store i32 %37785, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %37786 = load i32, ptr %46, align 4, !tbaa !9
  %37787 = load i32, ptr %45, align 4, !tbaa !9
  %37788 = sub i32 %37787, %37786
  store i32 %37788, ptr %45, align 4, !tbaa !9
  %37789 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37789, ptr %14, align 4, !tbaa !9
  %37790 = load i32, ptr %45, align 4, !tbaa !9
  %37791 = load ptr, ptr %5, align 8, !tbaa !5
  %37792 = getelementptr inbounds %struct.w2c_hermes, ptr %37791, i32 0, i32 3
  store i32 %37790, ptr %37792, align 8, !tbaa !15
  %37793 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37793, ptr %45, align 4, !tbaa !9
  %37794 = load ptr, ptr %5, align 8, !tbaa !5
  %37795 = getelementptr inbounds %struct.w2c_hermes, ptr %37794, i32 0, i32 6
  %37796 = load i32, ptr %45, align 4, !tbaa !9
  %37797 = zext i32 %37796 to i64
  %37798 = add i64 %37797, 5
  %37799 = call i32 @i32_load8_u(ptr noundef %37795, i64 noundef %37798)
  store i32 %37799, ptr %45, align 4, !tbaa !9
  %37800 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37800, ptr %7, align 4, !tbaa !9
  %37801 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37801, ptr %45, align 4, !tbaa !9
  %37802 = load ptr, ptr %5, align 8, !tbaa !5
  %37803 = getelementptr inbounds %struct.w2c_hermes, ptr %37802, i32 0, i32 6
  %37804 = load i32, ptr %45, align 4, !tbaa !9
  %37805 = zext i32 %37804 to i64
  %37806 = add i64 %37805, 4
  %37807 = call i32 @i32_load(ptr noundef %37803, i64 noundef %37806)
  store i32 %37807, ptr %45, align 4, !tbaa !9
  %37808 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37808, ptr %8, align 4, !tbaa !9
  %37809 = load ptr, ptr %5, align 8, !tbaa !5
  %37810 = getelementptr inbounds %struct.w2c_hermes, ptr %37809, i32 0, i32 6
  %37811 = load i32, ptr %45, align 4, !tbaa !9
  %37812 = zext i32 %37811 to i64
  %37813 = add i64 %37812, 164
  %37814 = call i32 @i32_load(ptr noundef %37810, i64 noundef %37813)
  store i32 %37814, ptr %45, align 4, !tbaa !9
  %37815 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37815, ptr %12, align 4, !tbaa !9
  %37816 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37816, ptr %46, align 4, !tbaa !9
  %37817 = load ptr, ptr %5, align 8, !tbaa !5
  %37818 = getelementptr inbounds %struct.w2c_hermes, ptr %37817, i32 0, i32 6
  %37819 = load i32, ptr %46, align 4, !tbaa !9
  %37820 = zext i32 %37819 to i64
  %37821 = add i64 %37820, 168
  %37822 = call i32 @i32_load(ptr noundef %37818, i64 noundef %37821)
  store i32 %37822, ptr %46, align 4, !tbaa !9
  %37823 = load i32, ptr %45, align 4, !tbaa !9
  %37824 = load i32, ptr %46, align 4, !tbaa !9
  %37825 = icmp ult i32 %37823, %37824
  %37826 = zext i1 %37825 to i32
  store i32 %37826, ptr %45, align 4, !tbaa !9
  %37827 = load i32, ptr %45, align 4, !tbaa !9
  %37828 = icmp ne i32 %37827, 0
  br i1 %37828, label %37829, label %37847

37829:                                            ; preds = %37774
  %37830 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37830, ptr %45, align 4, !tbaa !9
  %37831 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %37831, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %37832 = load i32, ptr %47, align 4, !tbaa !9
  %37833 = load i32, ptr %46, align 4, !tbaa !9
  %37834 = add i32 %37833, %37832
  store i32 %37834, ptr %46, align 4, !tbaa !9
  %37835 = load ptr, ptr %5, align 8, !tbaa !5
  %37836 = getelementptr inbounds %struct.w2c_hermes, ptr %37835, i32 0, i32 6
  %37837 = load i32, ptr %45, align 4, !tbaa !9
  %37838 = zext i32 %37837 to i64
  %37839 = add i64 %37838, 164
  %37840 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37836, i64 noundef %37839, i32 noundef %37840)
  %37841 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %37841, ptr %45, align 4, !tbaa !9
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %37842 = load ptr, ptr %5, align 8, !tbaa !5
  %37843 = getelementptr inbounds %struct.w2c_hermes, ptr %37842, i32 0, i32 6
  %37844 = load i32, ptr %45, align 4, !tbaa !9
  %37845 = zext i32 %37844 to i64
  %37846 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %37843, i64 noundef %37845, i64 noundef %37846)
  br label %37854

37847:                                            ; preds = %37774
  %37848 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37848, ptr %45, align 4, !tbaa !9
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %37849 = load ptr, ptr %5, align 8, !tbaa !5
  %37850 = load i32, ptr %45, align 4, !tbaa !9
  %37851 = load i64, ptr %55, align 8, !tbaa !11
  %37852 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %37849, i32 noundef %37850, i64 noundef %37851)
  store i32 %37852, ptr %45, align 4, !tbaa !9
  %37853 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37853, ptr %12, align 4, !tbaa !9
  br label %37854

37854:                                            ; preds = %37847, %37829
  %37855 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37855, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %37856 = load i32, ptr %46, align 4, !tbaa !9
  %37857 = load i32, ptr %45, align 4, !tbaa !9
  %37858 = and i32 %37857, %37856
  store i32 %37858, ptr %45, align 4, !tbaa !9
  %37859 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37859, ptr %7, align 4, !tbaa !9
  %37860 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %37860, ptr %45, align 4, !tbaa !9
  %37861 = load ptr, ptr %5, align 8, !tbaa !5
  %37862 = getelementptr inbounds %struct.w2c_hermes, ptr %37861, i32 0, i32 6
  %37863 = load i32, ptr %45, align 4, !tbaa !9
  %37864 = zext i32 %37863 to i64
  %37865 = add i64 %37864, 4
  %37866 = call i32 @i32_load(ptr noundef %37862, i64 noundef %37865)
  store i32 %37866, ptr %45, align 4, !tbaa !9
  %37867 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37867, ptr %8, align 4, !tbaa !9
  %37868 = load ptr, ptr %5, align 8, !tbaa !5
  %37869 = getelementptr inbounds %struct.w2c_hermes, ptr %37868, i32 0, i32 6
  %37870 = load i32, ptr %45, align 4, !tbaa !9
  %37871 = zext i32 %37870 to i64
  %37872 = add i64 %37871, 164
  %37873 = call i32 @i32_load(ptr noundef %37869, i64 noundef %37872)
  store i32 %37873, ptr %45, align 4, !tbaa !9
  %37874 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37874, ptr %13, align 4, !tbaa !9
  %37875 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37875, ptr %46, align 4, !tbaa !9
  %37876 = load ptr, ptr %5, align 8, !tbaa !5
  %37877 = getelementptr inbounds %struct.w2c_hermes, ptr %37876, i32 0, i32 6
  %37878 = load i32, ptr %46, align 4, !tbaa !9
  %37879 = zext i32 %37878 to i64
  %37880 = add i64 %37879, 168
  %37881 = call i32 @i32_load(ptr noundef %37877, i64 noundef %37880)
  store i32 %37881, ptr %46, align 4, !tbaa !9
  %37882 = load i32, ptr %45, align 4, !tbaa !9
  %37883 = load i32, ptr %46, align 4, !tbaa !9
  %37884 = icmp ult i32 %37882, %37883
  %37885 = zext i1 %37884 to i32
  store i32 %37885, ptr %45, align 4, !tbaa !9
  %37886 = load i32, ptr %45, align 4, !tbaa !9
  %37887 = icmp ne i32 %37886, 0
  br i1 %37887, label %37888, label %37906

37888:                                            ; preds = %37854
  %37889 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37889, ptr %45, align 4, !tbaa !9
  %37890 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37890, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %37891 = load i32, ptr %47, align 4, !tbaa !9
  %37892 = load i32, ptr %46, align 4, !tbaa !9
  %37893 = add i32 %37892, %37891
  store i32 %37893, ptr %46, align 4, !tbaa !9
  %37894 = load ptr, ptr %5, align 8, !tbaa !5
  %37895 = getelementptr inbounds %struct.w2c_hermes, ptr %37894, i32 0, i32 6
  %37896 = load i32, ptr %45, align 4, !tbaa !9
  %37897 = zext i32 %37896 to i64
  %37898 = add i64 %37897, 164
  %37899 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %37895, i64 noundef %37898, i32 noundef %37899)
  %37900 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %37900, ptr %45, align 4, !tbaa !9
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %37901 = load ptr, ptr %5, align 8, !tbaa !5
  %37902 = getelementptr inbounds %struct.w2c_hermes, ptr %37901, i32 0, i32 6
  %37903 = load i32, ptr %45, align 4, !tbaa !9
  %37904 = zext i32 %37903 to i64
  %37905 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %37902, i64 noundef %37904, i64 noundef %37905)
  br label %37913

37906:                                            ; preds = %37854
  %37907 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37907, ptr %45, align 4, !tbaa !9
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %37908 = load ptr, ptr %5, align 8, !tbaa !5
  %37909 = load i32, ptr %45, align 4, !tbaa !9
  %37910 = load i64, ptr %55, align 8, !tbaa !11
  %37911 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %37908, i32 noundef %37909, i64 noundef %37910)
  store i32 %37911, ptr %45, align 4, !tbaa !9
  %37912 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37912, ptr %13, align 4, !tbaa !9
  br label %37913

37913:                                            ; preds = %37906, %37888
  %37914 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %37914, ptr %45, align 4, !tbaa !9
  store i32 44, ptr %46, align 4, !tbaa !9
  %37915 = load i32, ptr %46, align 4, !tbaa !9
  %37916 = load i32, ptr %45, align 4, !tbaa !9
  %37917 = or i32 %37916, %37915
  store i32 %37917, ptr %45, align 4, !tbaa !9
  %37918 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37918, ptr %8, align 4, !tbaa !9
  %37919 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37919, ptr %45, align 4, !tbaa !9
  %37920 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37920, ptr %46, align 4, !tbaa !9
  %37921 = load ptr, ptr %5, align 8, !tbaa !5
  %37922 = getelementptr inbounds %struct.w2c_hermes, ptr %37921, i32 0, i32 6
  %37923 = load i32, ptr %46, align 4, !tbaa !9
  %37924 = zext i32 %37923 to i64
  %37925 = add i64 %37924, 3
  %37926 = call i32 @i32_load8_u(ptr noundef %37922, i64 noundef %37925)
  store i32 %37926, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %37927 = load i32, ptr %47, align 4, !tbaa !9
  %37928 = and i32 %37927, 31
  %37929 = load i32, ptr %46, align 4, !tbaa !9
  %37930 = shl i32 %37929, %37928
  store i32 %37930, ptr %46, align 4, !tbaa !9
  %37931 = load i32, ptr %46, align 4, !tbaa !9
  %37932 = load i32, ptr %45, align 4, !tbaa !9
  %37933 = add i32 %37932, %37931
  store i32 %37933, ptr %45, align 4, !tbaa !9
  %37934 = load ptr, ptr %5, align 8, !tbaa !5
  %37935 = getelementptr inbounds %struct.w2c_hermes, ptr %37934, i32 0, i32 6
  %37936 = load i32, ptr %45, align 4, !tbaa !9
  %37937 = zext i32 %37936 to i64
  %37938 = call i64 @i64_load(ptr noundef %37935, i64 noundef %37937)
  store i64 %37938, ptr %54, align 8, !tbaa !11
  %37939 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %37939, ptr %39, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %37940 = load i64, ptr %54, align 8, !tbaa !11
  %37941 = load i64, ptr %55, align 8, !tbaa !11
  %37942 = and i64 %37941, 63
  %37943 = ashr i64 %37940, %37942
  store i64 %37943, ptr %54, align 8, !tbaa !11
  %37944 = load i64, ptr %54, align 8, !tbaa !11
  %37945 = trunc i64 %37944 to i32
  store i32 %37945, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %37946 = load i32, ptr %45, align 4, !tbaa !9
  %37947 = load i32, ptr %46, align 4, !tbaa !9
  %37948 = icmp ne i32 %37946, %37947
  %37949 = zext i1 %37948 to i32
  store i32 %37949, ptr %45, align 4, !tbaa !9
  %37950 = load i32, ptr %45, align 4, !tbaa !9
  %37951 = icmp ne i32 %37950, 0
  br i1 %37951, label %37952, label %37971

37952:                                            ; preds = %37913
  %37953 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %37953, ptr %45, align 4, !tbaa !9
  %37954 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %37954, ptr %55, align 8, !tbaa !11
  store i64 4294967295, ptr %56, align 8, !tbaa !11
  %37955 = load i64, ptr %56, align 8, !tbaa !11
  %37956 = load i64, ptr %55, align 8, !tbaa !11
  %37957 = and i64 %37956, %37955
  store i64 %37957, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %37958 = load i64, ptr %56, align 8, !tbaa !11
  %37959 = load i64, ptr %55, align 8, !tbaa !11
  %37960 = or i64 %37959, %37958
  store i64 %37960, ptr %55, align 8, !tbaa !11
  %37961 = load ptr, ptr %5, align 8, !tbaa !5
  %37962 = getelementptr inbounds %struct.w2c_hermes, ptr %37961, i32 0, i32 6
  %37963 = load i32, ptr %45, align 4, !tbaa !9
  %37964 = zext i32 %37963 to i64
  %37965 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %37962, i64 noundef %37964, i64 noundef %37965)
  %37966 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %37966, ptr %45, align 4, !tbaa !9
  store i32 64, ptr %46, align 4, !tbaa !9
  %37967 = load i32, ptr %46, align 4, !tbaa !9
  %37968 = load i32, ptr %45, align 4, !tbaa !9
  %37969 = or i32 %37968, %37967
  store i32 %37969, ptr %45, align 4, !tbaa !9
  %37970 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %37970, ptr %8, align 4, !tbaa !9
  br label %37971

37971:                                            ; preds = %37952, %37913
  %37972 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %37972, ptr %45, align 4, !tbaa !9
  %37973 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %37973, ptr %46, align 4, !tbaa !9
  %37974 = load ptr, ptr %5, align 8, !tbaa !5
  %37975 = getelementptr inbounds %struct.w2c_hermes, ptr %37974, i32 0, i32 6
  %37976 = load i32, ptr %46, align 4, !tbaa !9
  %37977 = zext i32 %37976 to i64
  %37978 = add i64 %37977, 4
  %37979 = call i32 @i32_load8_u(ptr noundef %37975, i64 noundef %37978)
  store i32 %37979, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %37980 = load i32, ptr %47, align 4, !tbaa !9
  %37981 = and i32 %37980, 31
  %37982 = load i32, ptr %46, align 4, !tbaa !9
  %37983 = shl i32 %37982, %37981
  store i32 %37983, ptr %46, align 4, !tbaa !9
  %37984 = load i32, ptr %46, align 4, !tbaa !9
  %37985 = load i32, ptr %45, align 4, !tbaa !9
  %37986 = add i32 %37985, %37984
  store i32 %37986, ptr %45, align 4, !tbaa !9
  %37987 = load ptr, ptr %5, align 8, !tbaa !5
  %37988 = getelementptr inbounds %struct.w2c_hermes, ptr %37987, i32 0, i32 6
  %37989 = load i32, ptr %45, align 4, !tbaa !9
  %37990 = zext i32 %37989 to i64
  %37991 = call i64 @i64_load(ptr noundef %37988, i64 noundef %37990)
  store i64 %37991, ptr %54, align 8, !tbaa !11
  %37992 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %37992, ptr %39, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %37993 = load i64, ptr %54, align 8, !tbaa !11
  %37994 = load i64, ptr %55, align 8, !tbaa !11
  %37995 = and i64 %37994, 63
  %37996 = ashr i64 %37993, %37995
  store i64 %37996, ptr %54, align 8, !tbaa !11
  %37997 = load i64, ptr %54, align 8, !tbaa !11
  %37998 = trunc i64 %37997 to i32
  store i32 %37998, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %37999 = load i32, ptr %45, align 4, !tbaa !9
  %38000 = load i32, ptr %46, align 4, !tbaa !9
  %38001 = icmp ne i32 %37999, %38000
  %38002 = zext i1 %38001 to i32
  store i32 %38002, ptr %45, align 4, !tbaa !9
  %38003 = load i32, ptr %45, align 4, !tbaa !9
  %38004 = icmp ne i32 %38003, 0
  br i1 %38004, label %38005, label %38024

38005:                                            ; preds = %37971
  %38006 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %38006, ptr %45, align 4, !tbaa !9
  %38007 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38007, ptr %55, align 8, !tbaa !11
  store i64 4294967295, ptr %56, align 8, !tbaa !11
  %38008 = load i64, ptr %56, align 8, !tbaa !11
  %38009 = load i64, ptr %55, align 8, !tbaa !11
  %38010 = and i64 %38009, %38008
  store i64 %38010, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %38011 = load i64, ptr %56, align 8, !tbaa !11
  %38012 = load i64, ptr %55, align 8, !tbaa !11
  %38013 = or i64 %38012, %38011
  store i64 %38013, ptr %55, align 8, !tbaa !11
  %38014 = load ptr, ptr %5, align 8, !tbaa !5
  %38015 = getelementptr inbounds %struct.w2c_hermes, ptr %38014, i32 0, i32 6
  %38016 = load i32, ptr %45, align 4, !tbaa !9
  %38017 = zext i32 %38016 to i64
  %38018 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38015, i64 noundef %38017, i64 noundef %38018)
  %38019 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38019, ptr %45, align 4, !tbaa !9
  store i32 128, ptr %46, align 4, !tbaa !9
  %38020 = load i32, ptr %46, align 4, !tbaa !9
  %38021 = load i32, ptr %45, align 4, !tbaa !9
  %38022 = or i32 %38021, %38020
  store i32 %38022, ptr %45, align 4, !tbaa !9
  %38023 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38023, ptr %8, align 4, !tbaa !9
  br label %38024

38024:                                            ; preds = %38005, %37971
  %38025 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38025, ptr %45, align 4, !tbaa !9
  %38026 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38026, ptr %46, align 4, !tbaa !9
  %38027 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %38027, ptr %47, align 4, !tbaa !9
  %38028 = load ptr, ptr %5, align 8, !tbaa !5
  %38029 = load i32, ptr %45, align 4, !tbaa !9
  %38030 = load i32, ptr %46, align 4, !tbaa !9
  %38031 = load i32, ptr %47, align 4, !tbaa !9
  %38032 = call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3APropertyAccessor0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x29(ptr noundef %38028, i32 noundef %38029, i32 noundef %38030, i32 noundef %38031)
  store i64 %38032, ptr %54, align 8, !tbaa !11
  store i64 4294967295, ptr %55, align 8, !tbaa !11
  %38033 = load i64, ptr %55, align 8, !tbaa !11
  %38034 = load i64, ptr %54, align 8, !tbaa !11
  %38035 = and i64 %38034, %38033
  store i64 %38035, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %38036 = load i64, ptr %55, align 8, !tbaa !11
  %38037 = load i64, ptr %54, align 8, !tbaa !11
  %38038 = or i64 %38037, %38036
  store i64 %38038, ptr %54, align 8, !tbaa !11
  %38039 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %38039, ptr %39, align 8, !tbaa !11
  %38040 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38040, ptr %45, align 4, !tbaa !9
  %38041 = load ptr, ptr %5, align 8, !tbaa !5
  %38042 = getelementptr inbounds %struct.w2c_hermes, ptr %38041, i32 0, i32 6
  %38043 = load i32, ptr %45, align 4, !tbaa !9
  %38044 = zext i32 %38043 to i64
  %38045 = add i64 %38044, 4
  %38046 = call i32 @i32_load(ptr noundef %38042, i64 noundef %38045)
  store i32 %38046, ptr %45, align 4, !tbaa !9
  %38047 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38047, ptr %7, align 4, !tbaa !9
  %38048 = load ptr, ptr %5, align 8, !tbaa !5
  %38049 = getelementptr inbounds %struct.w2c_hermes, ptr %38048, i32 0, i32 6
  %38050 = load i32, ptr %45, align 4, !tbaa !9
  %38051 = zext i32 %38050 to i64
  %38052 = add i64 %38051, 164
  %38053 = call i32 @i32_load(ptr noundef %38049, i64 noundef %38052)
  store i32 %38053, ptr %45, align 4, !tbaa !9
  %38054 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38054, ptr %12, align 4, !tbaa !9
  %38055 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38055, ptr %46, align 4, !tbaa !9
  %38056 = load ptr, ptr %5, align 8, !tbaa !5
  %38057 = getelementptr inbounds %struct.w2c_hermes, ptr %38056, i32 0, i32 6
  %38058 = load i32, ptr %46, align 4, !tbaa !9
  %38059 = zext i32 %38058 to i64
  %38060 = add i64 %38059, 168
  %38061 = call i32 @i32_load(ptr noundef %38057, i64 noundef %38060)
  store i32 %38061, ptr %46, align 4, !tbaa !9
  %38062 = load i32, ptr %45, align 4, !tbaa !9
  %38063 = load i32, ptr %46, align 4, !tbaa !9
  %38064 = icmp ult i32 %38062, %38063
  %38065 = zext i1 %38064 to i32
  store i32 %38065, ptr %45, align 4, !tbaa !9
  %38066 = load i32, ptr %45, align 4, !tbaa !9
  %38067 = icmp ne i32 %38066, 0
  br i1 %38067, label %38068, label %38087

38068:                                            ; preds = %38024
  %38069 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38069, ptr %45, align 4, !tbaa !9
  %38070 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38070, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %38071 = load i32, ptr %47, align 4, !tbaa !9
  %38072 = load i32, ptr %46, align 4, !tbaa !9
  %38073 = add i32 %38072, %38071
  store i32 %38073, ptr %46, align 4, !tbaa !9
  %38074 = load ptr, ptr %5, align 8, !tbaa !5
  %38075 = getelementptr inbounds %struct.w2c_hermes, ptr %38074, i32 0, i32 6
  %38076 = load i32, ptr %45, align 4, !tbaa !9
  %38077 = zext i32 %38076 to i64
  %38078 = add i64 %38077, 164
  %38079 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38075, i64 noundef %38078, i32 noundef %38079)
  %38080 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38080, ptr %45, align 4, !tbaa !9
  %38081 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38081, ptr %55, align 8, !tbaa !11
  %38082 = load ptr, ptr %5, align 8, !tbaa !5
  %38083 = getelementptr inbounds %struct.w2c_hermes, ptr %38082, i32 0, i32 6
  %38084 = load i32, ptr %45, align 4, !tbaa !9
  %38085 = zext i32 %38084 to i64
  %38086 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38083, i64 noundef %38085, i64 noundef %38086)
  br label %38095

38087:                                            ; preds = %38024
  %38088 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38088, ptr %45, align 4, !tbaa !9
  %38089 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38089, ptr %55, align 8, !tbaa !11
  %38090 = load ptr, ptr %5, align 8, !tbaa !5
  %38091 = load i32, ptr %45, align 4, !tbaa !9
  %38092 = load i64, ptr %55, align 8, !tbaa !11
  %38093 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %38090, i32 noundef %38091, i64 noundef %38092)
  store i32 %38093, ptr %45, align 4, !tbaa !9
  %38094 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38094, ptr %12, align 4, !tbaa !9
  br label %38095

38095:                                            ; preds = %38087, %38068
  %38096 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38096, ptr %45, align 4, !tbaa !9
  %38097 = load ptr, ptr %5, align 8, !tbaa !5
  %38098 = getelementptr inbounds %struct.w2c_hermes, ptr %38097, i32 0, i32 6
  %38099 = load i32, ptr %45, align 4, !tbaa !9
  %38100 = zext i32 %38099 to i64
  %38101 = add i64 %38100, 1
  %38102 = call i32 @i32_load8_u(ptr noundef %38098, i64 noundef %38101)
  store i32 %38102, ptr %45, align 4, !tbaa !9
  %38103 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38103, ptr %7, align 4, !tbaa !9
  %38104 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38104, ptr %45, align 4, !tbaa !9
  %38105 = load ptr, ptr %5, align 8, !tbaa !5
  %38106 = getelementptr inbounds %struct.w2c_hermes, ptr %38105, i32 0, i32 6
  %38107 = load i32, ptr %45, align 4, !tbaa !9
  %38108 = zext i32 %38107 to i64
  %38109 = add i64 %38108, 2
  %38110 = call i32 @i32_load8_u(ptr noundef %38106, i64 noundef %38109)
  store i32 %38110, ptr %45, align 4, !tbaa !9
  %38111 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38111, ptr %6, align 4, !tbaa !9
  %38112 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38112, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38113 = load ptr, ptr %5, align 8, !tbaa !5
  %38114 = getelementptr inbounds %struct.w2c_hermes, ptr %38113, i32 0, i32 6
  %38115 = load i32, ptr %45, align 4, !tbaa !9
  %38116 = zext i32 %38115 to i64
  %38117 = add i64 %38116, 20
  %38118 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38114, i64 noundef %38117, i32 noundef %38118)
  %38119 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38119, ptr %45, align 4, !tbaa !9
  %38120 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38120, ptr %46, align 4, !tbaa !9
  %38121 = load ptr, ptr %5, align 8, !tbaa !5
  %38122 = getelementptr inbounds %struct.w2c_hermes, ptr %38121, i32 0, i32 6
  %38123 = load i32, ptr %45, align 4, !tbaa !9
  %38124 = zext i32 %38123 to i64
  %38125 = add i64 %38124, 24
  %38126 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38122, i64 noundef %38125, i32 noundef %38126)
  %38127 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38127, ptr %45, align 4, !tbaa !9
  %38128 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38128, ptr %46, align 4, !tbaa !9
  %38129 = load ptr, ptr %5, align 8, !tbaa !5
  %38130 = getelementptr inbounds %struct.w2c_hermes, ptr %38129, i32 0, i32 6
  %38131 = load i32, ptr %45, align 4, !tbaa !9
  %38132 = zext i32 %38131 to i64
  %38133 = add i64 %38132, 16
  %38134 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38130, i64 noundef %38133, i32 noundef %38134)
  %38135 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38135, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38136 = load ptr, ptr %5, align 8, !tbaa !5
  %38137 = getelementptr inbounds %struct.w2c_hermes, ptr %38136, i32 0, i32 6
  %38138 = load i32, ptr %45, align 4, !tbaa !9
  %38139 = zext i32 %38138 to i64
  %38140 = add i64 %38139, 12
  %38141 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38137, i64 noundef %38140, i32 noundef %38141)
  %38142 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38142, ptr %45, align 4, !tbaa !9
  store i32 28, ptr %46, align 4, !tbaa !9
  %38143 = load i32, ptr %46, align 4, !tbaa !9
  %38144 = load i32, ptr %45, align 4, !tbaa !9
  %38145 = add i32 %38144, %38143
  store i32 %38145, ptr %45, align 4, !tbaa !9
  %38146 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %38146, ptr %46, align 4, !tbaa !9
  %38147 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38147, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %38148 = load i32, ptr %48, align 4, !tbaa !9
  %38149 = and i32 %38148, 31
  %38150 = load i32, ptr %47, align 4, !tbaa !9
  %38151 = shl i32 %38150, %38149
  store i32 %38151, ptr %47, align 4, !tbaa !9
  %38152 = load i32, ptr %47, align 4, !tbaa !9
  %38153 = load i32, ptr %46, align 4, !tbaa !9
  %38154 = add i32 %38153, %38152
  store i32 %38154, ptr %46, align 4, !tbaa !9
  %38155 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38155, ptr %47, align 4, !tbaa !9
  %38156 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %38156, ptr %48, align 4, !tbaa !9
  %38157 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38157, ptr %49, align 4, !tbaa !9
  store i32 3, ptr %50, align 4, !tbaa !9
  %38158 = load i32, ptr %50, align 4, !tbaa !9
  %38159 = and i32 %38158, 31
  %38160 = load i32, ptr %49, align 4, !tbaa !9
  %38161 = shl i32 %38160, %38159
  store i32 %38161, ptr %49, align 4, !tbaa !9
  %38162 = load i32, ptr %49, align 4, !tbaa !9
  %38163 = load i32, ptr %48, align 4, !tbaa !9
  %38164 = add i32 %38163, %38162
  store i32 %38164, ptr %48, align 4, !tbaa !9
  %38165 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38165, ptr %49, align 4, !tbaa !9
  store i32 16, ptr %50, align 4, !tbaa !9
  %38166 = load i32, ptr %50, align 4, !tbaa !9
  %38167 = load i32, ptr %49, align 4, !tbaa !9
  %38168 = add i32 %38167, %38166
  store i32 %38168, ptr %49, align 4, !tbaa !9
  %38169 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38169, ptr %50, align 4, !tbaa !9
  %38170 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38170, ptr %51, align 4, !tbaa !9
  store i32 12, ptr %52, align 4, !tbaa !9
  %38171 = load i32, ptr %52, align 4, !tbaa !9
  %38172 = load i32, ptr %51, align 4, !tbaa !9
  %38173 = add i32 %38172, %38171
  store i32 %38173, ptr %51, align 4, !tbaa !9
  %38174 = load ptr, ptr %5, align 8, !tbaa !5
  %38175 = load i32, ptr %45, align 4, !tbaa !9
  %38176 = load i32, ptr %46, align 4, !tbaa !9
  %38177 = load i32, ptr %47, align 4, !tbaa !9
  %38178 = load i32, ptr %48, align 4, !tbaa !9
  %38179 = load i32, ptr %49, align 4, !tbaa !9
  %38180 = load i32, ptr %50, align 4, !tbaa !9
  %38181 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %38174, i32 noundef %38175, i32 noundef %38176, i32 noundef %38177, i32 noundef %38178, i32 noundef %38179, i32 noundef %38180, i32 noundef %38181)
  %38182 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38182, ptr %45, align 4, !tbaa !9
  %38183 = load ptr, ptr %5, align 8, !tbaa !5
  %38184 = getelementptr inbounds %struct.w2c_hermes, ptr %38183, i32 0, i32 6
  %38185 = load i32, ptr %45, align 4, !tbaa !9
  %38186 = zext i32 %38185 to i64
  %38187 = add i64 %38186, 28
  %38188 = call i32 @i32_load8_s(ptr noundef %38184, i64 noundef %38187)
  store i32 %38188, ptr %45, align 4, !tbaa !9
  %38189 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38189, ptr %7, align 4, !tbaa !9
  %38190 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %38190, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %38191 = load i32, ptr %46, align 4, !tbaa !9
  %38192 = load i32, ptr %45, align 4, !tbaa !9
  %38193 = add i32 %38192, %38191
  store i32 %38193, ptr %45, align 4, !tbaa !9
  %38194 = load i32, ptr %45, align 4, !tbaa !9
  %38195 = load ptr, ptr %5, align 8, !tbaa !5
  %38196 = getelementptr inbounds %struct.w2c_hermes, ptr %38195, i32 0, i32 3
  store i32 %38194, ptr %38196, align 8, !tbaa !15
  %38197 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38197, ptr %45, align 4, !tbaa !9
  %38198 = load ptr, ptr %5, align 8, !tbaa !5
  %38199 = getelementptr inbounds %struct.w2c_hermes, ptr %38198, i32 0, i32 6
  %38200 = load i32, ptr %45, align 4, !tbaa !9
  %38201 = zext i32 %38200 to i64
  %38202 = add i64 %38201, 5808
  %38203 = call i32 @i32_load(ptr noundef %38199, i64 noundef %38202)
  store i32 %38203, ptr %45, align 4, !tbaa !9
  %38204 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38204, ptr %6, align 4, !tbaa !9
  %38205 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38205, ptr %45, align 4, !tbaa !9
  %38206 = load i32, ptr %45, align 4, !tbaa !9
  %38207 = icmp ne i32 %38206, 0
  %38208 = xor i1 %38207, true
  %38209 = zext i1 %38208 to i32
  store i32 %38209, ptr %45, align 4, !tbaa !9
  %38210 = load i32, ptr %45, align 4, !tbaa !9
  %38211 = icmp ne i32 %38210, 0
  br i1 %38211, label %38212, label %38213

38212:                                            ; preds = %38095
  br label %43136

38213:                                            ; preds = %38095
  %38214 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %38214, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38215 = load ptr, ptr %5, align 8, !tbaa !5
  %38216 = getelementptr inbounds %struct.w2c_hermes, ptr %38215, i32 0, i32 6
  %38217 = load i32, ptr %45, align 4, !tbaa !9
  %38218 = zext i32 %38217 to i64
  %38219 = add i64 %38218, 516
  %38220 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38216, i64 noundef %38219, i32 noundef %38220)
  %38221 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %38221, ptr %45, align 4, !tbaa !9
  %38222 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %38222, ptr %46, align 4, !tbaa !9
  %38223 = load ptr, ptr %5, align 8, !tbaa !5
  %38224 = getelementptr inbounds %struct.w2c_hermes, ptr %38223, i32 0, i32 6
  %38225 = load i32, ptr %45, align 4, !tbaa !9
  %38226 = zext i32 %38225 to i64
  %38227 = add i64 %38226, 512
  %38228 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38224, i64 noundef %38227, i32 noundef %38228)
  %38229 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %38229, ptr %45, align 4, !tbaa !9
  %38230 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %38230, ptr %46, align 4, !tbaa !9
  %38231 = load ptr, ptr %5, align 8, !tbaa !5
  %38232 = getelementptr inbounds %struct.w2c_hermes, ptr %38231, i32 0, i32 6
  %38233 = load i32, ptr %45, align 4, !tbaa !9
  %38234 = zext i32 %38233 to i64
  %38235 = add i64 %38234, 508
  %38236 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38232, i64 noundef %38235, i32 noundef %38236)
  %38237 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38237, ptr %45, align 4, !tbaa !9
  store i32 6, ptr %46, align 4, !tbaa !9
  %38238 = load i32, ptr %46, align 4, !tbaa !9
  %38239 = load i32, ptr %45, align 4, !tbaa !9
  %38240 = add i32 %38239, %38238
  store i32 %38240, ptr %45, align 4, !tbaa !9
  %38241 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38241, ptr %6, align 4, !tbaa !9
  br label %2945

38242:                                            ; preds = %3152
  %38243 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38243, ptr %45, align 4, !tbaa !9
  %38244 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38244, ptr %46, align 4, !tbaa !9
  %38245 = load ptr, ptr %5, align 8, !tbaa !5
  %38246 = getelementptr inbounds %struct.w2c_hermes, ptr %38245, i32 0, i32 6
  %38247 = load i32, ptr %45, align 4, !tbaa !9
  %38248 = zext i32 %38247 to i64
  %38249 = add i64 %38248, 5808
  %38250 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38246, i64 noundef %38249, i32 noundef %38250)
  store i32 0, ptr %45, align 4, !tbaa !9
  %38251 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38251, ptr %13, align 4, !tbaa !9
  %38252 = load ptr, ptr %5, align 8, !tbaa !5
  %38253 = getelementptr inbounds %struct.w2c_hermes, ptr %38252, i32 0, i32 3
  %38254 = load i32, ptr %38253, align 8, !tbaa !15
  store i32 %38254, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %38255 = load i32, ptr %46, align 4, !tbaa !9
  %38256 = load i32, ptr %45, align 4, !tbaa !9
  %38257 = add i32 %38256, %38255
  store i32 %38257, ptr %45, align 4, !tbaa !9
  %38258 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38258, ptr %24, align 4, !tbaa !9
  %38259 = load i32, ptr %45, align 4, !tbaa !9
  %38260 = load ptr, ptr %5, align 8, !tbaa !5
  %38261 = getelementptr inbounds %struct.w2c_hermes, ptr %38260, i32 0, i32 3
  store i32 %38259, ptr %38261, align 8, !tbaa !15
  %38262 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38262, ptr %45, align 4, !tbaa !9
  %38263 = load ptr, ptr %5, align 8, !tbaa !5
  %38264 = getelementptr inbounds %struct.w2c_hermes, ptr %38263, i32 0, i32 6
  %38265 = load i32, ptr %45, align 4, !tbaa !9
  %38266 = zext i32 %38265 to i64
  %38267 = add i64 %38266, 3
  %38268 = call i32 @i32_load8_u(ptr noundef %38264, i64 noundef %38267)
  store i32 %38268, ptr %45, align 4, !tbaa !9
  %38269 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38269, ptr %15, align 4, !tbaa !9
  %38270 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38270, ptr %45, align 4, !tbaa !9
  %38271 = load ptr, ptr %5, align 8, !tbaa !5
  %38272 = getelementptr inbounds %struct.w2c_hermes, ptr %38271, i32 0, i32 6
  %38273 = load i32, ptr %45, align 4, !tbaa !9
  %38274 = zext i32 %38273 to i64
  %38275 = add i64 %38274, 4
  %38276 = call i32 @i32_load(ptr noundef %38272, i64 noundef %38275)
  store i32 %38276, ptr %45, align 4, !tbaa !9
  %38277 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38277, ptr %28, align 4, !tbaa !9
  %38278 = load ptr, ptr %5, align 8, !tbaa !5
  %38279 = getelementptr inbounds %struct.w2c_hermes, ptr %38278, i32 0, i32 6
  %38280 = load i32, ptr %45, align 4, !tbaa !9
  %38281 = zext i32 %38280 to i64
  %38282 = add i64 %38281, 172
  %38283 = call i32 @i32_load(ptr noundef %38279, i64 noundef %38282)
  store i32 %38283, ptr %45, align 4, !tbaa !9
  %38284 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38284, ptr %16, align 4, !tbaa !9
  %38285 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %38285, ptr %45, align 4, !tbaa !9
  %38286 = load ptr, ptr %5, align 8, !tbaa !5
  %38287 = getelementptr inbounds %struct.w2c_hermes, ptr %38286, i32 0, i32 6
  %38288 = load i32, ptr %45, align 4, !tbaa !9
  %38289 = zext i32 %38288 to i64
  %38290 = add i64 %38289, 164
  %38291 = call i32 @i32_load(ptr noundef %38287, i64 noundef %38290)
  store i32 %38291, ptr %45, align 4, !tbaa !9
  %38292 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38292, ptr %14, align 4, !tbaa !9
  %38293 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38293, ptr %45, align 4, !tbaa !9
  %38294 = load ptr, ptr %5, align 8, !tbaa !5
  %38295 = getelementptr inbounds %struct.w2c_hermes, ptr %38294, i32 0, i32 6
  %38296 = load i32, ptr %45, align 4, !tbaa !9
  %38297 = zext i32 %38296 to i64
  %38298 = add i64 %38297, 1
  %38299 = call i32 @i32_load8_u(ptr noundef %38295, i64 noundef %38298)
  store i32 %38299, ptr %45, align 4, !tbaa !9
  %38300 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38300, ptr %8, align 4, !tbaa !9
  %38301 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38301, ptr %45, align 4, !tbaa !9
  %38302 = load ptr, ptr %5, align 8, !tbaa !5
  %38303 = getelementptr inbounds %struct.w2c_hermes, ptr %38302, i32 0, i32 6
  %38304 = load i32, ptr %45, align 4, !tbaa !9
  %38305 = zext i32 %38304 to i64
  %38306 = add i64 %38305, 2
  %38307 = call i32 @i32_load8_u(ptr noundef %38303, i64 noundef %38306)
  store i32 %38307, ptr %45, align 4, !tbaa !9
  %38308 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38308, ptr %7, align 4, !tbaa !9
  %38309 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38309, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38310 = load ptr, ptr %5, align 8, !tbaa !5
  %38311 = getelementptr inbounds %struct.w2c_hermes, ptr %38310, i32 0, i32 6
  %38312 = load i32, ptr %45, align 4, !tbaa !9
  %38313 = zext i32 %38312 to i64
  %38314 = add i64 %38313, 8
  %38315 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38311, i64 noundef %38314, i32 noundef %38315)
  %38316 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38316, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38317 = load ptr, ptr %5, align 8, !tbaa !5
  %38318 = getelementptr inbounds %struct.w2c_hermes, ptr %38317, i32 0, i32 6
  %38319 = load i32, ptr %45, align 4, !tbaa !9
  %38320 = zext i32 %38319 to i64
  %38321 = add i64 %38320, 32
  %38322 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38318, i64 noundef %38321, i32 noundef %38322)
  %38323 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38323, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %38324 = load i32, ptr %46, align 4, !tbaa !9
  %38325 = load i32, ptr %45, align 4, !tbaa !9
  %38326 = add i32 %38325, %38324
  store i32 %38326, ptr %45, align 4, !tbaa !9
  %38327 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38327, ptr %46, align 4, !tbaa !9
  store i32 696, ptr %47, align 4, !tbaa !9
  %38328 = load i32, ptr %47, align 4, !tbaa !9
  %38329 = load i32, ptr %46, align 4, !tbaa !9
  %38330 = add i32 %38329, %38328
  store i32 %38330, ptr %46, align 4, !tbaa !9
  %38331 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %38331, ptr %6, align 4, !tbaa !9
  %38332 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38332, ptr %47, align 4, !tbaa !9
  store i32 44, ptr %48, align 4, !tbaa !9
  %38333 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38333, ptr %49, align 4, !tbaa !9
  %38334 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38334, ptr %50, align 4, !tbaa !9
  store i32 8, ptr %51, align 4, !tbaa !9
  %38335 = load i32, ptr %51, align 4, !tbaa !9
  %38336 = load i32, ptr %50, align 4, !tbaa !9
  %38337 = add i32 %38336, %38335
  store i32 %38337, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %38338 = load ptr, ptr %5, align 8, !tbaa !5
  %38339 = load i32, ptr %45, align 4, !tbaa !9
  %38340 = load i32, ptr %46, align 4, !tbaa !9
  %38341 = load i32, ptr %47, align 4, !tbaa !9
  %38342 = load i32, ptr %48, align 4, !tbaa !9
  %38343 = load i32, ptr %49, align 4, !tbaa !9
  %38344 = load i32, ptr %50, align 4, !tbaa !9
  %38345 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %38338, i32 noundef %38339, i32 noundef %38340, i32 noundef %38341, i32 noundef %38342, i32 noundef %38343, i32 noundef %38344, i32 noundef %38345)
  %38346 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38346, ptr %45, align 4, !tbaa !9
  %38347 = load ptr, ptr %5, align 8, !tbaa !5
  %38348 = getelementptr inbounds %struct.w2c_hermes, ptr %38347, i32 0, i32 6
  %38349 = load i32, ptr %45, align 4, !tbaa !9
  %38350 = zext i32 %38349 to i64
  %38351 = add i64 %38350, 48
  %38352 = call i32 @i32_load(ptr noundef %38348, i64 noundef %38351)
  store i32 %38352, ptr %45, align 4, !tbaa !9
  %38353 = load i32, ptr %45, align 4, !tbaa !9
  %38354 = icmp ne i32 %38353, 0
  %38355 = xor i1 %38354, true
  %38356 = zext i1 %38355 to i32
  store i32 %38356, ptr %45, align 4, !tbaa !9
  %38357 = load i32, ptr %45, align 4, !tbaa !9
  %38358 = icmp ne i32 %38357, 0
  br i1 %38358, label %38359, label %38360

38359:                                            ; preds = %38242
  br label %39185

38360:                                            ; preds = %38242
  %38361 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38361, ptr %45, align 4, !tbaa !9
  %38362 = load ptr, ptr %5, align 8, !tbaa !5
  %38363 = getelementptr inbounds %struct.w2c_hermes, ptr %38362, i32 0, i32 6
  %38364 = load i32, ptr %45, align 4, !tbaa !9
  %38365 = zext i32 %38364 to i64
  %38366 = add i64 %38365, 56
  %38367 = call i64 @i64_load(ptr noundef %38363, i64 noundef %38366)
  store i64 %38367, ptr %54, align 8, !tbaa !11
  %38368 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %38368, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %38369 = load i64, ptr %54, align 8, !tbaa !11
  %38370 = load i64, ptr %55, align 8, !tbaa !11
  %38371 = icmp ult i64 %38369, %38370
  %38372 = zext i1 %38371 to i32
  store i32 %38372, ptr %45, align 4, !tbaa !9
  %38373 = load i32, ptr %45, align 4, !tbaa !9
  %38374 = icmp ne i32 %38373, 0
  br i1 %38374, label %38375, label %38376

38375:                                            ; preds = %38360
  br label %38528

38376:                                            ; preds = %38360
  %38377 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %38377, ptr %45, align 4, !tbaa !9
  %38378 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38378, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %38379 = load i32, ptr %47, align 4, !tbaa !9
  %38380 = and i32 %38379, 31
  %38381 = load i32, ptr %46, align 4, !tbaa !9
  %38382 = shl i32 %38381, %38380
  store i32 %38382, ptr %46, align 4, !tbaa !9
  %38383 = load i32, ptr %46, align 4, !tbaa !9
  %38384 = load i32, ptr %45, align 4, !tbaa !9
  %38385 = add i32 %38384, %38383
  store i32 %38385, ptr %45, align 4, !tbaa !9
  %38386 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38386, ptr %17, align 4, !tbaa !9
  %38387 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %38387, ptr %45, align 4, !tbaa !9
  %38388 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38388, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %38389 = load i32, ptr %47, align 4, !tbaa !9
  %38390 = and i32 %38389, 31
  %38391 = load i32, ptr %46, align 4, !tbaa !9
  %38392 = shl i32 %38391, %38390
  store i32 %38392, ptr %46, align 4, !tbaa !9
  %38393 = load i32, ptr %46, align 4, !tbaa !9
  %38394 = load i32, ptr %45, align 4, !tbaa !9
  %38395 = add i32 %38394, %38393
  store i32 %38395, ptr %45, align 4, !tbaa !9
  %38396 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38396, ptr %23, align 4, !tbaa !9
  %38397 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38397, ptr %54, align 8, !tbaa !11
  %38398 = load i64, ptr %54, align 8, !tbaa !11
  %38399 = trunc i64 %38398 to i32
  store i32 %38399, ptr %45, align 4, !tbaa !9
  %38400 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38400, ptr %7, align 4, !tbaa !9
  %38401 = load ptr, ptr %5, align 8, !tbaa !5
  %38402 = getelementptr inbounds %struct.w2c_hermes, ptr %38401, i32 0, i32 6
  %38403 = load i32, ptr %45, align 4, !tbaa !9
  %38404 = zext i32 %38403 to i64
  %38405 = call i32 @i32_load(ptr noundef %38402, i64 noundef %38404)
  store i32 %38405, ptr %45, align 4, !tbaa !9
  %38406 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38406, ptr %6, align 4, !tbaa !9
  store i32 1157627904, ptr %46, align 4, !tbaa !9
  %38407 = load i32, ptr %46, align 4, !tbaa !9
  %38408 = load i32, ptr %45, align 4, !tbaa !9
  %38409 = sub i32 %38408, %38407
  store i32 %38409, ptr %45, align 4, !tbaa !9
  store i32 67108863, ptr %46, align 4, !tbaa !9
  %38410 = load i32, ptr %45, align 4, !tbaa !9
  %38411 = load i32, ptr %46, align 4, !tbaa !9
  %38412 = icmp ule i32 %38410, %38411
  %38413 = zext i1 %38412 to i32
  store i32 %38413, ptr %45, align 4, !tbaa !9
  %38414 = load i32, ptr %45, align 4, !tbaa !9
  %38415 = icmp ne i32 %38414, 0
  br i1 %38415, label %38416, label %38461

38416:                                            ; preds = %38376
  %38417 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38417, ptr %45, align 4, !tbaa !9
  %38418 = load ptr, ptr %5, align 8, !tbaa !5
  %38419 = getelementptr inbounds %struct.w2c_hermes, ptr %38418, i32 0, i32 6
  %38420 = load i32, ptr %45, align 4, !tbaa !9
  %38421 = zext i32 %38420 to i64
  %38422 = add i64 %38421, 28
  %38423 = call i32 @i32_load(ptr noundef %38419, i64 noundef %38422)
  store i32 %38423, ptr %45, align 4, !tbaa !9
  store i32 551, ptr %46, align 4, !tbaa !9
  %38424 = load i32, ptr %45, align 4, !tbaa !9
  %38425 = load i32, ptr %46, align 4, !tbaa !9
  %38426 = icmp ne i32 %38424, %38425
  %38427 = zext i1 %38426 to i32
  store i32 %38427, ptr %45, align 4, !tbaa !9
  %38428 = load i32, ptr %45, align 4, !tbaa !9
  %38429 = icmp ne i32 %38428, 0
  br i1 %38429, label %38430, label %38431

38430:                                            ; preds = %38416
  br label %38474

38431:                                            ; preds = %38416
  %38432 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %38432, ptr %45, align 4, !tbaa !9
  %38433 = load ptr, ptr %5, align 8, !tbaa !5
  %38434 = getelementptr inbounds %struct.w2c_hermes, ptr %38433, i32 0, i32 6
  %38435 = load i32, ptr %45, align 4, !tbaa !9
  %38436 = zext i32 %38435 to i64
  %38437 = call i64 @i64_load(ptr noundef %38434, i64 noundef %38436)
  store i64 %38437, ptr %54, align 8, !tbaa !11
  %38438 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %38438, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %38439 = load i64, ptr %54, align 8, !tbaa !11
  %38440 = load i64, ptr %55, align 8, !tbaa !11
  %38441 = and i64 %38440, 63
  %38442 = ashr i64 %38439, %38441
  store i64 %38442, ptr %54, align 8, !tbaa !11
  %38443 = load i64, ptr %54, align 8, !tbaa !11
  %38444 = trunc i64 %38443 to i32
  store i32 %38444, ptr %45, align 4, !tbaa !9
  store i32 -3, ptr %46, align 4, !tbaa !9
  %38445 = load i32, ptr %45, align 4, !tbaa !9
  %38446 = load i32, ptr %46, align 4, !tbaa !9
  %38447 = icmp eq i32 %38445, %38446
  %38448 = zext i1 %38447 to i32
  store i32 %38448, ptr %45, align 4, !tbaa !9
  %38449 = load i32, ptr %45, align 4, !tbaa !9
  %38450 = icmp ne i32 %38449, 0
  br i1 %38450, label %38451, label %38452

38451:                                            ; preds = %38431
  br label %38621

38452:                                            ; preds = %38431
  %38453 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %38453, ptr %45, align 4, !tbaa !9
  %38454 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38454, ptr %55, align 8, !tbaa !11
  %38455 = load ptr, ptr %5, align 8, !tbaa !5
  %38456 = getelementptr inbounds %struct.w2c_hermes, ptr %38455, i32 0, i32 6
  %38457 = load i32, ptr %45, align 4, !tbaa !9
  %38458 = zext i32 %38457 to i64
  %38459 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38456, i64 noundef %38458, i64 noundef %38459)
  store i32 1, ptr %45, align 4, !tbaa !9
  %38460 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38460, ptr %13, align 4, !tbaa !9
  br label %39185

38461:                                            ; preds = %38376
  %38462 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38462, ptr %45, align 4, !tbaa !9
  store i32 1140850688, ptr %46, align 4, !tbaa !9
  %38463 = load i32, ptr %46, align 4, !tbaa !9
  %38464 = load i32, ptr %45, align 4, !tbaa !9
  %38465 = sub i32 %38464, %38463
  store i32 %38465, ptr %45, align 4, !tbaa !9
  store i32 150994943, ptr %46, align 4, !tbaa !9
  %38466 = load i32, ptr %45, align 4, !tbaa !9
  %38467 = load i32, ptr %46, align 4, !tbaa !9
  %38468 = icmp ugt i32 %38466, %38467
  %38469 = zext i1 %38468 to i32
  store i32 %38469, ptr %45, align 4, !tbaa !9
  %38470 = load i32, ptr %45, align 4, !tbaa !9
  %38471 = icmp ne i32 %38470, 0
  br i1 %38471, label %38472, label %38473

38472:                                            ; preds = %38461
  br label %38528

38473:                                            ; preds = %38461
  br label %38474

38474:                                            ; preds = %38473, %38430
  %38475 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38475, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %38476 = load i32, ptr %46, align 4, !tbaa !9
  %38477 = load i32, ptr %45, align 4, !tbaa !9
  %38478 = add i32 %38477, %38476
  store i32 %38478, ptr %45, align 4, !tbaa !9
  %38479 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38479, ptr %46, align 4, !tbaa !9
  %38480 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38480, ptr %47, align 4, !tbaa !9
  %38481 = load ptr, ptr %5, align 8, !tbaa !5
  %38482 = load i32, ptr %46, align 4, !tbaa !9
  %38483 = load i32, ptr %47, align 4, !tbaa !9
  %38484 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x28hermes0x3A0x3Avm0x3A0x3ACallable0x2A0x29(ptr noundef %38481, i32 noundef %38482, i32 noundef %38483)
  store i32 %38484, ptr %46, align 4, !tbaa !9
  %38485 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38485, ptr %47, align 4, !tbaa !9
  store i32 67208, ptr %48, align 4, !tbaa !9
  %38486 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %38486, ptr %49, align 4, !tbaa !9
  %38487 = load ptr, ptr %5, align 8, !tbaa !5
  %38488 = getelementptr inbounds %struct.w2c_hermes, ptr %38487, i32 0, i32 6
  %38489 = load i32, ptr %49, align 4, !tbaa !9
  %38490 = zext i32 %38489 to i64
  %38491 = call i64 @i64_load(ptr noundef %38488, i64 noundef %38490)
  store i64 %38491, ptr %58, align 8, !tbaa !11
  store i32 0, ptr %50, align 4, !tbaa !9
  %38492 = load ptr, ptr %5, align 8, !tbaa !5
  %38493 = load i32, ptr %45, align 4, !tbaa !9
  %38494 = load i32, ptr %46, align 4, !tbaa !9
  %38495 = load i32, ptr %47, align 4, !tbaa !9
  %38496 = load i32, ptr %48, align 4, !tbaa !9
  %38497 = load i64, ptr %58, align 8, !tbaa !11
  %38498 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall10x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20bool0x29(ptr noundef %38492, i32 noundef %38493, i32 noundef %38494, i32 noundef %38495, i32 noundef %38496, i64 noundef %38497, i32 noundef %38498)
  %38499 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38499, ptr %45, align 4, !tbaa !9
  %38500 = load ptr, ptr %5, align 8, !tbaa !5
  %38501 = getelementptr inbounds %struct.w2c_hermes, ptr %38500, i32 0, i32 6
  %38502 = load i32, ptr %45, align 4, !tbaa !9
  %38503 = zext i32 %38502 to i64
  %38504 = add i64 %38503, 32
  %38505 = call i32 @i32_load(ptr noundef %38501, i64 noundef %38504)
  store i32 %38505, ptr %45, align 4, !tbaa !9
  %38506 = load i32, ptr %45, align 4, !tbaa !9
  %38507 = icmp ne i32 %38506, 0
  %38508 = xor i1 %38507, true
  %38509 = zext i1 %38508 to i32
  store i32 %38509, ptr %45, align 4, !tbaa !9
  %38510 = load i32, ptr %45, align 4, !tbaa !9
  %38511 = icmp ne i32 %38510, 0
  br i1 %38511, label %38512, label %38513

38512:                                            ; preds = %38474
  br label %39185

38513:                                            ; preds = %38474
  %38514 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %38514, ptr %45, align 4, !tbaa !9
  %38515 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38515, ptr %46, align 4, !tbaa !9
  %38516 = load ptr, ptr %5, align 8, !tbaa !5
  %38517 = getelementptr inbounds %struct.w2c_hermes, ptr %38516, i32 0, i32 6
  %38518 = load i32, ptr %46, align 4, !tbaa !9
  %38519 = zext i32 %38518 to i64
  %38520 = add i64 %38519, 40
  %38521 = call i64 @i64_load(ptr noundef %38517, i64 noundef %38520)
  store i64 %38521, ptr %55, align 8, !tbaa !11
  %38522 = load ptr, ptr %5, align 8, !tbaa !5
  %38523 = getelementptr inbounds %struct.w2c_hermes, ptr %38522, i32 0, i32 6
  %38524 = load i32, ptr %45, align 4, !tbaa !9
  %38525 = zext i32 %38524 to i64
  %38526 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38523, i64 noundef %38525, i64 noundef %38526)
  store i32 1, ptr %45, align 4, !tbaa !9
  %38527 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38527, ptr %13, align 4, !tbaa !9
  br label %39185

38528:                                            ; preds = %38472, %38375
  %38529 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38529, ptr %45, align 4, !tbaa !9
  %38530 = load ptr, ptr %5, align 8, !tbaa !5
  %38531 = getelementptr inbounds %struct.w2c_hermes, ptr %38530, i32 0, i32 6
  %38532 = load i32, ptr %45, align 4, !tbaa !9
  %38533 = zext i32 %38532 to i64
  %38534 = add i64 %38533, 4
  %38535 = call i32 @i32_load(ptr noundef %38531, i64 noundef %38534)
  store i32 %38535, ptr %45, align 4, !tbaa !9
  %38536 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38536, ptr %7, align 4, !tbaa !9
  %38537 = load ptr, ptr %5, align 8, !tbaa !5
  %38538 = getelementptr inbounds %struct.w2c_hermes, ptr %38537, i32 0, i32 6
  %38539 = load i32, ptr %45, align 4, !tbaa !9
  %38540 = zext i32 %38539 to i64
  %38541 = add i64 %38540, 164
  %38542 = call i32 @i32_load(ptr noundef %38538, i64 noundef %38541)
  store i32 %38542, ptr %45, align 4, !tbaa !9
  %38543 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38543, ptr %6, align 4, !tbaa !9
  %38544 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38544, ptr %46, align 4, !tbaa !9
  %38545 = load ptr, ptr %5, align 8, !tbaa !5
  %38546 = getelementptr inbounds %struct.w2c_hermes, ptr %38545, i32 0, i32 6
  %38547 = load i32, ptr %46, align 4, !tbaa !9
  %38548 = zext i32 %38547 to i64
  %38549 = add i64 %38548, 168
  %38550 = call i32 @i32_load(ptr noundef %38546, i64 noundef %38549)
  store i32 %38550, ptr %46, align 4, !tbaa !9
  %38551 = load i32, ptr %45, align 4, !tbaa !9
  %38552 = load i32, ptr %46, align 4, !tbaa !9
  %38553 = icmp ult i32 %38551, %38552
  %38554 = zext i1 %38553 to i32
  store i32 %38554, ptr %45, align 4, !tbaa !9
  %38555 = load i32, ptr %45, align 4, !tbaa !9
  %38556 = icmp ne i32 %38555, 0
  br i1 %38556, label %38557, label %38576

38557:                                            ; preds = %38528
  %38558 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38558, ptr %45, align 4, !tbaa !9
  %38559 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38559, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %38560 = load i32, ptr %47, align 4, !tbaa !9
  %38561 = load i32, ptr %46, align 4, !tbaa !9
  %38562 = add i32 %38561, %38560
  store i32 %38562, ptr %46, align 4, !tbaa !9
  %38563 = load ptr, ptr %5, align 8, !tbaa !5
  %38564 = getelementptr inbounds %struct.w2c_hermes, ptr %38563, i32 0, i32 6
  %38565 = load i32, ptr %45, align 4, !tbaa !9
  %38566 = zext i32 %38565 to i64
  %38567 = add i64 %38566, 164
  %38568 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38564, i64 noundef %38567, i32 noundef %38568)
  %38569 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38569, ptr %45, align 4, !tbaa !9
  %38570 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38570, ptr %55, align 8, !tbaa !11
  %38571 = load ptr, ptr %5, align 8, !tbaa !5
  %38572 = getelementptr inbounds %struct.w2c_hermes, ptr %38571, i32 0, i32 6
  %38573 = load i32, ptr %45, align 4, !tbaa !9
  %38574 = zext i32 %38573 to i64
  %38575 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38572, i64 noundef %38574, i64 noundef %38575)
  br label %38584

38576:                                            ; preds = %38528
  %38577 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38577, ptr %45, align 4, !tbaa !9
  %38578 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %38578, ptr %55, align 8, !tbaa !11
  %38579 = load ptr, ptr %5, align 8, !tbaa !5
  %38580 = load i32, ptr %45, align 4, !tbaa !9
  %38581 = load i64, ptr %55, align 8, !tbaa !11
  %38582 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %38579, i32 noundef %38580, i64 noundef %38581)
  store i32 %38582, ptr %45, align 4, !tbaa !9
  %38583 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38583, ptr %6, align 4, !tbaa !9
  br label %38584

38584:                                            ; preds = %38576, %38557
  %38585 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38585, ptr %45, align 4, !tbaa !9
  store i32 18, ptr %46, align 4, !tbaa !9
  %38586 = load ptr, ptr %5, align 8, !tbaa !5
  %38587 = getelementptr inbounds %struct.w2c_hermes, ptr %38586, i32 0, i32 6
  %38588 = load i32, ptr %45, align 4, !tbaa !9
  %38589 = zext i32 %38588 to i64
  %38590 = add i64 %38589, 28
  %38591 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38587, i64 noundef %38590, i32 noundef %38591)
  %38592 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38592, ptr %45, align 4, !tbaa !9
  store i32 41218, ptr %46, align 4, !tbaa !9
  %38593 = load ptr, ptr %5, align 8, !tbaa !5
  %38594 = getelementptr inbounds %struct.w2c_hermes, ptr %38593, i32 0, i32 6
  %38595 = load i32, ptr %45, align 4, !tbaa !9
  %38596 = zext i32 %38595 to i64
  %38597 = add i64 %38596, 24
  %38598 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38594, i64 noundef %38597, i32 noundef %38598)
  %38599 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38599, ptr %45, align 4, !tbaa !9
  %38600 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38600, ptr %46, align 4, !tbaa !9
  %38601 = load ptr, ptr %5, align 8, !tbaa !5
  %38602 = getelementptr inbounds %struct.w2c_hermes, ptr %38601, i32 0, i32 6
  %38603 = load i32, ptr %46, align 4, !tbaa !9
  %38604 = zext i32 %38603 to i64
  %38605 = add i64 %38604, 24
  %38606 = call i64 @i64_load(ptr noundef %38602, i64 noundef %38605)
  store i64 %38606, ptr %55, align 8, !tbaa !11
  %38607 = load ptr, ptr %5, align 8, !tbaa !5
  %38608 = getelementptr inbounds %struct.w2c_hermes, ptr %38607, i32 0, i32 6
  %38609 = load i32, ptr %45, align 4, !tbaa !9
  %38610 = zext i32 %38609 to i64
  %38611 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38608, i64 noundef %38610, i64 noundef %38611)
  %38612 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %38612, ptr %45, align 4, !tbaa !9
  %38613 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38613, ptr %46, align 4, !tbaa !9
  %38614 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38614, ptr %47, align 4, !tbaa !9
  %38615 = load ptr, ptr %5, align 8, !tbaa !5
  %38616 = load i32, ptr %45, align 4, !tbaa !9
  %38617 = load i32, ptr %46, align 4, !tbaa !9
  %38618 = load i32, ptr %47, align 4, !tbaa !9
  %38619 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef %38615, i32 noundef %38616, i32 noundef %38617, i32 noundef %38618)
  store i32 %38619, ptr %45, align 4, !tbaa !9
  %38620 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38620, ptr %13, align 4, !tbaa !9
  br label %39185

38621:                                            ; preds = %38451
  %38622 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38622, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38623 = load ptr, ptr %5, align 8, !tbaa !5
  %38624 = getelementptr inbounds %struct.w2c_hermes, ptr %38623, i32 0, i32 6
  %38625 = load i32, ptr %45, align 4, !tbaa !9
  %38626 = zext i32 %38625 to i64
  %38627 = add i64 %38626, 20
  %38628 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38624, i64 noundef %38627, i32 noundef %38628)
  %38629 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38629, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %38630 = load ptr, ptr %5, align 8, !tbaa !5
  %38631 = getelementptr inbounds %struct.w2c_hermes, ptr %38630, i32 0, i32 6
  %38632 = load i32, ptr %45, align 4, !tbaa !9
  %38633 = zext i32 %38632 to i64
  %38634 = add i64 %38633, 12
  %38635 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38631, i64 noundef %38634, i64 noundef %38635)
  store i32 0, ptr %45, align 4, !tbaa !9
  %38636 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38636, ptr %6, align 4, !tbaa !9
  %38637 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %38637, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38638 = load i32, ptr %46, align 4, !tbaa !9
  %38639 = load i32, ptr %45, align 4, !tbaa !9
  %38640 = add i32 %38639, %38638
  store i32 %38640, ptr %45, align 4, !tbaa !9
  %38641 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38641, ptr %27, align 4, !tbaa !9
  %38642 = load ptr, ptr %5, align 8, !tbaa !5
  %38643 = getelementptr inbounds %struct.w2c_hermes, ptr %38642, i32 0, i32 6
  %38644 = load i32, ptr %45, align 4, !tbaa !9
  %38645 = zext i32 %38644 to i64
  %38646 = add i64 %38645, 4
  %38647 = call i32 @i32_load(ptr noundef %38643, i64 noundef %38646)
  store i32 %38647, ptr %45, align 4, !tbaa !9
  %38648 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38648, ptr %22, align 4, !tbaa !9
  %38649 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38649, ptr %46, align 4, !tbaa !9
  %38650 = load ptr, ptr %5, align 8, !tbaa !5
  %38651 = getelementptr inbounds %struct.w2c_hermes, ptr %38650, i32 0, i32 6
  %38652 = load i32, ptr %46, align 4, !tbaa !9
  %38653 = zext i32 %38652 to i64
  %38654 = call i32 @i32_load(ptr noundef %38651, i64 noundef %38653)
  store i32 %38654, ptr %46, align 4, !tbaa !9
  %38655 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %38655, ptr %25, align 4, !tbaa !9
  %38656 = load i32, ptr %46, align 4, !tbaa !9
  %38657 = load i32, ptr %45, align 4, !tbaa !9
  %38658 = sub i32 %38657, %38656
  store i32 %38658, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38659 = load i32, ptr %46, align 4, !tbaa !9
  %38660 = icmp eq i32 %38659, 0
  %38661 = xor i1 %38660, true
  %38662 = xor i1 %38661, true
  %38663 = zext i1 %38662 to i32
  %38664 = sext i32 %38663 to i64
  %38665 = call i64 @llvm.expect.i64(i64 %38664, i64 0)
  %38666 = icmp ne i64 %38665, 0
  br i1 %38666, label %38667, label %38669

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

38668:                                            ; No predecessors!
  br label %38691

38669:                                            ; preds = %38621
  %38670 = load i32, ptr %45, align 4, !tbaa !9
  %38671 = icmp eq i32 %38670, -2147483648
  br i1 %38671, label %38672, label %38675

38672:                                            ; preds = %38669
  %38673 = load i32, ptr %46, align 4, !tbaa !9
  %38674 = icmp eq i32 %38673, -1
  br label %38675

38675:                                            ; preds = %38672, %38669
  %38676 = phi i1 [ false, %38669 ], [ %38674, %38672 ]
  %38677 = xor i1 %38676, true
  %38678 = xor i1 %38677, true
  %38679 = zext i1 %38678 to i32
  %38680 = sext i32 %38679 to i64
  %38681 = call i64 @llvm.expect.i64(i64 %38680, i64 0)
  %38682 = icmp ne i64 %38681, 0
  br i1 %38682, label %38683, label %38685

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

38684:                                            ; No predecessors!
  br label %38689

38685:                                            ; preds = %38675
  %38686 = load i32, ptr %45, align 4, !tbaa !9
  %38687 = load i32, ptr %46, align 4, !tbaa !9
  %38688 = sdiv i32 %38686, %38687
  br label %38689

38689:                                            ; preds = %38685, %38684
  %38690 = phi i32 [ 0, %38684 ], [ %38688, %38685 ]
  br label %38691

38691:                                            ; preds = %38689, %38668
  %38692 = phi i32 [ 0, %38668 ], [ %38690, %38689 ]
  store i32 %38692, ptr %45, align 4, !tbaa !9
  %38693 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38693, ptr %12, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %38694 = load i32, ptr %46, align 4, !tbaa !9
  %38695 = load i32, ptr %45, align 4, !tbaa !9
  %38696 = add i32 %38695, %38694
  store i32 %38696, ptr %45, align 4, !tbaa !9
  %38697 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38697, ptr %18, align 4, !tbaa !9
  store i32 357913942, ptr %46, align 4, !tbaa !9
  %38698 = load i32, ptr %45, align 4, !tbaa !9
  %38699 = load i32, ptr %46, align 4, !tbaa !9
  %38700 = icmp ult i32 %38698, %38699
  %38701 = zext i1 %38700 to i32
  store i32 %38701, ptr %45, align 4, !tbaa !9
  %38702 = load i32, ptr %45, align 4, !tbaa !9
  %38703 = icmp ne i32 %38702, 0
  br i1 %38703, label %38704, label %39011

38704:                                            ; preds = %38691
  store i32 357913941, ptr %45, align 4, !tbaa !9
  %38705 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38705, ptr %46, align 4, !tbaa !9
  %38706 = load ptr, ptr %5, align 8, !tbaa !5
  %38707 = getelementptr inbounds %struct.w2c_hermes, ptr %38706, i32 0, i32 6
  %38708 = load i32, ptr %46, align 4, !tbaa !9
  %38709 = zext i32 %38708 to i64
  %38710 = add i64 %38709, 8
  %38711 = call i32 @i32_load(ptr noundef %38707, i64 noundef %38710)
  store i32 %38711, ptr %46, align 4, !tbaa !9
  %38712 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %38712, ptr %47, align 4, !tbaa !9
  %38713 = load i32, ptr %47, align 4, !tbaa !9
  %38714 = load i32, ptr %46, align 4, !tbaa !9
  %38715 = sub i32 %38714, %38713
  store i32 %38715, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %38716 = load i32, ptr %47, align 4, !tbaa !9
  %38717 = icmp eq i32 %38716, 0
  %38718 = xor i1 %38717, true
  %38719 = xor i1 %38718, true
  %38720 = zext i1 %38719 to i32
  %38721 = sext i32 %38720 to i64
  %38722 = call i64 @llvm.expect.i64(i64 %38721, i64 0)
  %38723 = icmp ne i64 %38722, 0
  br i1 %38723, label %38724, label %38726

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

38725:                                            ; No predecessors!
  br label %38748

38726:                                            ; preds = %38704
  %38727 = load i32, ptr %46, align 4, !tbaa !9
  %38728 = icmp eq i32 %38727, -2147483648
  br i1 %38728, label %38729, label %38732

38729:                                            ; preds = %38726
  %38730 = load i32, ptr %47, align 4, !tbaa !9
  %38731 = icmp eq i32 %38730, -1
  br label %38732

38732:                                            ; preds = %38729, %38726
  %38733 = phi i1 [ false, %38726 ], [ %38731, %38729 ]
  %38734 = xor i1 %38733, true
  %38735 = xor i1 %38734, true
  %38736 = zext i1 %38735 to i32
  %38737 = sext i32 %38736 to i64
  %38738 = call i64 @llvm.expect.i64(i64 %38737, i64 0)
  %38739 = icmp ne i64 %38738, 0
  br i1 %38739, label %38740, label %38742

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

38741:                                            ; No predecessors!
  br label %38746

38742:                                            ; preds = %38732
  %38743 = load i32, ptr %46, align 4, !tbaa !9
  %38744 = load i32, ptr %47, align 4, !tbaa !9
  %38745 = sdiv i32 %38743, %38744
  br label %38746

38746:                                            ; preds = %38742, %38741
  %38747 = phi i32 [ 0, %38741 ], [ %38745, %38742 ]
  br label %38748

38748:                                            ; preds = %38746, %38725
  %38749 = phi i32 [ 0, %38725 ], [ %38747, %38746 ]
  store i32 %38749, ptr %46, align 4, !tbaa !9
  %38750 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %38750, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %38751 = load i32, ptr %47, align 4, !tbaa !9
  %38752 = and i32 %38751, 31
  %38753 = load i32, ptr %46, align 4, !tbaa !9
  %38754 = shl i32 %38753, %38752
  store i32 %38754, ptr %46, align 4, !tbaa !9
  %38755 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %38755, ptr %7, align 4, !tbaa !9
  %38756 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %38756, ptr %47, align 4, !tbaa !9
  %38757 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38757, ptr %48, align 4, !tbaa !9
  %38758 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %38758, ptr %49, align 4, !tbaa !9
  %38759 = load i32, ptr %48, align 4, !tbaa !9
  %38760 = load i32, ptr %49, align 4, !tbaa !9
  %38761 = icmp ugt i32 %38759, %38760
  %38762 = zext i1 %38761 to i32
  store i32 %38762, ptr %48, align 4, !tbaa !9
  %38763 = load i32, ptr %48, align 4, !tbaa !9
  %38764 = icmp ne i32 %38763, 0
  br i1 %38764, label %38765, label %38767

38765:                                            ; preds = %38748
  %38766 = load i32, ptr %46, align 4, !tbaa !9
  br label %38769

38767:                                            ; preds = %38748
  %38768 = load i32, ptr %47, align 4, !tbaa !9
  br label %38769

38769:                                            ; preds = %38767, %38765
  %38770 = phi i32 [ %38766, %38765 ], [ %38768, %38767 ]
  store i32 %38770, ptr %46, align 4, !tbaa !9
  %38771 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38771, ptr %47, align 4, !tbaa !9
  store i32 178956970, ptr %48, align 4, !tbaa !9
  %38772 = load i32, ptr %47, align 4, !tbaa !9
  %38773 = load i32, ptr %48, align 4, !tbaa !9
  %38774 = icmp uge i32 %38772, %38773
  %38775 = zext i1 %38774 to i32
  store i32 %38775, ptr %47, align 4, !tbaa !9
  %38776 = load i32, ptr %47, align 4, !tbaa !9
  %38777 = icmp ne i32 %38776, 0
  br i1 %38777, label %38778, label %38780

38778:                                            ; preds = %38769
  %38779 = load i32, ptr %45, align 4, !tbaa !9
  br label %38782

38780:                                            ; preds = %38769
  %38781 = load i32, ptr %46, align 4, !tbaa !9
  br label %38782

38782:                                            ; preds = %38780, %38778
  %38783 = phi i32 [ %38779, %38778 ], [ %38781, %38780 ]
  store i32 %38783, ptr %45, align 4, !tbaa !9
  %38784 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38784, ptr %7, align 4, !tbaa !9
  %38785 = load i32, ptr %45, align 4, !tbaa !9
  %38786 = icmp ne i32 %38785, 0
  br i1 %38786, label %38787, label %38805

38787:                                            ; preds = %38782
  %38788 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38788, ptr %45, align 4, !tbaa !9
  store i32 357913942, ptr %46, align 4, !tbaa !9
  %38789 = load i32, ptr %45, align 4, !tbaa !9
  %38790 = load i32, ptr %46, align 4, !tbaa !9
  %38791 = icmp uge i32 %38789, %38790
  %38792 = zext i1 %38791 to i32
  store i32 %38792, ptr %45, align 4, !tbaa !9
  %38793 = load i32, ptr %45, align 4, !tbaa !9
  %38794 = icmp ne i32 %38793, 0
  br i1 %38794, label %38795, label %38796

38795:                                            ; preds = %38787
  br label %39013

38796:                                            ; preds = %38787
  %38797 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38797, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38798 = load i32, ptr %46, align 4, !tbaa !9
  %38799 = load i32, ptr %45, align 4, !tbaa !9
  %38800 = mul i32 %38799, %38798
  store i32 %38800, ptr %45, align 4, !tbaa !9
  %38801 = load ptr, ptr %5, align 8, !tbaa !5
  %38802 = load i32, ptr %45, align 4, !tbaa !9
  %38803 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %38801, i32 noundef %38802)
  store i32 %38803, ptr %45, align 4, !tbaa !9
  %38804 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38804, ptr %6, align 4, !tbaa !9
  br label %38805

38805:                                            ; preds = %38796, %38782
  %38806 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38806, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38807 = load i32, ptr %46, align 4, !tbaa !9
  %38808 = load i32, ptr %45, align 4, !tbaa !9
  %38809 = mul i32 %38808, %38807
  store i32 %38809, ptr %45, align 4, !tbaa !9
  %38810 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38810, ptr %46, align 4, !tbaa !9
  %38811 = load i32, ptr %46, align 4, !tbaa !9
  %38812 = load i32, ptr %45, align 4, !tbaa !9
  %38813 = add i32 %38812, %38811
  store i32 %38813, ptr %45, align 4, !tbaa !9
  %38814 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38814, ptr %12, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %38815 = load ptr, ptr %5, align 8, !tbaa !5
  %38816 = getelementptr inbounds %struct.w2c_hermes, ptr %38815, i32 0, i32 6
  %38817 = load i32, ptr %45, align 4, !tbaa !9
  %38818 = zext i32 %38817 to i64
  %38819 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38816, i64 noundef %38818, i64 noundef %38819)
  %38820 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38820, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38821 = load ptr, ptr %5, align 8, !tbaa !5
  %38822 = getelementptr inbounds %struct.w2c_hermes, ptr %38821, i32 0, i32 6
  %38823 = load i32, ptr %45, align 4, !tbaa !9
  %38824 = zext i32 %38823 to i64
  %38825 = add i64 %38824, 8
  %38826 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38822, i64 noundef %38825, i32 noundef %38826)
  %38827 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38827, ptr %45, align 4, !tbaa !9
  %38828 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38828, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %38829 = load i32, ptr %47, align 4, !tbaa !9
  %38830 = load i32, ptr %46, align 4, !tbaa !9
  %38831 = mul i32 %38830, %38829
  store i32 %38831, ptr %46, align 4, !tbaa !9
  %38832 = load i32, ptr %46, align 4, !tbaa !9
  %38833 = load i32, ptr %45, align 4, !tbaa !9
  %38834 = add i32 %38833, %38832
  store i32 %38834, ptr %45, align 4, !tbaa !9
  %38835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38835, ptr %6, align 4, !tbaa !9
  %38836 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38836, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38837 = load i32, ptr %46, align 4, !tbaa !9
  %38838 = load i32, ptr %45, align 4, !tbaa !9
  %38839 = add i32 %38838, %38837
  store i32 %38839, ptr %45, align 4, !tbaa !9
  %38840 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38840, ptr %7, align 4, !tbaa !9
  %38841 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38841, ptr %45, align 4, !tbaa !9
  %38842 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %38842, ptr %46, align 4, !tbaa !9
  %38843 = load i32, ptr %45, align 4, !tbaa !9
  %38844 = load i32, ptr %46, align 4, !tbaa !9
  %38845 = icmp eq i32 %38843, %38844
  %38846 = zext i1 %38845 to i32
  store i32 %38846, ptr %45, align 4, !tbaa !9
  %38847 = load i32, ptr %45, align 4, !tbaa !9
  %38848 = icmp ne i32 %38847, 0
  br i1 %38848, label %38849, label %38850

38849:                                            ; preds = %38805
  br label %39015

38850:                                            ; preds = %38805
  br label %38851

38851:                                            ; preds = %38921, %38850
  %38852 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38852, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38853 = load i32, ptr %46, align 4, !tbaa !9
  %38854 = load i32, ptr %45, align 4, !tbaa !9
  %38855 = sub i32 %38854, %38853
  store i32 %38855, ptr %45, align 4, !tbaa !9
  %38856 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38856, ptr %12, align 4, !tbaa !9
  %38857 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38857, ptr %46, align 4, !tbaa !9
  store i32 12, ptr %47, align 4, !tbaa !9
  %38858 = load i32, ptr %47, align 4, !tbaa !9
  %38859 = load i32, ptr %46, align 4, !tbaa !9
  %38860 = sub i32 %38859, %38858
  store i32 %38860, ptr %46, align 4, !tbaa !9
  %38861 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %38861, ptr %22, align 4, !tbaa !9
  %38862 = load ptr, ptr %5, align 8, !tbaa !5
  %38863 = getelementptr inbounds %struct.w2c_hermes, ptr %38862, i32 0, i32 6
  %38864 = load i32, ptr %46, align 4, !tbaa !9
  %38865 = zext i32 %38864 to i64
  %38866 = call i32 @i32_load(ptr noundef %38863, i64 noundef %38865)
  store i32 %38866, ptr %46, align 4, !tbaa !9
  %38867 = load ptr, ptr %5, align 8, !tbaa !5
  %38868 = getelementptr inbounds %struct.w2c_hermes, ptr %38867, i32 0, i32 6
  %38869 = load i32, ptr %45, align 4, !tbaa !9
  %38870 = zext i32 %38869 to i64
  %38871 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38868, i64 noundef %38870, i32 noundef %38871)
  %38872 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38872, ptr %45, align 4, !tbaa !9
  %38873 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38873, ptr %46, align 4, !tbaa !9
  %38874 = load ptr, ptr %5, align 8, !tbaa !5
  %38875 = getelementptr inbounds %struct.w2c_hermes, ptr %38874, i32 0, i32 6
  %38876 = load i32, ptr %46, align 4, !tbaa !9
  %38877 = zext i32 %38876 to i64
  %38878 = add i64 %38877, 4
  %38879 = call i32 @i32_load(ptr noundef %38875, i64 noundef %38878)
  store i32 %38879, ptr %46, align 4, !tbaa !9
  %38880 = load ptr, ptr %5, align 8, !tbaa !5
  %38881 = getelementptr inbounds %struct.w2c_hermes, ptr %38880, i32 0, i32 6
  %38882 = load i32, ptr %45, align 4, !tbaa !9
  %38883 = zext i32 %38882 to i64
  %38884 = add i64 %38883, 4
  %38885 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38881, i64 noundef %38884, i32 noundef %38885)
  %38886 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38886, ptr %45, align 4, !tbaa !9
  %38887 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38887, ptr %46, align 4, !tbaa !9
  %38888 = load ptr, ptr %5, align 8, !tbaa !5
  %38889 = getelementptr inbounds %struct.w2c_hermes, ptr %38888, i32 0, i32 6
  %38890 = load i32, ptr %46, align 4, !tbaa !9
  %38891 = zext i32 %38890 to i64
  %38892 = add i64 %38891, 8
  %38893 = call i32 @i32_load(ptr noundef %38889, i64 noundef %38892)
  store i32 %38893, ptr %46, align 4, !tbaa !9
  %38894 = load ptr, ptr %5, align 8, !tbaa !5
  %38895 = getelementptr inbounds %struct.w2c_hermes, ptr %38894, i32 0, i32 6
  %38896 = load i32, ptr %45, align 4, !tbaa !9
  %38897 = zext i32 %38896 to i64
  %38898 = add i64 %38897, 8
  %38899 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38895, i64 noundef %38898, i32 noundef %38899)
  %38900 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38900, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %38901 = load ptr, ptr %5, align 8, !tbaa !5
  %38902 = getelementptr inbounds %struct.w2c_hermes, ptr %38901, i32 0, i32 6
  %38903 = load i32, ptr %45, align 4, !tbaa !9
  %38904 = zext i32 %38903 to i64
  %38905 = add i64 %38904, 8
  %38906 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38902, i64 noundef %38905, i32 noundef %38906)
  %38907 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38907, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %38908 = load ptr, ptr %5, align 8, !tbaa !5
  %38909 = getelementptr inbounds %struct.w2c_hermes, ptr %38908, i32 0, i32 6
  %38910 = load i32, ptr %45, align 4, !tbaa !9
  %38911 = zext i32 %38910 to i64
  %38912 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %38909, i64 noundef %38911, i64 noundef %38912)
  %38913 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38913, ptr %45, align 4, !tbaa !9
  %38914 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %38914, ptr %46, align 4, !tbaa !9
  %38915 = load i32, ptr %45, align 4, !tbaa !9
  %38916 = load i32, ptr %46, align 4, !tbaa !9
  %38917 = icmp ne i32 %38915, %38916
  %38918 = zext i1 %38917 to i32
  store i32 %38918, ptr %45, align 4, !tbaa !9
  %38919 = load i32, ptr %45, align 4, !tbaa !9
  %38920 = icmp ne i32 %38919, 0
  br i1 %38920, label %38921, label %38922

38921:                                            ; preds = %38851
  br label %38851

38922:                                            ; preds = %38851
  %38923 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38923, ptr %45, align 4, !tbaa !9
  %38924 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38924, ptr %46, align 4, !tbaa !9
  %38925 = load ptr, ptr %5, align 8, !tbaa !5
  %38926 = getelementptr inbounds %struct.w2c_hermes, ptr %38925, i32 0, i32 6
  %38927 = load i32, ptr %45, align 4, !tbaa !9
  %38928 = zext i32 %38927 to i64
  %38929 = add i64 %38928, 8
  %38930 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38926, i64 noundef %38929, i32 noundef %38930)
  %38931 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38931, ptr %45, align 4, !tbaa !9
  %38932 = load ptr, ptr %5, align 8, !tbaa !5
  %38933 = getelementptr inbounds %struct.w2c_hermes, ptr %38932, i32 0, i32 6
  %38934 = load i32, ptr %45, align 4, !tbaa !9
  %38935 = zext i32 %38934 to i64
  %38936 = add i64 %38935, 4
  %38937 = call i32 @i32_load(ptr noundef %38933, i64 noundef %38936)
  store i32 %38937, ptr %45, align 4, !tbaa !9
  %38938 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38938, ptr %6, align 4, !tbaa !9
  %38939 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38939, ptr %45, align 4, !tbaa !9
  %38940 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %38940, ptr %46, align 4, !tbaa !9
  %38941 = load ptr, ptr %5, align 8, !tbaa !5
  %38942 = getelementptr inbounds %struct.w2c_hermes, ptr %38941, i32 0, i32 6
  %38943 = load i32, ptr %45, align 4, !tbaa !9
  %38944 = zext i32 %38943 to i64
  %38945 = add i64 %38944, 4
  %38946 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38942, i64 noundef %38945, i32 noundef %38946)
  %38947 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38947, ptr %45, align 4, !tbaa !9
  %38948 = load ptr, ptr %5, align 8, !tbaa !5
  %38949 = getelementptr inbounds %struct.w2c_hermes, ptr %38948, i32 0, i32 6
  %38950 = load i32, ptr %45, align 4, !tbaa !9
  %38951 = zext i32 %38950 to i64
  %38952 = call i32 @i32_load(ptr noundef %38949, i64 noundef %38951)
  store i32 %38952, ptr %45, align 4, !tbaa !9
  %38953 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38953, ptr %22, align 4, !tbaa !9
  %38954 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %38954, ptr %45, align 4, !tbaa !9
  %38955 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %38955, ptr %46, align 4, !tbaa !9
  %38956 = load ptr, ptr %5, align 8, !tbaa !5
  %38957 = getelementptr inbounds %struct.w2c_hermes, ptr %38956, i32 0, i32 6
  %38958 = load i32, ptr %45, align 4, !tbaa !9
  %38959 = zext i32 %38958 to i64
  %38960 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38957, i64 noundef %38959, i32 noundef %38960)
  %38961 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38961, ptr %45, align 4, !tbaa !9
  %38962 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %38962, ptr %46, align 4, !tbaa !9
  %38963 = load i32, ptr %45, align 4, !tbaa !9
  %38964 = load i32, ptr %46, align 4, !tbaa !9
  %38965 = icmp eq i32 %38963, %38964
  %38966 = zext i1 %38965 to i32
  store i32 %38966, ptr %45, align 4, !tbaa !9
  %38967 = load i32, ptr %45, align 4, !tbaa !9
  %38968 = icmp ne i32 %38967, 0
  br i1 %38968, label %38969, label %38970

38969:                                            ; preds = %38922
  br label %39039

38970:                                            ; preds = %38922
  br label %38971

38971:                                            ; preds = %39009, %38970
  %38972 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38972, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %38973 = load i32, ptr %46, align 4, !tbaa !9
  %38974 = load i32, ptr %45, align 4, !tbaa !9
  %38975 = sub i32 %38974, %38973
  store i32 %38975, ptr %45, align 4, !tbaa !9
  %38976 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38976, ptr %7, align 4, !tbaa !9
  %38977 = load ptr, ptr %5, align 8, !tbaa !5
  %38978 = getelementptr inbounds %struct.w2c_hermes, ptr %38977, i32 0, i32 6
  %38979 = load i32, ptr %45, align 4, !tbaa !9
  %38980 = zext i32 %38979 to i64
  %38981 = call i32 @i32_load(ptr noundef %38978, i64 noundef %38980)
  store i32 %38981, ptr %45, align 4, !tbaa !9
  %38982 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %38982, ptr %8, align 4, !tbaa !9
  %38983 = load i32, ptr %45, align 4, !tbaa !9
  %38984 = icmp ne i32 %38983, 0
  br i1 %38984, label %38985, label %38999

38985:                                            ; preds = %38971
  %38986 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %38986, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %38987 = load i32, ptr %46, align 4, !tbaa !9
  %38988 = load i32, ptr %45, align 4, !tbaa !9
  %38989 = sub i32 %38988, %38987
  store i32 %38989, ptr %45, align 4, !tbaa !9
  %38990 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38990, ptr %46, align 4, !tbaa !9
  %38991 = load ptr, ptr %5, align 8, !tbaa !5
  %38992 = getelementptr inbounds %struct.w2c_hermes, ptr %38991, i32 0, i32 6
  %38993 = load i32, ptr %45, align 4, !tbaa !9
  %38994 = zext i32 %38993 to i64
  %38995 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %38992, i64 noundef %38994, i32 noundef %38995)
  %38996 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %38996, ptr %45, align 4, !tbaa !9
  %38997 = load ptr, ptr %5, align 8, !tbaa !5
  %38998 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %38997, i32 noundef %38998)
  br label %38999

38999:                                            ; preds = %38985, %38971
  %39000 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39000, ptr %45, align 4, !tbaa !9
  %39001 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39001, ptr %6, align 4, !tbaa !9
  %39002 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %39002, ptr %46, align 4, !tbaa !9
  %39003 = load i32, ptr %45, align 4, !tbaa !9
  %39004 = load i32, ptr %46, align 4, !tbaa !9
  %39005 = icmp ne i32 %39003, %39004
  %39006 = zext i1 %39005 to i32
  store i32 %39006, ptr %45, align 4, !tbaa !9
  %39007 = load i32, ptr %45, align 4, !tbaa !9
  %39008 = icmp ne i32 %39007, 0
  br i1 %39008, label %39009, label %39010

39009:                                            ; preds = %38999
  br label %38971

39010:                                            ; preds = %38999
  br label %39039

39011:                                            ; preds = %38691
  %39012 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_abort(ptr noundef %39012)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

39013:                                            ; preds = %38795
  %39014 = load ptr, ptr %5, align 8, !tbaa !5
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef %39014)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

39015:                                            ; preds = %38849
  %39016 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %39016, ptr %45, align 4, !tbaa !9
  %39017 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39017, ptr %46, align 4, !tbaa !9
  %39018 = load ptr, ptr %5, align 8, !tbaa !5
  %39019 = getelementptr inbounds %struct.w2c_hermes, ptr %39018, i32 0, i32 6
  %39020 = load i32, ptr %45, align 4, !tbaa !9
  %39021 = zext i32 %39020 to i64
  %39022 = add i64 %39021, 8
  %39023 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39019, i64 noundef %39022, i32 noundef %39023)
  %39024 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %39024, ptr %45, align 4, !tbaa !9
  %39025 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39025, ptr %46, align 4, !tbaa !9
  %39026 = load ptr, ptr %5, align 8, !tbaa !5
  %39027 = getelementptr inbounds %struct.w2c_hermes, ptr %39026, i32 0, i32 6
  %39028 = load i32, ptr %45, align 4, !tbaa !9
  %39029 = zext i32 %39028 to i64
  %39030 = add i64 %39029, 4
  %39031 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39027, i64 noundef %39030, i32 noundef %39031)
  %39032 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %39032, ptr %45, align 4, !tbaa !9
  %39033 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %39033, ptr %46, align 4, !tbaa !9
  %39034 = load ptr, ptr %5, align 8, !tbaa !5
  %39035 = getelementptr inbounds %struct.w2c_hermes, ptr %39034, i32 0, i32 6
  %39036 = load i32, ptr %45, align 4, !tbaa !9
  %39037 = zext i32 %39036 to i64
  %39038 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39035, i64 noundef %39037, i32 noundef %39038)
  br label %39039

39039:                                            ; preds = %39015, %39010, %38969
  %39040 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %39040, ptr %45, align 4, !tbaa !9
  %39041 = load i32, ptr %45, align 4, !tbaa !9
  %39042 = icmp ne i32 %39041, 0
  br i1 %39042, label %39043, label %39047

39043:                                            ; preds = %39039
  %39044 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %39044, ptr %45, align 4, !tbaa !9
  %39045 = load ptr, ptr %5, align 8, !tbaa !5
  %39046 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %39045, i32 noundef %39046)
  br label %39047

39047:                                            ; preds = %39043, %39039
  %39048 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39048, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %39049 = load i32, ptr %46, align 4, !tbaa !9
  %39050 = load i32, ptr %45, align 4, !tbaa !9
  %39051 = add i32 %39050, %39049
  store i32 %39051, ptr %45, align 4, !tbaa !9
  %39052 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39052, ptr %46, align 4, !tbaa !9
  %39053 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %39053, ptr %47, align 4, !tbaa !9
  %39054 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %39054, ptr %48, align 4, !tbaa !9
  %39055 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39055, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %39056 = load i32, ptr %49, align 4, !tbaa !9
  %39057 = load i32, ptr %50, align 4, !tbaa !9
  %39058 = icmp ne i32 %39056, %39057
  %39059 = zext i1 %39058 to i32
  store i32 %39059, ptr %49, align 4, !tbaa !9
  store i32 0, ptr %50, align 4, !tbaa !9
  %39060 = load ptr, ptr %5, align 8, !tbaa !5
  %39061 = load i32, ptr %45, align 4, !tbaa !9
  %39062 = load i32, ptr %46, align 4, !tbaa !9
  %39063 = load i32, ptr %47, align 4, !tbaa !9
  %39064 = load i32, ptr %48, align 4, !tbaa !9
  %39065 = load i32, ptr %49, align 4, !tbaa !9
  %39066 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdirectEval0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3AScopeChain0x20const0x260x2C0x20bool0x2C0x20bool0x29(ptr noundef %39060, i32 noundef %39061, i32 noundef %39062, i32 noundef %39063, i32 noundef %39064, i32 noundef %39065, i32 noundef %39066)
  %39067 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39067, ptr %45, align 4, !tbaa !9
  %39068 = load ptr, ptr %5, align 8, !tbaa !5
  %39069 = getelementptr inbounds %struct.w2c_hermes, ptr %39068, i32 0, i32 6
  %39070 = load i32, ptr %45, align 4, !tbaa !9
  %39071 = zext i32 %39070 to i64
  %39072 = add i64 %39071, 32
  %39073 = call i32 @i32_load(ptr noundef %39069, i64 noundef %39072)
  store i32 %39073, ptr %45, align 4, !tbaa !9
  %39074 = load i32, ptr %45, align 4, !tbaa !9
  %39075 = icmp ne i32 %39074, 0
  br i1 %39075, label %39076, label %39091

39076:                                            ; preds = %39047
  %39077 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %39077, ptr %45, align 4, !tbaa !9
  %39078 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39078, ptr %46, align 4, !tbaa !9
  %39079 = load ptr, ptr %5, align 8, !tbaa !5
  %39080 = getelementptr inbounds %struct.w2c_hermes, ptr %39079, i32 0, i32 6
  %39081 = load i32, ptr %46, align 4, !tbaa !9
  %39082 = zext i32 %39081 to i64
  %39083 = add i64 %39082, 40
  %39084 = call i64 @i64_load(ptr noundef %39080, i64 noundef %39083)
  store i64 %39084, ptr %55, align 8, !tbaa !11
  %39085 = load ptr, ptr %5, align 8, !tbaa !5
  %39086 = getelementptr inbounds %struct.w2c_hermes, ptr %39085, i32 0, i32 6
  %39087 = load i32, ptr %45, align 4, !tbaa !9
  %39088 = zext i32 %39087 to i64
  %39089 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39086, i64 noundef %39088, i64 noundef %39089)
  store i32 1, ptr %45, align 4, !tbaa !9
  %39090 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39090, ptr %13, align 4, !tbaa !9
  br label %39091

39091:                                            ; preds = %39076, %39047
  %39092 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39092, ptr %45, align 4, !tbaa !9
  %39093 = load ptr, ptr %5, align 8, !tbaa !5
  %39094 = getelementptr inbounds %struct.w2c_hermes, ptr %39093, i32 0, i32 6
  %39095 = load i32, ptr %45, align 4, !tbaa !9
  %39096 = zext i32 %39095 to i64
  %39097 = add i64 %39096, 12
  %39098 = call i32 @i32_load(ptr noundef %39094, i64 noundef %39097)
  store i32 %39098, ptr %45, align 4, !tbaa !9
  %39099 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39099, ptr %8, align 4, !tbaa !9
  %39100 = load i32, ptr %45, align 4, !tbaa !9
  %39101 = icmp ne i32 %39100, 0
  %39102 = xor i1 %39101, true
  %39103 = zext i1 %39102 to i32
  store i32 %39103, ptr %45, align 4, !tbaa !9
  %39104 = load i32, ptr %45, align 4, !tbaa !9
  %39105 = icmp ne i32 %39104, 0
  br i1 %39105, label %39106, label %39107

39106:                                            ; preds = %39091
  br label %39185

39107:                                            ; preds = %39091
  %39108 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39108, ptr %45, align 4, !tbaa !9
  %39109 = load ptr, ptr %5, align 8, !tbaa !5
  %39110 = getelementptr inbounds %struct.w2c_hermes, ptr %39109, i32 0, i32 6
  %39111 = load i32, ptr %45, align 4, !tbaa !9
  %39112 = zext i32 %39111 to i64
  %39113 = add i64 %39112, 16
  %39114 = call i32 @i32_load(ptr noundef %39110, i64 noundef %39113)
  store i32 %39114, ptr %45, align 4, !tbaa !9
  %39115 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39115, ptr %6, align 4, !tbaa !9
  %39116 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %39116, ptr %46, align 4, !tbaa !9
  %39117 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %39117, ptr %7, align 4, !tbaa !9
  %39118 = load i32, ptr %45, align 4, !tbaa !9
  %39119 = load i32, ptr %46, align 4, !tbaa !9
  %39120 = icmp ne i32 %39118, %39119
  %39121 = zext i1 %39120 to i32
  store i32 %39121, ptr %45, align 4, !tbaa !9
  %39122 = load i32, ptr %45, align 4, !tbaa !9
  %39123 = icmp ne i32 %39122, 0
  br i1 %39123, label %39124, label %39173

39124:                                            ; preds = %39107
  br label %39125

39125:                                            ; preds = %39163, %39124
  %39126 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39126, ptr %45, align 4, !tbaa !9
  store i32 12, ptr %46, align 4, !tbaa !9
  %39127 = load i32, ptr %46, align 4, !tbaa !9
  %39128 = load i32, ptr %45, align 4, !tbaa !9
  %39129 = sub i32 %39128, %39127
  store i32 %39129, ptr %45, align 4, !tbaa !9
  %39130 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39130, ptr %7, align 4, !tbaa !9
  %39131 = load ptr, ptr %5, align 8, !tbaa !5
  %39132 = getelementptr inbounds %struct.w2c_hermes, ptr %39131, i32 0, i32 6
  %39133 = load i32, ptr %45, align 4, !tbaa !9
  %39134 = zext i32 %39133 to i64
  %39135 = call i32 @i32_load(ptr noundef %39132, i64 noundef %39134)
  store i32 %39135, ptr %45, align 4, !tbaa !9
  %39136 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39136, ptr %12, align 4, !tbaa !9
  %39137 = load i32, ptr %45, align 4, !tbaa !9
  %39138 = icmp ne i32 %39137, 0
  br i1 %39138, label %39139, label %39153

39139:                                            ; preds = %39125
  %39140 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39140, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %39141 = load i32, ptr %46, align 4, !tbaa !9
  %39142 = load i32, ptr %45, align 4, !tbaa !9
  %39143 = sub i32 %39142, %39141
  store i32 %39143, ptr %45, align 4, !tbaa !9
  %39144 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %39144, ptr %46, align 4, !tbaa !9
  %39145 = load ptr, ptr %5, align 8, !tbaa !5
  %39146 = getelementptr inbounds %struct.w2c_hermes, ptr %39145, i32 0, i32 6
  %39147 = load i32, ptr %45, align 4, !tbaa !9
  %39148 = zext i32 %39147 to i64
  %39149 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39146, i64 noundef %39148, i32 noundef %39149)
  %39150 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %39150, ptr %45, align 4, !tbaa !9
  %39151 = load ptr, ptr %5, align 8, !tbaa !5
  %39152 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %39151, i32 noundef %39152)
  br label %39153

39153:                                            ; preds = %39139, %39125
  %39154 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39154, ptr %45, align 4, !tbaa !9
  %39155 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39155, ptr %6, align 4, !tbaa !9
  %39156 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %39156, ptr %46, align 4, !tbaa !9
  %39157 = load i32, ptr %45, align 4, !tbaa !9
  %39158 = load i32, ptr %46, align 4, !tbaa !9
  %39159 = icmp ne i32 %39157, %39158
  %39160 = zext i1 %39159 to i32
  store i32 %39160, ptr %45, align 4, !tbaa !9
  %39161 = load i32, ptr %45, align 4, !tbaa !9
  %39162 = icmp ne i32 %39161, 0
  br i1 %39162, label %39163, label %39164

39163:                                            ; preds = %39153
  br label %39125

39164:                                            ; preds = %39153
  %39165 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39165, ptr %45, align 4, !tbaa !9
  %39166 = load ptr, ptr %5, align 8, !tbaa !5
  %39167 = getelementptr inbounds %struct.w2c_hermes, ptr %39166, i32 0, i32 6
  %39168 = load i32, ptr %45, align 4, !tbaa !9
  %39169 = zext i32 %39168 to i64
  %39170 = add i64 %39169, 12
  %39171 = call i32 @i32_load(ptr noundef %39167, i64 noundef %39170)
  store i32 %39171, ptr %45, align 4, !tbaa !9
  %39172 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39172, ptr %7, align 4, !tbaa !9
  br label %39173

39173:                                            ; preds = %39164, %39107
  %39174 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39174, ptr %45, align 4, !tbaa !9
  %39175 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %39175, ptr %46, align 4, !tbaa !9
  %39176 = load ptr, ptr %5, align 8, !tbaa !5
  %39177 = getelementptr inbounds %struct.w2c_hermes, ptr %39176, i32 0, i32 6
  %39178 = load i32, ptr %45, align 4, !tbaa !9
  %39179 = zext i32 %39178 to i64
  %39180 = add i64 %39179, 16
  %39181 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39177, i64 noundef %39180, i32 noundef %39181)
  %39182 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39182, ptr %45, align 4, !tbaa !9
  %39183 = load ptr, ptr %5, align 8, !tbaa !5
  %39184 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %39183, i32 noundef %39184)
  br label %39185

39185:                                            ; preds = %39173, %39106, %38584, %38513, %38512, %38452, %38359
  %39186 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %39186, ptr %45, align 4, !tbaa !9
  %39187 = load ptr, ptr %5, align 8, !tbaa !5
  %39188 = getelementptr inbounds %struct.w2c_hermes, ptr %39187, i32 0, i32 6
  %39189 = load i32, ptr %45, align 4, !tbaa !9
  %39190 = zext i32 %39189 to i64
  %39191 = add i64 %39190, 136
  %39192 = call i32 @i32_load(ptr noundef %39188, i64 noundef %39191)
  store i32 %39192, ptr %45, align 4, !tbaa !9
  %39193 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %39193, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %39194 = load i32, ptr %47, align 4, !tbaa !9
  %39195 = and i32 %39194, 31
  %39196 = load i32, ptr %46, align 4, !tbaa !9
  %39197 = shl i32 %39196, %39195
  store i32 %39197, ptr %46, align 4, !tbaa !9
  %39198 = load i32, ptr %46, align 4, !tbaa !9
  %39199 = load i32, ptr %45, align 4, !tbaa !9
  %39200 = add i32 %39199, %39198
  store i32 %39200, ptr %45, align 4, !tbaa !9
  %39201 = load ptr, ptr %5, align 8, !tbaa !5
  %39202 = getelementptr inbounds %struct.w2c_hermes, ptr %39201, i32 0, i32 6
  %39203 = load i32, ptr %45, align 4, !tbaa !9
  %39204 = zext i32 %39203 to i64
  %39205 = call i32 @i32_load(ptr noundef %39202, i64 noundef %39204)
  store i32 %39205, ptr %45, align 4, !tbaa !9
  %39206 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39206, ptr %6, align 4, !tbaa !9
  %39207 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %39207, ptr %45, align 4, !tbaa !9
  %39208 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %39208, ptr %46, align 4, !tbaa !9
  %39209 = load ptr, ptr %5, align 8, !tbaa !5
  %39210 = getelementptr inbounds %struct.w2c_hermes, ptr %39209, i32 0, i32 6
  %39211 = load i32, ptr %45, align 4, !tbaa !9
  %39212 = zext i32 %39211 to i64
  %39213 = add i64 %39212, 172
  %39214 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39210, i64 noundef %39213, i32 noundef %39214)
  %39215 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %39215, ptr %45, align 4, !tbaa !9
  %39216 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39216, ptr %46, align 4, !tbaa !9
  %39217 = load ptr, ptr %5, align 8, !tbaa !5
  %39218 = getelementptr inbounds %struct.w2c_hermes, ptr %39217, i32 0, i32 6
  %39219 = load i32, ptr %45, align 4, !tbaa !9
  %39220 = zext i32 %39219 to i64
  %39221 = add i64 %39220, 164
  %39222 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39218, i64 noundef %39221, i32 noundef %39222)
  %39223 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %39223, ptr %45, align 4, !tbaa !9
  %39224 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39224, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %39225 = load i32, ptr %47, align 4, !tbaa !9
  %39226 = load i32, ptr %46, align 4, !tbaa !9
  %39227 = add i32 %39226, %39225
  store i32 %39227, ptr %46, align 4, !tbaa !9
  %39228 = load ptr, ptr %5, align 8, !tbaa !5
  %39229 = getelementptr inbounds %struct.w2c_hermes, ptr %39228, i32 0, i32 6
  %39230 = load i32, ptr %45, align 4, !tbaa !9
  %39231 = zext i32 %39230 to i64
  %39232 = add i64 %39231, 168
  %39233 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39229, i64 noundef %39232, i32 noundef %39233)
  %39234 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %39234, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %39235 = load i32, ptr %46, align 4, !tbaa !9
  %39236 = load i32, ptr %45, align 4, !tbaa !9
  %39237 = sub i32 %39236, %39235
  store i32 %39237, ptr %45, align 4, !tbaa !9
  %39238 = load i32, ptr %45, align 4, !tbaa !9
  %39239 = load ptr, ptr %5, align 8, !tbaa !5
  %39240 = getelementptr inbounds %struct.w2c_hermes, ptr %39239, i32 0, i32 3
  store i32 %39238, ptr %39240, align 8, !tbaa !15
  %39241 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39241, ptr %45, align 4, !tbaa !9
  %39242 = load ptr, ptr %5, align 8, !tbaa !5
  %39243 = getelementptr inbounds %struct.w2c_hermes, ptr %39242, i32 0, i32 6
  %39244 = load i32, ptr %45, align 4, !tbaa !9
  %39245 = zext i32 %39244 to i64
  %39246 = add i64 %39245, 5808
  %39247 = call i32 @i32_load(ptr noundef %39243, i64 noundef %39246)
  store i32 %39247, ptr %45, align 4, !tbaa !9
  %39248 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39248, ptr %6, align 4, !tbaa !9
  %39249 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %39249, ptr %45, align 4, !tbaa !9
  %39250 = load i32, ptr %45, align 4, !tbaa !9
  %39251 = icmp ne i32 %39250, 0
  %39252 = xor i1 %39251, true
  %39253 = zext i1 %39252 to i32
  store i32 %39253, ptr %45, align 4, !tbaa !9
  %39254 = load i32, ptr %45, align 4, !tbaa !9
  %39255 = icmp ne i32 %39254, 0
  br i1 %39255, label %39256, label %39257

39256:                                            ; preds = %39185
  br label %43136

39257:                                            ; preds = %39185
  %39258 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %39258, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %39259 = load ptr, ptr %5, align 8, !tbaa !5
  %39260 = getelementptr inbounds %struct.w2c_hermes, ptr %39259, i32 0, i32 6
  %39261 = load i32, ptr %45, align 4, !tbaa !9
  %39262 = zext i32 %39261 to i64
  %39263 = add i64 %39262, 516
  %39264 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39260, i64 noundef %39263, i32 noundef %39264)
  %39265 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %39265, ptr %45, align 4, !tbaa !9
  %39266 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %39266, ptr %46, align 4, !tbaa !9
  %39267 = load ptr, ptr %5, align 8, !tbaa !5
  %39268 = getelementptr inbounds %struct.w2c_hermes, ptr %39267, i32 0, i32 6
  %39269 = load i32, ptr %45, align 4, !tbaa !9
  %39270 = zext i32 %39269 to i64
  %39271 = add i64 %39270, 512
  %39272 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39268, i64 noundef %39271, i32 noundef %39272)
  %39273 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %39273, ptr %45, align 4, !tbaa !9
  %39274 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %39274, ptr %46, align 4, !tbaa !9
  %39275 = load ptr, ptr %5, align 8, !tbaa !5
  %39276 = getelementptr inbounds %struct.w2c_hermes, ptr %39275, i32 0, i32 6
  %39277 = load i32, ptr %45, align 4, !tbaa !9
  %39278 = zext i32 %39277 to i64
  %39279 = add i64 %39278, 508
  %39280 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39276, i64 noundef %39279, i32 noundef %39280)
  %39281 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39281, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %39282 = load i32, ptr %46, align 4, !tbaa !9
  %39283 = load i32, ptr %45, align 4, !tbaa !9
  %39284 = add i32 %39283, %39282
  store i32 %39284, ptr %45, align 4, !tbaa !9
  %39285 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39285, ptr %6, align 4, !tbaa !9
  br label %2945

39286:                                            ; preds = %3153
  %39287 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39287, ptr %45, align 4, !tbaa !9
  %39288 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39288, ptr %46, align 4, !tbaa !9
  %39289 = load ptr, ptr %5, align 8, !tbaa !5
  %39290 = getelementptr inbounds %struct.w2c_hermes, ptr %39289, i32 0, i32 6
  %39291 = load i32, ptr %45, align 4, !tbaa !9
  %39292 = zext i32 %39291 to i64
  %39293 = add i64 %39292, 5808
  %39294 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39290, i64 noundef %39293, i32 noundef %39294)
  store i32 0, ptr %45, align 4, !tbaa !9
  %39295 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39295, ptr %8, align 4, !tbaa !9
  %39296 = load ptr, ptr %5, align 8, !tbaa !5
  %39297 = getelementptr inbounds %struct.w2c_hermes, ptr %39296, i32 0, i32 3
  %39298 = load i32, ptr %39297, align 8, !tbaa !15
  store i32 %39298, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %39299 = load i32, ptr %46, align 4, !tbaa !9
  %39300 = load i32, ptr %45, align 4, !tbaa !9
  %39301 = add i32 %39300, %39299
  store i32 %39301, ptr %45, align 4, !tbaa !9
  %39302 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39302, ptr %15, align 4, !tbaa !9
  %39303 = load i32, ptr %45, align 4, !tbaa !9
  %39304 = load ptr, ptr %5, align 8, !tbaa !5
  %39305 = getelementptr inbounds %struct.w2c_hermes, ptr %39304, i32 0, i32 3
  store i32 %39303, ptr %39305, align 8, !tbaa !15
  %39306 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39306, ptr %45, align 4, !tbaa !9
  %39307 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39307, ptr %46, align 4, !tbaa !9
  %39308 = load ptr, ptr %5, align 8, !tbaa !5
  %39309 = getelementptr inbounds %struct.w2c_hermes, ptr %39308, i32 0, i32 6
  %39310 = load i32, ptr %46, align 4, !tbaa !9
  %39311 = zext i32 %39310 to i64
  %39312 = add i64 %39311, 2
  %39313 = call i32 @i32_load8_u(ptr noundef %39309, i64 noundef %39312)
  store i32 %39313, ptr %46, align 4, !tbaa !9
  %39314 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %39314, ptr %13, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39315 = load i32, ptr %47, align 4, !tbaa !9
  %39316 = and i32 %39315, 31
  %39317 = load i32, ptr %46, align 4, !tbaa !9
  %39318 = shl i32 %39317, %39316
  store i32 %39318, ptr %46, align 4, !tbaa !9
  %39319 = load i32, ptr %46, align 4, !tbaa !9
  %39320 = load i32, ptr %45, align 4, !tbaa !9
  %39321 = add i32 %39320, %39319
  store i32 %39321, ptr %45, align 4, !tbaa !9
  %39322 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39322, ptr %7, align 4, !tbaa !9
  %39323 = load ptr, ptr %5, align 8, !tbaa !5
  %39324 = getelementptr inbounds %struct.w2c_hermes, ptr %39323, i32 0, i32 6
  %39325 = load i32, ptr %45, align 4, !tbaa !9
  %39326 = zext i32 %39325 to i64
  %39327 = call i64 @i64_load(ptr noundef %39324, i64 noundef %39326)
  store i64 %39327, ptr %54, align 8, !tbaa !11
  %39328 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %39328, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %39329 = load i64, ptr %54, align 8, !tbaa !11
  %39330 = load i64, ptr %55, align 8, !tbaa !11
  %39331 = icmp ult i64 %39329, %39330
  %39332 = zext i1 %39331 to i32
  store i32 %39332, ptr %45, align 4, !tbaa !9
  %39333 = load i32, ptr %45, align 4, !tbaa !9
  %39334 = icmp ne i32 %39333, 0
  br i1 %39334, label %39335, label %39336

39335:                                            ; preds = %39286
  br label %39510

39336:                                            ; preds = %39286
  %39337 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %39337, ptr %54, align 8, !tbaa !11
  %39338 = load i64, ptr %54, align 8, !tbaa !11
  %39339 = trunc i64 %39338 to i32
  store i32 %39339, ptr %45, align 4, !tbaa !9
  %39340 = load ptr, ptr %5, align 8, !tbaa !5
  %39341 = getelementptr inbounds %struct.w2c_hermes, ptr %39340, i32 0, i32 6
  %39342 = load i32, ptr %45, align 4, !tbaa !9
  %39343 = zext i32 %39342 to i64
  %39344 = add i64 %39343, 3
  %39345 = call i32 @i32_load8_u(ptr noundef %39341, i64 noundef %39344)
  store i32 %39345, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %39346 = load i32, ptr %46, align 4, !tbaa !9
  %39347 = and i32 %39346, 31
  %39348 = load i32, ptr %45, align 4, !tbaa !9
  %39349 = shl i32 %39348, %39347
  store i32 %39349, ptr %45, align 4, !tbaa !9
  store i32 536870912, ptr %46, align 4, !tbaa !9
  %39350 = load i32, ptr %45, align 4, !tbaa !9
  %39351 = load i32, ptr %46, align 4, !tbaa !9
  %39352 = icmp ne i32 %39350, %39351
  %39353 = zext i1 %39352 to i32
  store i32 %39353, ptr %45, align 4, !tbaa !9
  %39354 = load i32, ptr %45, align 4, !tbaa !9
  %39355 = icmp ne i32 %39354, 0
  br i1 %39355, label %39356, label %39357

39356:                                            ; preds = %39336
  br label %39510

39357:                                            ; preds = %39336
  %39358 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39358, ptr %45, align 4, !tbaa !9
  store i64 -4294967296, ptr %55, align 8, !tbaa !11
  %39359 = load ptr, ptr %5, align 8, !tbaa !5
  %39360 = getelementptr inbounds %struct.w2c_hermes, ptr %39359, i32 0, i32 6
  %39361 = load i32, ptr %45, align 4, !tbaa !9
  %39362 = zext i32 %39361 to i64
  %39363 = add i64 %39362, 56
  %39364 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39360, i64 noundef %39363, i64 noundef %39364)
  %39365 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39365, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %39366 = load ptr, ptr %5, align 8, !tbaa !5
  %39367 = getelementptr inbounds %struct.w2c_hermes, ptr %39366, i32 0, i32 6
  %39368 = load i32, ptr %45, align 4, !tbaa !9
  %39369 = zext i32 %39368 to i64
  %39370 = add i64 %39369, 22
  %39371 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %39367, i64 noundef %39370, i32 noundef %39371)
  %39372 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39372, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %39373 = load ptr, ptr %5, align 8, !tbaa !5
  %39374 = getelementptr inbounds %struct.w2c_hermes, ptr %39373, i32 0, i32 6
  %39375 = load i32, ptr %45, align 4, !tbaa !9
  %39376 = zext i32 %39375 to i64
  %39377 = add i64 %39376, 40
  %39378 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %39374, i64 noundef %39377, i32 noundef %39378)
  %39379 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39379, ptr %45, align 4, !tbaa !9
  %39380 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39380, ptr %46, align 4, !tbaa !9
  store i32 268436017, ptr %47, align 4, !tbaa !9
  %39381 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39381, ptr %48, align 4, !tbaa !9
  store i32 22, ptr %49, align 4, !tbaa !9
  %39382 = load i32, ptr %49, align 4, !tbaa !9
  %39383 = load i32, ptr %48, align 4, !tbaa !9
  %39384 = add i32 %39383, %39382
  store i32 %39384, ptr %48, align 4, !tbaa !9
  %39385 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39385, ptr %49, align 4, !tbaa !9
  store i32 56, ptr %50, align 4, !tbaa !9
  %39386 = load i32, ptr %50, align 4, !tbaa !9
  %39387 = load i32, ptr %49, align 4, !tbaa !9
  %39388 = add i32 %39387, %39386
  store i32 %39388, ptr %49, align 4, !tbaa !9
  %39389 = load ptr, ptr %5, align 8, !tbaa !5
  %39390 = load i32, ptr %45, align 4, !tbaa !9
  %39391 = load i32, ptr %46, align 4, !tbaa !9
  %39392 = load i32, ptr %47, align 4, !tbaa !9
  %39393 = load i32, ptr %48, align 4, !tbaa !9
  %39394 = load i32, ptr %49, align 4, !tbaa !9
  %39395 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedDescriptorUnsafe0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %39389, i32 noundef %39390, i32 noundef %39391, i32 noundef %39392, i32 noundef %39393, i32 noundef %39394)
  store i32 %39395, ptr %45, align 4, !tbaa !9
  %39396 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39396, ptr %7, align 4, !tbaa !9
  %39397 = load i32, ptr %45, align 4, !tbaa !9
  %39398 = icmp ne i32 %39397, 0
  %39399 = xor i1 %39398, true
  %39400 = zext i1 %39399 to i32
  store i32 %39400, ptr %45, align 4, !tbaa !9
  %39401 = load i32, ptr %45, align 4, !tbaa !9
  %39402 = icmp ne i32 %39401, 0
  br i1 %39402, label %39403, label %39404

39403:                                            ; preds = %39357
  br label %39501

39404:                                            ; preds = %39357
  %39405 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39405, ptr %45, align 4, !tbaa !9
  %39406 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39406, ptr %46, align 4, !tbaa !9
  %39407 = load ptr, ptr %5, align 8, !tbaa !5
  %39408 = getelementptr inbounds %struct.w2c_hermes, ptr %39407, i32 0, i32 6
  %39409 = load i32, ptr %46, align 4, !tbaa !9
  %39410 = zext i32 %39409 to i64
  %39411 = add i64 %39410, 56
  %39412 = call i64 @i64_load(ptr noundef %39408, i64 noundef %39411)
  store i64 %39412, ptr %55, align 8, !tbaa !11
  %39413 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %39413, ptr %39, align 8, !tbaa !11
  %39414 = load ptr, ptr %5, align 8, !tbaa !5
  %39415 = getelementptr inbounds %struct.w2c_hermes, ptr %39414, i32 0, i32 6
  %39416 = load i32, ptr %45, align 4, !tbaa !9
  %39417 = zext i32 %39416 to i64
  %39418 = add i64 %39417, 32
  %39419 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39415, i64 noundef %39418, i64 noundef %39419)
  %39420 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39420, ptr %45, align 4, !tbaa !9
  %39421 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %39421, ptr %55, align 8, !tbaa !11
  %39422 = load ptr, ptr %5, align 8, !tbaa !5
  %39423 = getelementptr inbounds %struct.w2c_hermes, ptr %39422, i32 0, i32 6
  %39424 = load i32, ptr %45, align 4, !tbaa !9
  %39425 = zext i32 %39424 to i64
  %39426 = add i64 %39425, 8
  %39427 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39423, i64 noundef %39426, i64 noundef %39427)
  %39428 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39428, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %39429 = load i32, ptr %46, align 4, !tbaa !9
  %39430 = load i32, ptr %45, align 4, !tbaa !9
  %39431 = add i32 %39430, %39429
  store i32 %39431, ptr %45, align 4, !tbaa !9
  %39432 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39432, ptr %46, align 4, !tbaa !9
  %39433 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39433, ptr %47, align 4, !tbaa !9
  %39434 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39434, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %39435 = load i32, ptr %49, align 4, !tbaa !9
  %39436 = load i32, ptr %48, align 4, !tbaa !9
  %39437 = add i32 %39436, %39435
  store i32 %39437, ptr %48, align 4, !tbaa !9
  %39438 = load ptr, ptr %5, align 8, !tbaa !5
  %39439 = load i32, ptr %45, align 4, !tbaa !9
  %39440 = load i32, ptr %46, align 4, !tbaa !9
  %39441 = load i32, ptr %47, align 4, !tbaa !9
  %39442 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedSlotValue0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x29(ptr noundef %39438, i32 noundef %39439, i32 noundef %39440, i32 noundef %39441, i32 noundef %39442)
  %39443 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39443, ptr %45, align 4, !tbaa !9
  %39444 = load ptr, ptr %5, align 8, !tbaa !5
  %39445 = getelementptr inbounds %struct.w2c_hermes, ptr %39444, i32 0, i32 6
  %39446 = load i32, ptr %45, align 4, !tbaa !9
  %39447 = zext i32 %39446 to i64
  %39448 = add i64 %39447, 40
  %39449 = call i32 @i32_load(ptr noundef %39445, i64 noundef %39448)
  store i32 %39449, ptr %45, align 4, !tbaa !9
  %39450 = load i32, ptr %45, align 4, !tbaa !9
  %39451 = icmp ne i32 %39450, 0
  %39452 = xor i1 %39451, true
  %39453 = zext i1 %39452 to i32
  store i32 %39453, ptr %45, align 4, !tbaa !9
  %39454 = load i32, ptr %45, align 4, !tbaa !9
  %39455 = icmp ne i32 %39454, 0
  br i1 %39455, label %39456, label %39457

39456:                                            ; preds = %39404
  br label %39698

39457:                                            ; preds = %39404
  %39458 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39458, ptr %45, align 4, !tbaa !9
  %39459 = load ptr, ptr %5, align 8, !tbaa !5
  %39460 = getelementptr inbounds %struct.w2c_hermes, ptr %39459, i32 0, i32 6
  %39461 = load i32, ptr %45, align 4, !tbaa !9
  %39462 = zext i32 %39461 to i64
  %39463 = add i64 %39462, 48
  %39464 = call i64 @i64_load(ptr noundef %39460, i64 noundef %39463)
  store i64 %39464, ptr %54, align 8, !tbaa !11
  %39465 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39465, ptr %46, align 4, !tbaa !9
  %39466 = load ptr, ptr %5, align 8, !tbaa !5
  %39467 = getelementptr inbounds %struct.w2c_hermes, ptr %39466, i32 0, i32 6
  %39468 = load i32, ptr %46, align 4, !tbaa !9
  %39469 = zext i32 %39468 to i64
  %39470 = add i64 %39469, 592
  %39471 = call i64 @i64_load(ptr noundef %39467, i64 noundef %39470)
  store i64 %39471, ptr %55, align 8, !tbaa !11
  %39472 = load i64, ptr %54, align 8, !tbaa !11
  %39473 = load i64, ptr %55, align 8, !tbaa !11
  %39474 = icmp ne i64 %39472, %39473
  %39475 = zext i1 %39474 to i32
  store i32 %39475, ptr %45, align 4, !tbaa !9
  %39476 = load i32, ptr %45, align 4, !tbaa !9
  %39477 = icmp ne i32 %39476, 0
  br i1 %39477, label %39478, label %39479

39478:                                            ; preds = %39457
  br label %39501

39479:                                            ; preds = %39457
  %39480 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39480, ptr %45, align 4, !tbaa !9
  %39481 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39481, ptr %46, align 4, !tbaa !9
  %39482 = load ptr, ptr %5, align 8, !tbaa !5
  %39483 = getelementptr inbounds %struct.w2c_hermes, ptr %39482, i32 0, i32 6
  %39484 = load i32, ptr %46, align 4, !tbaa !9
  %39485 = zext i32 %39484 to i64
  %39486 = add i64 %39485, 1
  %39487 = call i32 @i32_load8_u(ptr noundef %39483, i64 noundef %39486)
  store i32 %39487, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39488 = load i32, ptr %47, align 4, !tbaa !9
  %39489 = and i32 %39488, 31
  %39490 = load i32, ptr %46, align 4, !tbaa !9
  %39491 = shl i32 %39490, %39489
  store i32 %39491, ptr %46, align 4, !tbaa !9
  %39492 = load i32, ptr %46, align 4, !tbaa !9
  %39493 = load i32, ptr %45, align 4, !tbaa !9
  %39494 = add i32 %39493, %39492
  store i32 %39494, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %39495 = load ptr, ptr %5, align 8, !tbaa !5
  %39496 = getelementptr inbounds %struct.w2c_hermes, ptr %39495, i32 0, i32 6
  %39497 = load i32, ptr %45, align 4, !tbaa !9
  %39498 = zext i32 %39497 to i64
  %39499 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39496, i64 noundef %39498, i64 noundef %39499)
  store i32 1, ptr %45, align 4, !tbaa !9
  %39500 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39500, ptr %8, align 4, !tbaa !9
  br label %39698

39501:                                            ; preds = %39478, %39403
  %39502 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39502, ptr %45, align 4, !tbaa !9
  %39503 = load ptr, ptr %5, align 8, !tbaa !5
  %39504 = getelementptr inbounds %struct.w2c_hermes, ptr %39503, i32 0, i32 6
  %39505 = load i32, ptr %45, align 4, !tbaa !9
  %39506 = zext i32 %39505 to i64
  %39507 = add i64 %39506, 2
  %39508 = call i32 @i32_load8_u(ptr noundef %39504, i64 noundef %39507)
  store i32 %39508, ptr %45, align 4, !tbaa !9
  %39509 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39509, ptr %13, align 4, !tbaa !9
  br label %39510

39510:                                            ; preds = %39501, %39356, %39335
  %39511 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39511, ptr %45, align 4, !tbaa !9
  %39512 = load ptr, ptr %5, align 8, !tbaa !5
  %39513 = getelementptr inbounds %struct.w2c_hermes, ptr %39512, i32 0, i32 6
  %39514 = load i32, ptr %45, align 4, !tbaa !9
  %39515 = zext i32 %39514 to i64
  %39516 = add i64 %39515, 4
  %39517 = call i32 @i32_load(ptr noundef %39513, i64 noundef %39516)
  store i32 %39517, ptr %45, align 4, !tbaa !9
  %39518 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39518, ptr %14, align 4, !tbaa !9
  %39519 = load ptr, ptr %5, align 8, !tbaa !5
  %39520 = getelementptr inbounds %struct.w2c_hermes, ptr %39519, i32 0, i32 6
  %39521 = load i32, ptr %45, align 4, !tbaa !9
  %39522 = zext i32 %39521 to i64
  %39523 = add i64 %39522, 172
  %39524 = call i32 @i32_load(ptr noundef %39520, i64 noundef %39523)
  store i32 %39524, ptr %45, align 4, !tbaa !9
  %39525 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39525, ptr %12, align 4, !tbaa !9
  %39526 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39526, ptr %45, align 4, !tbaa !9
  %39527 = load ptr, ptr %5, align 8, !tbaa !5
  %39528 = getelementptr inbounds %struct.w2c_hermes, ptr %39527, i32 0, i32 6
  %39529 = load i32, ptr %45, align 4, !tbaa !9
  %39530 = zext i32 %39529 to i64
  %39531 = add i64 %39530, 164
  %39532 = call i32 @i32_load(ptr noundef %39528, i64 noundef %39531)
  store i32 %39532, ptr %45, align 4, !tbaa !9
  %39533 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39533, ptr %7, align 4, !tbaa !9
  %39534 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39534, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %39535 = load ptr, ptr %5, align 8, !tbaa !5
  %39536 = getelementptr inbounds %struct.w2c_hermes, ptr %39535, i32 0, i32 6
  %39537 = load i32, ptr %45, align 4, !tbaa !9
  %39538 = zext i32 %39537 to i64
  %39539 = add i64 %39538, 28
  %39540 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %39536, i64 noundef %39539, i32 noundef %39540)
  %39541 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39541, ptr %45, align 4, !tbaa !9
  %39542 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39542, ptr %46, align 4, !tbaa !9
  %39543 = load ptr, ptr %5, align 8, !tbaa !5
  %39544 = getelementptr inbounds %struct.w2c_hermes, ptr %39543, i32 0, i32 6
  %39545 = load i32, ptr %46, align 4, !tbaa !9
  %39546 = zext i32 %39545 to i64
  %39547 = add i64 %39546, 24
  %39548 = call i64 @i64_load(ptr noundef %39544, i64 noundef %39547)
  store i64 %39548, ptr %55, align 8, !tbaa !11
  %39549 = load ptr, ptr %5, align 8, !tbaa !5
  %39550 = getelementptr inbounds %struct.w2c_hermes, ptr %39549, i32 0, i32 6
  %39551 = load i32, ptr %45, align 4, !tbaa !9
  %39552 = zext i32 %39551 to i64
  %39553 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39550, i64 noundef %39552, i64 noundef %39553)
  %39554 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39554, ptr %45, align 4, !tbaa !9
  store i32 40, ptr %46, align 4, !tbaa !9
  %39555 = load i32, ptr %46, align 4, !tbaa !9
  %39556 = load i32, ptr %45, align 4, !tbaa !9
  %39557 = add i32 %39556, %39555
  store i32 %39557, ptr %45, align 4, !tbaa !9
  %39558 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39558, ptr %46, align 4, !tbaa !9
  %39559 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39559, ptr %47, align 4, !tbaa !9
  %39560 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %39560, ptr %48, align 4, !tbaa !9
  store i32 3, ptr %49, align 4, !tbaa !9
  %39561 = load i32, ptr %49, align 4, !tbaa !9
  %39562 = and i32 %39561, 31
  %39563 = load i32, ptr %48, align 4, !tbaa !9
  %39564 = shl i32 %39563, %39562
  store i32 %39564, ptr %48, align 4, !tbaa !9
  %39565 = load i32, ptr %48, align 4, !tbaa !9
  %39566 = load i32, ptr %47, align 4, !tbaa !9
  %39567 = add i32 %39566, %39565
  store i32 %39567, ptr %47, align 4, !tbaa !9
  %39568 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39568, ptr %48, align 4, !tbaa !9
  %39569 = load ptr, ptr %5, align 8, !tbaa !5
  %39570 = load i32, ptr %45, align 4, !tbaa !9
  %39571 = load i32, ptr %46, align 4, !tbaa !9
  %39572 = load i32, ptr %47, align 4, !tbaa !9
  %39573 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetIterator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AOptional0x3Chermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x3E0x29(ptr noundef %39569, i32 noundef %39570, i32 noundef %39571, i32 noundef %39572, i32 noundef %39573)
  %39574 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39574, ptr %45, align 4, !tbaa !9
  %39575 = load ptr, ptr %5, align 8, !tbaa !5
  %39576 = getelementptr inbounds %struct.w2c_hermes, ptr %39575, i32 0, i32 6
  %39577 = load i32, ptr %45, align 4, !tbaa !9
  %39578 = zext i32 %39577 to i64
  %39579 = add i64 %39578, 48
  %39580 = call i32 @i32_load8_u(ptr noundef %39576, i64 noundef %39579)
  store i32 %39580, ptr %45, align 4, !tbaa !9
  %39581 = load i32, ptr %45, align 4, !tbaa !9
  %39582 = icmp ne i32 %39581, 0
  br i1 %39582, label %39583, label %39649

39583:                                            ; preds = %39510
  %39584 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39584, ptr %45, align 4, !tbaa !9
  %39585 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39585, ptr %46, align 4, !tbaa !9
  %39586 = load ptr, ptr %5, align 8, !tbaa !5
  %39587 = getelementptr inbounds %struct.w2c_hermes, ptr %39586, i32 0, i32 6
  %39588 = load i32, ptr %46, align 4, !tbaa !9
  %39589 = zext i32 %39588 to i64
  %39590 = add i64 %39589, 2
  %39591 = call i32 @i32_load8_u(ptr noundef %39587, i64 noundef %39590)
  store i32 %39591, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39592 = load i32, ptr %47, align 4, !tbaa !9
  %39593 = and i32 %39592, 31
  %39594 = load i32, ptr %46, align 4, !tbaa !9
  %39595 = shl i32 %39594, %39593
  store i32 %39595, ptr %46, align 4, !tbaa !9
  %39596 = load i32, ptr %46, align 4, !tbaa !9
  %39597 = load i32, ptr %45, align 4, !tbaa !9
  %39598 = add i32 %39597, %39596
  store i32 %39598, ptr %45, align 4, !tbaa !9
  %39599 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39599, ptr %46, align 4, !tbaa !9
  %39600 = load ptr, ptr %5, align 8, !tbaa !5
  %39601 = getelementptr inbounds %struct.w2c_hermes, ptr %39600, i32 0, i32 6
  %39602 = load i32, ptr %46, align 4, !tbaa !9
  %39603 = zext i32 %39602 to i64
  %39604 = add i64 %39603, 44
  %39605 = call i32 @i32_load(ptr noundef %39601, i64 noundef %39604)
  store i32 %39605, ptr %46, align 4, !tbaa !9
  %39606 = load ptr, ptr %5, align 8, !tbaa !5
  %39607 = getelementptr inbounds %struct.w2c_hermes, ptr %39606, i32 0, i32 6
  %39608 = load i32, ptr %46, align 4, !tbaa !9
  %39609 = zext i32 %39608 to i64
  %39610 = call i64 @i64_load(ptr noundef %39607, i64 noundef %39609)
  store i64 %39610, ptr %55, align 8, !tbaa !11
  %39611 = load ptr, ptr %5, align 8, !tbaa !5
  %39612 = getelementptr inbounds %struct.w2c_hermes, ptr %39611, i32 0, i32 6
  %39613 = load i32, ptr %45, align 4, !tbaa !9
  %39614 = zext i32 %39613 to i64
  %39615 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39612, i64 noundef %39614, i64 noundef %39615)
  %39616 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39616, ptr %45, align 4, !tbaa !9
  %39617 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39617, ptr %46, align 4, !tbaa !9
  %39618 = load ptr, ptr %5, align 8, !tbaa !5
  %39619 = getelementptr inbounds %struct.w2c_hermes, ptr %39618, i32 0, i32 6
  %39620 = load i32, ptr %46, align 4, !tbaa !9
  %39621 = zext i32 %39620 to i64
  %39622 = add i64 %39621, 1
  %39623 = call i32 @i32_load8_u(ptr noundef %39619, i64 noundef %39622)
  store i32 %39623, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39624 = load i32, ptr %47, align 4, !tbaa !9
  %39625 = and i32 %39624, 31
  %39626 = load i32, ptr %46, align 4, !tbaa !9
  %39627 = shl i32 %39626, %39625
  store i32 %39627, ptr %46, align 4, !tbaa !9
  %39628 = load i32, ptr %46, align 4, !tbaa !9
  %39629 = load i32, ptr %45, align 4, !tbaa !9
  %39630 = add i32 %39629, %39628
  store i32 %39630, ptr %45, align 4, !tbaa !9
  %39631 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39631, ptr %46, align 4, !tbaa !9
  %39632 = load ptr, ptr %5, align 8, !tbaa !5
  %39633 = getelementptr inbounds %struct.w2c_hermes, ptr %39632, i32 0, i32 6
  %39634 = load i32, ptr %46, align 4, !tbaa !9
  %39635 = zext i32 %39634 to i64
  %39636 = add i64 %39635, 40
  %39637 = call i32 @i32_load(ptr noundef %39633, i64 noundef %39636)
  store i32 %39637, ptr %46, align 4, !tbaa !9
  %39638 = load ptr, ptr %5, align 8, !tbaa !5
  %39639 = getelementptr inbounds %struct.w2c_hermes, ptr %39638, i32 0, i32 6
  %39640 = load i32, ptr %46, align 4, !tbaa !9
  %39641 = zext i32 %39640 to i64
  %39642 = call i64 @i64_load(ptr noundef %39639, i64 noundef %39641)
  store i64 %39642, ptr %55, align 8, !tbaa !11
  %39643 = load ptr, ptr %5, align 8, !tbaa !5
  %39644 = getelementptr inbounds %struct.w2c_hermes, ptr %39643, i32 0, i32 6
  %39645 = load i32, ptr %45, align 4, !tbaa !9
  %39646 = zext i32 %39645 to i64
  %39647 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39644, i64 noundef %39646, i64 noundef %39647)
  store i32 1, ptr %45, align 4, !tbaa !9
  %39648 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39648, ptr %8, align 4, !tbaa !9
  br label %39649

39649:                                            ; preds = %39583, %39510
  %39650 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39650, ptr %45, align 4, !tbaa !9
  %39651 = load ptr, ptr %5, align 8, !tbaa !5
  %39652 = getelementptr inbounds %struct.w2c_hermes, ptr %39651, i32 0, i32 6
  %39653 = load i32, ptr %45, align 4, !tbaa !9
  %39654 = zext i32 %39653 to i64
  %39655 = add i64 %39654, 136
  %39656 = call i32 @i32_load(ptr noundef %39652, i64 noundef %39655)
  store i32 %39656, ptr %45, align 4, !tbaa !9
  %39657 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %39657, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %39658 = load i32, ptr %47, align 4, !tbaa !9
  %39659 = and i32 %39658, 31
  %39660 = load i32, ptr %46, align 4, !tbaa !9
  %39661 = shl i32 %39660, %39659
  store i32 %39661, ptr %46, align 4, !tbaa !9
  %39662 = load i32, ptr %46, align 4, !tbaa !9
  %39663 = load i32, ptr %45, align 4, !tbaa !9
  %39664 = add i32 %39663, %39662
  store i32 %39664, ptr %45, align 4, !tbaa !9
  %39665 = load ptr, ptr %5, align 8, !tbaa !5
  %39666 = getelementptr inbounds %struct.w2c_hermes, ptr %39665, i32 0, i32 6
  %39667 = load i32, ptr %45, align 4, !tbaa !9
  %39668 = zext i32 %39667 to i64
  %39669 = call i32 @i32_load(ptr noundef %39666, i64 noundef %39668)
  store i32 %39669, ptr %45, align 4, !tbaa !9
  %39670 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39670, ptr %6, align 4, !tbaa !9
  %39671 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39671, ptr %45, align 4, !tbaa !9
  %39672 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %39672, ptr %46, align 4, !tbaa !9
  %39673 = load ptr, ptr %5, align 8, !tbaa !5
  %39674 = getelementptr inbounds %struct.w2c_hermes, ptr %39673, i32 0, i32 6
  %39675 = load i32, ptr %45, align 4, !tbaa !9
  %39676 = zext i32 %39675 to i64
  %39677 = add i64 %39676, 172
  %39678 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39674, i64 noundef %39677, i32 noundef %39678)
  %39679 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39679, ptr %45, align 4, !tbaa !9
  %39680 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39680, ptr %46, align 4, !tbaa !9
  %39681 = load ptr, ptr %5, align 8, !tbaa !5
  %39682 = getelementptr inbounds %struct.w2c_hermes, ptr %39681, i32 0, i32 6
  %39683 = load i32, ptr %45, align 4, !tbaa !9
  %39684 = zext i32 %39683 to i64
  %39685 = add i64 %39684, 164
  %39686 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39682, i64 noundef %39685, i32 noundef %39686)
  %39687 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39687, ptr %45, align 4, !tbaa !9
  %39688 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39688, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %39689 = load i32, ptr %47, align 4, !tbaa !9
  %39690 = load i32, ptr %46, align 4, !tbaa !9
  %39691 = add i32 %39690, %39689
  store i32 %39691, ptr %46, align 4, !tbaa !9
  %39692 = load ptr, ptr %5, align 8, !tbaa !5
  %39693 = getelementptr inbounds %struct.w2c_hermes, ptr %39692, i32 0, i32 6
  %39694 = load i32, ptr %45, align 4, !tbaa !9
  %39695 = zext i32 %39694 to i64
  %39696 = add i64 %39695, 168
  %39697 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39693, i64 noundef %39696, i32 noundef %39697)
  br label %39698

39698:                                            ; preds = %39649, %39479, %39456
  %39699 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %39699, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %39700 = load i32, ptr %46, align 4, !tbaa !9
  %39701 = load i32, ptr %45, align 4, !tbaa !9
  %39702 = sub i32 %39701, %39700
  store i32 %39702, ptr %45, align 4, !tbaa !9
  %39703 = load i32, ptr %45, align 4, !tbaa !9
  %39704 = load ptr, ptr %5, align 8, !tbaa !5
  %39705 = getelementptr inbounds %struct.w2c_hermes, ptr %39704, i32 0, i32 3
  store i32 %39703, ptr %39705, align 8, !tbaa !15
  %39706 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39706, ptr %45, align 4, !tbaa !9
  %39707 = load ptr, ptr %5, align 8, !tbaa !5
  %39708 = getelementptr inbounds %struct.w2c_hermes, ptr %39707, i32 0, i32 6
  %39709 = load i32, ptr %45, align 4, !tbaa !9
  %39710 = zext i32 %39709 to i64
  %39711 = add i64 %39710, 5808
  %39712 = call i32 @i32_load(ptr noundef %39708, i64 noundef %39711)
  store i32 %39712, ptr %45, align 4, !tbaa !9
  %39713 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39713, ptr %6, align 4, !tbaa !9
  %39714 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %39714, ptr %45, align 4, !tbaa !9
  %39715 = load i32, ptr %45, align 4, !tbaa !9
  %39716 = icmp ne i32 %39715, 0
  %39717 = xor i1 %39716, true
  %39718 = zext i1 %39717 to i32
  store i32 %39718, ptr %45, align 4, !tbaa !9
  %39719 = load i32, ptr %45, align 4, !tbaa !9
  %39720 = icmp ne i32 %39719, 0
  br i1 %39720, label %39721, label %39722

39721:                                            ; preds = %39698
  br label %43136

39722:                                            ; preds = %39698
  %39723 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %39723, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %39724 = load ptr, ptr %5, align 8, !tbaa !5
  %39725 = getelementptr inbounds %struct.w2c_hermes, ptr %39724, i32 0, i32 6
  %39726 = load i32, ptr %45, align 4, !tbaa !9
  %39727 = zext i32 %39726 to i64
  %39728 = add i64 %39727, 516
  %39729 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39725, i64 noundef %39728, i32 noundef %39729)
  %39730 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %39730, ptr %45, align 4, !tbaa !9
  %39731 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %39731, ptr %46, align 4, !tbaa !9
  %39732 = load ptr, ptr %5, align 8, !tbaa !5
  %39733 = getelementptr inbounds %struct.w2c_hermes, ptr %39732, i32 0, i32 6
  %39734 = load i32, ptr %45, align 4, !tbaa !9
  %39735 = zext i32 %39734 to i64
  %39736 = add i64 %39735, 512
  %39737 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39733, i64 noundef %39736, i32 noundef %39737)
  %39738 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %39738, ptr %45, align 4, !tbaa !9
  %39739 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %39739, ptr %46, align 4, !tbaa !9
  %39740 = load ptr, ptr %5, align 8, !tbaa !5
  %39741 = getelementptr inbounds %struct.w2c_hermes, ptr %39740, i32 0, i32 6
  %39742 = load i32, ptr %45, align 4, !tbaa !9
  %39743 = zext i32 %39742 to i64
  %39744 = add i64 %39743, 508
  %39745 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39741, i64 noundef %39744, i32 noundef %39745)
  %39746 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39746, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %39747 = load i32, ptr %46, align 4, !tbaa !9
  %39748 = load i32, ptr %45, align 4, !tbaa !9
  %39749 = add i32 %39748, %39747
  store i32 %39749, ptr %45, align 4, !tbaa !9
  %39750 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39750, ptr %6, align 4, !tbaa !9
  br label %2945

39751:                                            ; preds = %3154
  %39752 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %39752, ptr %45, align 4, !tbaa !9
  %39753 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39753, ptr %46, align 4, !tbaa !9
  %39754 = load ptr, ptr %5, align 8, !tbaa !5
  %39755 = getelementptr inbounds %struct.w2c_hermes, ptr %39754, i32 0, i32 6
  %39756 = load i32, ptr %45, align 4, !tbaa !9
  %39757 = zext i32 %39756 to i64
  %39758 = add i64 %39757, 5808
  %39759 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %39755, i64 noundef %39758, i32 noundef %39759)
  %39760 = load ptr, ptr %5, align 8, !tbaa !5
  %39761 = getelementptr inbounds %struct.w2c_hermes, ptr %39760, i32 0, i32 3
  %39762 = load i32, ptr %39761, align 8, !tbaa !15
  store i32 %39762, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %39763 = load i32, ptr %46, align 4, !tbaa !9
  %39764 = load i32, ptr %45, align 4, !tbaa !9
  %39765 = sub i32 %39764, %39763
  store i32 %39765, ptr %45, align 4, !tbaa !9
  %39766 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39766, ptr %23, align 4, !tbaa !9
  %39767 = load i32, ptr %45, align 4, !tbaa !9
  %39768 = load ptr, ptr %5, align 8, !tbaa !5
  %39769 = getelementptr inbounds %struct.w2c_hermes, ptr %39768, i32 0, i32 3
  store i32 %39767, ptr %39769, align 8, !tbaa !15
  %39770 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39770, ptr %45, align 4, !tbaa !9
  %39771 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39771, ptr %46, align 4, !tbaa !9
  %39772 = load ptr, ptr %5, align 8, !tbaa !5
  %39773 = getelementptr inbounds %struct.w2c_hermes, ptr %39772, i32 0, i32 6
  %39774 = load i32, ptr %46, align 4, !tbaa !9
  %39775 = zext i32 %39774 to i64
  %39776 = add i64 %39775, 2
  %39777 = call i32 @i32_load8_u(ptr noundef %39773, i64 noundef %39776)
  store i32 %39777, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39778 = load i32, ptr %47, align 4, !tbaa !9
  %39779 = and i32 %39778, 31
  %39780 = load i32, ptr %46, align 4, !tbaa !9
  %39781 = shl i32 %39780, %39779
  store i32 %39781, ptr %46, align 4, !tbaa !9
  %39782 = load i32, ptr %46, align 4, !tbaa !9
  %39783 = load i32, ptr %45, align 4, !tbaa !9
  %39784 = add i32 %39783, %39782
  store i32 %39784, ptr %45, align 4, !tbaa !9
  %39785 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39785, ptr %14, align 4, !tbaa !9
  %39786 = load ptr, ptr %5, align 8, !tbaa !5
  %39787 = getelementptr inbounds %struct.w2c_hermes, ptr %39786, i32 0, i32 6
  %39788 = load i32, ptr %45, align 4, !tbaa !9
  %39789 = zext i32 %39788 to i64
  %39790 = call i64 @i64_load(ptr noundef %39787, i64 noundef %39789)
  store i64 %39790, ptr %54, align 8, !tbaa !11
  %39791 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %39791, ptr %39, align 8, !tbaa !11
  store i64 -1970324836974593, ptr %55, align 8, !tbaa !11
  %39792 = load i64, ptr %54, align 8, !tbaa !11
  %39793 = load i64, ptr %55, align 8, !tbaa !11
  %39794 = icmp ule i64 %39792, %39793
  %39795 = zext i1 %39794 to i32
  store i32 %39795, ptr %45, align 4, !tbaa !9
  %39796 = load i32, ptr %45, align 4, !tbaa !9
  %39797 = icmp ne i32 %39796, 0
  br i1 %39797, label %39798, label %40436

39798:                                            ; preds = %39751
  %39799 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39799, ptr %45, align 4, !tbaa !9
  %39800 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39800, ptr %46, align 4, !tbaa !9
  %39801 = load ptr, ptr %5, align 8, !tbaa !5
  %39802 = getelementptr inbounds %struct.w2c_hermes, ptr %39801, i32 0, i32 6
  %39803 = load i32, ptr %46, align 4, !tbaa !9
  %39804 = zext i32 %39803 to i64
  %39805 = add i64 %39804, 3
  %39806 = call i32 @i32_load8_u(ptr noundef %39802, i64 noundef %39805)
  store i32 %39806, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39807 = load i32, ptr %47, align 4, !tbaa !9
  %39808 = and i32 %39807, 31
  %39809 = load i32, ptr %46, align 4, !tbaa !9
  %39810 = shl i32 %39809, %39808
  store i32 %39810, ptr %46, align 4, !tbaa !9
  %39811 = load i32, ptr %46, align 4, !tbaa !9
  %39812 = load i32, ptr %45, align 4, !tbaa !9
  %39813 = add i32 %39812, %39811
  store i32 %39813, ptr %45, align 4, !tbaa !9
  %39814 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39814, ptr %12, align 4, !tbaa !9
  %39815 = load ptr, ptr %5, align 8, !tbaa !5
  %39816 = getelementptr inbounds %struct.w2c_hermes, ptr %39815, i32 0, i32 6
  %39817 = load i32, ptr %45, align 4, !tbaa !9
  %39818 = zext i32 %39817 to i64
  %39819 = call i32 @i32_load(ptr noundef %39816, i64 noundef %39818)
  store i32 %39819, ptr %45, align 4, !tbaa !9
  %39820 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39820, ptr %13, align 4, !tbaa !9
  %39821 = load ptr, ptr %5, align 8, !tbaa !5
  %39822 = getelementptr inbounds %struct.w2c_hermes, ptr %39821, i32 0, i32 6
  %39823 = load i32, ptr %45, align 4, !tbaa !9
  %39824 = zext i32 %39823 to i64
  %39825 = add i64 %39824, 32
  %39826 = call i32 @i32_load(ptr noundef %39822, i64 noundef %39825)
  store i32 %39826, ptr %45, align 4, !tbaa !9
  %39827 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39827, ptr %8, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %39828 = load i32, ptr %46, align 4, !tbaa !9
  %39829 = load i32, ptr %45, align 4, !tbaa !9
  %39830 = and i32 %39829, %39828
  store i32 %39830, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %39831 = load i32, ptr %45, align 4, !tbaa !9
  %39832 = load i32, ptr %46, align 4, !tbaa !9
  %39833 = icmp ne i32 %39831, %39832
  %39834 = zext i1 %39833 to i32
  store i32 %39834, ptr %45, align 4, !tbaa !9
  %39835 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39835, ptr %7, align 4, !tbaa !9
  %39836 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %39836, ptr %54, align 8, !tbaa !11
  %39837 = load i64, ptr %54, align 8, !tbaa !11
  %39838 = call double @f64_reinterpret_i64(i64 noundef %39837)
  store double %39838, ptr %60, align 8, !tbaa !13
  %39839 = load double, ptr %60, align 8, !tbaa !13
  store double %39839, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %39840 = load double, ptr %60, align 8, !tbaa !13
  %39841 = load double, ptr %61, align 8, !tbaa !13
  %39842 = fcmp olt double %39840, %39841
  %39843 = zext i1 %39842 to i32
  store i32 %39843, ptr %45, align 4, !tbaa !9
  %39844 = load double, ptr %43, align 8, !tbaa !13
  store double %39844, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %39845 = load double, ptr %61, align 8, !tbaa !13
  %39846 = load double, ptr %62, align 8, !tbaa !13
  %39847 = fcmp oge double %39845, %39846
  %39848 = zext i1 %39847 to i32
  store i32 %39848, ptr %46, align 4, !tbaa !9
  %39849 = load i32, ptr %46, align 4, !tbaa !9
  %39850 = load i32, ptr %45, align 4, !tbaa !9
  %39851 = and i32 %39850, %39849
  store i32 %39851, ptr %45, align 4, !tbaa !9
  %39852 = load i32, ptr %45, align 4, !tbaa !9
  %39853 = icmp ne i32 %39852, 0
  br i1 %39853, label %39854, label %39891

39854:                                            ; preds = %39798
  %39855 = load double, ptr %43, align 8, !tbaa !13
  store double %39855, ptr %60, align 8, !tbaa !13
  %39856 = load double, ptr %60, align 8, !tbaa !13
  %39857 = load double, ptr %60, align 8, !tbaa !13
  %39858 = fcmp une double %39856, %39857
  %39859 = xor i1 %39858, true
  %39860 = xor i1 %39859, true
  %39861 = zext i1 %39860 to i32
  %39862 = sext i32 %39861 to i64
  %39863 = call i64 @llvm.expect.i64(i64 %39862, i64 0)
  %39864 = icmp ne i64 %39863, 0
  br i1 %39864, label %39865, label %39867

39865:                                            ; preds = %39854
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

39866:                                            ; No predecessors!
  br label %39889

39867:                                            ; preds = %39854
  %39868 = load double, ptr %60, align 8, !tbaa !13
  %39869 = fcmp ogt double %39868, -1.000000e+00
  br i1 %39869, label %39870, label %39873

39870:                                            ; preds = %39867
  %39871 = load double, ptr %60, align 8, !tbaa !13
  %39872 = fcmp olt double %39871, 0x41F0000000000000
  br label %39873

39873:                                            ; preds = %39870, %39867
  %39874 = phi i1 [ false, %39867 ], [ %39872, %39870 ]
  %39875 = xor i1 %39874, true
  %39876 = xor i1 %39875, true
  %39877 = xor i1 %39876, true
  %39878 = zext i1 %39877 to i32
  %39879 = sext i32 %39878 to i64
  %39880 = call i64 @llvm.expect.i64(i64 %39879, i64 0)
  %39881 = icmp ne i64 %39880, 0
  br i1 %39881, label %39882, label %39884

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

39883:                                            ; No predecessors!
  br label %39887

39884:                                            ; preds = %39873
  %39885 = load double, ptr %60, align 8, !tbaa !13
  %39886 = fptoui double %39885 to i32
  br label %39887

39887:                                            ; preds = %39884, %39883
  %39888 = phi i32 [ 0, %39883 ], [ %39886, %39884 ]
  br label %39889

39889:                                            ; preds = %39887, %39866
  %39890 = phi i32 [ 0, %39866 ], [ %39888, %39887 ]
  store i32 %39890, ptr %45, align 4, !tbaa !9
  br label %39892

39891:                                            ; preds = %39798
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %39892

39892:                                            ; preds = %39891, %39889
  %39893 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %39893, ptr %18, align 4, !tbaa !9
  %39894 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %39894, ptr %45, align 4, !tbaa !9
  %39895 = load i32, ptr %45, align 4, !tbaa !9
  %39896 = icmp ne i32 %39895, 0
  br i1 %39896, label %39897, label %39908

39897:                                            ; preds = %39892
  %39898 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %39898, ptr %45, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %39899 = load i32, ptr %46, align 4, !tbaa !9
  %39900 = load i32, ptr %45, align 4, !tbaa !9
  %39901 = and i32 %39900, %39899
  store i32 %39901, ptr %45, align 4, !tbaa !9
  %39902 = load ptr, ptr %5, align 8, !tbaa !5
  %39903 = getelementptr inbounds %struct.w2c_hermes, ptr %39902, i32 0, i32 6
  %39904 = load i32, ptr %45, align 4, !tbaa !9
  %39905 = zext i32 %39904 to i64
  %39906 = add i64 %39905, 8
  %39907 = call double @f64_load(ptr noundef %39903, i64 noundef %39906)
  store double %39907, ptr %60, align 8, !tbaa !13
  br label %39916

39908:                                            ; preds = %39892
  %39909 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %39909, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %39910 = load i32, ptr %45, align 4, !tbaa !9
  %39911 = load i32, ptr %46, align 4, !tbaa !9
  %39912 = and i32 %39911, 31
  %39913 = ashr i32 %39910, %39912
  store i32 %39913, ptr %45, align 4, !tbaa !9
  %39914 = load i32, ptr %45, align 4, !tbaa !9
  %39915 = sitofp i32 %39914 to double
  store double %39915, ptr %60, align 8, !tbaa !13
  br label %39916

39916:                                            ; preds = %39908, %39897
  %39917 = load double, ptr %60, align 8, !tbaa !13
  store double %39917, ptr %43, align 8, !tbaa !13
  store double 0x41F0000000000000, ptr %61, align 8, !tbaa !13
  %39918 = load double, ptr %60, align 8, !tbaa !13
  %39919 = load double, ptr %61, align 8, !tbaa !13
  %39920 = fcmp olt double %39918, %39919
  %39921 = zext i1 %39920 to i32
  store i32 %39921, ptr %45, align 4, !tbaa !9
  %39922 = load double, ptr %43, align 8, !tbaa !13
  store double %39922, ptr %61, align 8, !tbaa !13
  store double 0.000000e+00, ptr %62, align 8, !tbaa !13
  %39923 = load double, ptr %61, align 8, !tbaa !13
  %39924 = load double, ptr %62, align 8, !tbaa !13
  %39925 = fcmp oge double %39923, %39924
  %39926 = zext i1 %39925 to i32
  store i32 %39926, ptr %46, align 4, !tbaa !9
  %39927 = load i32, ptr %46, align 4, !tbaa !9
  %39928 = load i32, ptr %45, align 4, !tbaa !9
  %39929 = and i32 %39928, %39927
  store i32 %39929, ptr %45, align 4, !tbaa !9
  %39930 = load i32, ptr %45, align 4, !tbaa !9
  %39931 = icmp ne i32 %39930, 0
  br i1 %39931, label %39932, label %39969

39932:                                            ; preds = %39916
  %39933 = load double, ptr %43, align 8, !tbaa !13
  store double %39933, ptr %60, align 8, !tbaa !13
  %39934 = load double, ptr %60, align 8, !tbaa !13
  %39935 = load double, ptr %60, align 8, !tbaa !13
  %39936 = fcmp une double %39934, %39935
  %39937 = xor i1 %39936, true
  %39938 = xor i1 %39937, true
  %39939 = zext i1 %39938 to i32
  %39940 = sext i32 %39939 to i64
  %39941 = call i64 @llvm.expect.i64(i64 %39940, i64 0)
  %39942 = icmp ne i64 %39941, 0
  br i1 %39942, label %39943, label %39945

39943:                                            ; preds = %39932
  call void @wasm_rt_trap(i32 noundef 4) #7
  unreachable

39944:                                            ; No predecessors!
  br label %39967

39945:                                            ; preds = %39932
  %39946 = load double, ptr %60, align 8, !tbaa !13
  %39947 = fcmp ogt double %39946, -1.000000e+00
  br i1 %39947, label %39948, label %39951

39948:                                            ; preds = %39945
  %39949 = load double, ptr %60, align 8, !tbaa !13
  %39950 = fcmp olt double %39949, 0x41F0000000000000
  br label %39951

39951:                                            ; preds = %39948, %39945
  %39952 = phi i1 [ false, %39945 ], [ %39950, %39948 ]
  %39953 = xor i1 %39952, true
  %39954 = xor i1 %39953, true
  %39955 = xor i1 %39954, true
  %39956 = zext i1 %39955 to i32
  %39957 = sext i32 %39956 to i64
  %39958 = call i64 @llvm.expect.i64(i64 %39957, i64 0)
  %39959 = icmp ne i64 %39958, 0
  br i1 %39959, label %39960, label %39962

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

39961:                                            ; No predecessors!
  br label %39965

39962:                                            ; preds = %39951
  %39963 = load double, ptr %60, align 8, !tbaa !13
  %39964 = fptoui double %39963 to i32
  br label %39965

39965:                                            ; preds = %39962, %39961
  %39966 = phi i32 [ 0, %39961 ], [ %39964, %39962 ]
  br label %39967

39967:                                            ; preds = %39965, %39944
  %39968 = phi i32 [ 0, %39944 ], [ %39966, %39965 ]
  store i32 %39968, ptr %45, align 4, !tbaa !9
  br label %39970

39969:                                            ; preds = %39916
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %39970

39970:                                            ; preds = %39969, %39967
  %39971 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %39971, ptr %46, align 4, !tbaa !9
  %39972 = load i32, ptr %45, align 4, !tbaa !9
  %39973 = load i32, ptr %46, align 4, !tbaa !9
  %39974 = icmp ule i32 %39972, %39973
  %39975 = zext i1 %39974 to i32
  store i32 %39975, ptr %45, align 4, !tbaa !9
  %39976 = load i32, ptr %45, align 4, !tbaa !9
  %39977 = icmp ne i32 %39976, 0
  br i1 %39977, label %39978, label %40006

39978:                                            ; preds = %39970
  %39979 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %39979, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %39980 = load ptr, ptr %5, align 8, !tbaa !5
  %39981 = getelementptr inbounds %struct.w2c_hermes, ptr %39980, i32 0, i32 6
  %39982 = load i32, ptr %45, align 4, !tbaa !9
  %39983 = zext i32 %39982 to i64
  %39984 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %39981, i64 noundef %39983, i64 noundef %39984)
  %39985 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %39985, ptr %45, align 4, !tbaa !9
  %39986 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %39986, ptr %46, align 4, !tbaa !9
  %39987 = load ptr, ptr %5, align 8, !tbaa !5
  %39988 = getelementptr inbounds %struct.w2c_hermes, ptr %39987, i32 0, i32 6
  %39989 = load i32, ptr %46, align 4, !tbaa !9
  %39990 = zext i32 %39989 to i64
  %39991 = add i64 %39990, 1
  %39992 = call i32 @i32_load8_u(ptr noundef %39988, i64 noundef %39991)
  store i32 %39992, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %39993 = load i32, ptr %47, align 4, !tbaa !9
  %39994 = and i32 %39993, 31
  %39995 = load i32, ptr %46, align 4, !tbaa !9
  %39996 = shl i32 %39995, %39994
  store i32 %39996, ptr %46, align 4, !tbaa !9
  %39997 = load i32, ptr %46, align 4, !tbaa !9
  %39998 = load i32, ptr %45, align 4, !tbaa !9
  %39999 = add i32 %39998, %39997
  store i32 %39999, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %40000 = load ptr, ptr %5, align 8, !tbaa !5
  %40001 = getelementptr inbounds %struct.w2c_hermes, ptr %40000, i32 0, i32 6
  %40002 = load i32, ptr %45, align 4, !tbaa !9
  %40003 = zext i32 %40002 to i64
  %40004 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40001, i64 noundef %40003, i64 noundef %40004)
  store i32 1, ptr %45, align 4, !tbaa !9
  %40005 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40005, ptr %13, align 4, !tbaa !9
  br label %41036

40006:                                            ; preds = %39970
  %40007 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %40007, ptr %45, align 4, !tbaa !9
  %40008 = load ptr, ptr %5, align 8, !tbaa !5
  %40009 = getelementptr inbounds %struct.w2c_hermes, ptr %40008, i32 0, i32 6
  %40010 = load i32, ptr %45, align 4, !tbaa !9
  %40011 = zext i32 %40010 to i64
  %40012 = add i64 %40011, 20
  %40013 = call i32 @i32_load(ptr noundef %40009, i64 noundef %40012)
  store i32 %40013, ptr %45, align 4, !tbaa !9
  %40014 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40014, ptr %7, align 4, !tbaa !9
  %40015 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40015, ptr %46, align 4, !tbaa !9
  %40016 = load i32, ptr %45, align 4, !tbaa !9
  %40017 = load i32, ptr %46, align 4, !tbaa !9
  %40018 = icmp ugt i32 %40016, %40017
  %40019 = zext i1 %40018 to i32
  store i32 %40019, ptr %45, align 4, !tbaa !9
  %40020 = load i32, ptr %45, align 4, !tbaa !9
  %40021 = icmp ne i32 %40020, 0
  br i1 %40021, label %40022, label %40023

40022:                                            ; preds = %40006
  br label %40284

40023:                                            ; preds = %40006
  %40024 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %40024, ptr %45, align 4, !tbaa !9
  %40025 = load ptr, ptr %5, align 8, !tbaa !5
  %40026 = getelementptr inbounds %struct.w2c_hermes, ptr %40025, i32 0, i32 6
  %40027 = load i32, ptr %45, align 4, !tbaa !9
  %40028 = zext i32 %40027 to i64
  %40029 = add i64 %40028, 24
  %40030 = call i32 @i32_load(ptr noundef %40026, i64 noundef %40029)
  store i32 %40030, ptr %45, align 4, !tbaa !9
  %40031 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40031, ptr %46, align 4, !tbaa !9
  %40032 = load i32, ptr %45, align 4, !tbaa !9
  %40033 = load i32, ptr %46, align 4, !tbaa !9
  %40034 = icmp ule i32 %40032, %40033
  %40035 = zext i1 %40034 to i32
  store i32 %40035, ptr %45, align 4, !tbaa !9
  %40036 = load i32, ptr %45, align 4, !tbaa !9
  %40037 = icmp ne i32 %40036, 0
  br i1 %40037, label %40038, label %40039

40038:                                            ; preds = %40023
  br label %40284

40039:                                            ; preds = %40023
  %40040 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %40040, ptr %45, align 4, !tbaa !9
  %40041 = load ptr, ptr %5, align 8, !tbaa !5
  %40042 = getelementptr inbounds %struct.w2c_hermes, ptr %40041, i32 0, i32 6
  %40043 = load i32, ptr %45, align 4, !tbaa !9
  %40044 = zext i32 %40043 to i64
  %40045 = add i64 %40044, 28
  %40046 = call i32 @i32_load(ptr noundef %40042, i64 noundef %40045)
  store i32 %40046, ptr %45, align 4, !tbaa !9
  %40047 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40047, ptr %8, align 4, !tbaa !9
  %40048 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40048, ptr %45, align 4, !tbaa !9
  %40049 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40049, ptr %46, align 4, !tbaa !9
  %40050 = load i32, ptr %46, align 4, !tbaa !9
  %40051 = load i32, ptr %45, align 4, !tbaa !9
  %40052 = sub i32 %40051, %40050
  store i32 %40052, ptr %45, align 4, !tbaa !9
  %40053 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40053, ptr %7, align 4, !tbaa !9
  store i32 4095, ptr %46, align 4, !tbaa !9
  %40054 = load i32, ptr %45, align 4, !tbaa !9
  %40055 = load i32, ptr %46, align 4, !tbaa !9
  %40056 = icmp ule i32 %40054, %40055
  %40057 = zext i1 %40056 to i32
  store i32 %40057, ptr %45, align 4, !tbaa !9
  %40058 = load i32, ptr %45, align 4, !tbaa !9
  %40059 = icmp ne i32 %40058, 0
  br i1 %40059, label %40060, label %40073

40060:                                            ; preds = %40039
  %40061 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %40061, ptr %45, align 4, !tbaa !9
  %40062 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40062, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %40063 = load i32, ptr %47, align 4, !tbaa !9
  %40064 = and i32 %40063, 31
  %40065 = load i32, ptr %46, align 4, !tbaa !9
  %40066 = shl i32 %40065, %40064
  store i32 %40066, ptr %46, align 4, !tbaa !9
  %40067 = load i32, ptr %46, align 4, !tbaa !9
  %40068 = load i32, ptr %45, align 4, !tbaa !9
  %40069 = add i32 %40068, %40067
  store i32 %40069, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %40070 = load i32, ptr %46, align 4, !tbaa !9
  %40071 = load i32, ptr %45, align 4, !tbaa !9
  %40072 = add i32 %40071, %40070
  store i32 %40072, ptr %45, align 4, !tbaa !9
  br label %40111

40073:                                            ; preds = %40039
  %40074 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %40074, ptr %45, align 4, !tbaa !9
  %40075 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40075, ptr %46, align 4, !tbaa !9
  store i32 4096, ptr %47, align 4, !tbaa !9
  %40076 = load i32, ptr %47, align 4, !tbaa !9
  %40077 = load i32, ptr %46, align 4, !tbaa !9
  %40078 = sub i32 %40077, %40076
  store i32 %40078, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %40079 = load i32, ptr %47, align 4, !tbaa !9
  %40080 = and i32 %40079, 31
  %40081 = load i32, ptr %46, align 4, !tbaa !9
  %40082 = lshr i32 %40081, %40080
  store i32 %40082, ptr %46, align 4, !tbaa !9
  store i32 16777212, ptr %47, align 4, !tbaa !9
  %40083 = load i32, ptr %47, align 4, !tbaa !9
  %40084 = load i32, ptr %46, align 4, !tbaa !9
  %40085 = and i32 %40084, %40083
  store i32 %40085, ptr %46, align 4, !tbaa !9
  %40086 = load i32, ptr %46, align 4, !tbaa !9
  %40087 = load i32, ptr %45, align 4, !tbaa !9
  %40088 = add i32 %40087, %40086
  store i32 %40088, ptr %45, align 4, !tbaa !9
  store i32 16392, ptr %46, align 4, !tbaa !9
  %40089 = load i32, ptr %46, align 4, !tbaa !9
  %40090 = load i32, ptr %45, align 4, !tbaa !9
  %40091 = add i32 %40090, %40089
  store i32 %40091, ptr %45, align 4, !tbaa !9
  %40092 = load ptr, ptr %5, align 8, !tbaa !5
  %40093 = getelementptr inbounds %struct.w2c_hermes, ptr %40092, i32 0, i32 6
  %40094 = load i32, ptr %45, align 4, !tbaa !9
  %40095 = zext i32 %40094 to i64
  %40096 = call i32 @i32_load(ptr noundef %40093, i64 noundef %40095)
  store i32 %40096, ptr %45, align 4, !tbaa !9
  %40097 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40097, ptr %46, align 4, !tbaa !9
  store i32 1023, ptr %47, align 4, !tbaa !9
  %40098 = load i32, ptr %47, align 4, !tbaa !9
  %40099 = load i32, ptr %46, align 4, !tbaa !9
  %40100 = and i32 %40099, %40098
  store i32 %40100, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %40101 = load i32, ptr %47, align 4, !tbaa !9
  %40102 = and i32 %40101, 31
  %40103 = load i32, ptr %46, align 4, !tbaa !9
  %40104 = shl i32 %40103, %40102
  store i32 %40104, ptr %46, align 4, !tbaa !9
  %40105 = load i32, ptr %46, align 4, !tbaa !9
  %40106 = load i32, ptr %45, align 4, !tbaa !9
  %40107 = add i32 %40106, %40105
  store i32 %40107, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %40108 = load i32, ptr %46, align 4, !tbaa !9
  %40109 = load i32, ptr %45, align 4, !tbaa !9
  %40110 = add i32 %40109, %40108
  store i32 %40110, ptr %45, align 4, !tbaa !9
  br label %40111

40111:                                            ; preds = %40073, %40060
  %40112 = load ptr, ptr %5, align 8, !tbaa !5
  %40113 = getelementptr inbounds %struct.w2c_hermes, ptr %40112, i32 0, i32 6
  %40114 = load i32, ptr %45, align 4, !tbaa !9
  %40115 = zext i32 %40114 to i64
  %40116 = call i32 @i32_load(ptr noundef %40113, i64 noundef %40115)
  store i32 %40116, ptr %45, align 4, !tbaa !9
  %40117 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40117, ptr %7, align 4, !tbaa !9
  store i32 7, ptr %46, align 4, !tbaa !9
  %40118 = load i32, ptr %45, align 4, !tbaa !9
  %40119 = load i32, ptr %46, align 4, !tbaa !9
  %40120 = icmp eq i32 %40118, %40119
  %40121 = zext i1 %40120 to i32
  store i32 %40121, ptr %45, align 4, !tbaa !9
  %40122 = load i32, ptr %45, align 4, !tbaa !9
  %40123 = icmp ne i32 %40122, 0
  br i1 %40123, label %40124, label %40125

40124:                                            ; preds = %40111
  br label %40284

40125:                                            ; preds = %40111
  store i32 1, ptr %45, align 4, !tbaa !9
  %40126 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40126, ptr %13, align 4, !tbaa !9
  %40127 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %40127, ptr %45, align 4, !tbaa !9
  %40128 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40128, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %40129 = load i32, ptr %47, align 4, !tbaa !9
  %40130 = load i32, ptr %46, align 4, !tbaa !9
  %40131 = add i32 %40130, %40129
  store i32 %40131, ptr %46, align 4, !tbaa !9
  %40132 = load i32, ptr %46, align 4, !tbaa !9
  %40133 = uitofp i32 %40132 to double
  store double %40133, ptr %61, align 8, !tbaa !13
  %40134 = load ptr, ptr %5, align 8, !tbaa !5
  %40135 = getelementptr inbounds %struct.w2c_hermes, ptr %40134, i32 0, i32 6
  %40136 = load i32, ptr %45, align 4, !tbaa !9
  %40137 = zext i32 %40136 to i64
  %40138 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %40135, i64 noundef %40137, double noundef %40138)
  store i64 -1688849860263936, ptr %54, align 8, !tbaa !11
  %40139 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40139, ptr %40, align 8, !tbaa !11
  %40140 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40140, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %40141 = load i32, ptr %46, align 4, !tbaa !9
  %40142 = load i32, ptr %45, align 4, !tbaa !9
  %40143 = and i32 %40142, %40141
  store i32 %40143, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %40144 = load i32, ptr %46, align 4, !tbaa !9
  %40145 = load i32, ptr %45, align 4, !tbaa !9
  %40146 = sub i32 %40145, %40144
  store i32 %40146, ptr %45, align 4, !tbaa !9
  %40147 = load i32, ptr %45, align 4, !tbaa !9
  switch i32 %40147, label %40163 [
    i32 0, label %40148
    i32 1, label %40149
    i32 2, label %40150
    i32 3, label %40151
    i32 4, label %40152
    i32 5, label %40153
    i32 6, label %40154
    i32 7, label %40155
    i32 8, label %40156
    i32 9, label %40157
    i32 10, label %40158
    i32 11, label %40159
    i32 12, label %40160
    i32 13, label %40161
    i32 14, label %40162
  ]

40148:                                            ; preds = %40125
  br label %40172

40149:                                            ; preds = %40125
  br label %40183

40150:                                            ; preds = %40125
  br label %40194

40151:                                            ; preds = %40125
  br label %40223

40152:                                            ; preds = %40125
  br label %40234

40153:                                            ; preds = %40125
  br label %40246

40154:                                            ; preds = %40125
  br label %40258

40155:                                            ; preds = %40125
  br label %40164

40156:                                            ; preds = %40125
  br label %40172

40157:                                            ; preds = %40125
  br label %40183

40158:                                            ; preds = %40125
  br label %40194

40159:                                            ; preds = %40125
  br label %40223

40160:                                            ; preds = %40125
  br label %40234

40161:                                            ; preds = %40125
  br label %40262

40162:                                            ; preds = %40125
  br label %40260

40163:                                            ; preds = %40125
  br label %40164

40164:                                            ; preds = %40163, %40155
  %40165 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40165, ptr %45, align 4, !tbaa !9
  %40166 = load i32, ptr %45, align 4, !tbaa !9
  %40167 = zext i32 %40166 to i64
  store i64 %40167, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %40168 = load i64, ptr %55, align 8, !tbaa !11
  %40169 = load i64, ptr %54, align 8, !tbaa !11
  %40170 = or i64 %40169, %40168
  store i64 %40170, ptr %54, align 8, !tbaa !11
  %40171 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40171, ptr %40, align 8, !tbaa !11
  br label %40262

40172:                                            ; preds = %40156, %40148
  %40173 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40173, ptr %45, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %40174 = load i32, ptr %46, align 4, !tbaa !9
  %40175 = load i32, ptr %45, align 4, !tbaa !9
  %40176 = and i32 %40175, %40174
  store i32 %40176, ptr %45, align 4, !tbaa !9
  %40177 = load i32, ptr %45, align 4, !tbaa !9
  %40178 = zext i32 %40177 to i64
  store i64 %40178, ptr %54, align 8, !tbaa !11
  store i64 -562949953421312, ptr %55, align 8, !tbaa !11
  %40179 = load i64, ptr %55, align 8, !tbaa !11
  %40180 = load i64, ptr %54, align 8, !tbaa !11
  %40181 = or i64 %40180, %40179
  store i64 %40181, ptr %54, align 8, !tbaa !11
  %40182 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40182, ptr %40, align 8, !tbaa !11
  br label %40262

40183:                                            ; preds = %40157, %40149
  %40184 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40184, ptr %45, align 4, !tbaa !9
  store i32 -8, ptr %46, align 4, !tbaa !9
  %40185 = load i32, ptr %46, align 4, !tbaa !9
  %40186 = load i32, ptr %45, align 4, !tbaa !9
  %40187 = and i32 %40186, %40185
  store i32 %40187, ptr %45, align 4, !tbaa !9
  %40188 = load i32, ptr %45, align 4, !tbaa !9
  %40189 = zext i32 %40188 to i64
  store i64 %40189, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %40190 = load i64, ptr %55, align 8, !tbaa !11
  %40191 = load i64, ptr %54, align 8, !tbaa !11
  %40192 = or i64 %40191, %40190
  store i64 %40192, ptr %54, align 8, !tbaa !11
  %40193 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40193, ptr %40, align 8, !tbaa !11
  br label %40262

40194:                                            ; preds = %40158, %40150
  store i64 9221120237041090560, ptr %54, align 8, !tbaa !11
  %40195 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40195, ptr %46, align 4, !tbaa !9
  store i32 -8, ptr %47, align 4, !tbaa !9
  %40196 = load i32, ptr %47, align 4, !tbaa !9
  %40197 = load i32, ptr %46, align 4, !tbaa !9
  %40198 = and i32 %40197, %40196
  store i32 %40198, ptr %46, align 4, !tbaa !9
  %40199 = load ptr, ptr %5, align 8, !tbaa !5
  %40200 = getelementptr inbounds %struct.w2c_hermes, ptr %40199, i32 0, i32 6
  %40201 = load i32, ptr %46, align 4, !tbaa !9
  %40202 = zext i32 %40201 to i64
  %40203 = add i64 %40202, 8
  %40204 = call double @f64_load(ptr noundef %40200, i64 noundef %40203)
  store double %40204, ptr %61, align 8, !tbaa !13
  %40205 = load double, ptr %61, align 8, !tbaa !13
  store double %40205, ptr %43, align 8, !tbaa !13
  %40206 = load double, ptr %61, align 8, !tbaa !13
  %40207 = call i64 @i64_reinterpret_f64(double noundef %40206)
  store i64 %40207, ptr %55, align 8, !tbaa !11
  %40208 = load double, ptr %43, align 8, !tbaa !13
  store double %40208, ptr %62, align 8, !tbaa !13
  %40209 = load double, ptr %43, align 8, !tbaa !13
  store double %40209, ptr %63, align 8, !tbaa !13
  %40210 = load double, ptr %62, align 8, !tbaa !13
  %40211 = load double, ptr %63, align 8, !tbaa !13
  %40212 = fcmp une double %40210, %40211
  %40213 = zext i1 %40212 to i32
  store i32 %40213, ptr %47, align 4, !tbaa !9
  %40214 = load i32, ptr %47, align 4, !tbaa !9
  %40215 = icmp ne i32 %40214, 0
  br i1 %40215, label %40216, label %40218

40216:                                            ; preds = %40194
  %40217 = load i64, ptr %54, align 8, !tbaa !11
  br label %40220

40218:                                            ; preds = %40194
  %40219 = load i64, ptr %55, align 8, !tbaa !11
  br label %40220

40220:                                            ; preds = %40218, %40216
  %40221 = phi i64 [ %40217, %40216 ], [ %40219, %40218 ]
  store i64 %40221, ptr %54, align 8, !tbaa !11
  %40222 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40222, ptr %40, align 8, !tbaa !11
  br label %40262

40223:                                            ; preds = %40159, %40151
  %40224 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40224, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %40225 = load i32, ptr %45, align 4, !tbaa !9
  %40226 = load i32, ptr %46, align 4, !tbaa !9
  %40227 = and i32 %40226, 31
  %40228 = ashr i32 %40225, %40227
  store i32 %40228, ptr %45, align 4, !tbaa !9
  %40229 = load i32, ptr %45, align 4, !tbaa !9
  %40230 = sitofp i32 %40229 to double
  store double %40230, ptr %60, align 8, !tbaa !13
  %40231 = load double, ptr %60, align 8, !tbaa !13
  %40232 = call i64 @i64_reinterpret_f64(double noundef %40231)
  store i64 %40232, ptr %54, align 8, !tbaa !11
  %40233 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40233, ptr %40, align 8, !tbaa !11
  br label %40262

40234:                                            ; preds = %40160, %40152
  %40235 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40235, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %40236 = load i32, ptr %46, align 4, !tbaa !9
  %40237 = and i32 %40236, 31
  %40238 = load i32, ptr %45, align 4, !tbaa !9
  %40239 = lshr i32 %40238, %40237
  store i32 %40239, ptr %45, align 4, !tbaa !9
  %40240 = load i32, ptr %45, align 4, !tbaa !9
  %40241 = zext i32 %40240 to i64
  store i64 %40241, ptr %54, align 8, !tbaa !11
  store i64 -1266637395197952, ptr %55, align 8, !tbaa !11
  %40242 = load i64, ptr %55, align 8, !tbaa !11
  %40243 = load i64, ptr %54, align 8, !tbaa !11
  %40244 = or i64 %40243, %40242
  store i64 %40244, ptr %54, align 8, !tbaa !11
  %40245 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40245, ptr %40, align 8, !tbaa !11
  br label %40262

40246:                                            ; preds = %40153
  %40247 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40247, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %40248 = load i32, ptr %45, align 4, !tbaa !9
  %40249 = load i32, ptr %46, align 4, !tbaa !9
  %40250 = icmp ugt i32 %40248, %40249
  %40251 = zext i1 %40250 to i32
  store i32 %40251, ptr %45, align 4, !tbaa !9
  %40252 = load i32, ptr %45, align 4, !tbaa !9
  %40253 = zext i32 %40252 to i64
  store i64 %40253, ptr %54, align 8, !tbaa !11
  store i64 -1407374883553280, ptr %55, align 8, !tbaa !11
  %40254 = load i64, ptr %55, align 8, !tbaa !11
  %40255 = load i64, ptr %54, align 8, !tbaa !11
  %40256 = or i64 %40255, %40254
  store i64 %40256, ptr %54, align 8, !tbaa !11
  %40257 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40257, ptr %40, align 8, !tbaa !11
  br label %40262

40258:                                            ; preds = %40154
  store i64 -1970324836974592, ptr %54, align 8, !tbaa !11
  %40259 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40259, ptr %40, align 8, !tbaa !11
  br label %40262

40260:                                            ; preds = %40162
  store i64 -1548112371908608, ptr %54, align 8, !tbaa !11
  %40261 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40261, ptr %40, align 8, !tbaa !11
  br label %40262

40262:                                            ; preds = %40260, %40258, %40246, %40234, %40223, %40220, %40183, %40172, %40164, %40161
  %40263 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40263, ptr %45, align 4, !tbaa !9
  %40264 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40264, ptr %46, align 4, !tbaa !9
  %40265 = load ptr, ptr %5, align 8, !tbaa !5
  %40266 = getelementptr inbounds %struct.w2c_hermes, ptr %40265, i32 0, i32 6
  %40267 = load i32, ptr %46, align 4, !tbaa !9
  %40268 = zext i32 %40267 to i64
  %40269 = add i64 %40268, 1
  %40270 = call i32 @i32_load8_u(ptr noundef %40266, i64 noundef %40269)
  store i32 %40270, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40271 = load i32, ptr %47, align 4, !tbaa !9
  %40272 = and i32 %40271, 31
  %40273 = load i32, ptr %46, align 4, !tbaa !9
  %40274 = shl i32 %40273, %40272
  store i32 %40274, ptr %46, align 4, !tbaa !9
  %40275 = load i32, ptr %46, align 4, !tbaa !9
  %40276 = load i32, ptr %45, align 4, !tbaa !9
  %40277 = add i32 %40276, %40275
  store i32 %40277, ptr %45, align 4, !tbaa !9
  %40278 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %40278, ptr %55, align 8, !tbaa !11
  %40279 = load ptr, ptr %5, align 8, !tbaa !5
  %40280 = getelementptr inbounds %struct.w2c_hermes, ptr %40279, i32 0, i32 6
  %40281 = load i32, ptr %45, align 4, !tbaa !9
  %40282 = zext i32 %40281 to i64
  %40283 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40280, i64 noundef %40282, i64 noundef %40283)
  br label %41036

40284:                                            ; preds = %40124, %40038, %40022
  %40285 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40285, ptr %45, align 4, !tbaa !9
  %40286 = load ptr, ptr %5, align 8, !tbaa !5
  %40287 = getelementptr inbounds %struct.w2c_hermes, ptr %40286, i32 0, i32 6
  %40288 = load i32, ptr %45, align 4, !tbaa !9
  %40289 = zext i32 %40288 to i64
  %40290 = add i64 %40289, 4
  %40291 = call i32 @i32_load(ptr noundef %40287, i64 noundef %40290)
  store i32 %40291, ptr %45, align 4, !tbaa !9
  %40292 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40292, ptr %15, align 4, !tbaa !9
  %40293 = load ptr, ptr %5, align 8, !tbaa !5
  %40294 = getelementptr inbounds %struct.w2c_hermes, ptr %40293, i32 0, i32 6
  %40295 = load i32, ptr %45, align 4, !tbaa !9
  %40296 = zext i32 %40295 to i64
  %40297 = add i64 %40296, 172
  %40298 = call i32 @i32_load(ptr noundef %40294, i64 noundef %40297)
  store i32 %40298, ptr %45, align 4, !tbaa !9
  %40299 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40299, ptr %8, align 4, !tbaa !9
  %40300 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %40300, ptr %45, align 4, !tbaa !9
  %40301 = load ptr, ptr %5, align 8, !tbaa !5
  %40302 = getelementptr inbounds %struct.w2c_hermes, ptr %40301, i32 0, i32 6
  %40303 = load i32, ptr %45, align 4, !tbaa !9
  %40304 = zext i32 %40303 to i64
  %40305 = add i64 %40304, 164
  %40306 = call i32 @i32_load(ptr noundef %40302, i64 noundef %40305)
  store i32 %40306, ptr %45, align 4, !tbaa !9
  %40307 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40307, ptr %7, align 4, !tbaa !9
  %40308 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40308, ptr %45, align 4, !tbaa !9
  store i32 56, ptr %46, align 4, !tbaa !9
  %40309 = load i32, ptr %46, align 4, !tbaa !9
  %40310 = load i32, ptr %45, align 4, !tbaa !9
  %40311 = add i32 %40310, %40309
  store i32 %40311, ptr %45, align 4, !tbaa !9
  %40312 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %40312, ptr %46, align 4, !tbaa !9
  %40313 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40313, ptr %47, align 4, !tbaa !9
  %40314 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %40314, ptr %48, align 4, !tbaa !9
  %40315 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %40315, ptr %49, align 4, !tbaa !9
  %40316 = load ptr, ptr %5, align 8, !tbaa !5
  %40317 = load i32, ptr %45, align 4, !tbaa !9
  %40318 = load i32, ptr %46, align 4, !tbaa !9
  %40319 = load i32, ptr %47, align 4, !tbaa !9
  %40320 = load i32, ptr %48, align 4, !tbaa !9
  %40321 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %40316, i32 noundef %40317, i32 noundef %40318, i32 noundef %40319, i32 noundef %40320, i32 noundef %40321)
  %40322 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40322, ptr %45, align 4, !tbaa !9
  %40323 = load ptr, ptr %5, align 8, !tbaa !5
  %40324 = getelementptr inbounds %struct.w2c_hermes, ptr %40323, i32 0, i32 6
  %40325 = load i32, ptr %45, align 4, !tbaa !9
  %40326 = zext i32 %40325 to i64
  %40327 = add i64 %40326, 56
  %40328 = call i32 @i32_load(ptr noundef %40324, i64 noundef %40327)
  store i32 %40328, ptr %45, align 4, !tbaa !9
  %40329 = load i32, ptr %45, align 4, !tbaa !9
  %40330 = icmp ne i32 %40329, 0
  br i1 %40330, label %40331, label %40385

40331:                                            ; preds = %40284
  %40332 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40332, ptr %45, align 4, !tbaa !9
  %40333 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40333, ptr %46, align 4, !tbaa !9
  %40334 = load ptr, ptr %5, align 8, !tbaa !5
  %40335 = getelementptr inbounds %struct.w2c_hermes, ptr %40334, i32 0, i32 6
  %40336 = load i32, ptr %46, align 4, !tbaa !9
  %40337 = zext i32 %40336 to i64
  %40338 = add i64 %40337, 2
  %40339 = call i32 @i32_load8_u(ptr noundef %40335, i64 noundef %40338)
  store i32 %40339, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40340 = load i32, ptr %47, align 4, !tbaa !9
  %40341 = and i32 %40340, 31
  %40342 = load i32, ptr %46, align 4, !tbaa !9
  %40343 = shl i32 %40342, %40341
  store i32 %40343, ptr %46, align 4, !tbaa !9
  %40344 = load i32, ptr %46, align 4, !tbaa !9
  %40345 = load i32, ptr %45, align 4, !tbaa !9
  %40346 = add i32 %40345, %40344
  store i32 %40346, ptr %45, align 4, !tbaa !9
  %40347 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40347, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %40348 = load i32, ptr %47, align 4, !tbaa !9
  %40349 = load i32, ptr %46, align 4, !tbaa !9
  %40350 = add i32 %40349, %40348
  store i32 %40350, ptr %46, align 4, !tbaa !9
  %40351 = load i32, ptr %46, align 4, !tbaa !9
  %40352 = uitofp i32 %40351 to double
  store double %40352, ptr %61, align 8, !tbaa !13
  %40353 = load ptr, ptr %5, align 8, !tbaa !5
  %40354 = getelementptr inbounds %struct.w2c_hermes, ptr %40353, i32 0, i32 6
  %40355 = load i32, ptr %45, align 4, !tbaa !9
  %40356 = zext i32 %40355 to i64
  %40357 = load double, ptr %61, align 8, !tbaa !13
  call void @f64_store(ptr noundef %40354, i64 noundef %40356, double noundef %40357)
  %40358 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40358, ptr %45, align 4, !tbaa !9
  %40359 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40359, ptr %46, align 4, !tbaa !9
  %40360 = load ptr, ptr %5, align 8, !tbaa !5
  %40361 = getelementptr inbounds %struct.w2c_hermes, ptr %40360, i32 0, i32 6
  %40362 = load i32, ptr %46, align 4, !tbaa !9
  %40363 = zext i32 %40362 to i64
  %40364 = add i64 %40363, 1
  %40365 = call i32 @i32_load8_u(ptr noundef %40361, i64 noundef %40364)
  store i32 %40365, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40366 = load i32, ptr %47, align 4, !tbaa !9
  %40367 = and i32 %40366, 31
  %40368 = load i32, ptr %46, align 4, !tbaa !9
  %40369 = shl i32 %40368, %40367
  store i32 %40369, ptr %46, align 4, !tbaa !9
  %40370 = load i32, ptr %46, align 4, !tbaa !9
  %40371 = load i32, ptr %45, align 4, !tbaa !9
  %40372 = add i32 %40371, %40370
  store i32 %40372, ptr %45, align 4, !tbaa !9
  %40373 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40373, ptr %46, align 4, !tbaa !9
  %40374 = load ptr, ptr %5, align 8, !tbaa !5
  %40375 = getelementptr inbounds %struct.w2c_hermes, ptr %40374, i32 0, i32 6
  %40376 = load i32, ptr %46, align 4, !tbaa !9
  %40377 = zext i32 %40376 to i64
  %40378 = add i64 %40377, 64
  %40379 = call i64 @i64_load(ptr noundef %40375, i64 noundef %40378)
  store i64 %40379, ptr %55, align 8, !tbaa !11
  %40380 = load ptr, ptr %5, align 8, !tbaa !5
  %40381 = getelementptr inbounds %struct.w2c_hermes, ptr %40380, i32 0, i32 6
  %40382 = load i32, ptr %45, align 4, !tbaa !9
  %40383 = zext i32 %40382 to i64
  %40384 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40381, i64 noundef %40383, i64 noundef %40384)
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %40386

40385:                                            ; preds = %40284
  store i32 0, ptr %45, align 4, !tbaa !9
  br label %40386

40386:                                            ; preds = %40385, %40331
  %40387 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40387, ptr %13, align 4, !tbaa !9
  %40388 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %40388, ptr %45, align 4, !tbaa !9
  %40389 = load ptr, ptr %5, align 8, !tbaa !5
  %40390 = getelementptr inbounds %struct.w2c_hermes, ptr %40389, i32 0, i32 6
  %40391 = load i32, ptr %45, align 4, !tbaa !9
  %40392 = zext i32 %40391 to i64
  %40393 = add i64 %40392, 136
  %40394 = call i32 @i32_load(ptr noundef %40390, i64 noundef %40393)
  store i32 %40394, ptr %45, align 4, !tbaa !9
  %40395 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %40395, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %40396 = load i32, ptr %47, align 4, !tbaa !9
  %40397 = and i32 %40396, 31
  %40398 = load i32, ptr %46, align 4, !tbaa !9
  %40399 = shl i32 %40398, %40397
  store i32 %40399, ptr %46, align 4, !tbaa !9
  %40400 = load i32, ptr %46, align 4, !tbaa !9
  %40401 = load i32, ptr %45, align 4, !tbaa !9
  %40402 = add i32 %40401, %40400
  store i32 %40402, ptr %45, align 4, !tbaa !9
  %40403 = load ptr, ptr %5, align 8, !tbaa !5
  %40404 = getelementptr inbounds %struct.w2c_hermes, ptr %40403, i32 0, i32 6
  %40405 = load i32, ptr %45, align 4, !tbaa !9
  %40406 = zext i32 %40405 to i64
  %40407 = call i32 @i32_load(ptr noundef %40404, i64 noundef %40406)
  store i32 %40407, ptr %45, align 4, !tbaa !9
  %40408 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40408, ptr %6, align 4, !tbaa !9
  %40409 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %40409, ptr %45, align 4, !tbaa !9
  %40410 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %40410, ptr %46, align 4, !tbaa !9
  %40411 = load ptr, ptr %5, align 8, !tbaa !5
  %40412 = getelementptr inbounds %struct.w2c_hermes, ptr %40411, i32 0, i32 6
  %40413 = load i32, ptr %45, align 4, !tbaa !9
  %40414 = zext i32 %40413 to i64
  %40415 = add i64 %40414, 172
  %40416 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40412, i64 noundef %40415, i32 noundef %40416)
  %40417 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %40417, ptr %45, align 4, !tbaa !9
  %40418 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40418, ptr %46, align 4, !tbaa !9
  %40419 = load ptr, ptr %5, align 8, !tbaa !5
  %40420 = getelementptr inbounds %struct.w2c_hermes, ptr %40419, i32 0, i32 6
  %40421 = load i32, ptr %45, align 4, !tbaa !9
  %40422 = zext i32 %40421 to i64
  %40423 = add i64 %40422, 164
  %40424 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40420, i64 noundef %40423, i32 noundef %40424)
  %40425 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %40425, ptr %45, align 4, !tbaa !9
  %40426 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40426, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %40427 = load i32, ptr %47, align 4, !tbaa !9
  %40428 = load i32, ptr %46, align 4, !tbaa !9
  %40429 = add i32 %40428, %40427
  store i32 %40429, ptr %46, align 4, !tbaa !9
  %40430 = load ptr, ptr %5, align 8, !tbaa !5
  %40431 = getelementptr inbounds %struct.w2c_hermes, ptr %40430, i32 0, i32 6
  %40432 = load i32, ptr %45, align 4, !tbaa !9
  %40433 = zext i32 %40432 to i64
  %40434 = add i64 %40433, 168
  %40435 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40431, i64 noundef %40434, i32 noundef %40435)
  br label %41036

40436:                                            ; preds = %39751
  %40437 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %40437, ptr %54, align 8, !tbaa !11
  store i64 47, ptr %55, align 8, !tbaa !11
  %40438 = load i64, ptr %54, align 8, !tbaa !11
  %40439 = load i64, ptr %55, align 8, !tbaa !11
  %40440 = and i64 %40439, 63
  %40441 = ashr i64 %40438, %40440
  store i64 %40441, ptr %54, align 8, !tbaa !11
  %40442 = load i64, ptr %54, align 8, !tbaa !11
  %40443 = trunc i64 %40442 to i32
  store i32 %40443, ptr %45, align 4, !tbaa !9
  store i32 -12, ptr %46, align 4, !tbaa !9
  %40444 = load i32, ptr %45, align 4, !tbaa !9
  %40445 = load i32, ptr %46, align 4, !tbaa !9
  %40446 = icmp eq i32 %40444, %40445
  %40447 = zext i1 %40446 to i32
  store i32 %40447, ptr %45, align 4, !tbaa !9
  %40448 = load i32, ptr %45, align 4, !tbaa !9
  %40449 = icmp ne i32 %40448, 0
  br i1 %40449, label %40450, label %40472

40450:                                            ; preds = %40436
  %40451 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40451, ptr %45, align 4, !tbaa !9
  %40452 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40452, ptr %46, align 4, !tbaa !9
  %40453 = load ptr, ptr %5, align 8, !tbaa !5
  %40454 = getelementptr inbounds %struct.w2c_hermes, ptr %40453, i32 0, i32 6
  %40455 = load i32, ptr %46, align 4, !tbaa !9
  %40456 = zext i32 %40455 to i64
  %40457 = add i64 %40456, 1
  %40458 = call i32 @i32_load8_u(ptr noundef %40454, i64 noundef %40457)
  store i32 %40458, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40459 = load i32, ptr %47, align 4, !tbaa !9
  %40460 = and i32 %40459, 31
  %40461 = load i32, ptr %46, align 4, !tbaa !9
  %40462 = shl i32 %40461, %40460
  store i32 %40462, ptr %46, align 4, !tbaa !9
  %40463 = load i32, ptr %46, align 4, !tbaa !9
  %40464 = load i32, ptr %45, align 4, !tbaa !9
  %40465 = add i32 %40464, %40463
  store i32 %40465, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %40466 = load ptr, ptr %5, align 8, !tbaa !5
  %40467 = getelementptr inbounds %struct.w2c_hermes, ptr %40466, i32 0, i32 6
  %40468 = load i32, ptr %45, align 4, !tbaa !9
  %40469 = zext i32 %40468 to i64
  %40470 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40467, i64 noundef %40469, i64 noundef %40470)
  store i32 1, ptr %45, align 4, !tbaa !9
  %40471 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40471, ptr %13, align 4, !tbaa !9
  br label %41036

40472:                                            ; preds = %40436
  %40473 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40473, ptr %45, align 4, !tbaa !9
  %40474 = load ptr, ptr %5, align 8, !tbaa !5
  %40475 = getelementptr inbounds %struct.w2c_hermes, ptr %40474, i32 0, i32 6
  %40476 = load i32, ptr %45, align 4, !tbaa !9
  %40477 = zext i32 %40476 to i64
  %40478 = add i64 %40477, 4
  %40479 = call i32 @i32_load(ptr noundef %40475, i64 noundef %40478)
  store i32 %40479, ptr %45, align 4, !tbaa !9
  %40480 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40480, ptr %16, align 4, !tbaa !9
  %40481 = load ptr, ptr %5, align 8, !tbaa !5
  %40482 = getelementptr inbounds %struct.w2c_hermes, ptr %40481, i32 0, i32 6
  %40483 = load i32, ptr %45, align 4, !tbaa !9
  %40484 = zext i32 %40483 to i64
  %40485 = add i64 %40484, 172
  %40486 = call i32 @i32_load(ptr noundef %40482, i64 noundef %40485)
  store i32 %40486, ptr %45, align 4, !tbaa !9
  %40487 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40487, ptr %15, align 4, !tbaa !9
  %40488 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %40488, ptr %45, align 4, !tbaa !9
  %40489 = load ptr, ptr %5, align 8, !tbaa !5
  %40490 = getelementptr inbounds %struct.w2c_hermes, ptr %40489, i32 0, i32 6
  %40491 = load i32, ptr %45, align 4, !tbaa !9
  %40492 = zext i32 %40491 to i64
  %40493 = add i64 %40492, 164
  %40494 = call i32 @i32_load(ptr noundef %40490, i64 noundef %40493)
  store i32 %40494, ptr %45, align 4, !tbaa !9
  %40495 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40495, ptr %12, align 4, !tbaa !9
  %40496 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40496, ptr %45, align 4, !tbaa !9
  %40497 = load ptr, ptr %5, align 8, !tbaa !5
  %40498 = getelementptr inbounds %struct.w2c_hermes, ptr %40497, i32 0, i32 6
  %40499 = load i32, ptr %45, align 4, !tbaa !9
  %40500 = zext i32 %40499 to i64
  %40501 = add i64 %40500, 3
  %40502 = call i32 @i32_load8_u(ptr noundef %40498, i64 noundef %40501)
  store i32 %40502, ptr %45, align 4, !tbaa !9
  %40503 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40503, ptr %7, align 4, !tbaa !9
  %40504 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40504, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %40505 = load ptr, ptr %5, align 8, !tbaa !5
  %40506 = getelementptr inbounds %struct.w2c_hermes, ptr %40505, i32 0, i32 6
  %40507 = load i32, ptr %45, align 4, !tbaa !9
  %40508 = zext i32 %40507 to i64
  %40509 = add i64 %40508, 40
  %40510 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %40506, i64 noundef %40509, i32 noundef %40510)
  %40511 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40511, ptr %45, align 4, !tbaa !9
  %40512 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %40512, ptr %46, align 4, !tbaa !9
  %40513 = load ptr, ptr %5, align 8, !tbaa !5
  %40514 = getelementptr inbounds %struct.w2c_hermes, ptr %40513, i32 0, i32 6
  %40515 = load i32, ptr %45, align 4, !tbaa !9
  %40516 = zext i32 %40515 to i64
  %40517 = add i64 %40516, 48
  %40518 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40514, i64 noundef %40517, i32 noundef %40518)
  %40519 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40519, ptr %45, align 4, !tbaa !9
  %40520 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40520, ptr %46, align 4, !tbaa !9
  %40521 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40521, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %40522 = load i32, ptr %48, align 4, !tbaa !9
  %40523 = and i32 %40522, 31
  %40524 = load i32, ptr %47, align 4, !tbaa !9
  %40525 = shl i32 %40524, %40523
  store i32 %40525, ptr %47, align 4, !tbaa !9
  %40526 = load i32, ptr %47, align 4, !tbaa !9
  %40527 = load i32, ptr %46, align 4, !tbaa !9
  %40528 = add i32 %40527, %40526
  store i32 %40528, ptr %46, align 4, !tbaa !9
  %40529 = load ptr, ptr %5, align 8, !tbaa !5
  %40530 = getelementptr inbounds %struct.w2c_hermes, ptr %40529, i32 0, i32 6
  %40531 = load i32, ptr %45, align 4, !tbaa !9
  %40532 = zext i32 %40531 to i64
  %40533 = add i64 %40532, 52
  %40534 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40530, i64 noundef %40533, i32 noundef %40534)
  %40535 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40535, ptr %45, align 4, !tbaa !9
  %40536 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40536, ptr %46, align 4, !tbaa !9
  %40537 = load ptr, ptr %5, align 8, !tbaa !5
  %40538 = getelementptr inbounds %struct.w2c_hermes, ptr %40537, i32 0, i32 6
  %40539 = load i32, ptr %46, align 4, !tbaa !9
  %40540 = zext i32 %40539 to i64
  %40541 = add i64 %40540, 36
  %40542 = call i64 @i64_load(ptr noundef %40538, i64 noundef %40541)
  store i64 %40542, ptr %55, align 8, !tbaa !11
  %40543 = load ptr, ptr %5, align 8, !tbaa !5
  %40544 = getelementptr inbounds %struct.w2c_hermes, ptr %40543, i32 0, i32 6
  %40545 = load i32, ptr %45, align 4, !tbaa !9
  %40546 = zext i32 %40545 to i64
  %40547 = add i64 %40546, 8
  %40548 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40544, i64 noundef %40547, i64 noundef %40548)
  %40549 = load ptr, ptr %5, align 8, !tbaa !5
  %40550 = getelementptr inbounds %struct.w2c_hermes, ptr %40549, i32 0, i32 3
  %40551 = load i32, ptr %40550, align 8, !tbaa !15
  store i32 %40551, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %40552 = load i32, ptr %46, align 4, !tbaa !9
  %40553 = load i32, ptr %45, align 4, !tbaa !9
  %40554 = add i32 %40553, %40552
  store i32 %40554, ptr %45, align 4, !tbaa !9
  %40555 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40555, ptr %25, align 4, !tbaa !9
  %40556 = load i32, ptr %45, align 4, !tbaa !9
  %40557 = load ptr, ptr %5, align 8, !tbaa !5
  %40558 = getelementptr inbounds %struct.w2c_hermes, ptr %40557, i32 0, i32 3
  store i32 %40556, ptr %40558, align 8, !tbaa !15
  %40559 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40559, ptr %45, align 4, !tbaa !9
  %40560 = load ptr, ptr %5, align 8, !tbaa !5
  %40561 = getelementptr inbounds %struct.w2c_hermes, ptr %40560, i32 0, i32 6
  %40562 = load i32, ptr %45, align 4, !tbaa !9
  %40563 = zext i32 %40562 to i64
  %40564 = add i64 %40563, 4
  %40565 = call i32 @i32_load(ptr noundef %40561, i64 noundef %40564)
  store i32 %40565, ptr %45, align 4, !tbaa !9
  %40566 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40566, ptr %18, align 4, !tbaa !9
  %40567 = load ptr, ptr %5, align 8, !tbaa !5
  %40568 = getelementptr inbounds %struct.w2c_hermes, ptr %40567, i32 0, i32 6
  %40569 = load i32, ptr %45, align 4, !tbaa !9
  %40570 = zext i32 %40569 to i64
  %40571 = add i64 %40570, 172
  %40572 = call i32 @i32_load(ptr noundef %40568, i64 noundef %40571)
  store i32 %40572, ptr %45, align 4, !tbaa !9
  %40573 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40573, ptr %14, align 4, !tbaa !9
  %40574 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40574, ptr %45, align 4, !tbaa !9
  %40575 = load ptr, ptr %5, align 8, !tbaa !5
  %40576 = getelementptr inbounds %struct.w2c_hermes, ptr %40575, i32 0, i32 6
  %40577 = load i32, ptr %45, align 4, !tbaa !9
  %40578 = zext i32 %40577 to i64
  %40579 = add i64 %40578, 164
  %40580 = call i32 @i32_load(ptr noundef %40576, i64 noundef %40579)
  store i32 %40580, ptr %45, align 4, !tbaa !9
  %40581 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40581, ptr %8, align 4, !tbaa !9
  %40582 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40582, ptr %45, align 4, !tbaa !9
  %40583 = load ptr, ptr %5, align 8, !tbaa !5
  %40584 = getelementptr inbounds %struct.w2c_hermes, ptr %40583, i32 0, i32 6
  %40585 = load i32, ptr %45, align 4, !tbaa !9
  %40586 = zext i32 %40585 to i64
  %40587 = add i64 %40586, 48
  %40588 = call i32 @i32_load(ptr noundef %40584, i64 noundef %40587)
  store i32 %40588, ptr %45, align 4, !tbaa !9
  %40589 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40589, ptr %13, align 4, !tbaa !9
  %40590 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40590, ptr %45, align 4, !tbaa !9
  %40591 = load ptr, ptr %5, align 8, !tbaa !5
  %40592 = getelementptr inbounds %struct.w2c_hermes, ptr %40591, i32 0, i32 6
  %40593 = load i32, ptr %45, align 4, !tbaa !9
  %40594 = zext i32 %40593 to i64
  %40595 = add i64 %40594, 52
  %40596 = call i32 @i32_load(ptr noundef %40592, i64 noundef %40595)
  store i32 %40596, ptr %45, align 4, !tbaa !9
  %40597 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40597, ptr %7, align 4, !tbaa !9
  %40598 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40598, ptr %45, align 4, !tbaa !9
  %40599 = load ptr, ptr %5, align 8, !tbaa !5
  %40600 = getelementptr inbounds %struct.w2c_hermes, ptr %40599, i32 0, i32 6
  %40601 = load i32, ptr %45, align 4, !tbaa !9
  %40602 = zext i32 %40601 to i64
  %40603 = add i64 %40602, 12
  %40604 = call i32 @i32_load8_u(ptr noundef %40600, i64 noundef %40603)
  store i32 %40604, ptr %45, align 4, !tbaa !9
  %40605 = load i32, ptr %45, align 4, !tbaa !9
  %40606 = icmp ne i32 %40605, 0
  br i1 %40606, label %40607, label %40634

40607:                                            ; preds = %40472
  %40608 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40608, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %40609 = load i32, ptr %46, align 4, !tbaa !9
  %40610 = load i32, ptr %45, align 4, !tbaa !9
  %40611 = add i32 %40610, %40609
  store i32 %40611, ptr %45, align 4, !tbaa !9
  %40612 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40612, ptr %46, align 4, !tbaa !9
  %40613 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40613, ptr %47, align 4, !tbaa !9
  %40614 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %40614, ptr %48, align 4, !tbaa !9
  %40615 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40615, ptr %49, align 4, !tbaa !9
  %40616 = load ptr, ptr %5, align 8, !tbaa !5
  %40617 = getelementptr inbounds %struct.w2c_hermes, ptr %40616, i32 0, i32 6
  %40618 = load i32, ptr %49, align 4, !tbaa !9
  %40619 = zext i32 %40618 to i64
  %40620 = add i64 %40619, 8
  %40621 = call i32 @i32_load(ptr noundef %40617, i64 noundef %40620)
  store i32 %40621, ptr %49, align 4, !tbaa !9
  %40622 = load ptr, ptr %5, align 8, !tbaa !5
  %40623 = getelementptr inbounds %struct.w2c_hermes, ptr %40622, i32 0, i32 6
  %40624 = load i32, ptr %49, align 4, !tbaa !9
  %40625 = zext i32 %40624 to i64
  %40626 = call i64 @i64_load(ptr noundef %40623, i64 noundef %40625)
  store i64 %40626, ptr %58, align 8, !tbaa !11
  store i32 0, ptr %50, align 4, !tbaa !9
  %40627 = load ptr, ptr %5, align 8, !tbaa !5
  %40628 = load i32, ptr %45, align 4, !tbaa !9
  %40629 = load i32, ptr %46, align 4, !tbaa !9
  %40630 = load i32, ptr %47, align 4, !tbaa !9
  %40631 = load i32, ptr %48, align 4, !tbaa !9
  %40632 = load i64, ptr %58, align 8, !tbaa !11
  %40633 = load i32, ptr %50, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall10x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20bool0x29(ptr noundef %40627, i32 noundef %40628, i32 noundef %40629, i32 noundef %40630, i32 noundef %40631, i64 noundef %40632, i32 noundef %40633)
  br label %40648

40634:                                            ; preds = %40472
  %40635 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40635, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %40636 = load i32, ptr %46, align 4, !tbaa !9
  %40637 = load i32, ptr %45, align 4, !tbaa !9
  %40638 = add i32 %40637, %40636
  store i32 %40638, ptr %45, align 4, !tbaa !9
  %40639 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40639, ptr %46, align 4, !tbaa !9
  %40640 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40640, ptr %47, align 4, !tbaa !9
  %40641 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %40641, ptr %48, align 4, !tbaa !9
  store i32 0, ptr %49, align 4, !tbaa !9
  %40642 = load ptr, ptr %5, align 8, !tbaa !5
  %40643 = load i32, ptr %45, align 4, !tbaa !9
  %40644 = load i32, ptr %46, align 4, !tbaa !9
  %40645 = load i32, ptr %47, align 4, !tbaa !9
  %40646 = load i32, ptr %48, align 4, !tbaa !9
  %40647 = load i32, ptr %49, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall00x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef %40642, i32 noundef %40643, i32 noundef %40644, i32 noundef %40645, i32 noundef %40646, i32 noundef %40647)
  br label %40648

40648:                                            ; preds = %40634, %40607
  %40649 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40649, ptr %45, align 4, !tbaa !9
  %40650 = load ptr, ptr %5, align 8, !tbaa !5
  %40651 = getelementptr inbounds %struct.w2c_hermes, ptr %40650, i32 0, i32 6
  %40652 = load i32, ptr %45, align 4, !tbaa !9
  %40653 = zext i32 %40652 to i64
  %40654 = add i64 %40653, 48
  %40655 = call i32 @i32_load(ptr noundef %40651, i64 noundef %40654)
  store i32 %40655, ptr %45, align 4, !tbaa !9
  %40656 = load i32, ptr %45, align 4, !tbaa !9
  %40657 = icmp ne i32 %40656, 0
  %40658 = xor i1 %40657, true
  %40659 = zext i1 %40658 to i32
  store i32 %40659, ptr %45, align 4, !tbaa !9
  %40660 = load i32, ptr %45, align 4, !tbaa !9
  %40661 = icmp ne i32 %40660, 0
  br i1 %40661, label %40662, label %40664

40662:                                            ; preds = %40648
  store i32 -1, ptr %45, align 4, !tbaa !9
  %40663 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40663, ptr %22, align 4, !tbaa !9
  br label %40729

40664:                                            ; preds = %40648
  store i32 -1, ptr %45, align 4, !tbaa !9
  %40665 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40665, ptr %22, align 4, !tbaa !9
  %40666 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40666, ptr %45, align 4, !tbaa !9
  %40667 = load ptr, ptr %5, align 8, !tbaa !5
  %40668 = getelementptr inbounds %struct.w2c_hermes, ptr %40667, i32 0, i32 6
  %40669 = load i32, ptr %45, align 4, !tbaa !9
  %40670 = zext i32 %40669 to i64
  %40671 = add i64 %40670, 56
  %40672 = call i64 @i64_load(ptr noundef %40668, i64 noundef %40671)
  store i64 %40672, ptr %54, align 8, !tbaa !11
  %40673 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %40673, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %40674 = load i64, ptr %54, align 8, !tbaa !11
  %40675 = load i64, ptr %55, align 8, !tbaa !11
  %40676 = and i64 %40675, 63
  %40677 = ashr i64 %40674, %40676
  store i64 %40677, ptr %54, align 8, !tbaa !11
  %40678 = load i64, ptr %54, align 8, !tbaa !11
  %40679 = trunc i64 %40678 to i32
  store i32 %40679, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %40680 = load i32, ptr %45, align 4, !tbaa !9
  %40681 = load i32, ptr %46, align 4, !tbaa !9
  %40682 = icmp ne i32 %40680, %40681
  %40683 = zext i1 %40682 to i32
  store i32 %40683, ptr %45, align 4, !tbaa !9
  %40684 = load i32, ptr %45, align 4, !tbaa !9
  %40685 = icmp ne i32 %40684, 0
  br i1 %40685, label %40686, label %40724

40686:                                            ; preds = %40664
  %40687 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40687, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %40688 = load ptr, ptr %5, align 8, !tbaa !5
  %40689 = getelementptr inbounds %struct.w2c_hermes, ptr %40688, i32 0, i32 6
  %40690 = load i32, ptr %45, align 4, !tbaa !9
  %40691 = zext i32 %40690 to i64
  %40692 = add i64 %40691, 40
  %40693 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40689, i64 noundef %40692, i32 noundef %40693)
  %40694 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40694, ptr %45, align 4, !tbaa !9
  store i64 171798691841, ptr %55, align 8, !tbaa !11
  %40695 = load ptr, ptr %5, align 8, !tbaa !5
  %40696 = getelementptr inbounds %struct.w2c_hermes, ptr %40695, i32 0, i32 6
  %40697 = load i32, ptr %45, align 4, !tbaa !9
  %40698 = zext i32 %40697 to i64
  %40699 = add i64 %40698, 32
  %40700 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40696, i64 noundef %40699, i64 noundef %40700)
  %40701 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40701, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %40702 = load ptr, ptr %5, align 8, !tbaa !5
  %40703 = getelementptr inbounds %struct.w2c_hermes, ptr %40702, i32 0, i32 6
  %40704 = load i32, ptr %45, align 4, !tbaa !9
  %40705 = zext i32 %40704 to i64
  %40706 = add i64 %40705, 16
  %40707 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40703, i64 noundef %40706, i32 noundef %40707)
  %40708 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40708, ptr %45, align 4, !tbaa !9
  store i32 31418, ptr %46, align 4, !tbaa !9
  %40709 = load ptr, ptr %5, align 8, !tbaa !5
  %40710 = getelementptr inbounds %struct.w2c_hermes, ptr %40709, i32 0, i32 6
  %40711 = load i32, ptr %45, align 4, !tbaa !9
  %40712 = zext i32 %40711 to i64
  %40713 = add i64 %40712, 8
  %40714 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40710, i64 noundef %40713, i32 noundef %40714)
  %40715 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40715, ptr %45, align 4, !tbaa !9
  %40716 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40716, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %40717 = load i32, ptr %47, align 4, !tbaa !9
  %40718 = load i32, ptr %46, align 4, !tbaa !9
  %40719 = add i32 %40718, %40717
  store i32 %40719, ptr %46, align 4, !tbaa !9
  %40720 = load ptr, ptr %5, align 8, !tbaa !5
  %40721 = load i32, ptr %45, align 4, !tbaa !9
  %40722 = load i32, ptr %46, align 4, !tbaa !9
  %40723 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %40720, i32 noundef %40721, i32 noundef %40722)
  store i32 %40723, ptr %45, align 4, !tbaa !9
  br label %40729

40724:                                            ; preds = %40664
  %40725 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %40725, ptr %54, align 8, !tbaa !11
  %40726 = load i64, ptr %54, align 8, !tbaa !11
  %40727 = trunc i64 %40726 to i32
  store i32 %40727, ptr %45, align 4, !tbaa !9
  %40728 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40728, ptr %22, align 4, !tbaa !9
  br label %40729

40729:                                            ; preds = %40724, %40686, %40662
  %40730 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40730, ptr %45, align 4, !tbaa !9
  %40731 = load ptr, ptr %5, align 8, !tbaa !5
  %40732 = getelementptr inbounds %struct.w2c_hermes, ptr %40731, i32 0, i32 6
  %40733 = load i32, ptr %45, align 4, !tbaa !9
  %40734 = zext i32 %40733 to i64
  %40735 = add i64 %40734, 136
  %40736 = call i32 @i32_load(ptr noundef %40732, i64 noundef %40735)
  store i32 %40736, ptr %45, align 4, !tbaa !9
  %40737 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %40737, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %40738 = load i32, ptr %47, align 4, !tbaa !9
  %40739 = and i32 %40738, 31
  %40740 = load i32, ptr %46, align 4, !tbaa !9
  %40741 = shl i32 %40740, %40739
  store i32 %40741, ptr %46, align 4, !tbaa !9
  %40742 = load i32, ptr %46, align 4, !tbaa !9
  %40743 = load i32, ptr %45, align 4, !tbaa !9
  %40744 = add i32 %40743, %40742
  store i32 %40744, ptr %45, align 4, !tbaa !9
  %40745 = load ptr, ptr %5, align 8, !tbaa !5
  %40746 = getelementptr inbounds %struct.w2c_hermes, ptr %40745, i32 0, i32 6
  %40747 = load i32, ptr %45, align 4, !tbaa !9
  %40748 = zext i32 %40747 to i64
  %40749 = call i32 @i32_load(ptr noundef %40746, i64 noundef %40748)
  store i32 %40749, ptr %45, align 4, !tbaa !9
  %40750 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40750, ptr %7, align 4, !tbaa !9
  %40751 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40751, ptr %45, align 4, !tbaa !9
  %40752 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %40752, ptr %46, align 4, !tbaa !9
  %40753 = load ptr, ptr %5, align 8, !tbaa !5
  %40754 = getelementptr inbounds %struct.w2c_hermes, ptr %40753, i32 0, i32 6
  %40755 = load i32, ptr %45, align 4, !tbaa !9
  %40756 = zext i32 %40755 to i64
  %40757 = add i64 %40756, 172
  %40758 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40754, i64 noundef %40757, i32 noundef %40758)
  %40759 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40759, ptr %45, align 4, !tbaa !9
  %40760 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %40760, ptr %46, align 4, !tbaa !9
  %40761 = load ptr, ptr %5, align 8, !tbaa !5
  %40762 = getelementptr inbounds %struct.w2c_hermes, ptr %40761, i32 0, i32 6
  %40763 = load i32, ptr %45, align 4, !tbaa !9
  %40764 = zext i32 %40763 to i64
  %40765 = add i64 %40764, 164
  %40766 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40762, i64 noundef %40765, i32 noundef %40766)
  %40767 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %40767, ptr %45, align 4, !tbaa !9
  %40768 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40768, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %40769 = load i32, ptr %47, align 4, !tbaa !9
  %40770 = load i32, ptr %46, align 4, !tbaa !9
  %40771 = add i32 %40770, %40769
  store i32 %40771, ptr %46, align 4, !tbaa !9
  %40772 = load ptr, ptr %5, align 8, !tbaa !5
  %40773 = getelementptr inbounds %struct.w2c_hermes, ptr %40772, i32 0, i32 6
  %40774 = load i32, ptr %45, align 4, !tbaa !9
  %40775 = zext i32 %40774 to i64
  %40776 = add i64 %40775, 168
  %40777 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40773, i64 noundef %40776, i32 noundef %40777)
  %40778 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %40778, ptr %45, align 4, !tbaa !9
  store i32 -64, ptr %46, align 4, !tbaa !9
  %40779 = load i32, ptr %46, align 4, !tbaa !9
  %40780 = load i32, ptr %45, align 4, !tbaa !9
  %40781 = sub i32 %40780, %40779
  store i32 %40781, ptr %45, align 4, !tbaa !9
  %40782 = load i32, ptr %45, align 4, !tbaa !9
  %40783 = load ptr, ptr %5, align 8, !tbaa !5
  %40784 = getelementptr inbounds %struct.w2c_hermes, ptr %40783, i32 0, i32 3
  store i32 %40782, ptr %40784, align 8, !tbaa !15
  %40785 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40785, ptr %45, align 4, !tbaa !9
  %40786 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %40786, ptr %46, align 4, !tbaa !9
  %40787 = load ptr, ptr %5, align 8, !tbaa !5
  %40788 = getelementptr inbounds %struct.w2c_hermes, ptr %40787, i32 0, i32 6
  %40789 = load i32, ptr %45, align 4, !tbaa !9
  %40790 = zext i32 %40789 to i64
  %40791 = add i64 %40790, 44
  %40792 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40788, i64 noundef %40791, i32 noundef %40792)
  store i32 0, ptr %45, align 4, !tbaa !9
  %40793 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %40793, ptr %46, align 4, !tbaa !9
  store i32 -1, ptr %47, align 4, !tbaa !9
  %40794 = load i32, ptr %46, align 4, !tbaa !9
  %40795 = load i32, ptr %47, align 4, !tbaa !9
  %40796 = icmp eq i32 %40794, %40795
  %40797 = zext i1 %40796 to i32
  store i32 %40797, ptr %46, align 4, !tbaa !9
  %40798 = load i32, ptr %46, align 4, !tbaa !9
  %40799 = icmp ne i32 %40798, 0
  br i1 %40799, label %40800, label %40801

40800:                                            ; preds = %40729
  br label %40986

40801:                                            ; preds = %40729
  %40802 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40802, ptr %45, align 4, !tbaa !9
  %40803 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40803, ptr %46, align 4, !tbaa !9
  store i32 44, ptr %47, align 4, !tbaa !9
  %40804 = load i32, ptr %47, align 4, !tbaa !9
  %40805 = load i32, ptr %46, align 4, !tbaa !9
  %40806 = add i32 %40805, %40804
  store i32 %40806, ptr %46, align 4, !tbaa !9
  %40807 = load ptr, ptr %5, align 8, !tbaa !5
  %40808 = load i32, ptr %45, align 4, !tbaa !9
  %40809 = load i32, ptr %46, align 4, !tbaa !9
  %40810 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x260x260x29(ptr noundef %40807, i32 noundef %40808, i32 noundef %40809)
  store i32 %40810, ptr %45, align 4, !tbaa !9
  %40811 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40811, ptr %7, align 4, !tbaa !9
  %40812 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40812, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %40813 = load ptr, ptr %5, align 8, !tbaa !5
  %40814 = getelementptr inbounds %struct.w2c_hermes, ptr %40813, i32 0, i32 6
  %40815 = load i32, ptr %45, align 4, !tbaa !9
  %40816 = zext i32 %40815 to i64
  %40817 = add i64 %40816, 4
  %40818 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40814, i64 noundef %40817, i32 noundef %40818)
  %40819 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40819, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %40820 = load ptr, ptr %5, align 8, !tbaa !5
  %40821 = getelementptr inbounds %struct.w2c_hermes, ptr %40820, i32 0, i32 6
  %40822 = load i32, ptr %45, align 4, !tbaa !9
  %40823 = zext i32 %40822 to i64
  %40824 = add i64 %40823, 16
  %40825 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40821, i64 noundef %40824, i32 noundef %40825)
  %40826 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40826, ptr %45, align 4, !tbaa !9
  store i32 56, ptr %46, align 4, !tbaa !9
  %40827 = load i32, ptr %46, align 4, !tbaa !9
  %40828 = load i32, ptr %45, align 4, !tbaa !9
  %40829 = add i32 %40828, %40827
  store i32 %40829, ptr %45, align 4, !tbaa !9
  %40830 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40830, ptr %46, align 4, !tbaa !9
  %40831 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40831, ptr %47, align 4, !tbaa !9
  store i32 260, ptr %48, align 4, !tbaa !9
  %40832 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40832, ptr %49, align 4, !tbaa !9
  %40833 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40833, ptr %50, align 4, !tbaa !9
  store i32 4, ptr %51, align 4, !tbaa !9
  %40834 = load i32, ptr %51, align 4, !tbaa !9
  %40835 = load i32, ptr %50, align 4, !tbaa !9
  %40836 = add i32 %40835, %40834
  store i32 %40836, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %40837 = load ptr, ptr %5, align 8, !tbaa !5
  %40838 = load i32, ptr %45, align 4, !tbaa !9
  %40839 = load i32, ptr %46, align 4, !tbaa !9
  %40840 = load i32, ptr %47, align 4, !tbaa !9
  %40841 = load i32, ptr %48, align 4, !tbaa !9
  %40842 = load i32, ptr %49, align 4, !tbaa !9
  %40843 = load i32, ptr %50, align 4, !tbaa !9
  %40844 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %40837, i32 noundef %40838, i32 noundef %40839, i32 noundef %40840, i32 noundef %40841, i32 noundef %40842, i32 noundef %40843, i32 noundef %40844)
  store i32 0, ptr %45, align 4, !tbaa !9
  %40845 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40845, ptr %46, align 4, !tbaa !9
  %40846 = load ptr, ptr %5, align 8, !tbaa !5
  %40847 = getelementptr inbounds %struct.w2c_hermes, ptr %40846, i32 0, i32 6
  %40848 = load i32, ptr %46, align 4, !tbaa !9
  %40849 = zext i32 %40848 to i64
  %40850 = add i64 %40849, 56
  %40851 = call i32 @i32_load(ptr noundef %40847, i64 noundef %40850)
  store i32 %40851, ptr %46, align 4, !tbaa !9
  %40852 = load i32, ptr %46, align 4, !tbaa !9
  %40853 = icmp ne i32 %40852, 0
  %40854 = xor i1 %40853, true
  %40855 = zext i1 %40854 to i32
  store i32 %40855, ptr %46, align 4, !tbaa !9
  %40856 = load i32, ptr %46, align 4, !tbaa !9
  %40857 = icmp ne i32 %40856, 0
  br i1 %40857, label %40858, label %40859

40858:                                            ; preds = %40801
  br label %40986

40859:                                            ; preds = %40801
  %40860 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40860, ptr %45, align 4, !tbaa !9
  %40861 = load ptr, ptr %5, align 8, !tbaa !5
  %40862 = getelementptr inbounds %struct.w2c_hermes, ptr %40861, i32 0, i32 6
  %40863 = load i32, ptr %45, align 4, !tbaa !9
  %40864 = zext i32 %40863 to i64
  %40865 = add i64 %40864, 64
  %40866 = call i64 @i64_load(ptr noundef %40862, i64 noundef %40865)
  store i64 %40866, ptr %54, align 8, !tbaa !11
  %40867 = load ptr, ptr %5, align 8, !tbaa !5
  %40868 = load i64, ptr %54, align 8, !tbaa !11
  %40869 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %40867, i64 noundef %40868)
  store i32 %40869, ptr %45, align 4, !tbaa !9
  %40870 = load i32, ptr %45, align 4, !tbaa !9
  %40871 = icmp ne i32 %40870, 0
  br i1 %40871, label %40872, label %40913

40872:                                            ; preds = %40859
  %40873 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40873, ptr %45, align 4, !tbaa !9
  %40874 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40874, ptr %46, align 4, !tbaa !9
  %40875 = load ptr, ptr %5, align 8, !tbaa !5
  %40876 = getelementptr inbounds %struct.w2c_hermes, ptr %40875, i32 0, i32 6
  %40877 = load i32, ptr %46, align 4, !tbaa !9
  %40878 = zext i32 %40877 to i64
  %40879 = add i64 %40878, 2
  %40880 = call i32 @i32_load8_u(ptr noundef %40876, i64 noundef %40879)
  store i32 %40880, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40881 = load i32, ptr %47, align 4, !tbaa !9
  %40882 = and i32 %40881, 31
  %40883 = load i32, ptr %46, align 4, !tbaa !9
  %40884 = shl i32 %40883, %40882
  store i32 %40884, ptr %46, align 4, !tbaa !9
  %40885 = load i32, ptr %46, align 4, !tbaa !9
  %40886 = load i32, ptr %45, align 4, !tbaa !9
  %40887 = add i32 %40886, %40885
  store i32 %40887, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %40888 = load ptr, ptr %5, align 8, !tbaa !5
  %40889 = getelementptr inbounds %struct.w2c_hermes, ptr %40888, i32 0, i32 6
  %40890 = load i32, ptr %45, align 4, !tbaa !9
  %40891 = zext i32 %40890 to i64
  %40892 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40889, i64 noundef %40891, i64 noundef %40892)
  %40893 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40893, ptr %45, align 4, !tbaa !9
  %40894 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40894, ptr %46, align 4, !tbaa !9
  %40895 = load ptr, ptr %5, align 8, !tbaa !5
  %40896 = getelementptr inbounds %struct.w2c_hermes, ptr %40895, i32 0, i32 6
  %40897 = load i32, ptr %46, align 4, !tbaa !9
  %40898 = zext i32 %40897 to i64
  %40899 = add i64 %40898, 1
  %40900 = call i32 @i32_load8_u(ptr noundef %40896, i64 noundef %40899)
  store i32 %40900, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40901 = load i32, ptr %47, align 4, !tbaa !9
  %40902 = and i32 %40901, 31
  %40903 = load i32, ptr %46, align 4, !tbaa !9
  %40904 = shl i32 %40903, %40902
  store i32 %40904, ptr %46, align 4, !tbaa !9
  %40905 = load i32, ptr %46, align 4, !tbaa !9
  %40906 = load i32, ptr %45, align 4, !tbaa !9
  %40907 = add i32 %40906, %40905
  store i32 %40907, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %40908 = load ptr, ptr %5, align 8, !tbaa !5
  %40909 = getelementptr inbounds %struct.w2c_hermes, ptr %40908, i32 0, i32 6
  %40910 = load i32, ptr %45, align 4, !tbaa !9
  %40911 = zext i32 %40910 to i64
  %40912 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40909, i64 noundef %40911, i64 noundef %40912)
  br label %40985

40913:                                            ; preds = %40859
  %40914 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40914, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %40915 = load ptr, ptr %5, align 8, !tbaa !5
  %40916 = getelementptr inbounds %struct.w2c_hermes, ptr %40915, i32 0, i32 6
  %40917 = load i32, ptr %45, align 4, !tbaa !9
  %40918 = zext i32 %40917 to i64
  %40919 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40916, i64 noundef %40918, i32 noundef %40919)
  %40920 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40920, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %40921 = load ptr, ptr %5, align 8, !tbaa !5
  %40922 = getelementptr inbounds %struct.w2c_hermes, ptr %40921, i32 0, i32 6
  %40923 = load i32, ptr %45, align 4, !tbaa !9
  %40924 = zext i32 %40923 to i64
  %40925 = add i64 %40924, 76
  %40926 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %40922, i64 noundef %40925, i32 noundef %40926)
  %40927 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40927, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %40928 = load i32, ptr %46, align 4, !tbaa !9
  %40929 = load i32, ptr %45, align 4, !tbaa !9
  %40930 = add i32 %40929, %40928
  store i32 %40930, ptr %45, align 4, !tbaa !9
  %40931 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40931, ptr %46, align 4, !tbaa !9
  %40932 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %40932, ptr %47, align 4, !tbaa !9
  store i32 61, ptr %48, align 4, !tbaa !9
  %40933 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %40933, ptr %49, align 4, !tbaa !9
  %40934 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40934, ptr %50, align 4, !tbaa !9
  store i32 0, ptr %51, align 4, !tbaa !9
  %40935 = load ptr, ptr %5, align 8, !tbaa !5
  %40936 = load i32, ptr %45, align 4, !tbaa !9
  %40937 = load i32, ptr %46, align 4, !tbaa !9
  %40938 = load i32, ptr %47, align 4, !tbaa !9
  %40939 = load i32, ptr %48, align 4, !tbaa !9
  %40940 = load i32, ptr %49, align 4, !tbaa !9
  %40941 = load i32, ptr %50, align 4, !tbaa !9
  %40942 = load i32, ptr %51, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %40935, i32 noundef %40936, i32 noundef %40937, i32 noundef %40938, i32 noundef %40939, i32 noundef %40940, i32 noundef %40941, i32 noundef %40942)
  store i32 0, ptr %45, align 4, !tbaa !9
  %40943 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40943, ptr %46, align 4, !tbaa !9
  %40944 = load ptr, ptr %5, align 8, !tbaa !5
  %40945 = getelementptr inbounds %struct.w2c_hermes, ptr %40944, i32 0, i32 6
  %40946 = load i32, ptr %46, align 4, !tbaa !9
  %40947 = zext i32 %40946 to i64
  %40948 = add i64 %40947, 16
  %40949 = call i32 @i32_load(ptr noundef %40945, i64 noundef %40948)
  store i32 %40949, ptr %46, align 4, !tbaa !9
  %40950 = load i32, ptr %46, align 4, !tbaa !9
  %40951 = icmp ne i32 %40950, 0
  %40952 = xor i1 %40951, true
  %40953 = zext i1 %40952 to i32
  store i32 %40953, ptr %46, align 4, !tbaa !9
  %40954 = load i32, ptr %46, align 4, !tbaa !9
  %40955 = icmp ne i32 %40954, 0
  br i1 %40955, label %40956, label %40957

40956:                                            ; preds = %40913
  br label %40986

40957:                                            ; preds = %40913
  %40958 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %40958, ptr %45, align 4, !tbaa !9
  %40959 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %40959, ptr %46, align 4, !tbaa !9
  %40960 = load ptr, ptr %5, align 8, !tbaa !5
  %40961 = getelementptr inbounds %struct.w2c_hermes, ptr %40960, i32 0, i32 6
  %40962 = load i32, ptr %46, align 4, !tbaa !9
  %40963 = zext i32 %40962 to i64
  %40964 = add i64 %40963, 1
  %40965 = call i32 @i32_load8_u(ptr noundef %40961, i64 noundef %40964)
  store i32 %40965, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %40966 = load i32, ptr %47, align 4, !tbaa !9
  %40967 = and i32 %40966, 31
  %40968 = load i32, ptr %46, align 4, !tbaa !9
  %40969 = shl i32 %40968, %40967
  store i32 %40969, ptr %46, align 4, !tbaa !9
  %40970 = load i32, ptr %46, align 4, !tbaa !9
  %40971 = load i32, ptr %45, align 4, !tbaa !9
  %40972 = add i32 %40971, %40970
  store i32 %40972, ptr %45, align 4, !tbaa !9
  %40973 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %40973, ptr %46, align 4, !tbaa !9
  %40974 = load ptr, ptr %5, align 8, !tbaa !5
  %40975 = getelementptr inbounds %struct.w2c_hermes, ptr %40974, i32 0, i32 6
  %40976 = load i32, ptr %46, align 4, !tbaa !9
  %40977 = zext i32 %40976 to i64
  %40978 = add i64 %40977, 24
  %40979 = call i64 @i64_load(ptr noundef %40975, i64 noundef %40978)
  store i64 %40979, ptr %55, align 8, !tbaa !11
  %40980 = load ptr, ptr %5, align 8, !tbaa !5
  %40981 = getelementptr inbounds %struct.w2c_hermes, ptr %40980, i32 0, i32 6
  %40982 = load i32, ptr %45, align 4, !tbaa !9
  %40983 = zext i32 %40982 to i64
  %40984 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %40981, i64 noundef %40983, i64 noundef %40984)
  br label %40985

40985:                                            ; preds = %40957, %40872
  store i32 1, ptr %45, align 4, !tbaa !9
  br label %40986

40986:                                            ; preds = %40985, %40956, %40858, %40800
  %40987 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %40987, ptr %13, align 4, !tbaa !9
  %40988 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %40988, ptr %45, align 4, !tbaa !9
  %40989 = load ptr, ptr %5, align 8, !tbaa !5
  %40990 = getelementptr inbounds %struct.w2c_hermes, ptr %40989, i32 0, i32 6
  %40991 = load i32, ptr %45, align 4, !tbaa !9
  %40992 = zext i32 %40991 to i64
  %40993 = add i64 %40992, 136
  %40994 = call i32 @i32_load(ptr noundef %40990, i64 noundef %40993)
  store i32 %40994, ptr %45, align 4, !tbaa !9
  %40995 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %40995, ptr %46, align 4, !tbaa !9
  store i32 2, ptr %47, align 4, !tbaa !9
  %40996 = load i32, ptr %47, align 4, !tbaa !9
  %40997 = and i32 %40996, 31
  %40998 = load i32, ptr %46, align 4, !tbaa !9
  %40999 = shl i32 %40998, %40997
  store i32 %40999, ptr %46, align 4, !tbaa !9
  %41000 = load i32, ptr %46, align 4, !tbaa !9
  %41001 = load i32, ptr %45, align 4, !tbaa !9
  %41002 = add i32 %41001, %41000
  store i32 %41002, ptr %45, align 4, !tbaa !9
  %41003 = load ptr, ptr %5, align 8, !tbaa !5
  %41004 = getelementptr inbounds %struct.w2c_hermes, ptr %41003, i32 0, i32 6
  %41005 = load i32, ptr %45, align 4, !tbaa !9
  %41006 = zext i32 %41005 to i64
  %41007 = call i32 @i32_load(ptr noundef %41004, i64 noundef %41006)
  store i32 %41007, ptr %45, align 4, !tbaa !9
  %41008 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41008, ptr %6, align 4, !tbaa !9
  %41009 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %41009, ptr %45, align 4, !tbaa !9
  %41010 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %41010, ptr %46, align 4, !tbaa !9
  %41011 = load ptr, ptr %5, align 8, !tbaa !5
  %41012 = getelementptr inbounds %struct.w2c_hermes, ptr %41011, i32 0, i32 6
  %41013 = load i32, ptr %45, align 4, !tbaa !9
  %41014 = zext i32 %41013 to i64
  %41015 = add i64 %41014, 172
  %41016 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41012, i64 noundef %41015, i32 noundef %41016)
  %41017 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %41017, ptr %45, align 4, !tbaa !9
  %41018 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41018, ptr %46, align 4, !tbaa !9
  %41019 = load ptr, ptr %5, align 8, !tbaa !5
  %41020 = getelementptr inbounds %struct.w2c_hermes, ptr %41019, i32 0, i32 6
  %41021 = load i32, ptr %45, align 4, !tbaa !9
  %41022 = zext i32 %41021 to i64
  %41023 = add i64 %41022, 164
  %41024 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41020, i64 noundef %41023, i32 noundef %41024)
  %41025 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %41025, ptr %45, align 4, !tbaa !9
  %41026 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41026, ptr %46, align 4, !tbaa !9
  store i32 128, ptr %47, align 4, !tbaa !9
  %41027 = load i32, ptr %47, align 4, !tbaa !9
  %41028 = load i32, ptr %46, align 4, !tbaa !9
  %41029 = add i32 %41028, %41027
  store i32 %41029, ptr %46, align 4, !tbaa !9
  %41030 = load ptr, ptr %5, align 8, !tbaa !5
  %41031 = getelementptr inbounds %struct.w2c_hermes, ptr %41030, i32 0, i32 6
  %41032 = load i32, ptr %45, align 4, !tbaa !9
  %41033 = zext i32 %41032 to i64
  %41034 = add i64 %41033, 168
  %41035 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41031, i64 noundef %41034, i32 noundef %41035)
  br label %41036

41036:                                            ; preds = %40986, %40450, %40386, %40262, %39978
  %41037 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41037, ptr %45, align 4, !tbaa !9
  store i32 80, ptr %46, align 4, !tbaa !9
  %41038 = load i32, ptr %46, align 4, !tbaa !9
  %41039 = load i32, ptr %45, align 4, !tbaa !9
  %41040 = add i32 %41039, %41038
  store i32 %41040, ptr %45, align 4, !tbaa !9
  %41041 = load i32, ptr %45, align 4, !tbaa !9
  %41042 = load ptr, ptr %5, align 8, !tbaa !5
  %41043 = getelementptr inbounds %struct.w2c_hermes, ptr %41042, i32 0, i32 3
  store i32 %41041, ptr %41043, align 8, !tbaa !15
  %41044 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41044, ptr %45, align 4, !tbaa !9
  %41045 = load ptr, ptr %5, align 8, !tbaa !5
  %41046 = getelementptr inbounds %struct.w2c_hermes, ptr %41045, i32 0, i32 6
  %41047 = load i32, ptr %45, align 4, !tbaa !9
  %41048 = zext i32 %41047 to i64
  %41049 = add i64 %41048, 5808
  %41050 = call i32 @i32_load(ptr noundef %41046, i64 noundef %41049)
  store i32 %41050, ptr %45, align 4, !tbaa !9
  %41051 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41051, ptr %6, align 4, !tbaa !9
  %41052 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %41052, ptr %45, align 4, !tbaa !9
  %41053 = load i32, ptr %45, align 4, !tbaa !9
  %41054 = icmp ne i32 %41053, 0
  %41055 = xor i1 %41054, true
  %41056 = zext i1 %41055 to i32
  store i32 %41056, ptr %45, align 4, !tbaa !9
  %41057 = load i32, ptr %45, align 4, !tbaa !9
  %41058 = icmp ne i32 %41057, 0
  br i1 %41058, label %41059, label %41060

41059:                                            ; preds = %41036
  br label %43136

41060:                                            ; preds = %41036
  %41061 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41061, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %41062 = load ptr, ptr %5, align 8, !tbaa !5
  %41063 = getelementptr inbounds %struct.w2c_hermes, ptr %41062, i32 0, i32 6
  %41064 = load i32, ptr %45, align 4, !tbaa !9
  %41065 = zext i32 %41064 to i64
  %41066 = add i64 %41065, 516
  %41067 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41063, i64 noundef %41066, i32 noundef %41067)
  %41068 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41068, ptr %45, align 4, !tbaa !9
  %41069 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %41069, ptr %46, align 4, !tbaa !9
  %41070 = load ptr, ptr %5, align 8, !tbaa !5
  %41071 = getelementptr inbounds %struct.w2c_hermes, ptr %41070, i32 0, i32 6
  %41072 = load i32, ptr %45, align 4, !tbaa !9
  %41073 = zext i32 %41072 to i64
  %41074 = add i64 %41073, 512
  %41075 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41071, i64 noundef %41074, i32 noundef %41075)
  %41076 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41076, ptr %45, align 4, !tbaa !9
  %41077 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %41077, ptr %46, align 4, !tbaa !9
  %41078 = load ptr, ptr %5, align 8, !tbaa !5
  %41079 = getelementptr inbounds %struct.w2c_hermes, ptr %41078, i32 0, i32 6
  %41080 = load i32, ptr %45, align 4, !tbaa !9
  %41081 = zext i32 %41080 to i64
  %41082 = add i64 %41081, 508
  %41083 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41079, i64 noundef %41082, i32 noundef %41083)
  %41084 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41084, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %41085 = load i32, ptr %46, align 4, !tbaa !9
  %41086 = load i32, ptr %45, align 4, !tbaa !9
  %41087 = add i32 %41086, %41085
  store i32 %41087, ptr %45, align 4, !tbaa !9
  %41088 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41088, ptr %6, align 4, !tbaa !9
  br label %2945

41089:                                            ; preds = %3155
  %41090 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %41090, ptr %45, align 4, !tbaa !9
  %41091 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41091, ptr %46, align 4, !tbaa !9
  %41092 = load ptr, ptr %5, align 8, !tbaa !5
  %41093 = getelementptr inbounds %struct.w2c_hermes, ptr %41092, i32 0, i32 6
  %41094 = load i32, ptr %46, align 4, !tbaa !9
  %41095 = zext i32 %41094 to i64
  %41096 = add i64 %41095, 1
  %41097 = call i32 @i32_load8_u(ptr noundef %41093, i64 noundef %41096)
  store i32 %41097, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %41098 = load i32, ptr %47, align 4, !tbaa !9
  %41099 = and i32 %41098, 31
  %41100 = load i32, ptr %46, align 4, !tbaa !9
  %41101 = shl i32 %41100, %41099
  store i32 %41101, ptr %46, align 4, !tbaa !9
  %41102 = load i32, ptr %46, align 4, !tbaa !9
  %41103 = load i32, ptr %45, align 4, !tbaa !9
  %41104 = add i32 %41103, %41102
  store i32 %41104, ptr %45, align 4, !tbaa !9
  %41105 = load ptr, ptr %5, align 8, !tbaa !5
  %41106 = getelementptr inbounds %struct.w2c_hermes, ptr %41105, i32 0, i32 6
  %41107 = load i32, ptr %45, align 4, !tbaa !9
  %41108 = zext i32 %41107 to i64
  %41109 = add i64 %41108, 6
  %41110 = call i32 @i32_load16_s(ptr noundef %41106, i64 noundef %41109)
  store i32 %41110, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %41111 = load i32, ptr %45, align 4, !tbaa !9
  %41112 = load i32, ptr %46, align 4, !tbaa !9
  %41113 = icmp ne i32 %41111, %41112
  %41114 = zext i1 %41113 to i32
  store i32 %41114, ptr %45, align 4, !tbaa !9
  %41115 = load i32, ptr %45, align 4, !tbaa !9
  %41116 = icmp ne i32 %41115, 0
  br i1 %41116, label %41117, label %41123

41117:                                            ; preds = %41089
  %41118 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41118, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %41119 = load i32, ptr %46, align 4, !tbaa !9
  %41120 = load i32, ptr %45, align 4, !tbaa !9
  %41121 = add i32 %41120, %41119
  store i32 %41121, ptr %45, align 4, !tbaa !9
  %41122 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41122, ptr %6, align 4, !tbaa !9
  br label %2945

41123:                                            ; preds = %41089
  %41124 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41124, ptr %45, align 4, !tbaa !9
  %41125 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41125, ptr %46, align 4, !tbaa !9
  %41126 = load ptr, ptr %5, align 8, !tbaa !5
  %41127 = getelementptr inbounds %struct.w2c_hermes, ptr %41126, i32 0, i32 6
  %41128 = load i32, ptr %45, align 4, !tbaa !9
  %41129 = zext i32 %41128 to i64
  %41130 = add i64 %41129, 5808
  %41131 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41127, i64 noundef %41130, i32 noundef %41131)
  %41132 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41132, ptr %45, align 4, !tbaa !9
  %41133 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %41133, ptr %46, align 4, !tbaa !9
  %41134 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41134, ptr %47, align 4, !tbaa !9
  %41135 = load ptr, ptr %5, align 8, !tbaa !5
  %41136 = getelementptr inbounds %struct.w2c_hermes, ptr %41135, i32 0, i32 6
  %41137 = load i32, ptr %47, align 4, !tbaa !9
  %41138 = zext i32 %41137 to i64
  %41139 = add i64 %41138, 1
  %41140 = call i32 @i32_load8_u(ptr noundef %41136, i64 noundef %41139)
  store i32 %41140, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %41141 = load i32, ptr %48, align 4, !tbaa !9
  %41142 = and i32 %41141, 31
  %41143 = load i32, ptr %47, align 4, !tbaa !9
  %41144 = shl i32 %41143, %41142
  store i32 %41144, ptr %47, align 4, !tbaa !9
  %41145 = load i32, ptr %47, align 4, !tbaa !9
  %41146 = load i32, ptr %46, align 4, !tbaa !9
  %41147 = add i32 %41146, %41145
  store i32 %41147, ptr %46, align 4, !tbaa !9
  store i32 67224, ptr %47, align 4, !tbaa !9
  %41148 = load ptr, ptr %5, align 8, !tbaa !5
  %41149 = load i32, ptr %45, align 4, !tbaa !9
  %41150 = load i32, ptr %46, align 4, !tbaa !9
  %41151 = load i32, ptr %47, align 4, !tbaa !9
  %41152 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AiteratorClose0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %41148, i32 noundef %41149, i32 noundef %41150, i32 noundef %41151)
  store i32 %41152, ptr %45, align 4, !tbaa !9
  %41153 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41153, ptr %7, align 4, !tbaa !9
  %41154 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41154, ptr %45, align 4, !tbaa !9
  %41155 = load ptr, ptr %5, align 8, !tbaa !5
  %41156 = getelementptr inbounds %struct.w2c_hermes, ptr %41155, i32 0, i32 6
  %41157 = load i32, ptr %45, align 4, !tbaa !9
  %41158 = zext i32 %41157 to i64
  %41159 = add i64 %41158, 5808
  %41160 = call i32 @i32_load(ptr noundef %41156, i64 noundef %41159)
  store i32 %41160, ptr %45, align 4, !tbaa !9
  %41161 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41161, ptr %6, align 4, !tbaa !9
  %41162 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41162, ptr %45, align 4, !tbaa !9
  %41163 = load i32, ptr %45, align 4, !tbaa !9
  %41164 = icmp ne i32 %41163, 0
  %41165 = xor i1 %41164, true
  %41166 = zext i1 %41165 to i32
  store i32 %41166, ptr %45, align 4, !tbaa !9
  %41167 = load i32, ptr %45, align 4, !tbaa !9
  %41168 = icmp ne i32 %41167, 0
  br i1 %41168, label %41169, label %41249

41169:                                            ; preds = %41123
  %41170 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41170, ptr %45, align 4, !tbaa !9
  %41171 = load ptr, ptr %5, align 8, !tbaa !5
  %41172 = getelementptr inbounds %struct.w2c_hermes, ptr %41171, i32 0, i32 6
  %41173 = load i32, ptr %45, align 4, !tbaa !9
  %41174 = zext i32 %41173 to i64
  %41175 = add i64 %41174, 2
  %41176 = call i32 @i32_load8_u(ptr noundef %41172, i64 noundef %41175)
  store i32 %41176, ptr %45, align 4, !tbaa !9
  %41177 = load i32, ptr %45, align 4, !tbaa !9
  %41178 = icmp ne i32 %41177, 0
  %41179 = xor i1 %41178, true
  %41180 = zext i1 %41179 to i32
  store i32 %41180, ptr %45, align 4, !tbaa !9
  %41181 = load i32, ptr %45, align 4, !tbaa !9
  %41182 = icmp ne i32 %41181, 0
  br i1 %41182, label %41183, label %41184

41183:                                            ; preds = %41169
  br label %43136

41184:                                            ; preds = %41169
  store i32 0, ptr %45, align 4, !tbaa !9
  %41185 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41185, ptr %12, align 4, !tbaa !9
  %41186 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41186, ptr %45, align 4, !tbaa !9
  %41187 = load ptr, ptr %5, align 8, !tbaa !5
  %41188 = getelementptr inbounds %struct.w2c_hermes, ptr %41187, i32 0, i32 6
  %41189 = load i32, ptr %45, align 4, !tbaa !9
  %41190 = zext i32 %41189 to i64
  %41191 = add i64 %41190, 704
  %41192 = call i64 @i64_load(ptr noundef %41188, i64 noundef %41191)
  store i64 %41192, ptr %54, align 8, !tbaa !11
  %41193 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %41193, ptr %39, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %41194 = load i64, ptr %54, align 8, !tbaa !11
  %41195 = load i64, ptr %55, align 8, !tbaa !11
  %41196 = icmp ult i64 %41194, %41195
  %41197 = zext i1 %41196 to i32
  store i32 %41197, ptr %45, align 4, !tbaa !9
  %41198 = load i32, ptr %45, align 4, !tbaa !9
  %41199 = icmp ne i32 %41198, 0
  br i1 %41199, label %41200, label %41201

41200:                                            ; preds = %41184
  br label %41236

41201:                                            ; preds = %41184
  %41202 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %41202, ptr %54, align 8, !tbaa !11
  %41203 = load i64, ptr %54, align 8, !tbaa !11
  %41204 = trunc i64 %41203 to i32
  store i32 %41204, ptr %45, align 4, !tbaa !9
  %41205 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41205, ptr %7, align 4, !tbaa !9
  %41206 = load ptr, ptr %5, align 8, !tbaa !5
  %41207 = getelementptr inbounds %struct.w2c_hermes, ptr %41206, i32 0, i32 6
  %41208 = load i32, ptr %45, align 4, !tbaa !9
  %41209 = zext i32 %41208 to i64
  %41210 = add i64 %41209, 3
  %41211 = call i32 @i32_load8_u(ptr noundef %41207, i64 noundef %41210)
  store i32 %41211, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %41212 = load i32, ptr %46, align 4, !tbaa !9
  %41213 = and i32 %41212, 31
  %41214 = load i32, ptr %45, align 4, !tbaa !9
  %41215 = shl i32 %41214, %41213
  store i32 %41215, ptr %45, align 4, !tbaa !9
  store i32 486539264, ptr %46, align 4, !tbaa !9
  %41216 = load i32, ptr %45, align 4, !tbaa !9
  %41217 = load i32, ptr %46, align 4, !tbaa !9
  %41218 = icmp ne i32 %41216, %41217
  %41219 = zext i1 %41218 to i32
  store i32 %41219, ptr %45, align 4, !tbaa !9
  %41220 = load i32, ptr %45, align 4, !tbaa !9
  %41221 = icmp ne i32 %41220, 0
  br i1 %41221, label %41222, label %41223

41222:                                            ; preds = %41201
  br label %41236

41223:                                            ; preds = %41201
  %41224 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41224, ptr %45, align 4, !tbaa !9
  %41225 = load ptr, ptr %5, align 8, !tbaa !5
  %41226 = getelementptr inbounds %struct.w2c_hermes, ptr %41225, i32 0, i32 6
  %41227 = load i32, ptr %45, align 4, !tbaa !9
  %41228 = zext i32 %41227 to i64
  %41229 = add i64 %41228, 36
  %41230 = call i32 @i32_load8_u(ptr noundef %41226, i64 noundef %41229)
  store i32 %41230, ptr %45, align 4, !tbaa !9
  %41231 = load i32, ptr %45, align 4, !tbaa !9
  %41232 = icmp ne i32 %41231, 0
  %41233 = xor i1 %41232, true
  %41234 = zext i1 %41233 to i32
  store i32 %41234, ptr %45, align 4, !tbaa !9
  %41235 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41235, ptr %12, align 4, !tbaa !9
  br label %41236

41236:                                            ; preds = %41223, %41222, %41200
  %41237 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41237, ptr %45, align 4, !tbaa !9
  %41238 = load i32, ptr %45, align 4, !tbaa !9
  %41239 = icmp ne i32 %41238, 0
  br i1 %41239, label %41240, label %41241

41240:                                            ; preds = %41236
  br label %43136

41241:                                            ; preds = %41236
  %41242 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41242, ptr %45, align 4, !tbaa !9
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %41243 = load ptr, ptr %5, align 8, !tbaa !5
  %41244 = getelementptr inbounds %struct.w2c_hermes, ptr %41243, i32 0, i32 6
  %41245 = load i32, ptr %45, align 4, !tbaa !9
  %41246 = zext i32 %41245 to i64
  %41247 = add i64 %41246, 704
  %41248 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41244, i64 noundef %41247, i64 noundef %41248)
  br label %41249

41249:                                            ; preds = %41241, %41123
  %41250 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41250, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %41251 = load ptr, ptr %5, align 8, !tbaa !5
  %41252 = getelementptr inbounds %struct.w2c_hermes, ptr %41251, i32 0, i32 6
  %41253 = load i32, ptr %45, align 4, !tbaa !9
  %41254 = zext i32 %41253 to i64
  %41255 = add i64 %41254, 516
  %41256 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41252, i64 noundef %41255, i32 noundef %41256)
  %41257 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41257, ptr %45, align 4, !tbaa !9
  %41258 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %41258, ptr %46, align 4, !tbaa !9
  %41259 = load ptr, ptr %5, align 8, !tbaa !5
  %41260 = getelementptr inbounds %struct.w2c_hermes, ptr %41259, i32 0, i32 6
  %41261 = load i32, ptr %45, align 4, !tbaa !9
  %41262 = zext i32 %41261 to i64
  %41263 = add i64 %41262, 512
  %41264 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41260, i64 noundef %41263, i32 noundef %41264)
  %41265 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41265, ptr %45, align 4, !tbaa !9
  %41266 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %41266, ptr %46, align 4, !tbaa !9
  %41267 = load ptr, ptr %5, align 8, !tbaa !5
  %41268 = getelementptr inbounds %struct.w2c_hermes, ptr %41267, i32 0, i32 6
  %41269 = load i32, ptr %45, align 4, !tbaa !9
  %41270 = zext i32 %41269 to i64
  %41271 = add i64 %41270, 508
  %41272 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41268, i64 noundef %41271, i32 noundef %41272)
  %41273 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41273, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %41274 = load i32, ptr %46, align 4, !tbaa !9
  %41275 = load i32, ptr %45, align 4, !tbaa !9
  %41276 = add i32 %41275, %41274
  store i32 %41276, ptr %45, align 4, !tbaa !9
  %41277 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41277, ptr %6, align 4, !tbaa !9
  br label %2945

41278:                                            ; preds = %3156
  store i32 20768, ptr %45, align 4, !tbaa !9
  %41279 = load ptr, ptr %5, align 8, !tbaa !5
  %41280 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef %41279, i32 noundef %41280)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

41281:                                            ; preds = %3157
  %41282 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %41282, ptr %45, align 4, !tbaa !9
  %41283 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41283, ptr %46, align 4, !tbaa !9
  %41284 = load ptr, ptr %5, align 8, !tbaa !5
  %41285 = getelementptr inbounds %struct.w2c_hermes, ptr %41284, i32 0, i32 6
  %41286 = load i32, ptr %46, align 4, !tbaa !9
  %41287 = zext i32 %41286 to i64
  %41288 = add i64 %41287, 1
  %41289 = call i32 @i32_load8_u(ptr noundef %41285, i64 noundef %41288)
  store i32 %41289, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %41290 = load i32, ptr %47, align 4, !tbaa !9
  %41291 = and i32 %41290, 31
  %41292 = load i32, ptr %46, align 4, !tbaa !9
  %41293 = shl i32 %41292, %41291
  store i32 %41293, ptr %46, align 4, !tbaa !9
  %41294 = load i32, ptr %46, align 4, !tbaa !9
  %41295 = load i32, ptr %45, align 4, !tbaa !9
  %41296 = add i32 %41295, %41294
  store i32 %41296, ptr %45, align 4, !tbaa !9
  %41297 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %41297, ptr %46, align 4, !tbaa !9
  %41298 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41298, ptr %47, align 4, !tbaa !9
  %41299 = load ptr, ptr %5, align 8, !tbaa !5
  %41300 = getelementptr inbounds %struct.w2c_hermes, ptr %41299, i32 0, i32 6
  %41301 = load i32, ptr %47, align 4, !tbaa !9
  %41302 = zext i32 %41301 to i64
  %41303 = add i64 %41302, 2
  %41304 = call i32 @i32_load8_u(ptr noundef %41300, i64 noundef %41303)
  store i32 %41304, ptr %47, align 4, !tbaa !9
  store i32 3, ptr %48, align 4, !tbaa !9
  %41305 = load i32, ptr %48, align 4, !tbaa !9
  %41306 = and i32 %41305, 31
  %41307 = load i32, ptr %47, align 4, !tbaa !9
  %41308 = shl i32 %41307, %41306
  store i32 %41308, ptr %47, align 4, !tbaa !9
  %41309 = load i32, ptr %47, align 4, !tbaa !9
  %41310 = load i32, ptr %46, align 4, !tbaa !9
  %41311 = add i32 %41310, %41309
  store i32 %41311, ptr %46, align 4, !tbaa !9
  %41312 = load ptr, ptr %5, align 8, !tbaa !5
  %41313 = getelementptr inbounds %struct.w2c_hermes, ptr %41312, i32 0, i32 6
  %41314 = load i32, ptr %46, align 4, !tbaa !9
  %41315 = zext i32 %41314 to i64
  %41316 = call i64 @i64_load(ptr noundef %41313, i64 noundef %41315)
  store i64 %41316, ptr %55, align 8, !tbaa !11
  %41317 = load ptr, ptr %5, align 8, !tbaa !5
  %41318 = getelementptr inbounds %struct.w2c_hermes, ptr %41317, i32 0, i32 6
  %41319 = load i32, ptr %45, align 4, !tbaa !9
  %41320 = zext i32 %41319 to i64
  %41321 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41318, i64 noundef %41320, i64 noundef %41321)
  %41322 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41322, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %41323 = load i32, ptr %46, align 4, !tbaa !9
  %41324 = load i32, ptr %45, align 4, !tbaa !9
  %41325 = add i32 %41324, %41323
  store i32 %41325, ptr %45, align 4, !tbaa !9
  %41326 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41326, ptr %6, align 4, !tbaa !9
  br label %2945

41327:                                            ; preds = %3562
  %41328 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41328, ptr %45, align 4, !tbaa !9
  %41329 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %41329, ptr %55, align 8, !tbaa !11
  %41330 = load ptr, ptr %5, align 8, !tbaa !5
  %41331 = getelementptr inbounds %struct.w2c_hermes, ptr %41330, i32 0, i32 6
  %41332 = load i32, ptr %45, align 4, !tbaa !9
  %41333 = zext i32 %41332 to i64
  %41334 = add i64 %41333, 352
  %41335 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41331, i64 noundef %41334, i64 noundef %41335)
  %41336 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41336, ptr %45, align 4, !tbaa !9
  store i32 2, ptr %46, align 4, !tbaa !9
  %41337 = load i32, ptr %46, align 4, !tbaa !9
  %41338 = load i32, ptr %45, align 4, !tbaa !9
  %41339 = add i32 %41338, %41337
  store i32 %41339, ptr %45, align 4, !tbaa !9
  br label %41340

41340:                                            ; preds = %41327, %3597
  %41341 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41341, ptr %7, align 4, !tbaa !9
  %41342 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41342, ptr %45, align 4, !tbaa !9
  %41343 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41343, ptr %46, align 4, !tbaa !9
  %41344 = load ptr, ptr %5, align 8, !tbaa !5
  %41345 = getelementptr inbounds %struct.w2c_hermes, ptr %41344, i32 0, i32 6
  %41346 = load i32, ptr %45, align 4, !tbaa !9
  %41347 = zext i32 %41346 to i64
  %41348 = add i64 %41347, 5808
  %41349 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41345, i64 noundef %41348, i32 noundef %41349)
  %41350 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41350, ptr %45, align 4, !tbaa !9
  store i32 304, ptr %46, align 4, !tbaa !9
  %41351 = load i32, ptr %46, align 4, !tbaa !9
  %41352 = load i32, ptr %45, align 4, !tbaa !9
  %41353 = add i32 %41352, %41351
  store i32 %41353, ptr %45, align 4, !tbaa !9
  %41354 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41354, ptr %46, align 4, !tbaa !9
  %41355 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %41355, ptr %47, align 4, !tbaa !9
  %41356 = load ptr, ptr %5, align 8, !tbaa !5
  %41357 = load i32, ptr %45, align 4, !tbaa !9
  %41358 = load i32, ptr %46, align 4, !tbaa !9
  %41359 = load i32, ptr %47, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %41356, i32 noundef %41357, i32 noundef %41358, i32 noundef %41359)
  %41360 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41360, ptr %45, align 4, !tbaa !9
  %41361 = load ptr, ptr %5, align 8, !tbaa !5
  %41362 = getelementptr inbounds %struct.w2c_hermes, ptr %41361, i32 0, i32 6
  %41363 = load i32, ptr %45, align 4, !tbaa !9
  %41364 = zext i32 %41363 to i64
  %41365 = add i64 %41364, 5808
  %41366 = call i32 @i32_load(ptr noundef %41362, i64 noundef %41365)
  store i32 %41366, ptr %45, align 4, !tbaa !9
  %41367 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41367, ptr %6, align 4, !tbaa !9
  %41368 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41368, ptr %45, align 4, !tbaa !9
  %41369 = load ptr, ptr %5, align 8, !tbaa !5
  %41370 = getelementptr inbounds %struct.w2c_hermes, ptr %41369, i32 0, i32 6
  %41371 = load i32, ptr %45, align 4, !tbaa !9
  %41372 = zext i32 %41371 to i64
  %41373 = add i64 %41372, 304
  %41374 = call i32 @i32_load(ptr noundef %41370, i64 noundef %41373)
  store i32 %41374, ptr %45, align 4, !tbaa !9
  %41375 = load i32, ptr %45, align 4, !tbaa !9
  %41376 = icmp ne i32 %41375, 0
  %41377 = xor i1 %41376, true
  %41378 = zext i1 %41377 to i32
  store i32 %41378, ptr %45, align 4, !tbaa !9
  %41379 = load i32, ptr %45, align 4, !tbaa !9
  %41380 = icmp ne i32 %41379, 0
  br i1 %41380, label %41381, label %41382

41381:                                            ; preds = %41340
  br label %43136

41382:                                            ; preds = %41340
  %41383 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %41383, ptr %45, align 4, !tbaa !9
  %41384 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41384, ptr %46, align 4, !tbaa !9
  %41385 = load ptr, ptr %5, align 8, !tbaa !5
  %41386 = getelementptr inbounds %struct.w2c_hermes, ptr %41385, i32 0, i32 6
  %41387 = load i32, ptr %46, align 4, !tbaa !9
  %41388 = zext i32 %41387 to i64
  %41389 = add i64 %41388, 1
  %41390 = call i32 @i32_load8_u(ptr noundef %41386, i64 noundef %41389)
  store i32 %41390, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %41391 = load i32, ptr %47, align 4, !tbaa !9
  %41392 = and i32 %41391, 31
  %41393 = load i32, ptr %46, align 4, !tbaa !9
  %41394 = shl i32 %41393, %41392
  store i32 %41394, ptr %46, align 4, !tbaa !9
  %41395 = load i32, ptr %46, align 4, !tbaa !9
  %41396 = load i32, ptr %45, align 4, !tbaa !9
  %41397 = add i32 %41396, %41395
  store i32 %41397, ptr %45, align 4, !tbaa !9
  %41398 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41398, ptr %46, align 4, !tbaa !9
  %41399 = load ptr, ptr %5, align 8, !tbaa !5
  %41400 = getelementptr inbounds %struct.w2c_hermes, ptr %41399, i32 0, i32 6
  %41401 = load i32, ptr %46, align 4, !tbaa !9
  %41402 = zext i32 %41401 to i64
  %41403 = add i64 %41402, 312
  %41404 = call i64 @i64_load(ptr noundef %41400, i64 noundef %41403)
  store i64 %41404, ptr %55, align 8, !tbaa !11
  %41405 = load ptr, ptr %5, align 8, !tbaa !5
  %41406 = getelementptr inbounds %struct.w2c_hermes, ptr %41405, i32 0, i32 6
  %41407 = load i32, ptr %45, align 4, !tbaa !9
  %41408 = zext i32 %41407 to i64
  %41409 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41406, i64 noundef %41408, i64 noundef %41409)
  %41410 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41410, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %41411 = load ptr, ptr %5, align 8, !tbaa !5
  %41412 = getelementptr inbounds %struct.w2c_hermes, ptr %41411, i32 0, i32 6
  %41413 = load i32, ptr %45, align 4, !tbaa !9
  %41414 = zext i32 %41413 to i64
  %41415 = add i64 %41414, 516
  %41416 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41412, i64 noundef %41415, i32 noundef %41416)
  %41417 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41417, ptr %45, align 4, !tbaa !9
  %41418 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %41418, ptr %46, align 4, !tbaa !9
  %41419 = load ptr, ptr %5, align 8, !tbaa !5
  %41420 = getelementptr inbounds %struct.w2c_hermes, ptr %41419, i32 0, i32 6
  %41421 = load i32, ptr %45, align 4, !tbaa !9
  %41422 = zext i32 %41421 to i64
  %41423 = add i64 %41422, 512
  %41424 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41420, i64 noundef %41423, i32 noundef %41424)
  %41425 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41425, ptr %45, align 4, !tbaa !9
  %41426 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %41426, ptr %46, align 4, !tbaa !9
  %41427 = load ptr, ptr %5, align 8, !tbaa !5
  %41428 = getelementptr inbounds %struct.w2c_hermes, ptr %41427, i32 0, i32 6
  %41429 = load i32, ptr %45, align 4, !tbaa !9
  %41430 = zext i32 %41429 to i64
  %41431 = add i64 %41430, 508
  %41432 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41428, i64 noundef %41431, i32 noundef %41432)
  %41433 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %41433, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %41434 = load ptr, ptr %5, align 8, !tbaa !5
  %41435 = getelementptr inbounds %struct.w2c_hermes, ptr %41434, i32 0, i32 6
  %41436 = load i32, ptr %45, align 4, !tbaa !9
  %41437 = zext i32 %41436 to i64
  %41438 = add i64 %41437, 352
  %41439 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41435, i64 noundef %41438, i64 noundef %41439)
  %41440 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41440, ptr %45, align 4, !tbaa !9
  %41441 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41441, ptr %6, align 4, !tbaa !9
  br label %2945

41442:                                            ; preds = %4342, %4299
  store i64 -1688849860263936, ptr %54, align 8, !tbaa !11
  %41443 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %41443, ptr %40, align 8, !tbaa !11
  %41444 = load ptr, ptr %5, align 8, !tbaa !5
  %41445 = getelementptr inbounds %struct.w2c_hermes, ptr %41444, i32 0, i32 3
  %41446 = load i32, ptr %41445, align 8, !tbaa !15
  store i32 %41446, ptr %45, align 4, !tbaa !9
  store i32 160, ptr %46, align 4, !tbaa !9
  %41447 = load i32, ptr %46, align 4, !tbaa !9
  %41448 = load i32, ptr %45, align 4, !tbaa !9
  %41449 = sub i32 %41448, %41447
  store i32 %41449, ptr %45, align 4, !tbaa !9
  %41450 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41450, ptr %17, align 4, !tbaa !9
  %41451 = load i32, ptr %45, align 4, !tbaa !9
  %41452 = load ptr, ptr %5, align 8, !tbaa !5
  %41453 = getelementptr inbounds %struct.w2c_hermes, ptr %41452, i32 0, i32 3
  store i32 %41451, ptr %41453, align 8, !tbaa !15
  %41454 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41454, ptr %45, align 4, !tbaa !9
  %41455 = load ptr, ptr %5, align 8, !tbaa !5
  %41456 = getelementptr inbounds %struct.w2c_hermes, ptr %41455, i32 0, i32 6
  %41457 = load i32, ptr %45, align 4, !tbaa !9
  %41458 = zext i32 %41457 to i64
  %41459 = add i64 %41458, 5600
  %41460 = call i32 @i32_load(ptr noundef %41456, i64 noundef %41459)
  store i32 %41460, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %41461 = load i32, ptr %46, align 4, !tbaa !9
  %41462 = load i32, ptr %45, align 4, !tbaa !9
  %41463 = sub i32 %41462, %41461
  store i32 %41463, ptr %45, align 4, !tbaa !9
  %41464 = load ptr, ptr %5, align 8, !tbaa !5
  %41465 = getelementptr inbounds %struct.w2c_hermes, ptr %41464, i32 0, i32 6
  %41466 = load i32, ptr %45, align 4, !tbaa !9
  %41467 = zext i32 %41466 to i64
  %41468 = call i64 @i64_load(ptr noundef %41465, i64 noundef %41467)
  store i64 %41468, ptr %54, align 8, !tbaa !11
  %41469 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %41469, ptr %39, align 8, !tbaa !11
  store i64 48, ptr %55, align 8, !tbaa !11
  %41470 = load i64, ptr %54, align 8, !tbaa !11
  %41471 = load i64, ptr %55, align 8, !tbaa !11
  %41472 = and i64 %41471, 63
  %41473 = ashr i64 %41470, %41472
  store i64 %41473, ptr %54, align 8, !tbaa !11
  %41474 = load i64, ptr %54, align 8, !tbaa !11
  %41475 = trunc i64 %41474 to i32
  store i32 %41475, ptr %45, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %41476 = load i32, ptr %45, align 4, !tbaa !9
  %41477 = load i32, ptr %46, align 4, !tbaa !9
  %41478 = icmp eq i32 %41476, %41477
  %41479 = zext i1 %41478 to i32
  store i32 %41479, ptr %45, align 4, !tbaa !9
  %41480 = load i32, ptr %45, align 4, !tbaa !9
  %41481 = icmp ne i32 %41480, 0
  br i1 %41481, label %41482, label %41531

41482:                                            ; preds = %41442
  %41483 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %41483, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %41484 = load i64, ptr %54, align 8, !tbaa !11
  %41485 = load i64, ptr %55, align 8, !tbaa !11
  %41486 = icmp ult i64 %41484, %41485
  %41487 = zext i1 %41486 to i32
  store i32 %41487, ptr %45, align 4, !tbaa !9
  %41488 = load i32, ptr %45, align 4, !tbaa !9
  %41489 = icmp ne i32 %41488, 0
  br i1 %41489, label %41490, label %41491

41490:                                            ; preds = %41482
  br label %42890

41491:                                            ; preds = %41482
  %41492 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %41492, ptr %54, align 8, !tbaa !11
  %41493 = load i64, ptr %54, align 8, !tbaa !11
  %41494 = trunc i64 %41493 to i32
  store i32 %41494, ptr %45, align 4, !tbaa !9
  %41495 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41495, ptr %6, align 4, !tbaa !9
  %41496 = load ptr, ptr %5, align 8, !tbaa !5
  %41497 = getelementptr inbounds %struct.w2c_hermes, ptr %41496, i32 0, i32 6
  %41498 = load i32, ptr %45, align 4, !tbaa !9
  %41499 = zext i32 %41498 to i64
  %41500 = call i32 @i32_load(ptr noundef %41497, i64 noundef %41499)
  store i32 %41500, ptr %45, align 4, !tbaa !9
  store i32 1224736768, ptr %46, align 4, !tbaa !9
  %41501 = load i32, ptr %46, align 4, !tbaa !9
  %41502 = load i32, ptr %45, align 4, !tbaa !9
  %41503 = sub i32 %41502, %41501
  store i32 %41503, ptr %45, align 4, !tbaa !9
  store i32 67108863, ptr %46, align 4, !tbaa !9
  %41504 = load i32, ptr %45, align 4, !tbaa !9
  %41505 = load i32, ptr %46, align 4, !tbaa !9
  %41506 = icmp ugt i32 %41504, %41505
  %41507 = zext i1 %41506 to i32
  store i32 %41507, ptr %45, align 4, !tbaa !9
  %41508 = load i32, ptr %45, align 4, !tbaa !9
  %41509 = icmp ne i32 %41508, 0
  br i1 %41509, label %41510, label %41511

41510:                                            ; preds = %41491
  br label %42890

41511:                                            ; preds = %41491
  %41512 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41512, ptr %45, align 4, !tbaa !9
  store i32 1276, ptr %46, align 4, !tbaa !9
  %41513 = load i32, ptr %46, align 4, !tbaa !9
  %41514 = load i32, ptr %45, align 4, !tbaa !9
  %41515 = add i32 %41514, %41513
  store i32 %41515, ptr %45, align 4, !tbaa !9
  %41516 = load ptr, ptr %5, align 8, !tbaa !5
  %41517 = getelementptr inbounds %struct.w2c_hermes, ptr %41516, i32 0, i32 6
  %41518 = load i32, ptr %45, align 4, !tbaa !9
  %41519 = zext i32 %41518 to i64
  %41520 = call i32 @i32_load(ptr noundef %41517, i64 noundef %41519)
  store i32 %41520, ptr %45, align 4, !tbaa !9
  %41521 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41521, ptr %46, align 4, !tbaa !9
  %41522 = load ptr, ptr %5, align 8, !tbaa !5
  %41523 = getelementptr inbounds %struct.w2c_hermes, ptr %41522, i32 0, i32 6
  %41524 = load i32, ptr %46, align 4, !tbaa !9
  %41525 = zext i32 %41524 to i64
  %41526 = add i64 %41525, 24
  %41527 = call i32 @i32_load(ptr noundef %41523, i64 noundef %41526)
  store i32 %41527, ptr %46, align 4, !tbaa !9
  %41528 = load i32, ptr %46, align 4, !tbaa !9
  %41529 = load i32, ptr %45, align 4, !tbaa !9
  %41530 = xor i32 %41529, %41528
  store i32 %41530, ptr %45, align 4, !tbaa !9
  br label %41535

41531:                                            ; preds = %41442
  %41532 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %41532, ptr %54, align 8, !tbaa !11
  %41533 = load i64, ptr %54, align 8, !tbaa !11
  %41534 = trunc i64 %41533 to i32
  store i32 %41534, ptr %45, align 4, !tbaa !9
  br label %41535

41535:                                            ; preds = %41531, %41511
  %41536 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41536, ptr %12, align 4, !tbaa !9
  %41537 = load i32, ptr %45, align 4, !tbaa !9
  %41538 = icmp ne i32 %41537, 0
  %41539 = xor i1 %41538, true
  %41540 = zext i1 %41539 to i32
  store i32 %41540, ptr %45, align 4, !tbaa !9
  %41541 = load i32, ptr %45, align 4, !tbaa !9
  %41542 = icmp ne i32 %41541, 0
  br i1 %41542, label %41543, label %41544

41543:                                            ; preds = %41535
  br label %42890

41544:                                            ; preds = %41535
  %41545 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41545, ptr %45, align 4, !tbaa !9
  %41546 = load ptr, ptr %5, align 8, !tbaa !5
  %41547 = getelementptr inbounds %struct.w2c_hermes, ptr %41546, i32 0, i32 6
  %41548 = load i32, ptr %45, align 4, !tbaa !9
  %41549 = zext i32 %41548 to i64
  %41550 = call i32 @i32_load(ptr noundef %41547, i64 noundef %41549)
  store i32 %41550, ptr %45, align 4, !tbaa !9
  %41551 = load ptr, ptr %5, align 8, !tbaa !5
  %41552 = getelementptr inbounds %struct.w2c_hermes, ptr %41551, i32 0, i32 6
  %41553 = load i32, ptr %45, align 4, !tbaa !9
  %41554 = zext i32 %41553 to i64
  %41555 = add i64 %41554, 40
  %41556 = call i32 @i32_load(ptr noundef %41552, i64 noundef %41555)
  store i32 %41556, ptr %45, align 4, !tbaa !9
  %41557 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41557, ptr %6, align 4, !tbaa !9
  %41558 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41558, ptr %46, align 4, !tbaa !9
  %41559 = load ptr, ptr %5, align 8, !tbaa !5
  %41560 = getelementptr inbounds %struct.w2c_hermes, ptr %41559, i32 0, i32 6
  %41561 = load i32, ptr %46, align 4, !tbaa !9
  %41562 = zext i32 %41561 to i64
  %41563 = add i64 %41562, 12
  %41564 = call i32 @i32_load(ptr noundef %41560, i64 noundef %41563)
  store i32 %41564, ptr %46, align 4, !tbaa !9
  %41565 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41565, ptr %47, align 4, !tbaa !9
  %41566 = load ptr, ptr %5, align 8, !tbaa !5
  %41567 = getelementptr inbounds %struct.w2c_hermes, ptr %41566, i32 0, i32 6
  %41568 = load i32, ptr %47, align 4, !tbaa !9
  %41569 = zext i32 %41568 to i64
  %41570 = call i32 @i32_load(ptr noundef %41567, i64 noundef %41569)
  store i32 %41570, ptr %47, align 4, !tbaa !9
  %41571 = load ptr, ptr %5, align 8, !tbaa !5
  %41572 = getelementptr inbounds %struct.w2c_hermes, ptr %41571, i32 0, i32 6
  %41573 = load i32, ptr %47, align 4, !tbaa !9
  %41574 = zext i32 %41573 to i64
  %41575 = add i64 %41574, 28
  %41576 = call i32 @i32_load(ptr noundef %41572, i64 noundef %41575)
  store i32 %41576, ptr %47, align 4, !tbaa !9
  %41577 = load i32, ptr %47, align 4, !tbaa !9
  %41578 = load ptr, ptr %5, align 8, !tbaa !5
  %41579 = getelementptr inbounds %struct.w2c_hermes, ptr %41578, i32 0, i32 7
  %41580 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41579, i32 0, i32 2
  %41581 = load i32, ptr %41580, align 4, !tbaa !23
  %41582 = icmp ult i32 %41577, %41581
  br i1 %41582, label %41583, label %41606

41583:                                            ; preds = %41544
  %41584 = load ptr, ptr %5, align 8, !tbaa !5
  %41585 = getelementptr inbounds %struct.w2c_hermes, ptr %41584, i32 0, i32 7
  %41586 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41585, i32 0, i32 0
  %41587 = load ptr, ptr %41586, align 8, !tbaa !24
  %41588 = load i32, ptr %47, align 4, !tbaa !9
  %41589 = zext i32 %41588 to i64
  %41590 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41587, i64 %41589
  %41591 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41590, i32 0, i32 1
  %41592 = load ptr, ptr %41591, align 8, !tbaa !25
  %41593 = icmp ne ptr %41592, null
  br i1 %41593, label %41594, label %41606

41594:                                            ; preds = %41583
  %41595 = load ptr, ptr @w2c_hermes_t4, align 8, !tbaa !5
  %41596 = load ptr, ptr %5, align 8, !tbaa !5
  %41597 = getelementptr inbounds %struct.w2c_hermes, ptr %41596, i32 0, i32 7
  %41598 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41597, i32 0, i32 0
  %41599 = load ptr, ptr %41598, align 8, !tbaa !24
  %41600 = load i32, ptr %47, align 4, !tbaa !9
  %41601 = zext i32 %41600 to i64
  %41602 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41599, i64 %41601
  %41603 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41602, i32 0, i32 0
  %41604 = load ptr, ptr %41603, align 8, !tbaa !27
  %41605 = call zeroext i1 @func_types_eq(ptr noundef %41595, ptr noundef %41604)
  br label %41606

41606:                                            ; preds = %41594, %41583, %41544
  %41607 = phi i1 [ false, %41583 ], [ false, %41544 ], [ %41605, %41594 ]
  %41608 = xor i1 %41607, true
  %41609 = xor i1 %41608, true
  %41610 = zext i1 %41609 to i32
  %41611 = sext i32 %41610 to i64
  %41612 = call i64 @llvm.expect.i64(i64 %41611, i64 1)
  %41613 = icmp ne i64 %41612, 0
  br i1 %41613, label %41616, label %41614

41614:                                            ; preds = %41606
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

41615:                                            ; No predecessors!
  br label %41616

41616:                                            ; preds = %41615, %41606
  %41617 = phi i1 [ true, %41606 ], [ false, %41615 ]
  %41618 = zext i1 %41617 to i32
  %41619 = load ptr, ptr %5, align 8, !tbaa !5
  %41620 = getelementptr inbounds %struct.w2c_hermes, ptr %41619, i32 0, i32 7
  %41621 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41620, i32 0, i32 0
  %41622 = load ptr, ptr %41621, align 8, !tbaa !24
  %41623 = load i32, ptr %47, align 4, !tbaa !9
  %41624 = zext i32 %41623 to i64
  %41625 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41622, i64 %41624
  %41626 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41625, i32 0, i32 1
  %41627 = load ptr, ptr %41626, align 8, !tbaa !25
  %41628 = load ptr, ptr %5, align 8, !tbaa !5
  %41629 = getelementptr inbounds %struct.w2c_hermes, ptr %41628, i32 0, i32 7
  %41630 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41629, i32 0, i32 0
  %41631 = load ptr, ptr %41630, align 8, !tbaa !24
  %41632 = load i32, ptr %47, align 4, !tbaa !9
  %41633 = zext i32 %41632 to i64
  %41634 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41631, i64 %41633
  %41635 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41634, i32 0, i32 2
  %41636 = load ptr, ptr %41635, align 8, !tbaa !28
  %41637 = load i32, ptr %45, align 4, !tbaa !9
  %41638 = load i32, ptr %46, align 4, !tbaa !9
  %41639 = call i32 %41627(ptr noundef %41636, i32 noundef %41637, i32 noundef %41638)
  store i32 %41639, ptr %45, align 4, !tbaa !9
  %41640 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41640, ptr %6, align 4, !tbaa !9
  %41641 = load i32, ptr %45, align 4, !tbaa !9
  %41642 = icmp ne i32 %41641, 0
  %41643 = xor i1 %41642, true
  %41644 = zext i1 %41643 to i32
  store i32 %41644, ptr %45, align 4, !tbaa !9
  %41645 = load i32, ptr %45, align 4, !tbaa !9
  %41646 = icmp ne i32 %41645, 0
  br i1 %41646, label %41647, label %41648

41647:                                            ; preds = %41616
  br label %41680

41648:                                            ; preds = %41616
  %41649 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41649, ptr %45, align 4, !tbaa !9
  %41650 = load ptr, ptr %5, align 8, !tbaa !5
  %41651 = getelementptr inbounds %struct.w2c_hermes, ptr %41650, i32 0, i32 6
  %41652 = load i32, ptr %45, align 4, !tbaa !9
  %41653 = zext i32 %41652 to i64
  %41654 = add i64 %41653, 8
  %41655 = call i32 @i32_load(ptr noundef %41651, i64 noundef %41654)
  store i32 %41655, ptr %45, align 4, !tbaa !9
  %41656 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41656, ptr %6, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %41657 = load i32, ptr %45, align 4, !tbaa !9
  %41658 = load i32, ptr %46, align 4, !tbaa !9
  %41659 = icmp eq i32 %41657, %41658
  %41660 = zext i1 %41659 to i32
  store i32 %41660, ptr %45, align 4, !tbaa !9
  %41661 = load i32, ptr %45, align 4, !tbaa !9
  %41662 = icmp ne i32 %41661, 0
  br i1 %41662, label %41663, label %41664

41663:                                            ; preds = %41648
  br label %41680

41664:                                            ; preds = %41648
  %41665 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %41665, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %41666 = load ptr, ptr %5, align 8, !tbaa !5
  %41667 = getelementptr inbounds %struct.w2c_hermes, ptr %41666, i32 0, i32 6
  %41668 = load i32, ptr %45, align 4, !tbaa !9
  %41669 = zext i32 %41668 to i64
  %41670 = add i64 %41669, 116
  %41671 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %41667, i64 noundef %41670, i32 noundef %41671)
  %41672 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %41672, ptr %45, align 4, !tbaa !9
  %41673 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41673, ptr %46, align 4, !tbaa !9
  %41674 = load ptr, ptr %5, align 8, !tbaa !5
  %41675 = getelementptr inbounds %struct.w2c_hermes, ptr %41674, i32 0, i32 6
  %41676 = load i32, ptr %45, align 4, !tbaa !9
  %41677 = zext i32 %41676 to i64
  %41678 = add i64 %41677, 112
  %41679 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41675, i64 noundef %41678, i32 noundef %41679)
  br label %41695

41680:                                            ; preds = %41663, %41647
  %41681 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %41681, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %41682 = load ptr, ptr %5, align 8, !tbaa !5
  %41683 = getelementptr inbounds %struct.w2c_hermes, ptr %41682, i32 0, i32 6
  %41684 = load i32, ptr %45, align 4, !tbaa !9
  %41685 = zext i32 %41684 to i64
  %41686 = add i64 %41685, 116
  %41687 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %41683, i64 noundef %41686, i32 noundef %41687)
  %41688 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %41688, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %41689 = load ptr, ptr %5, align 8, !tbaa !5
  %41690 = getelementptr inbounds %struct.w2c_hermes, ptr %41689, i32 0, i32 6
  %41691 = load i32, ptr %45, align 4, !tbaa !9
  %41692 = zext i32 %41691 to i64
  %41693 = add i64 %41692, 112
  %41694 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41690, i64 noundef %41693, i32 noundef %41694)
  br label %41695

41695:                                            ; preds = %41680, %41664
  %41696 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %41696, ptr %45, align 4, !tbaa !9
  %41697 = load ptr, ptr %5, align 8, !tbaa !5
  %41698 = getelementptr inbounds %struct.w2c_hermes, ptr %41697, i32 0, i32 6
  %41699 = load i32, ptr %45, align 4, !tbaa !9
  %41700 = zext i32 %41699 to i64
  %41701 = add i64 %41700, 116
  %41702 = call i32 @i32_load8_u(ptr noundef %41698, i64 noundef %41701)
  store i32 %41702, ptr %45, align 4, !tbaa !9
  %41703 = load i32, ptr %45, align 4, !tbaa !9
  %41704 = icmp ne i32 %41703, 0
  %41705 = xor i1 %41704, true
  %41706 = zext i1 %41705 to i32
  store i32 %41706, ptr %45, align 4, !tbaa !9
  %41707 = load i32, ptr %45, align 4, !tbaa !9
  %41708 = icmp ne i32 %41707, 0
  br i1 %41708, label %41709, label %41710

41709:                                            ; preds = %41695
  br label %42890

41710:                                            ; preds = %41695
  %41711 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41711, ptr %45, align 4, !tbaa !9
  %41712 = load ptr, ptr %5, align 8, !tbaa !5
  %41713 = getelementptr inbounds %struct.w2c_hermes, ptr %41712, i32 0, i32 6
  %41714 = load i32, ptr %45, align 4, !tbaa !9
  %41715 = zext i32 %41714 to i64
  %41716 = call i32 @i32_load(ptr noundef %41713, i64 noundef %41715)
  store i32 %41716, ptr %45, align 4, !tbaa !9
  %41717 = load ptr, ptr %5, align 8, !tbaa !5
  %41718 = getelementptr inbounds %struct.w2c_hermes, ptr %41717, i32 0, i32 6
  %41719 = load i32, ptr %45, align 4, !tbaa !9
  %41720 = zext i32 %41719 to i64
  %41721 = add i64 %41720, 40
  %41722 = call i32 @i32_load(ptr noundef %41718, i64 noundef %41721)
  store i32 %41722, ptr %45, align 4, !tbaa !9
  %41723 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41723, ptr %7, align 4, !tbaa !9
  %41724 = load ptr, ptr %5, align 8, !tbaa !5
  %41725 = getelementptr inbounds %struct.w2c_hermes, ptr %41724, i32 0, i32 6
  %41726 = load i32, ptr %45, align 4, !tbaa !9
  %41727 = zext i32 %41726 to i64
  %41728 = add i64 %41727, 128
  %41729 = call i32 @i32_load(ptr noundef %41725, i64 noundef %41728)
  store i32 %41729, ptr %45, align 4, !tbaa !9
  %41730 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41730, ptr %6, align 4, !tbaa !9
  %41731 = load i32, ptr %45, align 4, !tbaa !9
  %41732 = icmp ne i32 %41731, 0
  %41733 = xor i1 %41732, true
  %41734 = zext i1 %41733 to i32
  store i32 %41734, ptr %45, align 4, !tbaa !9
  %41735 = load i32, ptr %45, align 4, !tbaa !9
  %41736 = icmp ne i32 %41735, 0
  br i1 %41736, label %41737, label %41819

41737:                                            ; preds = %41710
  %41738 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41738, ptr %45, align 4, !tbaa !9
  %41739 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41739, ptr %46, align 4, !tbaa !9
  %41740 = load ptr, ptr %5, align 8, !tbaa !5
  %41741 = getelementptr inbounds %struct.w2c_hermes, ptr %41740, i32 0, i32 6
  %41742 = load i32, ptr %46, align 4, !tbaa !9
  %41743 = zext i32 %41742 to i64
  %41744 = call i32 @i32_load(ptr noundef %41741, i64 noundef %41743)
  store i32 %41744, ptr %46, align 4, !tbaa !9
  %41745 = load ptr, ptr %5, align 8, !tbaa !5
  %41746 = getelementptr inbounds %struct.w2c_hermes, ptr %41745, i32 0, i32 6
  %41747 = load i32, ptr %46, align 4, !tbaa !9
  %41748 = zext i32 %41747 to i64
  %41749 = call i32 @i32_load(ptr noundef %41746, i64 noundef %41748)
  store i32 %41749, ptr %46, align 4, !tbaa !9
  %41750 = load i32, ptr %46, align 4, !tbaa !9
  %41751 = load ptr, ptr %5, align 8, !tbaa !5
  %41752 = getelementptr inbounds %struct.w2c_hermes, ptr %41751, i32 0, i32 7
  %41753 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41752, i32 0, i32 2
  %41754 = load i32, ptr %41753, align 4, !tbaa !23
  %41755 = icmp ult i32 %41750, %41754
  br i1 %41755, label %41756, label %41779

41756:                                            ; preds = %41737
  %41757 = load ptr, ptr %5, align 8, !tbaa !5
  %41758 = getelementptr inbounds %struct.w2c_hermes, ptr %41757, i32 0, i32 7
  %41759 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41758, i32 0, i32 0
  %41760 = load ptr, ptr %41759, align 8, !tbaa !24
  %41761 = load i32, ptr %46, align 4, !tbaa !9
  %41762 = zext i32 %41761 to i64
  %41763 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41760, i64 %41762
  %41764 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41763, i32 0, i32 1
  %41765 = load ptr, ptr %41764, align 8, !tbaa !25
  %41766 = icmp ne ptr %41765, null
  br i1 %41766, label %41767, label %41779

41767:                                            ; preds = %41756
  %41768 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %41769 = load ptr, ptr %5, align 8, !tbaa !5
  %41770 = getelementptr inbounds %struct.w2c_hermes, ptr %41769, i32 0, i32 7
  %41771 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41770, i32 0, i32 0
  %41772 = load ptr, ptr %41771, align 8, !tbaa !24
  %41773 = load i32, ptr %46, align 4, !tbaa !9
  %41774 = zext i32 %41773 to i64
  %41775 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41772, i64 %41774
  %41776 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41775, i32 0, i32 0
  %41777 = load ptr, ptr %41776, align 8, !tbaa !27
  %41778 = call zeroext i1 @func_types_eq(ptr noundef %41768, ptr noundef %41777)
  br label %41779

41779:                                            ; preds = %41767, %41756, %41737
  %41780 = phi i1 [ false, %41756 ], [ false, %41737 ], [ %41778, %41767 ]
  %41781 = xor i1 %41780, true
  %41782 = xor i1 %41781, true
  %41783 = zext i1 %41782 to i32
  %41784 = sext i32 %41783 to i64
  %41785 = call i64 @llvm.expect.i64(i64 %41784, i64 1)
  %41786 = icmp ne i64 %41785, 0
  br i1 %41786, label %41789, label %41787

41787:                                            ; preds = %41779
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

41788:                                            ; No predecessors!
  br label %41789

41789:                                            ; preds = %41788, %41779
  %41790 = phi i1 [ true, %41779 ], [ false, %41788 ]
  %41791 = zext i1 %41790 to i32
  %41792 = load ptr, ptr %5, align 8, !tbaa !5
  %41793 = getelementptr inbounds %struct.w2c_hermes, ptr %41792, i32 0, i32 7
  %41794 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41793, i32 0, i32 0
  %41795 = load ptr, ptr %41794, align 8, !tbaa !24
  %41796 = load i32, ptr %46, align 4, !tbaa !9
  %41797 = zext i32 %41796 to i64
  %41798 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41795, i64 %41797
  %41799 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41798, i32 0, i32 1
  %41800 = load ptr, ptr %41799, align 8, !tbaa !25
  %41801 = load ptr, ptr %5, align 8, !tbaa !5
  %41802 = getelementptr inbounds %struct.w2c_hermes, ptr %41801, i32 0, i32 7
  %41803 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %41802, i32 0, i32 0
  %41804 = load ptr, ptr %41803, align 8, !tbaa !24
  %41805 = load i32, ptr %46, align 4, !tbaa !9
  %41806 = zext i32 %41805 to i64
  %41807 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41804, i64 %41806
  %41808 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %41807, i32 0, i32 2
  %41809 = load ptr, ptr %41808, align 8, !tbaa !28
  %41810 = load i32, ptr %45, align 4, !tbaa !9
  call void %41800(ptr noundef %41809, i32 noundef %41810)
  %41811 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41811, ptr %45, align 4, !tbaa !9
  %41812 = load ptr, ptr %5, align 8, !tbaa !5
  %41813 = getelementptr inbounds %struct.w2c_hermes, ptr %41812, i32 0, i32 6
  %41814 = load i32, ptr %45, align 4, !tbaa !9
  %41815 = zext i32 %41814 to i64
  %41816 = add i64 %41815, 128
  %41817 = call i32 @i32_load(ptr noundef %41813, i64 noundef %41816)
  store i32 %41817, ptr %45, align 4, !tbaa !9
  %41818 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41818, ptr %6, align 4, !tbaa !9
  br label %41819

41819:                                            ; preds = %41789, %41710
  %41820 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %41820, ptr %45, align 4, !tbaa !9
  %41821 = load ptr, ptr %5, align 8, !tbaa !5
  %41822 = getelementptr inbounds %struct.w2c_hermes, ptr %41821, i32 0, i32 6
  %41823 = load i32, ptr %45, align 4, !tbaa !9
  %41824 = zext i32 %41823 to i64
  %41825 = add i64 %41824, 112
  %41826 = call i32 @i32_load(ptr noundef %41822, i64 noundef %41825)
  store i32 %41826, ptr %45, align 4, !tbaa !9
  %41827 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41827, ptr %13, align 4, !tbaa !9
  %41828 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %41828, ptr %45, align 4, !tbaa !9
  %41829 = load ptr, ptr %5, align 8, !tbaa !5
  %41830 = getelementptr inbounds %struct.w2c_hermes, ptr %41829, i32 0, i32 6
  %41831 = load i32, ptr %45, align 4, !tbaa !9
  %41832 = zext i32 %41831 to i64
  %41833 = add i64 %41832, 5808
  %41834 = call i32 @i32_load(ptr noundef %41830, i64 noundef %41833)
  store i32 %41834, ptr %45, align 4, !tbaa !9
  %41835 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41835, ptr %46, align 4, !tbaa !9
  %41836 = load ptr, ptr %5, align 8, !tbaa !5
  %41837 = getelementptr inbounds %struct.w2c_hermes, ptr %41836, i32 0, i32 6
  %41838 = load i32, ptr %46, align 4, !tbaa !9
  %41839 = zext i32 %41838 to i64
  %41840 = add i64 %41839, 8
  %41841 = call i32 @i32_load(ptr noundef %41837, i64 noundef %41840)
  store i32 %41841, ptr %46, align 4, !tbaa !9
  %41842 = load i32, ptr %46, align 4, !tbaa !9
  %41843 = load i32, ptr %45, align 4, !tbaa !9
  %41844 = sub i32 %41843, %41842
  store i32 %41844, ptr %45, align 4, !tbaa !9
  %41845 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41845, ptr %14, align 4, !tbaa !9
  %41846 = load ptr, ptr %5, align 8, !tbaa !5
  %41847 = getelementptr inbounds %struct.w2c_hermes, ptr %41846, i32 0, i32 3
  %41848 = load i32, ptr %41847, align 8, !tbaa !15
  store i32 %41848, ptr %45, align 4, !tbaa !9
  store i32 96, ptr %46, align 4, !tbaa !9
  %41849 = load i32, ptr %46, align 4, !tbaa !9
  %41850 = load i32, ptr %45, align 4, !tbaa !9
  %41851 = sub i32 %41850, %41849
  store i32 %41851, ptr %45, align 4, !tbaa !9
  %41852 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41852, ptr %23, align 4, !tbaa !9
  %41853 = load i32, ptr %45, align 4, !tbaa !9
  %41854 = load ptr, ptr %5, align 8, !tbaa !5
  %41855 = getelementptr inbounds %struct.w2c_hermes, ptr %41854, i32 0, i32 3
  store i32 %41853, ptr %41855, align 8, !tbaa !15
  %41856 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41856, ptr %45, align 4, !tbaa !9
  %41857 = load ptr, ptr %5, align 8, !tbaa !5
  %41858 = getelementptr inbounds %struct.w2c_hermes, ptr %41857, i32 0, i32 6
  %41859 = load i32, ptr %45, align 4, !tbaa !9
  %41860 = zext i32 %41859 to i64
  %41861 = add i64 %41860, 72
  %41862 = call i32 @i32_load(ptr noundef %41858, i64 noundef %41861)
  store i32 %41862, ptr %45, align 4, !tbaa !9
  %41863 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41863, ptr %12, align 4, !tbaa !9
  %41864 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41864, ptr %45, align 4, !tbaa !9
  %41865 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41865, ptr %46, align 4, !tbaa !9
  %41866 = load ptr, ptr %5, align 8, !tbaa !5
  %41867 = getelementptr inbounds %struct.w2c_hermes, ptr %41866, i32 0, i32 6
  %41868 = load i32, ptr %46, align 4, !tbaa !9
  %41869 = zext i32 %41868 to i64
  %41870 = add i64 %41869, 56
  %41871 = call i32 @i32_load(ptr noundef %41867, i64 noundef %41870)
  store i32 %41871, ptr %46, align 4, !tbaa !9
  %41872 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %41872, ptr %47, align 4, !tbaa !9
  %41873 = load ptr, ptr %5, align 8, !tbaa !5
  %41874 = getelementptr inbounds %struct.w2c_hermes, ptr %41873, i32 0, i32 6
  %41875 = load i32, ptr %47, align 4, !tbaa !9
  %41876 = zext i32 %41875 to i64
  %41877 = add i64 %41876, 52
  %41878 = call i32 @i32_load(ptr noundef %41874, i64 noundef %41877)
  store i32 %41878, ptr %47, align 4, !tbaa !9
  %41879 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %41879, ptr %7, align 4, !tbaa !9
  %41880 = load i32, ptr %47, align 4, !tbaa !9
  %41881 = load i32, ptr %46, align 4, !tbaa !9
  %41882 = sub i32 %41881, %41880
  store i32 %41882, ptr %46, align 4, !tbaa !9
  %41883 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %41883, ptr %16, align 4, !tbaa !9
  %41884 = load ptr, ptr %5, align 8, !tbaa !5
  %41885 = getelementptr inbounds %struct.w2c_hermes, ptr %41884, i32 0, i32 6
  %41886 = load i32, ptr %45, align 4, !tbaa !9
  %41887 = zext i32 %41886 to i64
  %41888 = add i64 %41887, 52
  %41889 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41885, i64 noundef %41888, i32 noundef %41889)
  %41890 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41890, ptr %45, align 4, !tbaa !9
  %41891 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41891, ptr %46, align 4, !tbaa !9
  %41892 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %41892, ptr %47, align 4, !tbaa !9
  %41893 = load i32, ptr %47, align 4, !tbaa !9
  %41894 = load i32, ptr %46, align 4, !tbaa !9
  %41895 = add i32 %41894, %41893
  store i32 %41895, ptr %46, align 4, !tbaa !9
  %41896 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %41896, ptr %18, align 4, !tbaa !9
  %41897 = load ptr, ptr %5, align 8, !tbaa !5
  %41898 = getelementptr inbounds %struct.w2c_hermes, ptr %41897, i32 0, i32 6
  %41899 = load i32, ptr %45, align 4, !tbaa !9
  %41900 = zext i32 %41899 to i64
  %41901 = add i64 %41900, 48
  %41902 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41898, i64 noundef %41901, i32 noundef %41902)
  %41903 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41903, ptr %45, align 4, !tbaa !9
  %41904 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41904, ptr %46, align 4, !tbaa !9
  %41905 = load ptr, ptr %5, align 8, !tbaa !5
  %41906 = getelementptr inbounds %struct.w2c_hermes, ptr %41905, i32 0, i32 6
  %41907 = load i32, ptr %46, align 4, !tbaa !9
  %41908 = zext i32 %41907 to i64
  %41909 = add i64 %41908, 48
  %41910 = call i64 @i64_load(ptr noundef %41906, i64 noundef %41909)
  store i64 %41910, ptr %55, align 8, !tbaa !11
  %41911 = load ptr, ptr %5, align 8, !tbaa !5
  %41912 = getelementptr inbounds %struct.w2c_hermes, ptr %41911, i32 0, i32 6
  %41913 = load i32, ptr %45, align 4, !tbaa !9
  %41914 = zext i32 %41913 to i64
  %41915 = add i64 %41914, 24
  %41916 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41912, i64 noundef %41915, i64 noundef %41916)
  %41917 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41917, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %41918 = load i32, ptr %46, align 4, !tbaa !9
  %41919 = load i32, ptr %45, align 4, !tbaa !9
  %41920 = add i32 %41919, %41918
  store i32 %41920, ptr %45, align 4, !tbaa !9
  %41921 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %41921, ptr %46, align 4, !tbaa !9
  %41922 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41922, ptr %47, align 4, !tbaa !9
  store i32 56, ptr %48, align 4, !tbaa !9
  %41923 = load i32, ptr %48, align 4, !tbaa !9
  %41924 = load i32, ptr %47, align 4, !tbaa !9
  %41925 = add i32 %41924, %41923
  store i32 %41925, ptr %47, align 4, !tbaa !9
  %41926 = load ptr, ptr %5, align 8, !tbaa !5
  %41927 = load i32, ptr %45, align 4, !tbaa !9
  %41928 = load i32, ptr %46, align 4, !tbaa !9
  %41929 = load i32, ptr %47, align 4, !tbaa !9
  %41930 = call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %41926, i32 noundef %41927, i32 noundef %41928, i32 noundef %41929)
  store i32 %41930, ptr %45, align 4, !tbaa !9
  %41931 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41931, ptr %7, align 4, !tbaa !9
  %41932 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41932, ptr %45, align 4, !tbaa !9
  %41933 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41933, ptr %46, align 4, !tbaa !9
  %41934 = load ptr, ptr %5, align 8, !tbaa !5
  %41935 = getelementptr inbounds %struct.w2c_hermes, ptr %41934, i32 0, i32 6
  %41936 = load i32, ptr %46, align 4, !tbaa !9
  %41937 = zext i32 %41936 to i64
  %41938 = add i64 %41937, 56
  %41939 = call i64 @i64_load(ptr noundef %41935, i64 noundef %41938)
  store i64 %41939, ptr %55, align 8, !tbaa !11
  %41940 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %41940, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %56, align 8, !tbaa !11
  %41941 = load i64, ptr %56, align 8, !tbaa !11
  %41942 = load i64, ptr %55, align 8, !tbaa !11
  %41943 = sub i64 %41942, %41941
  store i64 %41943, ptr %55, align 8, !tbaa !11
  %41944 = load ptr, ptr %5, align 8, !tbaa !5
  %41945 = getelementptr inbounds %struct.w2c_hermes, ptr %41944, i32 0, i32 6
  %41946 = load i32, ptr %45, align 4, !tbaa !9
  %41947 = zext i32 %41946 to i64
  %41948 = add i64 %41947, 56
  %41949 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %41945, i64 noundef %41948, i64 noundef %41949)
  %41950 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %41950, ptr %54, align 8, !tbaa !11
  %41951 = load i64, ptr %54, align 8, !tbaa !11
  %41952 = icmp ne i64 %41951, 0
  %41953 = xor i1 %41952, true
  %41954 = zext i1 %41953 to i32
  store i32 %41954, ptr %45, align 4, !tbaa !9
  %41955 = load i32, ptr %45, align 4, !tbaa !9
  %41956 = icmp ne i32 %41955, 0
  br i1 %41956, label %41957, label %41958

41957:                                            ; preds = %41819
  br label %42242

41958:                                            ; preds = %41819
  %41959 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %41959, ptr %45, align 4, !tbaa !9
  %41960 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %41960, ptr %46, align 4, !tbaa !9
  %41961 = load i32, ptr %46, align 4, !tbaa !9
  %41962 = load i32, ptr %45, align 4, !tbaa !9
  %41963 = add i32 %41962, %41961
  store i32 %41963, ptr %45, align 4, !tbaa !9
  %41964 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %41964, ptr %13, align 4, !tbaa !9
  %41965 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %41965, ptr %45, align 4, !tbaa !9
  %41966 = load i32, ptr %45, align 4, !tbaa !9
  %41967 = zext i32 %41966 to i64
  store i64 %41967, ptr %54, align 8, !tbaa !11
  %41968 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %41968, ptr %46, align 4, !tbaa !9
  %41969 = load i32, ptr %46, align 4, !tbaa !9
  %41970 = zext i32 %41969 to i64
  store i64 %41970, ptr %55, align 8, !tbaa !11
  store i64 32, ptr %56, align 8, !tbaa !11
  %41971 = load i64, ptr %56, align 8, !tbaa !11
  %41972 = and i64 %41971, 63
  %41973 = load i64, ptr %55, align 8, !tbaa !11
  %41974 = shl i64 %41973, %41972
  store i64 %41974, ptr %55, align 8, !tbaa !11
  %41975 = load i64, ptr %55, align 8, !tbaa !11
  %41976 = load i64, ptr %54, align 8, !tbaa !11
  %41977 = or i64 %41976, %41975
  store i64 %41977, ptr %54, align 8, !tbaa !11
  %41978 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %41978, ptr %42, align 8, !tbaa !11
  %41979 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %41979, ptr %45, align 4, !tbaa !9
  %41980 = load i32, ptr %45, align 4, !tbaa !9
  %41981 = zext i32 %41980 to i64
  store i64 %41981, ptr %54, align 8, !tbaa !11
  %41982 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %41982, ptr %41, align 8, !tbaa !11
  br label %41983

41983:                                            ; preds = %42240, %41958
  %41984 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41984, ptr %45, align 4, !tbaa !9
  %41985 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %41985, ptr %46, align 4, !tbaa !9
  %41986 = load ptr, ptr %5, align 8, !tbaa !5
  %41987 = getelementptr inbounds %struct.w2c_hermes, ptr %41986, i32 0, i32 6
  %41988 = load i32, ptr %45, align 4, !tbaa !9
  %41989 = zext i32 %41988 to i64
  %41990 = add i64 %41989, 36
  %41991 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41987, i64 noundef %41990, i32 noundef %41991)
  %41992 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %41992, ptr %45, align 4, !tbaa !9
  %41993 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %41993, ptr %46, align 4, !tbaa !9
  %41994 = load ptr, ptr %5, align 8, !tbaa !5
  %41995 = getelementptr inbounds %struct.w2c_hermes, ptr %41994, i32 0, i32 6
  %41996 = load i32, ptr %45, align 4, !tbaa !9
  %41997 = zext i32 %41996 to i64
  %41998 = add i64 %41997, 32
  %41999 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %41995, i64 noundef %41998, i32 noundef %41999)
  %42000 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42000, ptr %45, align 4, !tbaa !9
  %42001 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42001, ptr %46, align 4, !tbaa !9
  %42002 = load ptr, ptr %5, align 8, !tbaa !5
  %42003 = getelementptr inbounds %struct.w2c_hermes, ptr %42002, i32 0, i32 6
  %42004 = load i32, ptr %46, align 4, !tbaa !9
  %42005 = zext i32 %42004 to i64
  %42006 = add i64 %42005, 32
  %42007 = call i64 @i64_load(ptr noundef %42003, i64 noundef %42006)
  store i64 %42007, ptr %55, align 8, !tbaa !11
  %42008 = load ptr, ptr %5, align 8, !tbaa !5
  %42009 = getelementptr inbounds %struct.w2c_hermes, ptr %42008, i32 0, i32 6
  %42010 = load i32, ptr %45, align 4, !tbaa !9
  %42011 = zext i32 %42010 to i64
  %42012 = add i64 %42011, 16
  %42013 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42009, i64 noundef %42012, i64 noundef %42013)
  %42014 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42014, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %42015 = load i32, ptr %46, align 4, !tbaa !9
  %42016 = load i32, ptr %45, align 4, !tbaa !9
  %42017 = add i32 %42016, %42015
  store i32 %42017, ptr %45, align 4, !tbaa !9
  %42018 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42018, ptr %46, align 4, !tbaa !9
  %42019 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42019, ptr %47, align 4, !tbaa !9
  store i32 40, ptr %48, align 4, !tbaa !9
  %42020 = load i32, ptr %48, align 4, !tbaa !9
  %42021 = load i32, ptr %47, align 4, !tbaa !9
  %42022 = add i32 %42021, %42020
  store i32 %42022, ptr %47, align 4, !tbaa !9
  %42023 = load ptr, ptr %5, align 8, !tbaa !5
  %42024 = load i32, ptr %45, align 4, !tbaa !9
  %42025 = load i32, ptr %46, align 4, !tbaa !9
  %42026 = load i32, ptr %47, align 4, !tbaa !9
  %42027 = call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %42023, i32 noundef %42024, i32 noundef %42025, i32 noundef %42026)
  store i32 %42027, ptr %45, align 4, !tbaa !9
  %42028 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42028, ptr %7, align 4, !tbaa !9
  %42029 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42029, ptr %45, align 4, !tbaa !9
  %42030 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %42030, ptr %55, align 8, !tbaa !11
  %42031 = load ptr, ptr %5, align 8, !tbaa !5
  %42032 = getelementptr inbounds %struct.w2c_hermes, ptr %42031, i32 0, i32 6
  %42033 = load i32, ptr %45, align 4, !tbaa !9
  %42034 = zext i32 %42033 to i64
  %42035 = add i64 %42034, 8
  %42036 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42032, i64 noundef %42035, i64 noundef %42036)
  %42037 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42037, ptr %45, align 4, !tbaa !9
  %42038 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %42038, ptr %55, align 8, !tbaa !11
  %42039 = load ptr, ptr %5, align 8, !tbaa !5
  %42040 = getelementptr inbounds %struct.w2c_hermes, ptr %42039, i32 0, i32 6
  %42041 = load i32, ptr %45, align 4, !tbaa !9
  %42042 = zext i32 %42041 to i64
  %42043 = add i64 %42042, 64
  %42044 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42040, i64 noundef %42043, i64 noundef %42044)
  %42045 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42045, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %42046 = load i32, ptr %46, align 4, !tbaa !9
  %42047 = load i32, ptr %45, align 4, !tbaa !9
  %42048 = add i32 %42047, %42046
  store i32 %42048, ptr %45, align 4, !tbaa !9
  %42049 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42049, ptr %46, align 4, !tbaa !9
  %42050 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42050, ptr %47, align 4, !tbaa !9
  %42051 = load i32, ptr %47, align 4, !tbaa !9
  %42052 = load i32, ptr %46, align 4, !tbaa !9
  %42053 = add i32 %42052, %42051
  store i32 %42053, ptr %46, align 4, !tbaa !9
  %42054 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %42054, ptr %14, align 4, !tbaa !9
  %42055 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42055, ptr %47, align 4, !tbaa !9
  store i32 72, ptr %48, align 4, !tbaa !9
  %42056 = load i32, ptr %48, align 4, !tbaa !9
  %42057 = load i32, ptr %47, align 4, !tbaa !9
  %42058 = add i32 %42057, %42056
  store i32 %42058, ptr %47, align 4, !tbaa !9
  %42059 = load ptr, ptr %5, align 8, !tbaa !5
  %42060 = load i32, ptr %45, align 4, !tbaa !9
  %42061 = load i32, ptr %46, align 4, !tbaa !9
  %42062 = load i32, ptr %47, align 4, !tbaa !9
  %42063 = call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %42059, i32 noundef %42060, i32 noundef %42061, i32 noundef %42062)
  store i32 %42063, ptr %45, align 4, !tbaa !9
  %42064 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42064, ptr %13, align 4, !tbaa !9
  %42065 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42065, ptr %45, align 4, !tbaa !9
  %42066 = load ptr, ptr %5, align 8, !tbaa !5
  %42067 = getelementptr inbounds %struct.w2c_hermes, ptr %42066, i32 0, i32 6
  %42068 = load i32, ptr %45, align 4, !tbaa !9
  %42069 = zext i32 %42068 to i64
  %42070 = add i64 %42069, 72
  %42071 = call i32 @i32_load(ptr noundef %42067, i64 noundef %42070)
  store i32 %42071, ptr %45, align 4, !tbaa !9
  %42072 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42072, ptr %15, align 4, !tbaa !9
  %42073 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42073, ptr %45, align 4, !tbaa !9
  %42074 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42074, ptr %46, align 4, !tbaa !9
  %42075 = load ptr, ptr %5, align 8, !tbaa !5
  %42076 = getelementptr inbounds %struct.w2c_hermes, ptr %42075, i32 0, i32 6
  %42077 = load i32, ptr %46, align 4, !tbaa !9
  %42078 = zext i32 %42077 to i64
  %42079 = add i64 %42078, 76
  %42080 = call i32 @i32_load(ptr noundef %42076, i64 noundef %42079)
  store i32 %42080, ptr %46, align 4, !tbaa !9
  %42081 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42081, ptr %47, align 4, !tbaa !9
  %42082 = load ptr, ptr %5, align 8, !tbaa !5
  %42083 = getelementptr inbounds %struct.w2c_hermes, ptr %42082, i32 0, i32 6
  %42084 = load i32, ptr %47, align 4, !tbaa !9
  %42085 = zext i32 %42084 to i64
  %42086 = add i64 %42085, 56
  %42087 = call i32 @i32_load(ptr noundef %42083, i64 noundef %42086)
  store i32 %42087, ptr %47, align 4, !tbaa !9
  %42088 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %42088, ptr %7, align 4, !tbaa !9
  %42089 = load i32, ptr %47, align 4, !tbaa !9
  %42090 = load i32, ptr %46, align 4, !tbaa !9
  %42091 = sub i32 %42090, %42089
  store i32 %42091, ptr %46, align 4, !tbaa !9
  %42092 = load i32, ptr %46, align 4, !tbaa !9
  %42093 = zext i32 %42092 to i64
  store i64 %42093, ptr %55, align 8, !tbaa !11
  store i64 32, ptr %56, align 8, !tbaa !11
  %42094 = load i64, ptr %56, align 8, !tbaa !11
  %42095 = and i64 %42094, 63
  %42096 = load i64, ptr %55, align 8, !tbaa !11
  %42097 = shl i64 %42096, %42095
  store i64 %42097, ptr %55, align 8, !tbaa !11
  %42098 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42098, ptr %47, align 4, !tbaa !9
  %42099 = load ptr, ptr %5, align 8, !tbaa !5
  %42100 = getelementptr inbounds %struct.w2c_hermes, ptr %42099, i32 0, i32 6
  %42101 = load i32, ptr %47, align 4, !tbaa !9
  %42102 = zext i32 %42101 to i64
  %42103 = add i64 %42102, 72
  %42104 = call i32 @i32_load(ptr noundef %42100, i64 noundef %42103)
  store i32 %42104, ptr %47, align 4, !tbaa !9
  %42105 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42105, ptr %48, align 4, !tbaa !9
  %42106 = load i32, ptr %48, align 4, !tbaa !9
  %42107 = load i32, ptr %47, align 4, !tbaa !9
  %42108 = add i32 %42107, %42106
  store i32 %42108, ptr %47, align 4, !tbaa !9
  %42109 = load i32, ptr %47, align 4, !tbaa !9
  store i32 %42109, ptr %12, align 4, !tbaa !9
  %42110 = load i32, ptr %47, align 4, !tbaa !9
  %42111 = zext i32 %42110 to i64
  store i64 %42111, ptr %56, align 8, !tbaa !11
  %42112 = load i64, ptr %56, align 8, !tbaa !11
  %42113 = load i64, ptr %55, align 8, !tbaa !11
  %42114 = or i64 %42113, %42112
  store i64 %42114, ptr %55, align 8, !tbaa !11
  %42115 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %42115, ptr %39, align 8, !tbaa !11
  %42116 = load ptr, ptr %5, align 8, !tbaa !5
  %42117 = getelementptr inbounds %struct.w2c_hermes, ptr %42116, i32 0, i32 6
  %42118 = load i32, ptr %45, align 4, !tbaa !9
  %42119 = zext i32 %42118 to i64
  %42120 = add i64 %42119, 80
  %42121 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42117, i64 noundef %42120, i64 noundef %42121)
  %42122 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42122, ptr %45, align 4, !tbaa !9
  %42123 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %42123, ptr %55, align 8, !tbaa !11
  %42124 = load ptr, ptr %5, align 8, !tbaa !5
  %42125 = getelementptr inbounds %struct.w2c_hermes, ptr %42124, i32 0, i32 6
  %42126 = load i32, ptr %45, align 4, !tbaa !9
  %42127 = zext i32 %42126 to i64
  %42128 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42125, i64 noundef %42127, i64 noundef %42128)
  %42129 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42129, ptr %45, align 4, !tbaa !9
  %42130 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %42130, ptr %46, align 4, !tbaa !9
  %42131 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42131, ptr %47, align 4, !tbaa !9
  store i32 88, ptr %48, align 4, !tbaa !9
  %42132 = load i32, ptr %48, align 4, !tbaa !9
  %42133 = load i32, ptr %47, align 4, !tbaa !9
  %42134 = add i32 %42133, %42132
  store i32 %42134, ptr %47, align 4, !tbaa !9
  %42135 = load ptr, ptr %5, align 8, !tbaa !5
  %42136 = load i32, ptr %45, align 4, !tbaa !9
  %42137 = load i32, ptr %46, align 4, !tbaa !9
  %42138 = load i32, ptr %47, align 4, !tbaa !9
  %42139 = call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %42135, i32 noundef %42136, i32 noundef %42137, i32 noundef %42138)
  store i32 %42139, ptr %45, align 4, !tbaa !9
  %42140 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42140, ptr %7, align 4, !tbaa !9
  %42141 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %42141, ptr %54, align 8, !tbaa !11
  %42142 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42142, ptr %46, align 4, !tbaa !9
  %42143 = load ptr, ptr %5, align 8, !tbaa !5
  %42144 = getelementptr inbounds %struct.w2c_hermes, ptr %42143, i32 0, i32 6
  %42145 = load i32, ptr %46, align 4, !tbaa !9
  %42146 = zext i32 %42145 to i64
  %42147 = add i64 %42146, 40
  %42148 = call i64 @i64_load(ptr noundef %42144, i64 noundef %42147)
  store i64 %42148, ptr %55, align 8, !tbaa !11
  %42149 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %42149, ptr %39, align 8, !tbaa !11
  %42150 = load i64, ptr %54, align 8, !tbaa !11
  %42151 = load i64, ptr %55, align 8, !tbaa !11
  %42152 = icmp eq i64 %42150, %42151
  %42153 = zext i1 %42152 to i32
  store i32 %42153, ptr %45, align 4, !tbaa !9
  %42154 = load i32, ptr %45, align 4, !tbaa !9
  %42155 = icmp ne i32 %42154, 0
  br i1 %42155, label %42156, label %42196

42156:                                            ; preds = %41983
  %42157 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42157, ptr %45, align 4, !tbaa !9
  %42158 = load ptr, ptr %5, align 8, !tbaa !5
  %42159 = getelementptr inbounds %struct.w2c_hermes, ptr %42158, i32 0, i32 6
  %42160 = load i32, ptr %45, align 4, !tbaa !9
  %42161 = zext i32 %42160 to i64
  %42162 = add i64 %42161, 88
  %42163 = call i64 @i64_load(ptr noundef %42159, i64 noundef %42162)
  store i64 %42163, ptr %54, align 8, !tbaa !11
  %42164 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %42164, ptr %39, align 8, !tbaa !11
  %42165 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42165, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %42166 = load ptr, ptr %5, align 8, !tbaa !5
  %42167 = getelementptr inbounds %struct.w2c_hermes, ptr %42166, i32 0, i32 6
  %42168 = load i32, ptr %45, align 4, !tbaa !9
  %42169 = zext i32 %42168 to i64
  %42170 = add i64 %42169, 104
  %42171 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %42167, i64 noundef %42170, i32 noundef %42171)
  %42172 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42172, ptr %45, align 4, !tbaa !9
  %42173 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %42173, ptr %55, align 8, !tbaa !11
  %42174 = load ptr, ptr %5, align 8, !tbaa !5
  %42175 = getelementptr inbounds %struct.w2c_hermes, ptr %42174, i32 0, i32 6
  %42176 = load i32, ptr %45, align 4, !tbaa !9
  %42177 = zext i32 %42176 to i64
  %42178 = add i64 %42177, 100
  %42179 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %42175, i64 noundef %42178, i64 noundef %42179)
  %42180 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42180, ptr %45, align 4, !tbaa !9
  %42181 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %42181, ptr %46, align 4, !tbaa !9
  %42182 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42182, ptr %47, align 4, !tbaa !9
  %42183 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %42183, ptr %48, align 4, !tbaa !9
  %42184 = load i32, ptr %48, align 4, !tbaa !9
  %42185 = load i32, ptr %47, align 4, !tbaa !9
  %42186 = add i32 %42185, %42184
  store i32 %42186, ptr %47, align 4, !tbaa !9
  %42187 = load i32, ptr %47, align 4, !tbaa !9
  %42188 = load i32, ptr %46, align 4, !tbaa !9
  %42189 = add i32 %42188, %42187
  store i32 %42189, ptr %46, align 4, !tbaa !9
  %42190 = load ptr, ptr %5, align 8, !tbaa !5
  %42191 = getelementptr inbounds %struct.w2c_hermes, ptr %42190, i32 0, i32 6
  %42192 = load i32, ptr %45, align 4, !tbaa !9
  %42193 = zext i32 %42192 to i64
  %42194 = add i64 %42193, 96
  %42195 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42191, i64 noundef %42194, i32 noundef %42195)
  br label %42257

42196:                                            ; preds = %41983
  %42197 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %42197, ptr %54, align 8, !tbaa !11
  %42198 = load i64, ptr %41, align 8, !tbaa !11
  store i64 %42198, ptr %55, align 8, !tbaa !11
  %42199 = load i64, ptr %54, align 8, !tbaa !11
  %42200 = load i64, ptr %55, align 8, !tbaa !11
  %42201 = icmp sgt i64 %42199, %42200
  %42202 = zext i1 %42201 to i32
  %42203 = sext i32 %42202 to i64
  %42204 = trunc i64 %42203 to i32
  store i32 %42204, ptr %45, align 4, !tbaa !9
  %42205 = load i32, ptr %45, align 4, !tbaa !9
  %42206 = icmp ne i32 %42205, 0
  br i1 %42206, label %42207, label %42208

42207:                                            ; preds = %42196
  br label %42242

42208:                                            ; preds = %42196
  %42209 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42209, ptr %45, align 4, !tbaa !9
  %42210 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %42210, ptr %46, align 4, !tbaa !9
  %42211 = load i32, ptr %46, align 4, !tbaa !9
  %42212 = load i32, ptr %45, align 4, !tbaa !9
  %42213 = add i32 %42212, %42211
  store i32 %42213, ptr %45, align 4, !tbaa !9
  %42214 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42214, ptr %13, align 4, !tbaa !9
  %42215 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42215, ptr %45, align 4, !tbaa !9
  %42216 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42216, ptr %46, align 4, !tbaa !9
  %42217 = load ptr, ptr %5, align 8, !tbaa !5
  %42218 = getelementptr inbounds %struct.w2c_hermes, ptr %42217, i32 0, i32 6
  %42219 = load i32, ptr %46, align 4, !tbaa !9
  %42220 = zext i32 %42219 to i64
  %42221 = add i64 %42220, 56
  %42222 = call i64 @i64_load(ptr noundef %42218, i64 noundef %42221)
  store i64 %42222, ptr %55, align 8, !tbaa !11
  %42223 = load i64, ptr %55, align 8, !tbaa !11
  store i64 %42223, ptr %39, align 8, !tbaa !11
  store i64 1, ptr %56, align 8, !tbaa !11
  %42224 = load i64, ptr %56, align 8, !tbaa !11
  %42225 = load i64, ptr %55, align 8, !tbaa !11
  %42226 = sub i64 %42225, %42224
  store i64 %42226, ptr %55, align 8, !tbaa !11
  %42227 = load ptr, ptr %5, align 8, !tbaa !5
  %42228 = getelementptr inbounds %struct.w2c_hermes, ptr %42227, i32 0, i32 6
  %42229 = load i32, ptr %45, align 4, !tbaa !9
  %42230 = zext i32 %42229 to i64
  %42231 = add i64 %42230, 56
  %42232 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42228, i64 noundef %42231, i64 noundef %42232)
  %42233 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %42233, ptr %54, align 8, !tbaa !11
  store i64 0, ptr %55, align 8, !tbaa !11
  %42234 = load i64, ptr %54, align 8, !tbaa !11
  %42235 = load i64, ptr %55, align 8, !tbaa !11
  %42236 = icmp ne i64 %42234, %42235
  %42237 = zext i1 %42236 to i32
  store i32 %42237, ptr %45, align 4, !tbaa !9
  %42238 = load i32, ptr %45, align 4, !tbaa !9
  %42239 = icmp ne i32 %42238, 0
  br i1 %42239, label %42240, label %42241

42240:                                            ; preds = %42208
  br label %41983

42241:                                            ; preds = %42208
  br label %42242

42242:                                            ; preds = %42241, %42207, %41957
  %42243 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42243, ptr %45, align 4, !tbaa !9
  store i64 0, ptr %55, align 8, !tbaa !11
  %42244 = load ptr, ptr %5, align 8, !tbaa !5
  %42245 = getelementptr inbounds %struct.w2c_hermes, ptr %42244, i32 0, i32 6
  %42246 = load i32, ptr %45, align 4, !tbaa !9
  %42247 = zext i32 %42246 to i64
  %42248 = add i64 %42247, 96
  %42249 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42245, i64 noundef %42248, i64 noundef %42249)
  %42250 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42250, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42251 = load ptr, ptr %5, align 8, !tbaa !5
  %42252 = getelementptr inbounds %struct.w2c_hermes, ptr %42251, i32 0, i32 6
  %42253 = load i32, ptr %45, align 4, !tbaa !9
  %42254 = zext i32 %42253 to i64
  %42255 = add i64 %42254, 104
  %42256 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %42252, i64 noundef %42255, i32 noundef %42256)
  br label %42257

42257:                                            ; preds = %42242, %42156
  %42258 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %42258, ptr %45, align 4, !tbaa !9
  store i32 96, ptr %46, align 4, !tbaa !9
  %42259 = load i32, ptr %46, align 4, !tbaa !9
  %42260 = load i32, ptr %45, align 4, !tbaa !9
  %42261 = add i32 %42260, %42259
  store i32 %42261, ptr %45, align 4, !tbaa !9
  %42262 = load i32, ptr %45, align 4, !tbaa !9
  %42263 = load ptr, ptr %5, align 8, !tbaa !5
  %42264 = getelementptr inbounds %struct.w2c_hermes, ptr %42263, i32 0, i32 3
  store i32 %42262, ptr %42264, align 8, !tbaa !15
  %42265 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42265, ptr %45, align 4, !tbaa !9
  %42266 = load ptr, ptr %5, align 8, !tbaa !5
  %42267 = getelementptr inbounds %struct.w2c_hermes, ptr %42266, i32 0, i32 6
  %42268 = load i32, ptr %45, align 4, !tbaa !9
  %42269 = zext i32 %42268 to i64
  %42270 = add i64 %42269, 104
  %42271 = call i32 @i32_load8_u(ptr noundef %42267, i64 noundef %42270)
  store i32 %42271, ptr %45, align 4, !tbaa !9
  %42272 = load i32, ptr %45, align 4, !tbaa !9
  %42273 = icmp ne i32 %42272, 0
  %42274 = xor i1 %42273, true
  %42275 = zext i1 %42274 to i32
  store i32 %42275, ptr %45, align 4, !tbaa !9
  %42276 = load i32, ptr %45, align 4, !tbaa !9
  %42277 = icmp ne i32 %42276, 0
  br i1 %42277, label %42278, label %42279

42278:                                            ; preds = %42257
  br label %42890

42279:                                            ; preds = %42257
  %42280 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42280, ptr %45, align 4, !tbaa !9
  %42281 = load ptr, ptr %5, align 8, !tbaa !5
  %42282 = getelementptr inbounds %struct.w2c_hermes, ptr %42281, i32 0, i32 6
  %42283 = load i32, ptr %45, align 4, !tbaa !9
  %42284 = zext i32 %42283 to i64
  %42285 = add i64 %42284, 96
  %42286 = call i32 @i32_load(ptr noundef %42282, i64 noundef %42285)
  store i32 %42286, ptr %45, align 4, !tbaa !9
  %42287 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42287, ptr %6, align 4, !tbaa !9
  %42288 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42288, ptr %46, align 4, !tbaa !9
  %42289 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42289, ptr %47, align 4, !tbaa !9
  %42290 = load ptr, ptr %5, align 8, !tbaa !5
  %42291 = getelementptr inbounds %struct.w2c_hermes, ptr %42290, i32 0, i32 6
  %42292 = load i32, ptr %47, align 4, !tbaa !9
  %42293 = zext i32 %42292 to i64
  %42294 = add i64 %42293, 100
  %42295 = call i32 @i32_load(ptr noundef %42291, i64 noundef %42294)
  store i32 %42295, ptr %47, align 4, !tbaa !9
  %42296 = load i32, ptr %47, align 4, !tbaa !9
  %42297 = load i32, ptr %46, align 4, !tbaa !9
  %42298 = add i32 %42297, %42296
  store i32 %42298, ptr %46, align 4, !tbaa !9
  %42299 = load ptr, ptr %5, align 8, !tbaa !5
  %42300 = load i32, ptr %45, align 4, !tbaa !9
  %42301 = load i32, ptr %46, align 4, !tbaa !9
  %42302 = call i32 @w2c_hermes_hermes0x3A0x3AisAllASCII0x28unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef %42299, i32 noundef %42300, i32 noundef %42301)
  store i32 %42302, ptr %45, align 4, !tbaa !9
  %42303 = load i32, ptr %45, align 4, !tbaa !9
  %42304 = icmp ne i32 %42303, 0
  br i1 %42304, label %42305, label %42447

42305:                                            ; preds = %42279
  %42306 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42306, ptr %45, align 4, !tbaa !9
  %42307 = load ptr, ptr %5, align 8, !tbaa !5
  %42308 = getelementptr inbounds %struct.w2c_hermes, ptr %42307, i32 0, i32 6
  %42309 = load i32, ptr %45, align 4, !tbaa !9
  %42310 = zext i32 %42309 to i64
  %42311 = add i64 %42310, 96
  %42312 = call i64 @i64_load(ptr noundef %42308, i64 noundef %42311)
  store i64 %42312, ptr %54, align 8, !tbaa !11
  %42313 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %42313, ptr %39, align 8, !tbaa !11
  store i64 32, ptr %55, align 8, !tbaa !11
  %42314 = load i64, ptr %55, align 8, !tbaa !11
  %42315 = and i64 %42314, 63
  %42316 = load i64, ptr %54, align 8, !tbaa !11
  %42317 = lshr i64 %42316, %42315
  store i64 %42317, ptr %54, align 8, !tbaa !11
  %42318 = load i64, ptr %54, align 8, !tbaa !11
  %42319 = trunc i64 %42318 to i32
  store i32 %42319, ptr %45, align 4, !tbaa !9
  %42320 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42320, ptr %6, align 4, !tbaa !9
  %42321 = load i32, ptr %45, align 4, !tbaa !9
  %42322 = icmp ne i32 %42321, 0
  %42323 = xor i1 %42322, true
  %42324 = zext i1 %42323 to i32
  store i32 %42324, ptr %45, align 4, !tbaa !9
  %42325 = load i32, ptr %45, align 4, !tbaa !9
  %42326 = icmp ne i32 %42325, 0
  br i1 %42326, label %42327, label %42356

42327:                                            ; preds = %42305
  %42328 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42328, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42329 = load ptr, ptr %5, align 8, !tbaa !5
  %42330 = getelementptr inbounds %struct.w2c_hermes, ptr %42329, i32 0, i32 6
  %42331 = load i32, ptr %45, align 4, !tbaa !9
  %42332 = zext i32 %42331 to i64
  %42333 = add i64 %42332, 80
  %42334 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42330, i64 noundef %42333, i32 noundef %42334)
  %42335 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42335, ptr %45, align 4, !tbaa !9
  store i64 111669149697, ptr %55, align 8, !tbaa !11
  %42336 = load ptr, ptr %5, align 8, !tbaa !5
  %42337 = getelementptr inbounds %struct.w2c_hermes, ptr %42336, i32 0, i32 6
  %42338 = load i32, ptr %45, align 4, !tbaa !9
  %42339 = zext i32 %42338 to i64
  %42340 = add i64 %42339, 72
  %42341 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42337, i64 noundef %42340, i64 noundef %42341)
  %42342 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42342, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42343 = load ptr, ptr %5, align 8, !tbaa !5
  %42344 = getelementptr inbounds %struct.w2c_hermes, ptr %42343, i32 0, i32 6
  %42345 = load i32, ptr %45, align 4, !tbaa !9
  %42346 = zext i32 %42345 to i64
  %42347 = add i64 %42346, 56
  %42348 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42344, i64 noundef %42347, i32 noundef %42348)
  %42349 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42349, ptr %45, align 4, !tbaa !9
  store i32 62061, ptr %46, align 4, !tbaa !9
  %42350 = load ptr, ptr %5, align 8, !tbaa !5
  %42351 = getelementptr inbounds %struct.w2c_hermes, ptr %42350, i32 0, i32 6
  %42352 = load i32, ptr %45, align 4, !tbaa !9
  %42353 = zext i32 %42352 to i64
  %42354 = add i64 %42353, 48
  %42355 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42351, i64 noundef %42354, i32 noundef %42355)
  br label %42401

42356:                                            ; preds = %42305
  %42357 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42357, ptr %45, align 4, !tbaa !9
  store i32 26, ptr %46, align 4, !tbaa !9
  %42358 = load ptr, ptr %5, align 8, !tbaa !5
  %42359 = getelementptr inbounds %struct.w2c_hermes, ptr %42358, i32 0, i32 6
  %42360 = load i32, ptr %45, align 4, !tbaa !9
  %42361 = zext i32 %42360 to i64
  %42362 = add i64 %42361, 80
  %42363 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42359, i64 noundef %42362, i32 noundef %42363)
  %42364 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42364, ptr %45, align 4, !tbaa !9
  %42365 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42365, ptr %46, align 4, !tbaa !9
  %42366 = load ptr, ptr %5, align 8, !tbaa !5
  %42367 = getelementptr inbounds %struct.w2c_hermes, ptr %42366, i32 0, i32 6
  %42368 = load i32, ptr %45, align 4, !tbaa !9
  %42369 = zext i32 %42368 to i64
  %42370 = add i64 %42369, 76
  %42371 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42367, i64 noundef %42370, i32 noundef %42371)
  %42372 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42372, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42373 = load ptr, ptr %5, align 8, !tbaa !5
  %42374 = getelementptr inbounds %struct.w2c_hermes, ptr %42373, i32 0, i32 6
  %42375 = load i32, ptr %45, align 4, !tbaa !9
  %42376 = zext i32 %42375 to i64
  %42377 = add i64 %42376, 72
  %42378 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42374, i64 noundef %42377, i32 noundef %42378)
  %42379 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42379, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42380 = load ptr, ptr %5, align 8, !tbaa !5
  %42381 = getelementptr inbounds %struct.w2c_hermes, ptr %42380, i32 0, i32 6
  %42382 = load i32, ptr %45, align 4, !tbaa !9
  %42383 = zext i32 %42382 to i64
  %42384 = add i64 %42383, 56
  %42385 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42381, i64 noundef %42384, i32 noundef %42385)
  %42386 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42386, ptr %45, align 4, !tbaa !9
  %42387 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %42387, ptr %55, align 8, !tbaa !11
  %42388 = load ptr, ptr %5, align 8, !tbaa !5
  %42389 = getelementptr inbounds %struct.w2c_hermes, ptr %42388, i32 0, i32 6
  %42390 = load i32, ptr %45, align 4, !tbaa !9
  %42391 = zext i32 %42390 to i64
  %42392 = add i64 %42391, 48
  %42393 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store32(ptr noundef %42389, i64 noundef %42392, i64 noundef %42393)
  %42394 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42394, ptr %45, align 4, !tbaa !9
  store i32 62061, ptr %46, align 4, !tbaa !9
  %42395 = load ptr, ptr %5, align 8, !tbaa !5
  %42396 = getelementptr inbounds %struct.w2c_hermes, ptr %42395, i32 0, i32 6
  %42397 = load i32, ptr %45, align 4, !tbaa !9
  %42398 = zext i32 %42397 to i64
  %42399 = add i64 %42398, 64
  %42400 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42396, i64 noundef %42399, i32 noundef %42400)
  br label %42401

42401:                                            ; preds = %42356, %42327
  %42402 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42402, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42403 = load ptr, ptr %5, align 8, !tbaa !5
  %42404 = getelementptr inbounds %struct.w2c_hermes, ptr %42403, i32 0, i32 6
  %42405 = load i32, ptr %45, align 4, !tbaa !9
  %42406 = zext i32 %42405 to i64
  %42407 = add i64 %42406, 152
  %42408 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42404, i64 noundef %42407, i32 noundef %42408)
  %42409 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42409, ptr %45, align 4, !tbaa !9
  store i64 4294967297, ptr %55, align 8, !tbaa !11
  %42410 = load ptr, ptr %5, align 8, !tbaa !5
  %42411 = getelementptr inbounds %struct.w2c_hermes, ptr %42410, i32 0, i32 6
  %42412 = load i32, ptr %45, align 4, !tbaa !9
  %42413 = zext i32 %42412 to i64
  %42414 = add i64 %42413, 144
  %42415 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42411, i64 noundef %42414, i64 noundef %42415)
  %42416 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42416, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42417 = load ptr, ptr %5, align 8, !tbaa !5
  %42418 = getelementptr inbounds %struct.w2c_hermes, ptr %42417, i32 0, i32 6
  %42419 = load i32, ptr %45, align 4, !tbaa !9
  %42420 = zext i32 %42419 to i64
  %42421 = add i64 %42420, 128
  %42422 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42418, i64 noundef %42421, i32 noundef %42422)
  %42423 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42423, ptr %45, align 4, !tbaa !9
  store i32 59537, ptr %46, align 4, !tbaa !9
  %42424 = load ptr, ptr %5, align 8, !tbaa !5
  %42425 = getelementptr inbounds %struct.w2c_hermes, ptr %42424, i32 0, i32 6
  %42426 = load i32, ptr %45, align 4, !tbaa !9
  %42427 = zext i32 %42426 to i64
  %42428 = add i64 %42427, 120
  %42429 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42425, i64 noundef %42428, i32 noundef %42429)
  %42430 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %42430, ptr %45, align 4, !tbaa !9
  %42431 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42431, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %42432 = load i32, ptr %47, align 4, !tbaa !9
  %42433 = load i32, ptr %46, align 4, !tbaa !9
  %42434 = add i32 %42433, %42432
  store i32 %42434, ptr %46, align 4, !tbaa !9
  %42435 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %42435, ptr %47, align 4, !tbaa !9
  %42436 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42436, ptr %48, align 4, !tbaa !9
  store i32 120, ptr %49, align 4, !tbaa !9
  %42437 = load i32, ptr %49, align 4, !tbaa !9
  %42438 = load i32, ptr %48, align 4, !tbaa !9
  %42439 = add i32 %42438, %42437
  store i32 %42439, ptr %48, align 4, !tbaa !9
  %42440 = load ptr, ptr %5, align 8, !tbaa !5
  %42441 = load i32, ptr %45, align 4, !tbaa !9
  %42442 = load i32, ptr %46, align 4, !tbaa !9
  %42443 = load i32, ptr %47, align 4, !tbaa !9
  %42444 = load i32, ptr %48, align 4, !tbaa !9
  %42445 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %42440, i32 noundef %42441, i32 noundef %42442, i32 noundef %42443, i32 noundef %42444)
  store i32 %42445, ptr %45, align 4, !tbaa !9
  %42446 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42446, ptr %13, align 4, !tbaa !9
  br label %42957

42447:                                            ; preds = %42279
  %42448 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42448, ptr %45, align 4, !tbaa !9
  store i64 68719476736, ptr %55, align 8, !tbaa !11
  %42449 = load ptr, ptr %5, align 8, !tbaa !5
  %42450 = getelementptr inbounds %struct.w2c_hermes, ptr %42449, i32 0, i32 6
  %42451 = load i32, ptr %45, align 4, !tbaa !9
  %42452 = zext i32 %42451 to i64
  %42453 = add i64 %42452, 52
  %42454 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42450, i64 noundef %42453, i64 noundef %42454)
  %42455 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42455, ptr %45, align 4, !tbaa !9
  %42456 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42456, ptr %46, align 4, !tbaa !9
  store i32 60, ptr %47, align 4, !tbaa !9
  %42457 = load i32, ptr %47, align 4, !tbaa !9
  %42458 = load i32, ptr %46, align 4, !tbaa !9
  %42459 = add i32 %42458, %42457
  store i32 %42459, ptr %46, align 4, !tbaa !9
  %42460 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %42460, ptr %6, align 4, !tbaa !9
  %42461 = load ptr, ptr %5, align 8, !tbaa !5
  %42462 = getelementptr inbounds %struct.w2c_hermes, ptr %42461, i32 0, i32 6
  %42463 = load i32, ptr %45, align 4, !tbaa !9
  %42464 = zext i32 %42463 to i64
  %42465 = add i64 %42464, 48
  %42466 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42462, i64 noundef %42465, i32 noundef %42466)
  %42467 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42467, ptr %45, align 4, !tbaa !9
  %42468 = load ptr, ptr %5, align 8, !tbaa !5
  %42469 = getelementptr inbounds %struct.w2c_hermes, ptr %42468, i32 0, i32 6
  %42470 = load i32, ptr %45, align 4, !tbaa !9
  %42471 = zext i32 %42470 to i64
  %42472 = add i64 %42471, 100
  %42473 = call i32 @i32_load(ptr noundef %42469, i64 noundef %42472)
  store i32 %42473, ptr %45, align 4, !tbaa !9
  %42474 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42474, ptr %12, align 4, !tbaa !9
  %42475 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42475, ptr %45, align 4, !tbaa !9
  %42476 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42476, ptr %46, align 4, !tbaa !9
  %42477 = load ptr, ptr %5, align 8, !tbaa !5
  %42478 = getelementptr inbounds %struct.w2c_hermes, ptr %42477, i32 0, i32 6
  %42479 = load i32, ptr %46, align 4, !tbaa !9
  %42480 = zext i32 %42479 to i64
  %42481 = add i64 %42480, 96
  %42482 = call i32 @i32_load(ptr noundef %42478, i64 noundef %42481)
  store i32 %42482, ptr %46, align 4, !tbaa !9
  %42483 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %42483, ptr %13, align 4, !tbaa !9
  %42484 = load ptr, ptr %5, align 8, !tbaa !5
  %42485 = getelementptr inbounds %struct.w2c_hermes, ptr %42484, i32 0, i32 6
  %42486 = load i32, ptr %45, align 4, !tbaa !9
  %42487 = zext i32 %42486 to i64
  %42488 = add i64 %42487, 120
  %42489 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42485, i64 noundef %42488, i32 noundef %42489)
  store i32 0, ptr %45, align 4, !tbaa !9
  %42490 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42490, ptr %22, align 4, !tbaa !9
  %42491 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42491, ptr %45, align 4, !tbaa !9
  %42492 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42492, ptr %7, align 4, !tbaa !9
  %42493 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %42493, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42494 = load i32, ptr %45, align 4, !tbaa !9
  %42495 = load i32, ptr %46, align 4, !tbaa !9
  %42496 = icmp sgt i32 %42494, %42495
  %42497 = zext i1 %42496 to i32
  store i32 %42497, ptr %45, align 4, !tbaa !9
  %42498 = load i32, ptr %45, align 4, !tbaa !9
  %42499 = icmp ne i32 %42498, 0
  br i1 %42499, label %42500, label %42780

42500:                                            ; preds = %42447
  %42501 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %42501, ptr %45, align 4, !tbaa !9
  %42502 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42502, ptr %46, align 4, !tbaa !9
  %42503 = load i32, ptr %46, align 4, !tbaa !9
  %42504 = load i32, ptr %45, align 4, !tbaa !9
  %42505 = add i32 %42504, %42503
  store i32 %42505, ptr %45, align 4, !tbaa !9
  %42506 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42506, ptr %7, align 4, !tbaa !9
  br label %42507

42507:                                            ; preds = %42770, %42500
  %42508 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42508, ptr %45, align 4, !tbaa !9
  %42509 = load ptr, ptr %5, align 8, !tbaa !5
  %42510 = getelementptr inbounds %struct.w2c_hermes, ptr %42509, i32 0, i32 6
  %42511 = load i32, ptr %45, align 4, !tbaa !9
  %42512 = zext i32 %42511 to i64
  %42513 = call i32 @i32_load8_s(ptr noundef %42510, i64 noundef %42512)
  store i32 %42513, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42514 = load i32, ptr %45, align 4, !tbaa !9
  %42515 = load i32, ptr %46, align 4, !tbaa !9
  %42516 = icmp sge i32 %42514, %42515
  %42517 = zext i1 %42516 to i32
  store i32 %42517, ptr %45, align 4, !tbaa !9
  %42518 = load i32, ptr %45, align 4, !tbaa !9
  %42519 = icmp ne i32 %42518, 0
  br i1 %42519, label %42520, label %42538

42520:                                            ; preds = %42507
  %42521 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42521, ptr %45, align 4, !tbaa !9
  %42522 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42522, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %42523 = load i32, ptr %47, align 4, !tbaa !9
  %42524 = load i32, ptr %46, align 4, !tbaa !9
  %42525 = add i32 %42524, %42523
  store i32 %42525, ptr %46, align 4, !tbaa !9
  %42526 = load ptr, ptr %5, align 8, !tbaa !5
  %42527 = getelementptr inbounds %struct.w2c_hermes, ptr %42526, i32 0, i32 6
  %42528 = load i32, ptr %45, align 4, !tbaa !9
  %42529 = zext i32 %42528 to i64
  %42530 = add i64 %42529, 120
  %42531 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42527, i64 noundef %42530, i32 noundef %42531)
  %42532 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42532, ptr %45, align 4, !tbaa !9
  %42533 = load ptr, ptr %5, align 8, !tbaa !5
  %42534 = getelementptr inbounds %struct.w2c_hermes, ptr %42533, i32 0, i32 6
  %42535 = load i32, ptr %45, align 4, !tbaa !9
  %42536 = zext i32 %42535 to i64
  %42537 = call i32 @i32_load8_s(ptr noundef %42534, i64 noundef %42536)
  store i32 %42537, ptr %45, align 4, !tbaa !9
  br label %42546

42538:                                            ; preds = %42507
  %42539 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42539, ptr %45, align 4, !tbaa !9
  store i32 120, ptr %46, align 4, !tbaa !9
  %42540 = load i32, ptr %46, align 4, !tbaa !9
  %42541 = load i32, ptr %45, align 4, !tbaa !9
  %42542 = add i32 %42541, %42540
  store i32 %42542, ptr %45, align 4, !tbaa !9
  %42543 = load ptr, ptr %5, align 8, !tbaa !5
  %42544 = load i32, ptr %45, align 4, !tbaa !9
  %42545 = call i32 @w2c_hermes_unsigned0x20int0x20hermes0x3A0x3A_decodeUTF8SlowPath0x3Ctrue0x2C0x20char16_t0x2A0x20hermes0x3A0x3AconvertUTF8WithSurrogatesToUTF160x3Cchar16_t0x2A0x3E0x28char16_t0x2A0x2C0x20char0x20const0x2A0x2C0x20char0x20const0x2A0x290x3A0x3A0x27lambda0x270x28llvh0x3A0x3ATwine0x20const0x260x290x3E0x28char0x20const0x2A0x260x2C0x20char16_t0x2A0x20hermes0x3A0x3AconvertUTF8WithSurrogatesToUTF160x3Cchar16_t0x2A0x3E0x28char16_t0x2A0x2C0x20char0x20const0x2A0x2C0x20char0x20const0x2A0x290x3A0x3A0x27lambda0x270x28llvh0x3A0x3ATwine0x20const0x260x290x29(ptr noundef %42543, i32 noundef %42544)
  store i32 %42545, ptr %45, align 4, !tbaa !9
  br label %42546

42546:                                            ; preds = %42538, %42520
  %42547 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42547, ptr %13, align 4, !tbaa !9
  store i32 65535, ptr %46, align 4, !tbaa !9
  %42548 = load i32, ptr %45, align 4, !tbaa !9
  %42549 = load i32, ptr %46, align 4, !tbaa !9
  %42550 = icmp ule i32 %42548, %42549
  %42551 = zext i1 %42550 to i32
  store i32 %42551, ptr %45, align 4, !tbaa !9
  %42552 = load i32, ptr %45, align 4, !tbaa !9
  %42553 = icmp ne i32 %42552, 0
  br i1 %42553, label %42554, label %42578

42554:                                            ; preds = %42546
  %42555 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42555, ptr %45, align 4, !tbaa !9
  %42556 = load ptr, ptr %5, align 8, !tbaa !5
  %42557 = getelementptr inbounds %struct.w2c_hermes, ptr %42556, i32 0, i32 6
  %42558 = load i32, ptr %45, align 4, !tbaa !9
  %42559 = zext i32 %42558 to i64
  %42560 = add i64 %42559, 52
  %42561 = call i32 @i32_load(ptr noundef %42557, i64 noundef %42560)
  store i32 %42561, ptr %45, align 4, !tbaa !9
  %42562 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42562, ptr %22, align 4, !tbaa !9
  %42563 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42563, ptr %46, align 4, !tbaa !9
  %42564 = load ptr, ptr %5, align 8, !tbaa !5
  %42565 = getelementptr inbounds %struct.w2c_hermes, ptr %42564, i32 0, i32 6
  %42566 = load i32, ptr %46, align 4, !tbaa !9
  %42567 = zext i32 %42566 to i64
  %42568 = add i64 %42567, 56
  %42569 = call i32 @i32_load(ptr noundef %42565, i64 noundef %42568)
  store i32 %42569, ptr %46, align 4, !tbaa !9
  %42570 = load i32, ptr %45, align 4, !tbaa !9
  %42571 = load i32, ptr %46, align 4, !tbaa !9
  %42572 = icmp uge i32 %42570, %42571
  %42573 = zext i1 %42572 to i32
  store i32 %42573, ptr %45, align 4, !tbaa !9
  %42574 = load i32, ptr %45, align 4, !tbaa !9
  %42575 = icmp ne i32 %42574, 0
  br i1 %42575, label %42576, label %42577

42576:                                            ; preds = %42554
  br label %42696

42577:                                            ; preds = %42554
  br label %42715

42578:                                            ; preds = %42546
  %42579 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42579, ptr %45, align 4, !tbaa !9
  %42580 = load ptr, ptr %5, align 8, !tbaa !5
  %42581 = getelementptr inbounds %struct.w2c_hermes, ptr %42580, i32 0, i32 6
  %42582 = load i32, ptr %45, align 4, !tbaa !9
  %42583 = zext i32 %42582 to i64
  %42584 = add i64 %42583, 52
  %42585 = call i32 @i32_load(ptr noundef %42581, i64 noundef %42584)
  store i32 %42585, ptr %45, align 4, !tbaa !9
  %42586 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42586, ptr %22, align 4, !tbaa !9
  %42587 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42587, ptr %46, align 4, !tbaa !9
  %42588 = load ptr, ptr %5, align 8, !tbaa !5
  %42589 = getelementptr inbounds %struct.w2c_hermes, ptr %42588, i32 0, i32 6
  %42590 = load i32, ptr %46, align 4, !tbaa !9
  %42591 = zext i32 %42590 to i64
  %42592 = add i64 %42591, 56
  %42593 = call i32 @i32_load(ptr noundef %42589, i64 noundef %42592)
  store i32 %42593, ptr %46, align 4, !tbaa !9
  %42594 = load i32, ptr %45, align 4, !tbaa !9
  %42595 = load i32, ptr %46, align 4, !tbaa !9
  %42596 = icmp uge i32 %42594, %42595
  %42597 = zext i1 %42596 to i32
  store i32 %42597, ptr %45, align 4, !tbaa !9
  %42598 = load i32, ptr %45, align 4, !tbaa !9
  %42599 = icmp ne i32 %42598, 0
  br i1 %42599, label %42600, label %42619

42600:                                            ; preds = %42578
  %42601 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42601, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %42602 = load i32, ptr %46, align 4, !tbaa !9
  %42603 = load i32, ptr %45, align 4, !tbaa !9
  %42604 = add i32 %42603, %42602
  store i32 %42604, ptr %45, align 4, !tbaa !9
  %42605 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42605, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %42606 = load ptr, ptr %5, align 8, !tbaa !5
  %42607 = load i32, ptr %45, align 4, !tbaa !9
  %42608 = load i32, ptr %46, align 4, !tbaa !9
  %42609 = load i32, ptr %47, align 4, !tbaa !9
  %42610 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %42606, i32 noundef %42607, i32 noundef %42608, i32 noundef %42609, i32 noundef %42610)
  %42611 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42611, ptr %45, align 4, !tbaa !9
  %42612 = load ptr, ptr %5, align 8, !tbaa !5
  %42613 = getelementptr inbounds %struct.w2c_hermes, ptr %42612, i32 0, i32 6
  %42614 = load i32, ptr %45, align 4, !tbaa !9
  %42615 = zext i32 %42614 to i64
  %42616 = add i64 %42615, 52
  %42617 = call i32 @i32_load(ptr noundef %42613, i64 noundef %42616)
  store i32 %42617, ptr %45, align 4, !tbaa !9
  %42618 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42618, ptr %22, align 4, !tbaa !9
  br label %42619

42619:                                            ; preds = %42600, %42578
  %42620 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42620, ptr %45, align 4, !tbaa !9
  %42621 = load ptr, ptr %5, align 8, !tbaa !5
  %42622 = getelementptr inbounds %struct.w2c_hermes, ptr %42621, i32 0, i32 6
  %42623 = load i32, ptr %45, align 4, !tbaa !9
  %42624 = zext i32 %42623 to i64
  %42625 = add i64 %42624, 48
  %42626 = call i32 @i32_load(ptr noundef %42622, i64 noundef %42625)
  store i32 %42626, ptr %45, align 4, !tbaa !9
  %42627 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %42627, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %42628 = load i32, ptr %47, align 4, !tbaa !9
  %42629 = and i32 %42628, 31
  %42630 = load i32, ptr %46, align 4, !tbaa !9
  %42631 = shl i32 %42630, %42629
  store i32 %42631, ptr %46, align 4, !tbaa !9
  %42632 = load i32, ptr %46, align 4, !tbaa !9
  %42633 = load i32, ptr %45, align 4, !tbaa !9
  %42634 = add i32 %42633, %42632
  store i32 %42634, ptr %45, align 4, !tbaa !9
  %42635 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42635, ptr %46, align 4, !tbaa !9
  store i32 983040, ptr %47, align 4, !tbaa !9
  %42636 = load i32, ptr %47, align 4, !tbaa !9
  %42637 = load i32, ptr %46, align 4, !tbaa !9
  %42638 = add i32 %42637, %42636
  store i32 %42638, ptr %46, align 4, !tbaa !9
  store i32 10, ptr %47, align 4, !tbaa !9
  %42639 = load i32, ptr %47, align 4, !tbaa !9
  %42640 = and i32 %42639, 31
  %42641 = load i32, ptr %46, align 4, !tbaa !9
  %42642 = lshr i32 %42641, %42640
  store i32 %42642, ptr %46, align 4, !tbaa !9
  store i32 1023, ptr %47, align 4, !tbaa !9
  %42643 = load i32, ptr %47, align 4, !tbaa !9
  %42644 = load i32, ptr %46, align 4, !tbaa !9
  %42645 = and i32 %42644, %42643
  store i32 %42645, ptr %46, align 4, !tbaa !9
  store i32 -10240, ptr %47, align 4, !tbaa !9
  %42646 = load i32, ptr %47, align 4, !tbaa !9
  %42647 = load i32, ptr %46, align 4, !tbaa !9
  %42648 = or i32 %42647, %42646
  store i32 %42648, ptr %46, align 4, !tbaa !9
  %42649 = load ptr, ptr %5, align 8, !tbaa !5
  %42650 = getelementptr inbounds %struct.w2c_hermes, ptr %42649, i32 0, i32 6
  %42651 = load i32, ptr %45, align 4, !tbaa !9
  %42652 = zext i32 %42651 to i64
  %42653 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %42650, i64 noundef %42652, i32 noundef %42653)
  %42654 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42654, ptr %45, align 4, !tbaa !9
  %42655 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42655, ptr %46, align 4, !tbaa !9
  %42656 = load ptr, ptr %5, align 8, !tbaa !5
  %42657 = getelementptr inbounds %struct.w2c_hermes, ptr %42656, i32 0, i32 6
  %42658 = load i32, ptr %46, align 4, !tbaa !9
  %42659 = zext i32 %42658 to i64
  %42660 = add i64 %42659, 52
  %42661 = call i32 @i32_load(ptr noundef %42657, i64 noundef %42660)
  store i32 %42661, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %42662 = load i32, ptr %47, align 4, !tbaa !9
  %42663 = load i32, ptr %46, align 4, !tbaa !9
  %42664 = add i32 %42663, %42662
  store i32 %42664, ptr %46, align 4, !tbaa !9
  %42665 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %42665, ptr %22, align 4, !tbaa !9
  %42666 = load ptr, ptr %5, align 8, !tbaa !5
  %42667 = getelementptr inbounds %struct.w2c_hermes, ptr %42666, i32 0, i32 6
  %42668 = load i32, ptr %45, align 4, !tbaa !9
  %42669 = zext i32 %42668 to i64
  %42670 = add i64 %42669, 52
  %42671 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42667, i64 noundef %42670, i32 noundef %42671)
  %42672 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42672, ptr %45, align 4, !tbaa !9
  store i32 1023, ptr %46, align 4, !tbaa !9
  %42673 = load i32, ptr %46, align 4, !tbaa !9
  %42674 = load i32, ptr %45, align 4, !tbaa !9
  %42675 = and i32 %42674, %42673
  store i32 %42675, ptr %45, align 4, !tbaa !9
  store i32 -9216, ptr %46, align 4, !tbaa !9
  %42676 = load i32, ptr %46, align 4, !tbaa !9
  %42677 = load i32, ptr %45, align 4, !tbaa !9
  %42678 = or i32 %42677, %42676
  store i32 %42678, ptr %45, align 4, !tbaa !9
  %42679 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42679, ptr %13, align 4, !tbaa !9
  %42680 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %42680, ptr %45, align 4, !tbaa !9
  %42681 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42681, ptr %46, align 4, !tbaa !9
  %42682 = load ptr, ptr %5, align 8, !tbaa !5
  %42683 = getelementptr inbounds %struct.w2c_hermes, ptr %42682, i32 0, i32 6
  %42684 = load i32, ptr %46, align 4, !tbaa !9
  %42685 = zext i32 %42684 to i64
  %42686 = add i64 %42685, 56
  %42687 = call i32 @i32_load(ptr noundef %42683, i64 noundef %42686)
  store i32 %42687, ptr %46, align 4, !tbaa !9
  %42688 = load i32, ptr %45, align 4, !tbaa !9
  %42689 = load i32, ptr %46, align 4, !tbaa !9
  %42690 = icmp ult i32 %42688, %42689
  %42691 = zext i1 %42690 to i32
  store i32 %42691, ptr %45, align 4, !tbaa !9
  %42692 = load i32, ptr %45, align 4, !tbaa !9
  %42693 = icmp ne i32 %42692, 0
  br i1 %42693, label %42694, label %42695

42694:                                            ; preds = %42619
  br label %42715

42695:                                            ; preds = %42619
  br label %42696

42696:                                            ; preds = %42695, %42576
  %42697 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42697, ptr %45, align 4, !tbaa !9
  store i32 48, ptr %46, align 4, !tbaa !9
  %42698 = load i32, ptr %46, align 4, !tbaa !9
  %42699 = load i32, ptr %45, align 4, !tbaa !9
  %42700 = add i32 %42699, %42698
  store i32 %42700, ptr %45, align 4, !tbaa !9
  %42701 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42701, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  store i32 2, ptr %48, align 4, !tbaa !9
  %42702 = load ptr, ptr %5, align 8, !tbaa !5
  %42703 = load i32, ptr %45, align 4, !tbaa !9
  %42704 = load i32, ptr %46, align 4, !tbaa !9
  %42705 = load i32, ptr %47, align 4, !tbaa !9
  %42706 = load i32, ptr %48, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %42702, i32 noundef %42703, i32 noundef %42704, i32 noundef %42705, i32 noundef %42706)
  %42707 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42707, ptr %45, align 4, !tbaa !9
  %42708 = load ptr, ptr %5, align 8, !tbaa !5
  %42709 = getelementptr inbounds %struct.w2c_hermes, ptr %42708, i32 0, i32 6
  %42710 = load i32, ptr %45, align 4, !tbaa !9
  %42711 = zext i32 %42710 to i64
  %42712 = add i64 %42711, 52
  %42713 = call i32 @i32_load(ptr noundef %42709, i64 noundef %42712)
  store i32 %42713, ptr %45, align 4, !tbaa !9
  %42714 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42714, ptr %22, align 4, !tbaa !9
  br label %42715

42715:                                            ; preds = %42696, %42694, %42577
  %42716 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42716, ptr %45, align 4, !tbaa !9
  %42717 = load ptr, ptr %5, align 8, !tbaa !5
  %42718 = getelementptr inbounds %struct.w2c_hermes, ptr %42717, i32 0, i32 6
  %42719 = load i32, ptr %45, align 4, !tbaa !9
  %42720 = zext i32 %42719 to i64
  %42721 = add i64 %42720, 48
  %42722 = call i32 @i32_load(ptr noundef %42718, i64 noundef %42721)
  store i32 %42722, ptr %45, align 4, !tbaa !9
  %42723 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %42723, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %42724 = load i32, ptr %47, align 4, !tbaa !9
  %42725 = and i32 %42724, 31
  %42726 = load i32, ptr %46, align 4, !tbaa !9
  %42727 = shl i32 %42726, %42725
  store i32 %42727, ptr %46, align 4, !tbaa !9
  %42728 = load i32, ptr %46, align 4, !tbaa !9
  %42729 = load i32, ptr %45, align 4, !tbaa !9
  %42730 = add i32 %42729, %42728
  store i32 %42730, ptr %45, align 4, !tbaa !9
  %42731 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42731, ptr %46, align 4, !tbaa !9
  %42732 = load ptr, ptr %5, align 8, !tbaa !5
  %42733 = getelementptr inbounds %struct.w2c_hermes, ptr %42732, i32 0, i32 6
  %42734 = load i32, ptr %45, align 4, !tbaa !9
  %42735 = zext i32 %42734 to i64
  %42736 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %42733, i64 noundef %42735, i32 noundef %42736)
  %42737 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42737, ptr %45, align 4, !tbaa !9
  %42738 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42738, ptr %46, align 4, !tbaa !9
  %42739 = load ptr, ptr %5, align 8, !tbaa !5
  %42740 = getelementptr inbounds %struct.w2c_hermes, ptr %42739, i32 0, i32 6
  %42741 = load i32, ptr %46, align 4, !tbaa !9
  %42742 = zext i32 %42741 to i64
  %42743 = add i64 %42742, 52
  %42744 = call i32 @i32_load(ptr noundef %42740, i64 noundef %42743)
  store i32 %42744, ptr %46, align 4, !tbaa !9
  store i32 1, ptr %47, align 4, !tbaa !9
  %42745 = load i32, ptr %47, align 4, !tbaa !9
  %42746 = load i32, ptr %46, align 4, !tbaa !9
  %42747 = add i32 %42746, %42745
  store i32 %42747, ptr %46, align 4, !tbaa !9
  %42748 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %42748, ptr %22, align 4, !tbaa !9
  %42749 = load ptr, ptr %5, align 8, !tbaa !5
  %42750 = getelementptr inbounds %struct.w2c_hermes, ptr %42749, i32 0, i32 6
  %42751 = load i32, ptr %45, align 4, !tbaa !9
  %42752 = zext i32 %42751 to i64
  %42753 = add i64 %42752, 52
  %42754 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42750, i64 noundef %42753, i32 noundef %42754)
  %42755 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42755, ptr %45, align 4, !tbaa !9
  %42756 = load ptr, ptr %5, align 8, !tbaa !5
  %42757 = getelementptr inbounds %struct.w2c_hermes, ptr %42756, i32 0, i32 6
  %42758 = load i32, ptr %45, align 4, !tbaa !9
  %42759 = zext i32 %42758 to i64
  %42760 = add i64 %42759, 120
  %42761 = call i32 @i32_load(ptr noundef %42757, i64 noundef %42760)
  store i32 %42761, ptr %45, align 4, !tbaa !9
  %42762 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42762, ptr %13, align 4, !tbaa !9
  %42763 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42763, ptr %46, align 4, !tbaa !9
  %42764 = load i32, ptr %45, align 4, !tbaa !9
  %42765 = load i32, ptr %46, align 4, !tbaa !9
  %42766 = icmp ult i32 %42764, %42765
  %42767 = zext i1 %42766 to i32
  store i32 %42767, ptr %45, align 4, !tbaa !9
  %42768 = load i32, ptr %45, align 4, !tbaa !9
  %42769 = icmp ne i32 %42768, 0
  br i1 %42769, label %42770, label %42771

42770:                                            ; preds = %42715
  br label %42507

42771:                                            ; preds = %42715
  %42772 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42772, ptr %45, align 4, !tbaa !9
  %42773 = load ptr, ptr %5, align 8, !tbaa !5
  %42774 = getelementptr inbounds %struct.w2c_hermes, ptr %42773, i32 0, i32 6
  %42775 = load i32, ptr %45, align 4, !tbaa !9
  %42776 = zext i32 %42775 to i64
  %42777 = add i64 %42776, 48
  %42778 = call i32 @i32_load(ptr noundef %42774, i64 noundef %42777)
  store i32 %42778, ptr %45, align 4, !tbaa !9
  %42779 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42779, ptr %7, align 4, !tbaa !9
  br label %42780

42780:                                            ; preds = %42771, %42447
  %42781 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42781, ptr %45, align 4, !tbaa !9
  store i32 26, ptr %46, align 4, !tbaa !9
  %42782 = load ptr, ptr %5, align 8, !tbaa !5
  %42783 = getelementptr inbounds %struct.w2c_hermes, ptr %42782, i32 0, i32 6
  %42784 = load i32, ptr %45, align 4, !tbaa !9
  %42785 = zext i32 %42784 to i64
  %42786 = add i64 %42785, 152
  %42787 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42783, i64 noundef %42786, i32 noundef %42787)
  %42788 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42788, ptr %45, align 4, !tbaa !9
  %42789 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %42789, ptr %46, align 4, !tbaa !9
  %42790 = load ptr, ptr %5, align 8, !tbaa !5
  %42791 = getelementptr inbounds %struct.w2c_hermes, ptr %42790, i32 0, i32 6
  %42792 = load i32, ptr %45, align 4, !tbaa !9
  %42793 = zext i32 %42792 to i64
  %42794 = add i64 %42793, 148
  %42795 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42791, i64 noundef %42794, i32 noundef %42795)
  %42796 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42796, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42797 = load ptr, ptr %5, align 8, !tbaa !5
  %42798 = getelementptr inbounds %struct.w2c_hermes, ptr %42797, i32 0, i32 6
  %42799 = load i32, ptr %45, align 4, !tbaa !9
  %42800 = zext i32 %42799 to i64
  %42801 = add i64 %42800, 144
  %42802 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42798, i64 noundef %42801, i32 noundef %42802)
  %42803 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42803, ptr %45, align 4, !tbaa !9
  store i32 62061, ptr %46, align 4, !tbaa !9
  %42804 = load ptr, ptr %5, align 8, !tbaa !5
  %42805 = getelementptr inbounds %struct.w2c_hermes, ptr %42804, i32 0, i32 6
  %42806 = load i32, ptr %45, align 4, !tbaa !9
  %42807 = zext i32 %42806 to i64
  %42808 = add i64 %42807, 136
  %42809 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42805, i64 noundef %42808, i32 noundef %42809)
  %42810 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42810, ptr %45, align 4, !tbaa !9
  store i32 4, ptr %46, align 4, !tbaa !9
  %42811 = load ptr, ptr %5, align 8, !tbaa !5
  %42812 = getelementptr inbounds %struct.w2c_hermes, ptr %42811, i32 0, i32 6
  %42813 = load i32, ptr %45, align 4, !tbaa !9
  %42814 = zext i32 %42813 to i64
  %42815 = add i64 %42814, 128
  %42816 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42812, i64 noundef %42815, i32 noundef %42816)
  %42817 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42817, ptr %45, align 4, !tbaa !9
  %42818 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42818, ptr %46, align 4, !tbaa !9
  %42819 = load ptr, ptr %5, align 8, !tbaa !5
  %42820 = getelementptr inbounds %struct.w2c_hermes, ptr %42819, i32 0, i32 6
  %42821 = load i32, ptr %45, align 4, !tbaa !9
  %42822 = zext i32 %42821 to i64
  %42823 = add i64 %42822, 120
  %42824 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42820, i64 noundef %42823, i32 noundef %42824)
  %42825 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42825, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42826 = load ptr, ptr %5, align 8, !tbaa !5
  %42827 = getelementptr inbounds %struct.w2c_hermes, ptr %42826, i32 0, i32 6
  %42828 = load i32, ptr %45, align 4, !tbaa !9
  %42829 = zext i32 %42828 to i64
  %42830 = add i64 %42829, 40
  %42831 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42827, i64 noundef %42830, i32 noundef %42831)
  %42832 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42832, ptr %45, align 4, !tbaa !9
  store i64 4294967297, ptr %55, align 8, !tbaa !11
  %42833 = load ptr, ptr %5, align 8, !tbaa !5
  %42834 = getelementptr inbounds %struct.w2c_hermes, ptr %42833, i32 0, i32 6
  %42835 = load i32, ptr %45, align 4, !tbaa !9
  %42836 = zext i32 %42835 to i64
  %42837 = add i64 %42836, 32
  %42838 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42834, i64 noundef %42837, i64 noundef %42838)
  %42839 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42839, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42840 = load ptr, ptr %5, align 8, !tbaa !5
  %42841 = getelementptr inbounds %struct.w2c_hermes, ptr %42840, i32 0, i32 6
  %42842 = load i32, ptr %45, align 4, !tbaa !9
  %42843 = zext i32 %42842 to i64
  %42844 = add i64 %42843, 16
  %42845 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42841, i64 noundef %42844, i32 noundef %42845)
  %42846 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42846, ptr %45, align 4, !tbaa !9
  store i32 59537, ptr %46, align 4, !tbaa !9
  %42847 = load ptr, ptr %5, align 8, !tbaa !5
  %42848 = getelementptr inbounds %struct.w2c_hermes, ptr %42847, i32 0, i32 6
  %42849 = load i32, ptr %45, align 4, !tbaa !9
  %42850 = zext i32 %42849 to i64
  %42851 = add i64 %42850, 8
  %42852 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42848, i64 noundef %42851, i32 noundef %42852)
  %42853 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %42853, ptr %45, align 4, !tbaa !9
  %42854 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42854, ptr %46, align 4, !tbaa !9
  store i32 120, ptr %47, align 4, !tbaa !9
  %42855 = load i32, ptr %47, align 4, !tbaa !9
  %42856 = load i32, ptr %46, align 4, !tbaa !9
  %42857 = add i32 %42856, %42855
  store i32 %42857, ptr %46, align 4, !tbaa !9
  %42858 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %42858, ptr %47, align 4, !tbaa !9
  %42859 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42859, ptr %48, align 4, !tbaa !9
  store i32 8, ptr %49, align 4, !tbaa !9
  %42860 = load i32, ptr %49, align 4, !tbaa !9
  %42861 = load i32, ptr %48, align 4, !tbaa !9
  %42862 = add i32 %42861, %42860
  store i32 %42862, ptr %48, align 4, !tbaa !9
  %42863 = load ptr, ptr %5, align 8, !tbaa !5
  %42864 = load i32, ptr %45, align 4, !tbaa !9
  %42865 = load i32, ptr %46, align 4, !tbaa !9
  %42866 = load i32, ptr %47, align 4, !tbaa !9
  %42867 = load i32, ptr %48, align 4, !tbaa !9
  %42868 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %42863, i32 noundef %42864, i32 noundef %42865, i32 noundef %42866, i32 noundef %42867)
  store i32 %42868, ptr %45, align 4, !tbaa !9
  %42869 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42869, ptr %13, align 4, !tbaa !9
  %42870 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42870, ptr %45, align 4, !tbaa !9
  %42871 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42871, ptr %46, align 4, !tbaa !9
  %42872 = load ptr, ptr %5, align 8, !tbaa !5
  %42873 = getelementptr inbounds %struct.w2c_hermes, ptr %42872, i32 0, i32 6
  %42874 = load i32, ptr %46, align 4, !tbaa !9
  %42875 = zext i32 %42874 to i64
  %42876 = add i64 %42875, 48
  %42877 = call i32 @i32_load(ptr noundef %42873, i64 noundef %42876)
  store i32 %42877, ptr %46, align 4, !tbaa !9
  %42878 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %42878, ptr %7, align 4, !tbaa !9
  %42879 = load i32, ptr %45, align 4, !tbaa !9
  %42880 = load i32, ptr %46, align 4, !tbaa !9
  %42881 = icmp eq i32 %42879, %42880
  %42882 = zext i1 %42881 to i32
  store i32 %42882, ptr %45, align 4, !tbaa !9
  %42883 = load i32, ptr %45, align 4, !tbaa !9
  %42884 = icmp ne i32 %42883, 0
  br i1 %42884, label %42885, label %42886

42885:                                            ; preds = %42780
  br label %42957

42886:                                            ; preds = %42780
  %42887 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42887, ptr %45, align 4, !tbaa !9
  %42888 = load ptr, ptr %5, align 8, !tbaa !5
  %42889 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %42888, i32 noundef %42889)
  br label %42957

42890:                                            ; preds = %42278, %41709, %41543, %41510, %41490
  %42891 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42891, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42892 = load ptr, ptr %5, align 8, !tbaa !5
  %42893 = getelementptr inbounds %struct.w2c_hermes, ptr %42892, i32 0, i32 6
  %42894 = load i32, ptr %45, align 4, !tbaa !9
  %42895 = zext i32 %42894 to i64
  %42896 = add i64 %42895, 80
  %42897 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42893, i64 noundef %42896, i32 noundef %42897)
  %42898 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42898, ptr %45, align 4, !tbaa !9
  store i64 1, ptr %55, align 8, !tbaa !11
  %42899 = load ptr, ptr %5, align 8, !tbaa !5
  %42900 = getelementptr inbounds %struct.w2c_hermes, ptr %42899, i32 0, i32 6
  %42901 = load i32, ptr %45, align 4, !tbaa !9
  %42902 = zext i32 %42901 to i64
  %42903 = add i64 %42902, 72
  %42904 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42900, i64 noundef %42903, i64 noundef %42904)
  %42905 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42905, ptr %45, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %42906 = load ptr, ptr %5, align 8, !tbaa !5
  %42907 = getelementptr inbounds %struct.w2c_hermes, ptr %42906, i32 0, i32 6
  %42908 = load i32, ptr %45, align 4, !tbaa !9
  %42909 = zext i32 %42908 to i64
  %42910 = add i64 %42909, 56
  %42911 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42907, i64 noundef %42910, i32 noundef %42911)
  %42912 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42912, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %42913 = load ptr, ptr %5, align 8, !tbaa !5
  %42914 = getelementptr inbounds %struct.w2c_hermes, ptr %42913, i32 0, i32 6
  %42915 = load i32, ptr %45, align 4, !tbaa !9
  %42916 = zext i32 %42915 to i64
  %42917 = add i64 %42916, 152
  %42918 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42914, i64 noundef %42917, i32 noundef %42918)
  %42919 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42919, ptr %45, align 4, !tbaa !9
  store i64 77309411329, ptr %55, align 8, !tbaa !11
  %42920 = load ptr, ptr %5, align 8, !tbaa !5
  %42921 = getelementptr inbounds %struct.w2c_hermes, ptr %42920, i32 0, i32 6
  %42922 = load i32, ptr %45, align 4, !tbaa !9
  %42923 = zext i32 %42922 to i64
  %42924 = add i64 %42923, 144
  %42925 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %42921, i64 noundef %42924, i64 noundef %42925)
  %42926 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42926, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %42927 = load ptr, ptr %5, align 8, !tbaa !5
  %42928 = getelementptr inbounds %struct.w2c_hermes, ptr %42927, i32 0, i32 6
  %42929 = load i32, ptr %45, align 4, !tbaa !9
  %42930 = zext i32 %42929 to i64
  %42931 = add i64 %42930, 128
  %42932 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42928, i64 noundef %42931, i32 noundef %42932)
  %42933 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42933, ptr %45, align 4, !tbaa !9
  store i32 41218, ptr %46, align 4, !tbaa !9
  %42934 = load ptr, ptr %5, align 8, !tbaa !5
  %42935 = getelementptr inbounds %struct.w2c_hermes, ptr %42934, i32 0, i32 6
  %42936 = load i32, ptr %45, align 4, !tbaa !9
  %42937 = zext i32 %42936 to i64
  %42938 = add i64 %42937, 120
  %42939 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %42935, i64 noundef %42938, i32 noundef %42939)
  %42940 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %42940, ptr %45, align 4, !tbaa !9
  %42941 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42941, ptr %46, align 4, !tbaa !9
  store i32 48, ptr %47, align 4, !tbaa !9
  %42942 = load i32, ptr %47, align 4, !tbaa !9
  %42943 = load i32, ptr %46, align 4, !tbaa !9
  %42944 = add i32 %42943, %42942
  store i32 %42944, ptr %46, align 4, !tbaa !9
  %42945 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %42945, ptr %47, align 4, !tbaa !9
  %42946 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42946, ptr %48, align 4, !tbaa !9
  store i32 120, ptr %49, align 4, !tbaa !9
  %42947 = load i32, ptr %49, align 4, !tbaa !9
  %42948 = load i32, ptr %48, align 4, !tbaa !9
  %42949 = add i32 %42948, %42947
  store i32 %42949, ptr %48, align 4, !tbaa !9
  %42950 = load ptr, ptr %5, align 8, !tbaa !5
  %42951 = load i32, ptr %45, align 4, !tbaa !9
  %42952 = load i32, ptr %46, align 4, !tbaa !9
  %42953 = load i32, ptr %47, align 4, !tbaa !9
  %42954 = load i32, ptr %48, align 4, !tbaa !9
  %42955 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %42950, i32 noundef %42951, i32 noundef %42952, i32 noundef %42953, i32 noundef %42954)
  store i32 %42955, ptr %45, align 4, !tbaa !9
  %42956 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42956, ptr %13, align 4, !tbaa !9
  br label %42957

42957:                                            ; preds = %42890, %42886, %42885, %42401
  %42958 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %42958, ptr %45, align 4, !tbaa !9
  store i32 160, ptr %46, align 4, !tbaa !9
  %42959 = load i32, ptr %46, align 4, !tbaa !9
  %42960 = load i32, ptr %45, align 4, !tbaa !9
  %42961 = add i32 %42960, %42959
  store i32 %42961, ptr %45, align 4, !tbaa !9
  %42962 = load i32, ptr %45, align 4, !tbaa !9
  %42963 = load ptr, ptr %5, align 8, !tbaa !5
  %42964 = getelementptr inbounds %struct.w2c_hermes, ptr %42963, i32 0, i32 3
  store i32 %42962, ptr %42964, align 8, !tbaa !15
  %42965 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %42965, ptr %45, align 4, !tbaa !9
  br label %42966

42966:                                            ; preds = %42957, %4356
  %42967 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42967, ptr %7, align 4, !tbaa !9
  %42968 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %42968, ptr %45, align 4, !tbaa !9
  %42969 = load ptr, ptr %5, align 8, !tbaa !5
  %42970 = getelementptr inbounds %struct.w2c_hermes, ptr %42969, i32 0, i32 6
  %42971 = load i32, ptr %45, align 4, !tbaa !9
  %42972 = zext i32 %42971 to i64
  %42973 = add i64 %42972, 5808
  %42974 = call i32 @i32_load(ptr noundef %42970, i64 noundef %42973)
  store i32 %42974, ptr %45, align 4, !tbaa !9
  %42975 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %42975, ptr %6, align 4, !tbaa !9
  %42976 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %42976, ptr %45, align 4, !tbaa !9
  %42977 = load i32, ptr %45, align 4, !tbaa !9
  %42978 = icmp ne i32 %42977, 0
  %42979 = xor i1 %42978, true
  %42980 = zext i1 %42979 to i32
  store i32 %42980, ptr %45, align 4, !tbaa !9
  %42981 = load i32, ptr %45, align 4, !tbaa !9
  %42982 = icmp ne i32 %42981, 0
  br i1 %42982, label %42983, label %42984

42983:                                            ; preds = %42966
  br label %43136

42984:                                            ; preds = %42966
  %42985 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %42985, ptr %45, align 4, !tbaa !9
  %42986 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %42986, ptr %46, align 4, !tbaa !9
  %42987 = load ptr, ptr %5, align 8, !tbaa !5
  %42988 = getelementptr inbounds %struct.w2c_hermes, ptr %42987, i32 0, i32 6
  %42989 = load i32, ptr %46, align 4, !tbaa !9
  %42990 = zext i32 %42989 to i64
  %42991 = add i64 %42990, 1
  %42992 = call i32 @i32_load8_u(ptr noundef %42988, i64 noundef %42991)
  store i32 %42992, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %42993 = load i32, ptr %47, align 4, !tbaa !9
  %42994 = and i32 %42993, 31
  %42995 = load i32, ptr %46, align 4, !tbaa !9
  %42996 = shl i32 %42995, %42994
  store i32 %42996, ptr %46, align 4, !tbaa !9
  %42997 = load i32, ptr %46, align 4, !tbaa !9
  %42998 = load i32, ptr %45, align 4, !tbaa !9
  %42999 = add i32 %42998, %42997
  store i32 %42999, ptr %45, align 4, !tbaa !9
  %43000 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %43000, ptr %55, align 8, !tbaa !11
  %43001 = load ptr, ptr %5, align 8, !tbaa !5
  %43002 = getelementptr inbounds %struct.w2c_hermes, ptr %43001, i32 0, i32 6
  %43003 = load i32, ptr %45, align 4, !tbaa !9
  %43004 = zext i32 %43003 to i64
  %43005 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43002, i64 noundef %43004, i64 noundef %43005)
  %43006 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43006, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %43007 = load ptr, ptr %5, align 8, !tbaa !5
  %43008 = getelementptr inbounds %struct.w2c_hermes, ptr %43007, i32 0, i32 6
  %43009 = load i32, ptr %45, align 4, !tbaa !9
  %43010 = zext i32 %43009 to i64
  %43011 = add i64 %43010, 516
  %43012 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43008, i64 noundef %43011, i32 noundef %43012)
  %43013 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43013, ptr %45, align 4, !tbaa !9
  %43014 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %43014, ptr %46, align 4, !tbaa !9
  %43015 = load ptr, ptr %5, align 8, !tbaa !5
  %43016 = getelementptr inbounds %struct.w2c_hermes, ptr %43015, i32 0, i32 6
  %43017 = load i32, ptr %45, align 4, !tbaa !9
  %43018 = zext i32 %43017 to i64
  %43019 = add i64 %43018, 512
  %43020 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43016, i64 noundef %43019, i32 noundef %43020)
  %43021 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43021, ptr %45, align 4, !tbaa !9
  %43022 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %43022, ptr %46, align 4, !tbaa !9
  %43023 = load ptr, ptr %5, align 8, !tbaa !5
  %43024 = getelementptr inbounds %struct.w2c_hermes, ptr %43023, i32 0, i32 6
  %43025 = load i32, ptr %45, align 4, !tbaa !9
  %43026 = zext i32 %43025 to i64
  %43027 = add i64 %43026, 508
  %43028 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43024, i64 noundef %43027, i32 noundef %43028)
  %43029 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43029, ptr %45, align 4, !tbaa !9
  %43030 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43030, ptr %6, align 4, !tbaa !9
  br label %2945

43031:                                            ; preds = %8122
  %43032 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %43032, ptr %45, align 4, !tbaa !9
  %43033 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43033, ptr %7, align 4, !tbaa !9
  br label %43034

43034:                                            ; preds = %43031, %8153
  %43035 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %43035, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %43036 = load i32, ptr %45, align 4, !tbaa !9
  %43037 = load i32, ptr %46, align 4, !tbaa !9
  %43038 = icmp ult i32 %43036, %43037
  %43039 = zext i1 %43038 to i32
  store i32 %43039, ptr %45, align 4, !tbaa !9
  %43040 = load i32, ptr %45, align 4, !tbaa !9
  %43041 = icmp ne i32 %43040, 0
  br i1 %43041, label %43042, label %43043

43042:                                            ; preds = %43034
  br label %43104

43043:                                            ; preds = %43034
  br label %43044

43044:                                            ; preds = %43102, %43043
  %43045 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %43045, ptr %45, align 4, !tbaa !9
  %43046 = load ptr, ptr %5, align 8, !tbaa !5
  %43047 = getelementptr inbounds %struct.w2c_hermes, ptr %43046, i32 0, i32 6
  %43048 = load i32, ptr %45, align 4, !tbaa !9
  %43049 = zext i32 %43048 to i64
  %43050 = add i64 %43049, 4
  %43051 = call i32 @i32_load(ptr noundef %43047, i64 noundef %43050)
  store i32 %43051, ptr %45, align 4, !tbaa !9
  %43052 = load ptr, ptr %5, align 8, !tbaa !5
  %43053 = getelementptr inbounds %struct.w2c_hermes, ptr %43052, i32 0, i32 6
  %43054 = load i32, ptr %45, align 4, !tbaa !9
  %43055 = zext i32 %43054 to i64
  %43056 = add i64 %43055, 4
  %43057 = call i32 @i32_load(ptr noundef %43053, i64 noundef %43056)
  store i32 %43057, ptr %45, align 4, !tbaa !9
  %43058 = load ptr, ptr %5, align 8, !tbaa !5
  %43059 = getelementptr inbounds %struct.w2c_hermes, ptr %43058, i32 0, i32 6
  %43060 = load i32, ptr %45, align 4, !tbaa !9
  %43061 = zext i32 %43060 to i64
  %43062 = add i64 %43061, 4
  %43063 = call i32 @i32_load(ptr noundef %43059, i64 noundef %43062)
  store i32 %43063, ptr %45, align 4, !tbaa !9
  %43064 = load ptr, ptr %5, align 8, !tbaa !5
  %43065 = getelementptr inbounds %struct.w2c_hermes, ptr %43064, i32 0, i32 6
  %43066 = load i32, ptr %45, align 4, !tbaa !9
  %43067 = zext i32 %43066 to i64
  %43068 = add i64 %43067, 4
  %43069 = call i32 @i32_load(ptr noundef %43065, i64 noundef %43068)
  store i32 %43069, ptr %45, align 4, !tbaa !9
  %43070 = load ptr, ptr %5, align 8, !tbaa !5
  %43071 = getelementptr inbounds %struct.w2c_hermes, ptr %43070, i32 0, i32 6
  %43072 = load i32, ptr %45, align 4, !tbaa !9
  %43073 = zext i32 %43072 to i64
  %43074 = add i64 %43073, 4
  %43075 = call i32 @i32_load(ptr noundef %43071, i64 noundef %43074)
  store i32 %43075, ptr %45, align 4, !tbaa !9
  %43076 = load ptr, ptr %5, align 8, !tbaa !5
  %43077 = getelementptr inbounds %struct.w2c_hermes, ptr %43076, i32 0, i32 6
  %43078 = load i32, ptr %45, align 4, !tbaa !9
  %43079 = zext i32 %43078 to i64
  %43080 = add i64 %43079, 4
  %43081 = call i32 @i32_load(ptr noundef %43077, i64 noundef %43080)
  store i32 %43081, ptr %45, align 4, !tbaa !9
  %43082 = load ptr, ptr %5, align 8, !tbaa !5
  %43083 = getelementptr inbounds %struct.w2c_hermes, ptr %43082, i32 0, i32 6
  %43084 = load i32, ptr %45, align 4, !tbaa !9
  %43085 = zext i32 %43084 to i64
  %43086 = add i64 %43085, 4
  %43087 = call i32 @i32_load(ptr noundef %43083, i64 noundef %43086)
  store i32 %43087, ptr %45, align 4, !tbaa !9
  %43088 = load ptr, ptr %5, align 8, !tbaa !5
  %43089 = getelementptr inbounds %struct.w2c_hermes, ptr %43088, i32 0, i32 6
  %43090 = load i32, ptr %45, align 4, !tbaa !9
  %43091 = zext i32 %43090 to i64
  %43092 = add i64 %43091, 4
  %43093 = call i32 @i32_load(ptr noundef %43089, i64 noundef %43092)
  store i32 %43093, ptr %45, align 4, !tbaa !9
  %43094 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43094, ptr %12, align 4, !tbaa !9
  %43095 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %43095, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %43096 = load i32, ptr %46, align 4, !tbaa !9
  %43097 = load i32, ptr %45, align 4, !tbaa !9
  %43098 = sub i32 %43097, %43096
  store i32 %43098, ptr %45, align 4, !tbaa !9
  %43099 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43099, ptr %7, align 4, !tbaa !9
  %43100 = load i32, ptr %45, align 4, !tbaa !9
  %43101 = icmp ne i32 %43100, 0
  br i1 %43101, label %43102, label %43103

43102:                                            ; preds = %43044
  br label %43044

43103:                                            ; preds = %43044
  br label %43104

43104:                                            ; preds = %43103, %43042, %8108
  %43105 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43105, ptr %45, align 4, !tbaa !9
  %43106 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43106, ptr %46, align 4, !tbaa !9
  %43107 = load ptr, ptr %5, align 8, !tbaa !5
  %43108 = getelementptr inbounds %struct.w2c_hermes, ptr %43107, i32 0, i32 6
  %43109 = load i32, ptr %46, align 4, !tbaa !9
  %43110 = zext i32 %43109 to i64
  %43111 = add i64 %43110, 1
  %43112 = call i32 @i32_load8_u(ptr noundef %43108, i64 noundef %43111)
  store i32 %43112, ptr %46, align 4, !tbaa !9
  store i32 3, ptr %47, align 4, !tbaa !9
  %43113 = load i32, ptr %47, align 4, !tbaa !9
  %43114 = and i32 %43113, 31
  %43115 = load i32, ptr %46, align 4, !tbaa !9
  %43116 = shl i32 %43115, %43114
  store i32 %43116, ptr %46, align 4, !tbaa !9
  %43117 = load i32, ptr %46, align 4, !tbaa !9
  %43118 = load i32, ptr %45, align 4, !tbaa !9
  %43119 = add i32 %43118, %43117
  store i32 %43119, ptr %45, align 4, !tbaa !9
  %43120 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %43120, ptr %46, align 4, !tbaa !9
  %43121 = load i32, ptr %46, align 4, !tbaa !9
  %43122 = zext i32 %43121 to i64
  store i64 %43122, ptr %55, align 8, !tbaa !11
  store i64 -281474976710656, ptr %56, align 8, !tbaa !11
  %43123 = load i64, ptr %56, align 8, !tbaa !11
  %43124 = load i64, ptr %55, align 8, !tbaa !11
  %43125 = or i64 %43124, %43123
  store i64 %43125, ptr %55, align 8, !tbaa !11
  %43126 = load ptr, ptr %5, align 8, !tbaa !5
  %43127 = getelementptr inbounds %struct.w2c_hermes, ptr %43126, i32 0, i32 6
  %43128 = load i32, ptr %45, align 4, !tbaa !9
  %43129 = zext i32 %43128 to i64
  %43130 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43127, i64 noundef %43129, i64 noundef %43130)
  %43131 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43131, ptr %45, align 4, !tbaa !9
  store i32 3, ptr %46, align 4, !tbaa !9
  %43132 = load i32, ptr %46, align 4, !tbaa !9
  %43133 = load i32, ptr %45, align 4, !tbaa !9
  %43134 = add i32 %43133, %43132
  store i32 %43134, ptr %45, align 4, !tbaa !9
  %43135 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43135, ptr %6, align 4, !tbaa !9
  br label %2945

43136:                                            ; preds = %42983, %41381, %41240, %41183, %41059, %39721, %39256, %38212, %37744, %37528, %37404, %37280, %37156, %36768, %36521, %36274, %36027, %35780, %35533, %35286, %35039, %34792, %34545, %34298, %34051, %33804, %33557, %33310, %33063, %32803, %32567, %32331, %32095, %31865, %31116, %30367, %29618, %28896, %28174, %27452, %26934, %26416, %25924, %24549, %24459, %24412, %24218, %24021, %23948, %23747, %23522, %23410, %23309, %23178, %22611, %21347, %21136, %20906, %20794, %20666, %20546, %20449, %20328, %20043, %19911, %19559, %19352, %18341, %16977, %16149, %14994, %14948, %14808, %14694, %14552, %14287, %13792, %13273, %13222, %13020, %12378, %12243, %12166, %11338, %10923, %10065, %9787, %8021, %7831, %6463, %5616, %4779, %4708, %4611, %4261
  store i32 1, ptr %45, align 4, !tbaa !9
  %43137 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43137, ptr %12, align 4, !tbaa !9
  br label %2910

43138:                                            ; preds = %5574, %2935
  %43139 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %43139, ptr %54, align 8, !tbaa !11
  store i64 -844424930131968, ptr %55, align 8, !tbaa !11
  %43140 = load i64, ptr %54, align 8, !tbaa !11
  %43141 = load i64, ptr %55, align 8, !tbaa !11
  %43142 = icmp ult i64 %43140, %43141
  %43143 = zext i1 %43142 to i32
  store i32 %43143, ptr %45, align 4, !tbaa !9
  %43144 = load i32, ptr %45, align 4, !tbaa !9
  %43145 = icmp ne i32 %43144, 0
  br i1 %43145, label %43146, label %43147

43146:                                            ; preds = %43138
  br label %43460

43147:                                            ; preds = %43138
  %43148 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %43148, ptr %54, align 8, !tbaa !11
  %43149 = load i64, ptr %54, align 8, !tbaa !11
  %43150 = trunc i64 %43149 to i32
  store i32 %43150, ptr %45, align 4, !tbaa !9
  %43151 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43151, ptr %8, align 4, !tbaa !9
  %43152 = load ptr, ptr %5, align 8, !tbaa !5
  %43153 = getelementptr inbounds %struct.w2c_hermes, ptr %43152, i32 0, i32 6
  %43154 = load i32, ptr %45, align 4, !tbaa !9
  %43155 = zext i32 %43154 to i64
  %43156 = add i64 %43155, 3
  %43157 = call i32 @i32_load8_u(ptr noundef %43153, i64 noundef %43156)
  store i32 %43157, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %43158 = load i32, ptr %46, align 4, !tbaa !9
  %43159 = and i32 %43158, 31
  %43160 = load i32, ptr %45, align 4, !tbaa !9
  %43161 = shl i32 %43160, %43159
  store i32 %43161, ptr %45, align 4, !tbaa !9
  store i32 486539264, ptr %46, align 4, !tbaa !9
  %43162 = load i32, ptr %45, align 4, !tbaa !9
  %43163 = load i32, ptr %46, align 4, !tbaa !9
  %43164 = icmp ne i32 %43162, %43163
  %43165 = zext i1 %43164 to i32
  store i32 %43165, ptr %45, align 4, !tbaa !9
  %43166 = load i32, ptr %45, align 4, !tbaa !9
  %43167 = icmp ne i32 %43166, 0
  br i1 %43167, label %43168, label %43169

43168:                                            ; preds = %43147
  br label %43460

43169:                                            ; preds = %43147
  %43170 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43170, ptr %45, align 4, !tbaa !9
  %43171 = load ptr, ptr %5, align 8, !tbaa !5
  %43172 = getelementptr inbounds %struct.w2c_hermes, ptr %43171, i32 0, i32 6
  %43173 = load i32, ptr %45, align 4, !tbaa !9
  %43174 = zext i32 %43173 to i64
  %43175 = add i64 %43174, 36
  %43176 = call i32 @i32_load8_u(ptr noundef %43172, i64 noundef %43175)
  store i32 %43176, ptr %45, align 4, !tbaa !9
  %43177 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43177, ptr %7, align 4, !tbaa !9
  %43178 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43178, ptr %45, align 4, !tbaa !9
  %43179 = load ptr, ptr %5, align 8, !tbaa !5
  %43180 = getelementptr inbounds %struct.w2c_hermes, ptr %43179, i32 0, i32 6
  %43181 = load i32, ptr %45, align 4, !tbaa !9
  %43182 = zext i32 %43181 to i64
  %43183 = add i64 %43182, 20
  %43184 = call i32 @i32_load(ptr noundef %43180, i64 noundef %43183)
  store i32 %43184, ptr %45, align 4, !tbaa !9
  %43185 = load i32, ptr %45, align 4, !tbaa !9
  %43186 = icmp ne i32 %43185, 0
  %43187 = xor i1 %43186, true
  %43188 = zext i1 %43187 to i32
  store i32 %43188, ptr %45, align 4, !tbaa !9
  %43189 = load i32, ptr %45, align 4, !tbaa !9
  %43190 = icmp ne i32 %43189, 0
  br i1 %43190, label %43191, label %43348

43191:                                            ; preds = %43169
  %43192 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43192, ptr %45, align 4, !tbaa !9
  %43193 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43193, ptr %46, align 4, !tbaa !9
  %43194 = load ptr, ptr %5, align 8, !tbaa !5
  %43195 = getelementptr inbounds %struct.w2c_hermes, ptr %43194, i32 0, i32 6
  %43196 = load i32, ptr %45, align 4, !tbaa !9
  %43197 = zext i32 %43196 to i64
  %43198 = add i64 %43197, 5808
  %43199 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43195, i64 noundef %43198, i32 noundef %43199)
  %43200 = load i64, ptr %40, align 8, !tbaa !11
  store i64 %43200, ptr %54, align 8, !tbaa !11
  store i64 4294967295, ptr %55, align 8, !tbaa !11
  %43201 = load i64, ptr %55, align 8, !tbaa !11
  %43202 = load i64, ptr %54, align 8, !tbaa !11
  %43203 = and i64 %43202, %43201
  store i64 %43203, ptr %54, align 8, !tbaa !11
  store i64 -281474976710656, ptr %55, align 8, !tbaa !11
  %43204 = load i64, ptr %55, align 8, !tbaa !11
  %43205 = load i64, ptr %54, align 8, !tbaa !11
  %43206 = or i64 %43205, %43204
  store i64 %43206, ptr %54, align 8, !tbaa !11
  %43207 = load i64, ptr %54, align 8, !tbaa !11
  store i64 %43207, ptr %39, align 8, !tbaa !11
  %43208 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43208, ptr %45, align 4, !tbaa !9
  %43209 = load ptr, ptr %5, align 8, !tbaa !5
  %43210 = getelementptr inbounds %struct.w2c_hermes, ptr %43209, i32 0, i32 6
  %43211 = load i32, ptr %45, align 4, !tbaa !9
  %43212 = zext i32 %43211 to i64
  %43213 = add i64 %43212, 4
  %43214 = call i32 @i32_load(ptr noundef %43210, i64 noundef %43213)
  store i32 %43214, ptr %45, align 4, !tbaa !9
  %43215 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43215, ptr %8, align 4, !tbaa !9
  %43216 = load ptr, ptr %5, align 8, !tbaa !5
  %43217 = getelementptr inbounds %struct.w2c_hermes, ptr %43216, i32 0, i32 6
  %43218 = load i32, ptr %45, align 4, !tbaa !9
  %43219 = zext i32 %43218 to i64
  %43220 = add i64 %43219, 164
  %43221 = call i32 @i32_load(ptr noundef %43217, i64 noundef %43220)
  store i32 %43221, ptr %45, align 4, !tbaa !9
  %43222 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43222, ptr %6, align 4, !tbaa !9
  %43223 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43223, ptr %46, align 4, !tbaa !9
  %43224 = load ptr, ptr %5, align 8, !tbaa !5
  %43225 = getelementptr inbounds %struct.w2c_hermes, ptr %43224, i32 0, i32 6
  %43226 = load i32, ptr %46, align 4, !tbaa !9
  %43227 = zext i32 %43226 to i64
  %43228 = add i64 %43227, 168
  %43229 = call i32 @i32_load(ptr noundef %43225, i64 noundef %43228)
  store i32 %43229, ptr %46, align 4, !tbaa !9
  %43230 = load i32, ptr %45, align 4, !tbaa !9
  %43231 = load i32, ptr %46, align 4, !tbaa !9
  %43232 = icmp ult i32 %43230, %43231
  %43233 = zext i1 %43232 to i32
  store i32 %43233, ptr %45, align 4, !tbaa !9
  %43234 = load i32, ptr %45, align 4, !tbaa !9
  %43235 = icmp ne i32 %43234, 0
  br i1 %43235, label %43236, label %43255

43236:                                            ; preds = %43191
  %43237 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43237, ptr %45, align 4, !tbaa !9
  %43238 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43238, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %43239 = load i32, ptr %47, align 4, !tbaa !9
  %43240 = load i32, ptr %46, align 4, !tbaa !9
  %43241 = add i32 %43240, %43239
  store i32 %43241, ptr %46, align 4, !tbaa !9
  %43242 = load ptr, ptr %5, align 8, !tbaa !5
  %43243 = getelementptr inbounds %struct.w2c_hermes, ptr %43242, i32 0, i32 6
  %43244 = load i32, ptr %45, align 4, !tbaa !9
  %43245 = zext i32 %43244 to i64
  %43246 = add i64 %43245, 164
  %43247 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43243, i64 noundef %43246, i32 noundef %43247)
  %43248 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43248, ptr %45, align 4, !tbaa !9
  %43249 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %43249, ptr %55, align 8, !tbaa !11
  %43250 = load ptr, ptr %5, align 8, !tbaa !5
  %43251 = getelementptr inbounds %struct.w2c_hermes, ptr %43250, i32 0, i32 6
  %43252 = load i32, ptr %45, align 4, !tbaa !9
  %43253 = zext i32 %43252 to i64
  %43254 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43251, i64 noundef %43253, i64 noundef %43254)
  br label %43263

43255:                                            ; preds = %43191
  %43256 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43256, ptr %45, align 4, !tbaa !9
  %43257 = load i64, ptr %39, align 8, !tbaa !11
  store i64 %43257, ptr %55, align 8, !tbaa !11
  %43258 = load ptr, ptr %5, align 8, !tbaa !5
  %43259 = load i32, ptr %45, align 4, !tbaa !9
  %43260 = load i64, ptr %55, align 8, !tbaa !11
  %43261 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %43258, i32 noundef %43259, i64 noundef %43260)
  store i32 %43261, ptr %45, align 4, !tbaa !9
  %43262 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43262, ptr %6, align 4, !tbaa !9
  br label %43263

43263:                                            ; preds = %43255, %43236
  %43264 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43264, ptr %45, align 4, !tbaa !9
  store i64 -1970324836974592, ptr %55, align 8, !tbaa !11
  %43265 = load ptr, ptr %5, align 8, !tbaa !5
  %43266 = getelementptr inbounds %struct.w2c_hermes, ptr %43265, i32 0, i32 6
  %43267 = load i32, ptr %45, align 4, !tbaa !9
  %43268 = zext i32 %43267 to i64
  %43269 = add i64 %43268, 704
  %43270 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43266, i64 noundef %43269, i64 noundef %43270)
  %43271 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43271, ptr %45, align 4, !tbaa !9
  %43272 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43272, ptr %46, align 4, !tbaa !9
  store i32 0, ptr %47, align 4, !tbaa !9
  %43273 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43273, ptr %48, align 4, !tbaa !9
  %43274 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43274, ptr %49, align 4, !tbaa !9
  %43275 = load ptr, ptr %5, align 8, !tbaa !5
  %43276 = getelementptr inbounds %struct.w2c_hermes, ptr %43275, i32 0, i32 6
  %43277 = load i32, ptr %49, align 4, !tbaa !9
  %43278 = zext i32 %43277 to i64
  %43279 = add i64 %43278, 5808
  %43280 = call i32 @i32_load(ptr noundef %43276, i64 noundef %43279)
  store i32 %43280, ptr %49, align 4, !tbaa !9
  %43281 = load ptr, ptr %5, align 8, !tbaa !5
  %43282 = load i32, ptr %45, align 4, !tbaa !9
  %43283 = load i32, ptr %46, align 4, !tbaa !9
  %43284 = load i32, ptr %47, align 4, !tbaa !9
  %43285 = load i32, ptr %48, align 4, !tbaa !9
  %43286 = load i32, ptr %49, align 4, !tbaa !9
  %43287 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3ArecordStackTrace0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20bool0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %43281, i32 noundef %43282, i32 noundef %43283, i32 noundef %43284, i32 noundef %43285, i32 noundef %43286)
  store i32 %43287, ptr %45, align 4, !tbaa !9
  %43288 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43288, ptr %45, align 4, !tbaa !9
  %43289 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43289, ptr %46, align 4, !tbaa !9
  %43290 = load ptr, ptr %5, align 8, !tbaa !5
  %43291 = getelementptr inbounds %struct.w2c_hermes, ptr %43290, i32 0, i32 6
  %43292 = load i32, ptr %46, align 4, !tbaa !9
  %43293 = zext i32 %43292 to i64
  %43294 = call i64 @i64_load(ptr noundef %43291, i64 noundef %43293)
  store i64 %43294, ptr %55, align 8, !tbaa !11
  %43295 = load ptr, ptr %5, align 8, !tbaa !5
  %43296 = getelementptr inbounds %struct.w2c_hermes, ptr %43295, i32 0, i32 6
  %43297 = load i32, ptr %45, align 4, !tbaa !9
  %43298 = zext i32 %43297 to i64
  %43299 = add i64 %43298, 704
  %43300 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43296, i64 noundef %43299, i64 noundef %43300)
  %43301 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43301, ptr %45, align 4, !tbaa !9
  %43302 = load ptr, ptr %5, align 8, !tbaa !5
  %43303 = getelementptr inbounds %struct.w2c_hermes, ptr %43302, i32 0, i32 6
  %43304 = load i32, ptr %45, align 4, !tbaa !9
  %43305 = zext i32 %43304 to i64
  %43306 = add i64 %43305, 5808
  %43307 = call i32 @i32_load(ptr noundef %43303, i64 noundef %43306)
  store i32 %43307, ptr %45, align 4, !tbaa !9
  %43308 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43308, ptr %6, align 4, !tbaa !9
  %43309 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43309, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %43310 = load ptr, ptr %5, align 8, !tbaa !5
  %43311 = getelementptr inbounds %struct.w2c_hermes, ptr %43310, i32 0, i32 6
  %43312 = load i32, ptr %45, align 4, !tbaa !9
  %43313 = zext i32 %43312 to i64
  %43314 = add i64 %43313, 516
  %43315 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43311, i64 noundef %43314, i32 noundef %43315)
  %43316 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43316, ptr %45, align 4, !tbaa !9
  %43317 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %43317, ptr %46, align 4, !tbaa !9
  %43318 = load ptr, ptr %5, align 8, !tbaa !5
  %43319 = getelementptr inbounds %struct.w2c_hermes, ptr %43318, i32 0, i32 6
  %43320 = load i32, ptr %45, align 4, !tbaa !9
  %43321 = zext i32 %43320 to i64
  %43322 = add i64 %43321, 512
  %43323 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43319, i64 noundef %43322, i32 noundef %43323)
  %43324 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43324, ptr %45, align 4, !tbaa !9
  %43325 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %43325, ptr %46, align 4, !tbaa !9
  %43326 = load ptr, ptr %5, align 8, !tbaa !5
  %43327 = getelementptr inbounds %struct.w2c_hermes, ptr %43326, i32 0, i32 6
  %43328 = load i32, ptr %45, align 4, !tbaa !9
  %43329 = zext i32 %43328 to i64
  %43330 = add i64 %43329, 508
  %43331 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43327, i64 noundef %43330, i32 noundef %43331)
  %43332 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43332, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %43333 = load ptr, ptr %5, align 8, !tbaa !5
  %43334 = getelementptr inbounds %struct.w2c_hermes, ptr %43333, i32 0, i32 6
  %43335 = load i32, ptr %45, align 4, !tbaa !9
  %43336 = zext i32 %43335 to i64
  %43337 = add i64 %43336, 352
  %43338 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43334, i64 noundef %43337, i64 noundef %43338)
  %43339 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %43339, ptr %45, align 4, !tbaa !9
  %43340 = load i32, ptr %45, align 4, !tbaa !9
  %43341 = icmp ne i32 %43340, 0
  %43342 = xor i1 %43341, true
  %43343 = zext i1 %43342 to i32
  store i32 %43343, ptr %45, align 4, !tbaa !9
  %43344 = load i32, ptr %45, align 4, !tbaa !9
  %43345 = icmp ne i32 %43344, 0
  br i1 %43345, label %43346, label %43347

43346:                                            ; preds = %43263
  br label %43384

43347:                                            ; preds = %43263
  br label %43491

43348:                                            ; preds = %43169
  %43349 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43349, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %43350 = load ptr, ptr %5, align 8, !tbaa !5
  %43351 = getelementptr inbounds %struct.w2c_hermes, ptr %43350, i32 0, i32 6
  %43352 = load i32, ptr %45, align 4, !tbaa !9
  %43353 = zext i32 %43352 to i64
  %43354 = add i64 %43353, 516
  %43355 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43351, i64 noundef %43354, i32 noundef %43355)
  %43356 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43356, ptr %45, align 4, !tbaa !9
  %43357 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %43357, ptr %46, align 4, !tbaa !9
  %43358 = load ptr, ptr %5, align 8, !tbaa !5
  %43359 = getelementptr inbounds %struct.w2c_hermes, ptr %43358, i32 0, i32 6
  %43360 = load i32, ptr %45, align 4, !tbaa !9
  %43361 = zext i32 %43360 to i64
  %43362 = add i64 %43361, 512
  %43363 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43359, i64 noundef %43362, i32 noundef %43363)
  %43364 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43364, ptr %45, align 4, !tbaa !9
  %43365 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %43365, ptr %46, align 4, !tbaa !9
  %43366 = load ptr, ptr %5, align 8, !tbaa !5
  %43367 = getelementptr inbounds %struct.w2c_hermes, ptr %43366, i32 0, i32 6
  %43368 = load i32, ptr %45, align 4, !tbaa !9
  %43369 = zext i32 %43368 to i64
  %43370 = add i64 %43369, 508
  %43371 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43367, i64 noundef %43370, i32 noundef %43371)
  %43372 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43372, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %43373 = load ptr, ptr %5, align 8, !tbaa !5
  %43374 = getelementptr inbounds %struct.w2c_hermes, ptr %43373, i32 0, i32 6
  %43375 = load i32, ptr %45, align 4, !tbaa !9
  %43376 = zext i32 %43375 to i64
  %43377 = add i64 %43376, 352
  %43378 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43374, i64 noundef %43377, i64 noundef %43378)
  %43379 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %43379, ptr %45, align 4, !tbaa !9
  %43380 = load i32, ptr %45, align 4, !tbaa !9
  %43381 = icmp ne i32 %43380, 0
  br i1 %43381, label %43382, label %43383

43382:                                            ; preds = %43348
  br label %43491

43383:                                            ; preds = %43348
  br label %43384

43384:                                            ; preds = %43383, %43346
  br label %43385

43385:                                            ; preds = %43458, %43384
  %43386 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43386, ptr %45, align 4, !tbaa !9
  %43387 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43387, ptr %46, align 4, !tbaa !9
  %43388 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43388, ptr %47, align 4, !tbaa !9
  %43389 = load ptr, ptr %5, align 8, !tbaa !5
  %43390 = getelementptr inbounds %struct.w2c_hermes, ptr %43389, i32 0, i32 6
  %43391 = load i32, ptr %47, align 4, !tbaa !9
  %43392 = zext i32 %43391 to i64
  %43393 = add i64 %43392, 8
  %43394 = call i32 @i32_load(ptr noundef %43390, i64 noundef %43393)
  store i32 %43394, ptr %47, align 4, !tbaa !9
  %43395 = load i32, ptr %47, align 4, !tbaa !9
  %43396 = load i32, ptr %46, align 4, !tbaa !9
  %43397 = sub i32 %43396, %43395
  store i32 %43397, ptr %46, align 4, !tbaa !9
  %43398 = load ptr, ptr %5, align 8, !tbaa !5
  %43399 = load i32, ptr %45, align 4, !tbaa !9
  %43400 = load i32, ptr %46, align 4, !tbaa !9
  %43401 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AfindCatchTargetOffset0x28unsigned0x20int0x29(ptr noundef %43398, i32 noundef %43399, i32 noundef %43400)
  store i32 %43401, ptr %45, align 4, !tbaa !9
  %43402 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43402, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %43403 = load i32, ptr %46, align 4, !tbaa !9
  %43404 = load i32, ptr %45, align 4, !tbaa !9
  %43405 = sub i32 %43404, %43403
  store i32 %43405, ptr %45, align 4, !tbaa !9
  %43406 = load ptr, ptr %5, align 8, !tbaa !5
  %43407 = getelementptr inbounds %struct.w2c_hermes, ptr %43406, i32 0, i32 6
  %43408 = load i32, ptr %45, align 4, !tbaa !9
  %43409 = zext i32 %43408 to i64
  %43410 = call i32 @i32_load(ptr noundef %43407, i64 noundef %43409)
  store i32 %43410, ptr %45, align 4, !tbaa !9
  %43411 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43411, ptr %6, align 4, !tbaa !9
  %43412 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43412, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %43413 = load i32, ptr %46, align 4, !tbaa !9
  %43414 = load i32, ptr %45, align 4, !tbaa !9
  %43415 = sub i32 %43414, %43413
  store i32 %43415, ptr %45, align 4, !tbaa !9
  %43416 = load ptr, ptr %5, align 8, !tbaa !5
  %43417 = getelementptr inbounds %struct.w2c_hermes, ptr %43416, i32 0, i32 6
  %43418 = load i32, ptr %45, align 4, !tbaa !9
  %43419 = zext i32 %43418 to i64
  %43420 = call i32 @i32_load(ptr noundef %43417, i64 noundef %43419)
  store i32 %43420, ptr %45, align 4, !tbaa !9
  %43421 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43421, ptr %21, align 4, !tbaa !9
  %43422 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43422, ptr %45, align 4, !tbaa !9
  %43423 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43423, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %43424 = load i32, ptr %47, align 4, !tbaa !9
  %43425 = load i32, ptr %46, align 4, !tbaa !9
  %43426 = sub i32 %43425, %43424
  store i32 %43426, ptr %46, align 4, !tbaa !9
  %43427 = load ptr, ptr %5, align 8, !tbaa !5
  %43428 = getelementptr inbounds %struct.w2c_hermes, ptr %43427, i32 0, i32 6
  %43429 = load i32, ptr %45, align 4, !tbaa !9
  %43430 = zext i32 %43429 to i64
  %43431 = add i64 %43430, 5588
  %43432 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43428, i64 noundef %43431, i32 noundef %43432)
  %43433 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43433, ptr %45, align 4, !tbaa !9
  %43434 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43434, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %43435 = load i32, ptr %47, align 4, !tbaa !9
  %43436 = load i32, ptr %46, align 4, !tbaa !9
  %43437 = sub i32 %43436, %43435
  store i32 %43437, ptr %46, align 4, !tbaa !9
  %43438 = load ptr, ptr %5, align 8, !tbaa !5
  %43439 = getelementptr inbounds %struct.w2c_hermes, ptr %43438, i32 0, i32 6
  %43440 = load i32, ptr %46, align 4, !tbaa !9
  %43441 = zext i32 %43440 to i64
  %43442 = call i32 @i32_load(ptr noundef %43439, i64 noundef %43441)
  store i32 %43442, ptr %46, align 4, !tbaa !9
  %43443 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %43443, ptr %7, align 4, !tbaa !9
  %43444 = load ptr, ptr %5, align 8, !tbaa !5
  %43445 = getelementptr inbounds %struct.w2c_hermes, ptr %43444, i32 0, i32 6
  %43446 = load i32, ptr %45, align 4, !tbaa !9
  %43447 = zext i32 %43446 to i64
  %43448 = add i64 %43447, 5600
  %43449 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43445, i64 noundef %43448, i32 noundef %43449)
  %43450 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %43450, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %43451 = load i32, ptr %46, align 4, !tbaa !9
  %43452 = load i32, ptr %45, align 4, !tbaa !9
  %43453 = add i32 %43452, %43451
  store i32 %43453, ptr %45, align 4, !tbaa !9
  %43454 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43454, ptr %11, align 4, !tbaa !9
  %43455 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43455, ptr %45, align 4, !tbaa !9
  %43456 = load i32, ptr %45, align 4, !tbaa !9
  %43457 = icmp ne i32 %43456, 0
  br i1 %43457, label %43458, label %43459

43458:                                            ; preds = %43385
  br label %43385

43459:                                            ; preds = %43385
  br label %43576

43460:                                            ; preds = %43168, %43146
  %43461 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43461, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %43462 = load ptr, ptr %5, align 8, !tbaa !5
  %43463 = getelementptr inbounds %struct.w2c_hermes, ptr %43462, i32 0, i32 6
  %43464 = load i32, ptr %45, align 4, !tbaa !9
  %43465 = zext i32 %43464 to i64
  %43466 = add i64 %43465, 516
  %43467 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43463, i64 noundef %43466, i32 noundef %43467)
  %43468 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43468, ptr %45, align 4, !tbaa !9
  %43469 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %43469, ptr %46, align 4, !tbaa !9
  %43470 = load ptr, ptr %5, align 8, !tbaa !5
  %43471 = getelementptr inbounds %struct.w2c_hermes, ptr %43470, i32 0, i32 6
  %43472 = load i32, ptr %45, align 4, !tbaa !9
  %43473 = zext i32 %43472 to i64
  %43474 = add i64 %43473, 512
  %43475 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43471, i64 noundef %43474, i32 noundef %43475)
  %43476 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43476, ptr %45, align 4, !tbaa !9
  %43477 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %43477, ptr %46, align 4, !tbaa !9
  %43478 = load ptr, ptr %5, align 8, !tbaa !5
  %43479 = getelementptr inbounds %struct.w2c_hermes, ptr %43478, i32 0, i32 6
  %43480 = load i32, ptr %45, align 4, !tbaa !9
  %43481 = zext i32 %43480 to i64
  %43482 = add i64 %43481, 508
  %43483 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43479, i64 noundef %43482, i32 noundef %43483)
  %43484 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43484, ptr %45, align 4, !tbaa !9
  store i64 -1688849860263936, ptr %55, align 8, !tbaa !11
  %43485 = load ptr, ptr %5, align 8, !tbaa !5
  %43486 = getelementptr inbounds %struct.w2c_hermes, ptr %43485, i32 0, i32 6
  %43487 = load i32, ptr %45, align 4, !tbaa !9
  %43488 = zext i32 %43487 to i64
  %43489 = add i64 %43488, 352
  %43490 = load i64, ptr %55, align 8, !tbaa !11
  call void @i64_store(ptr noundef %43486, i64 noundef %43489, i64 noundef %43490)
  br label %43491

43491:                                            ; preds = %43460, %43382, %43347
  br label %43492

43492:                                            ; preds = %43574, %43491
  %43493 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43493, ptr %45, align 4, !tbaa !9
  %43494 = load i32, ptr %6, align 4, !tbaa !9
  store i32 %43494, ptr %46, align 4, !tbaa !9
  %43495 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43495, ptr %47, align 4, !tbaa !9
  %43496 = load ptr, ptr %5, align 8, !tbaa !5
  %43497 = getelementptr inbounds %struct.w2c_hermes, ptr %43496, i32 0, i32 6
  %43498 = load i32, ptr %47, align 4, !tbaa !9
  %43499 = zext i32 %43498 to i64
  %43500 = add i64 %43499, 8
  %43501 = call i32 @i32_load(ptr noundef %43497, i64 noundef %43500)
  store i32 %43501, ptr %47, align 4, !tbaa !9
  %43502 = load i32, ptr %47, align 4, !tbaa !9
  %43503 = load i32, ptr %46, align 4, !tbaa !9
  %43504 = sub i32 %43503, %43502
  store i32 %43504, ptr %46, align 4, !tbaa !9
  %43505 = load ptr, ptr %5, align 8, !tbaa !5
  %43506 = load i32, ptr %45, align 4, !tbaa !9
  %43507 = load i32, ptr %46, align 4, !tbaa !9
  %43508 = call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AfindCatchTargetOffset0x28unsigned0x20int0x29(ptr noundef %43505, i32 noundef %43506, i32 noundef %43507)
  store i32 %43508, ptr %45, align 4, !tbaa !9
  %43509 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43509, ptr %7, align 4, !tbaa !9
  store i32 -1, ptr %46, align 4, !tbaa !9
  %43510 = load i32, ptr %45, align 4, !tbaa !9
  %43511 = load i32, ptr %46, align 4, !tbaa !9
  %43512 = icmp ne i32 %43510, %43511
  %43513 = zext i1 %43512 to i32
  store i32 %43513, ptr %45, align 4, !tbaa !9
  %43514 = load i32, ptr %45, align 4, !tbaa !9
  %43515 = icmp ne i32 %43514, 0
  br i1 %43515, label %43516, label %43517

43516:                                            ; preds = %43492
  br label %43583

43517:                                            ; preds = %43492
  %43518 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43518, ptr %45, align 4, !tbaa !9
  store i32 24, ptr %46, align 4, !tbaa !9
  %43519 = load i32, ptr %46, align 4, !tbaa !9
  %43520 = load i32, ptr %45, align 4, !tbaa !9
  %43521 = sub i32 %43520, %43519
  store i32 %43521, ptr %45, align 4, !tbaa !9
  %43522 = load ptr, ptr %5, align 8, !tbaa !5
  %43523 = getelementptr inbounds %struct.w2c_hermes, ptr %43522, i32 0, i32 6
  %43524 = load i32, ptr %45, align 4, !tbaa !9
  %43525 = zext i32 %43524 to i64
  %43526 = call i32 @i32_load(ptr noundef %43523, i64 noundef %43525)
  store i32 %43526, ptr %45, align 4, !tbaa !9
  %43527 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43527, ptr %6, align 4, !tbaa !9
  %43528 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43528, ptr %45, align 4, !tbaa !9
  store i32 32, ptr %46, align 4, !tbaa !9
  %43529 = load i32, ptr %46, align 4, !tbaa !9
  %43530 = load i32, ptr %45, align 4, !tbaa !9
  %43531 = sub i32 %43530, %43529
  store i32 %43531, ptr %45, align 4, !tbaa !9
  %43532 = load ptr, ptr %5, align 8, !tbaa !5
  %43533 = getelementptr inbounds %struct.w2c_hermes, ptr %43532, i32 0, i32 6
  %43534 = load i32, ptr %45, align 4, !tbaa !9
  %43535 = zext i32 %43534 to i64
  %43536 = call i32 @i32_load(ptr noundef %43533, i64 noundef %43535)
  store i32 %43536, ptr %45, align 4, !tbaa !9
  %43537 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43537, ptr %21, align 4, !tbaa !9
  %43538 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43538, ptr %45, align 4, !tbaa !9
  %43539 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43539, ptr %46, align 4, !tbaa !9
  store i32 8, ptr %47, align 4, !tbaa !9
  %43540 = load i32, ptr %47, align 4, !tbaa !9
  %43541 = load i32, ptr %46, align 4, !tbaa !9
  %43542 = sub i32 %43541, %43540
  store i32 %43542, ptr %46, align 4, !tbaa !9
  %43543 = load ptr, ptr %5, align 8, !tbaa !5
  %43544 = getelementptr inbounds %struct.w2c_hermes, ptr %43543, i32 0, i32 6
  %43545 = load i32, ptr %45, align 4, !tbaa !9
  %43546 = zext i32 %43545 to i64
  %43547 = add i64 %43546, 5588
  %43548 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43544, i64 noundef %43547, i32 noundef %43548)
  %43549 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43549, ptr %45, align 4, !tbaa !9
  %43550 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %43550, ptr %46, align 4, !tbaa !9
  store i32 16, ptr %47, align 4, !tbaa !9
  %43551 = load i32, ptr %47, align 4, !tbaa !9
  %43552 = load i32, ptr %46, align 4, !tbaa !9
  %43553 = sub i32 %43552, %43551
  store i32 %43553, ptr %46, align 4, !tbaa !9
  %43554 = load ptr, ptr %5, align 8, !tbaa !5
  %43555 = getelementptr inbounds %struct.w2c_hermes, ptr %43554, i32 0, i32 6
  %43556 = load i32, ptr %46, align 4, !tbaa !9
  %43557 = zext i32 %43556 to i64
  %43558 = call i32 @i32_load(ptr noundef %43555, i64 noundef %43557)
  store i32 %43558, ptr %46, align 4, !tbaa !9
  %43559 = load i32, ptr %46, align 4, !tbaa !9
  store i32 %43559, ptr %7, align 4, !tbaa !9
  %43560 = load ptr, ptr %5, align 8, !tbaa !5
  %43561 = getelementptr inbounds %struct.w2c_hermes, ptr %43560, i32 0, i32 6
  %43562 = load i32, ptr %45, align 4, !tbaa !9
  %43563 = zext i32 %43562 to i64
  %43564 = add i64 %43563, 5600
  %43565 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43561, i64 noundef %43564, i32 noundef %43565)
  %43566 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %43566, ptr %45, align 4, !tbaa !9
  store i32 8, ptr %46, align 4, !tbaa !9
  %43567 = load i32, ptr %46, align 4, !tbaa !9
  %43568 = load i32, ptr %45, align 4, !tbaa !9
  %43569 = add i32 %43568, %43567
  store i32 %43569, ptr %45, align 4, !tbaa !9
  %43570 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43570, ptr %11, align 4, !tbaa !9
  %43571 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43571, ptr %45, align 4, !tbaa !9
  %43572 = load i32, ptr %45, align 4, !tbaa !9
  %43573 = icmp ne i32 %43572, 0
  br i1 %43573, label %43574, label %43575

43574:                                            ; preds = %43517
  br label %43492

43575:                                            ; preds = %43517
  br label %43576

43576:                                            ; preds = %43575, %43459
  %43577 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %43577, ptr %45, align 4, !tbaa !9
  store i32 0, ptr %46, align 4, !tbaa !9
  %43578 = load ptr, ptr %5, align 8, !tbaa !5
  %43579 = getelementptr inbounds %struct.w2c_hermes, ptr %43578, i32 0, i32 6
  %43580 = load i32, ptr %45, align 4, !tbaa !9
  %43581 = zext i32 %43580 to i64
  %43582 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43579, i64 noundef %43581, i32 noundef %43582)
  br label %43622

43583:                                            ; preds = %43516
  %43584 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43584, ptr %45, align 4, !tbaa !9
  %43585 = load ptr, ptr %5, align 8, !tbaa !5
  %43586 = getelementptr inbounds %struct.w2c_hermes, ptr %43585, i32 0, i32 6
  %43587 = load i32, ptr %45, align 4, !tbaa !9
  %43588 = zext i32 %43587 to i64
  %43589 = add i64 %43588, 4
  %43590 = call i32 @i32_load(ptr noundef %43586, i64 noundef %43589)
  store i32 %43590, ptr %45, align 4, !tbaa !9
  %43591 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43591, ptr %8, align 4, !tbaa !9
  store i32 1, ptr %46, align 4, !tbaa !9
  %43592 = load i32, ptr %46, align 4, !tbaa !9
  %43593 = load i32, ptr %45, align 4, !tbaa !9
  %43594 = and i32 %43593, %43592
  store i32 %43594, ptr %45, align 4, !tbaa !9
  %43595 = load i32, ptr %45, align 4, !tbaa !9
  %43596 = icmp ne i32 %43595, 0
  br i1 %43596, label %43597, label %43602

43597:                                            ; preds = %43583
  %43598 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43598, ptr %45, align 4, !tbaa !9
  store i32 29, ptr %46, align 4, !tbaa !9
  %43599 = load i32, ptr %46, align 4, !tbaa !9
  %43600 = load i32, ptr %45, align 4, !tbaa !9
  %43601 = add i32 %43600, %43599
  store i32 %43601, ptr %45, align 4, !tbaa !9
  br label %43607

43602:                                            ; preds = %43583
  %43603 = load i32, ptr %8, align 4, !tbaa !9
  store i32 %43603, ptr %45, align 4, !tbaa !9
  store i32 15, ptr %46, align 4, !tbaa !9
  %43604 = load i32, ptr %46, align 4, !tbaa !9
  %43605 = load i32, ptr %45, align 4, !tbaa !9
  %43606 = add i32 %43605, %43604
  store i32 %43606, ptr %45, align 4, !tbaa !9
  br label %43607

43607:                                            ; preds = %43602, %43597
  %43608 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43608, ptr %34, align 4, !tbaa !9
  %43609 = load i32, ptr %7, align 4, !tbaa !9
  store i32 %43609, ptr %45, align 4, !tbaa !9
  %43610 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %43610, ptr %46, align 4, !tbaa !9
  %43611 = load ptr, ptr %5, align 8, !tbaa !5
  %43612 = getelementptr inbounds %struct.w2c_hermes, ptr %43611, i32 0, i32 6
  %43613 = load i32, ptr %46, align 4, !tbaa !9
  %43614 = zext i32 %43613 to i64
  %43615 = add i64 %43614, 8
  %43616 = call i32 @i32_load(ptr noundef %43612, i64 noundef %43615)
  store i32 %43616, ptr %46, align 4, !tbaa !9
  %43617 = load i32, ptr %46, align 4, !tbaa !9
  %43618 = load i32, ptr %45, align 4, !tbaa !9
  %43619 = add i32 %43618, %43617
  store i32 %43619, ptr %45, align 4, !tbaa !9
  %43620 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43620, ptr %33, align 4, !tbaa !9
  store i32 0, ptr %45, align 4, !tbaa !9
  %43621 = load i32, ptr %45, align 4, !tbaa !9
  store i32 %43621, ptr %12, align 4, !tbaa !9
  br label %2910

43622:                                            ; preds = %43576, %5401, %2902
  %43623 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43623, ptr %45, align 4, !tbaa !9
  store i32 344, ptr %46, align 4, !tbaa !9
  %43624 = load i32, ptr %46, align 4, !tbaa !9
  %43625 = load i32, ptr %45, align 4, !tbaa !9
  %43626 = add i32 %43625, %43624
  store i32 %43626, ptr %45, align 4, !tbaa !9
  %43627 = load ptr, ptr %5, align 8, !tbaa !5
  %43628 = load i32, ptr %45, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A0x7EGCScope0x280x29(ptr noundef %43627, i32 noundef %43628)
  br label %43629

43629:                                            ; preds = %43622, %257
  %43630 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %43630, ptr %45, align 4, !tbaa !9
  %43631 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %43631, ptr %46, align 4, !tbaa !9
  %43632 = load ptr, ptr %5, align 8, !tbaa !5
  %43633 = getelementptr inbounds %struct.w2c_hermes, ptr %43632, i32 0, i32 6
  %43634 = load i32, ptr %45, align 4, !tbaa !9
  %43635 = zext i32 %43634 to i64
  %43636 = add i64 %43635, 5808
  %43637 = load i32, ptr %46, align 4, !tbaa !9
  call void @i32_store(ptr noundef %43633, i64 noundef %43636, i32 noundef %43637)
  %43638 = load i32, ptr %9, align 4, !tbaa !9
  store i32 %43638, ptr %45, align 4, !tbaa !9
  store i32 528, ptr %46, align 4, !tbaa !9
  %43639 = load i32, ptr %46, align 4, !tbaa !9
  %43640 = load i32, ptr %45, align 4, !tbaa !9
  %43641 = add i32 %43640, %43639
  store i32 %43641, ptr %45, align 4, !tbaa !9
  %43642 = load i32, ptr %45, align 4, !tbaa !9
  %43643 = load ptr, ptr %5, align 8, !tbaa !5
  %43644 = getelementptr inbounds %struct.w2c_hermes, ptr %43643, i32 0, i32 3
  store i32 %43642, ptr %43644, align 8, !tbaa !15
  br label %43645

43645:                                            ; preds = %43629, %95
  %43646 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %43646, ptr %45, align 4, !tbaa !9
  store i32 16, ptr %46, align 4, !tbaa !9
  %43647 = load i32, ptr %46, align 4, !tbaa !9
  %43648 = load i32, ptr %45, align 4, !tbaa !9
  %43649 = add i32 %43648, %43647
  store i32 %43649, ptr %45, align 4, !tbaa !9
  %43650 = load i32, ptr %45, align 4, !tbaa !9
  %43651 = load ptr, ptr %5, align 8, !tbaa !5
  %43652 = getelementptr inbounds %struct.w2c_hermes, ptr %43651, i32 0, i32 3
  store i32 %43650, ptr %43652, align 8, !tbaa !15
  call void @llvm.lifetime.end.p0(i64 8, ptr %64) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %63) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %62) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %61) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %59) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %58) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %57) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %56) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %55) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %54) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %50) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %47) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %38) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %19) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %16) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %10) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %9) #6
  ret void
}

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

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABoundFunction0x3A0x3A_boundCall0x28hermes0x3A0x3Avm0x3A0x3ABoundFunction0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AsaveGenerator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef, i32 noundef, i32 noundef) #3

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

declare i32 @w2c_hermes__import_test_timeout(ptr noundef) #3

declare i32 @w2c_hermes__import_test_and_clear_timeout(ptr noundef) #3

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i32 noundef, i64 noundef) #3

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

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputedPrimitive0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i64 noundef) #3

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

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

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

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

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

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef, double noundef) #3

declare void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcComplement0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AgetArgumentsPropByValSlowPath_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateObjectFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateArrayFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i64 noundef, i64 noundef) #3

declare void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcNegate0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) #3

declare i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtypeOf0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AinstanceOfOperator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AhasComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteNamed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AfromBytes0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall10x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdirectEval0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3AScopeChain0x20const0x260x2C0x20bool0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetIterator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AOptional0x3Chermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall00x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

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

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

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

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

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

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

attributes #0 = { nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { inlinehint nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { noreturn "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { nocallback nofree nosync nounwind willreturn memory(none) }
attributes #6 = { nounwind }
attributes #7 = { noreturn }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"long", !7, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"double", !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 = !{!16, !10, i64 32}
!21 = !{!16, !10, i64 28}
!22 = !{!16, !6, i64 8}
!23 = !{!16, !10, i64 92}
!24 = !{!16, !6, i64 80}
!25 = !{!26, !6, i64 8}
!26 = !{!"", !6, i64 0, !6, i64 8, !6, i64 16}
!27 = !{!26, !6, i64 0}
!28 = !{!26, !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_t4 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t3 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t6 = external local_unnamed_addr constant ptr, align 8

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

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef, i32 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 #1

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

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

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

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

declare i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef, i32 noundef) local_unnamed_addr #2

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

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i32 noundef, i64 noundef) local_unnamed_addr #2

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ADynamicStringPrimitive0x3Cchar0x2C0x20false0x3E0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x20hermes0x3A0x3Avm0x3A0x3AExternalStringPrimitive0x3Cchar0x3E0x3A0x3Acreate0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnPropertyInternal0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A0x7EGCScope0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_abort(ptr noundef) local_unnamed_addr #2

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

declare void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCPointerBase0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AGCCell0x20const0x2A0x29(ptr noundef, i32 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 #2

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

declare i32 @w2c_hermes_0x5F_memcpy(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef, i32 noundef) local_unnamed_addr #2

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

; Function Attrs: inlinehint nounwind uwtable
declare hidden double @f64_reinterpret_i64(i64 noundef) local_unnamed_addr #1

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

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3ArecordStackTrace0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20bool0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3AsetupStack0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3AsetMessage0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedDescriptorUnsafe0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AtryGetOwnNamedDescriptorFast0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_void0x20hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AsetNamedSlotValueUnsafe0x3C0x28hermes0x3A0x3Avm0x3A0x3AArrayStorageBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x3A0x3AInline0x2900x3E0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHermesValue320x3A0x3AunboxToHV0x28hermes0x3A0x3Avm0x3A0x3APointerBase0x260x290x20const(ptr noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 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_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #0

; Function Attrs: inlinehint nounwind uwtable
declare hidden zeroext i1 @func_types_eq(ptr noundef, ptr noundef) local_unnamed_addr #1

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr 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 #2

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare hidden double @wasm_fabs(double noundef) local_unnamed_addr #0

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

declare i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Acompare0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef, i32 noundef, i64 noundef) local_unnamed_addr #2

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint nounwind uwtable
declare hidden i64 @i64_reinterpret_f64(double noundef) local_unnamed_addr #1

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedSlotValue0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i32 noundef, i32 noundef, i64 noundef) local_unnamed_addr #2

declare double @w2c_hermes_fmod(ptr noundef, double noundef, double noundef) local_unnamed_addr #2

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

; Function Attrs: nounwind uwtable
define dso_local void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AinterpretFunction0x28hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3) local_unnamed_addr #0 {
  %5 = getelementptr inbounds i8, ptr %0, i64 24
  %6 = load i32, ptr %5, align 8, !tbaa !5
  %7 = add i32 %6, -16
  store i32 %7, ptr %5, align 8, !tbaa !5
  %8 = getelementptr inbounds i8, ptr %0, i64 40
  %9 = zext i32 %3 to i64
  %10 = add nuw nsw i64 %9, 8
  %11 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %10)
  %.not = icmp eq i32 %11, 0
  br i1 %.not, label %12, label %16

12:                                               ; preds = %4
  %13 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef nonnull %0, i32 noundef %3, i32 noundef %2) #5
  %.not24173 = icmp eq i32 %13, 0
  br i1 %.not24173, label %14, label %16

14:                                               ; preds = %12
  %15 = zext i32 %1 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %15, i32 noundef 0)
  br label %8590

16:                                               ; preds = %12, %4
  %17 = zext i32 %7 to i64
  %18 = add nuw nsw i64 %17, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %18, i32 noundef 0)
  %19 = add nuw nsw i64 %17, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %19, i32 noundef %3)
  %20 = load i32, ptr %5, align 8, !tbaa !5
  %21 = add i32 %20, -528
  store i32 %21, ptr %5, align 8, !tbaa !5
  %22 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %19)
  %23 = zext i32 %2 to i64
  %24 = add nuw nsw i64 %23, 5808
  %25 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %26 = add i32 %2, 5608
  %27 = zext i32 %26 to i64
  %28 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %27)
  %29 = add nuw nsw i64 %23, 5604
  %30 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %29)
  %31 = sub i32 %30, %21
  %.not24174 = icmp ult i32 %28, %31
  br i1 %.not24174, label %32, label %._crit_edge26440

._crit_edge26440:                                 ; preds = %16
  %.pre26441 = zext i32 %21 to i64
  %.pre26443 = add nuw nsw i64 %.pre26441, 304
  br label %52

32:                                               ; preds = %16
  %33 = add i32 %2, 5612
  %34 = zext i32 %33 to i64
  %35 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %34)
  %36 = getelementptr inbounds i8, ptr %0, i64 32
  %37 = load i32, ptr %36, align 8, !tbaa !15
  %38 = zext i32 %21 to i64
  %39 = add nuw nsw i64 %38, 304
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %39, i32 noundef %37)
  %40 = getelementptr inbounds i8, ptr %0, i64 28
  %41 = load i32, ptr %40, align 4, !tbaa !16
  %42 = add i32 %35, %41
  %43 = sub i32 %37, %42
  %44 = add nuw nsw i64 %38, 308
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %44, i32 noundef %43)
  %45 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %39)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %29, i32 noundef %45)
  %46 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %44)
  %47 = add nuw nsw i64 %23, 5608
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %47, i32 noundef %46)
  %48 = sub i32 %45, %21
  %.not24175 = icmp ugt i32 %48, %46
  br i1 %.not24175, label %49, label %52

49:                                               ; preds = %32
  %50 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseStackOverflow0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AStackOverflowKind0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef 1)
  %51 = zext i32 %1 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %51, i32 noundef %50)
  br label %8589

52:                                               ; preds = %._crit_edge26440, %32
  %.pre-phi26444 = phi i64 [ %.pre26443, %._crit_edge26440 ], [ %39, %32 ]
  %.pre-phi26442 = phi i64 [ %.pre26441, %._crit_edge26440 ], [ %38, %32 ]
  %53 = add nuw nsw i64 %.pre-phi26442, 344
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %53, i32 noundef %2)
  %54 = add nuw nsw i64 %23, 4
  %55 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %56 = add i32 %20, -36
  %57 = add i32 %20, -176
  %58 = zext i32 %56 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %58, i32 noundef %57)
  %59 = add nuw nsw i64 %.pre-phi26442, 484
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %59, i64 noundef 17179869185)
  %60 = add nuw nsw i64 %.pre-phi26442, 480
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %60, i32 noundef %56)
  %61 = add nuw nsw i64 %.pre-phi26442, 348
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %61, i32 noundef %55)
  %62 = add nuw nsw i64 %.pre-phi26442, 516
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  %63 = add i32 %20, -48
  %64 = add nuw nsw i64 %.pre-phi26442, 512
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  %65 = add i32 %20, -184
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %54, i32 noundef %65)
  %66 = add nuw nsw i64 %.pre-phi26442, 352
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %67 = add i32 %20, -168
  %68 = add nuw nsw i64 %.pre-phi26442, 508
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %69 = add i32 %2, 192
  %70 = add i32 %2, 16
  %71 = add i32 %2, 520
  %72 = add i32 %2, 808
  %73 = add nuw nsw i64 %23, 5760
  %74 = add nuw nsw i64 %23, 5588
  %75 = add nuw nsw i64 %23, 5600
  %76 = add nuw nsw i64 %23, 5584
  %77 = add nuw nsw i64 %.pre-phi26442, 336
  %78 = add nuw nsw i64 %.pre-phi26442, 328
  %79 = add nuw nsw i64 %.pre-phi26442, 312
  %80 = add i32 %20, -224
  %81 = add nuw nsw i64 %23, 704
  %82 = add nuw nsw i64 %23, 592
  %83 = add i32 %2, 696
  %84 = add i32 %20, -424
  %85 = add nuw nsw i64 %.pre-phi26442, 104
  %86 = add i32 %20, -420
  %87 = add nuw nsw i64 %.pre-phi26442, 108
  %88 = add i32 %20, -416
  %89 = add nuw nsw i64 %.pre-phi26442, 112
  %90 = add i32 %20, -412
  %91 = add nuw nsw i64 %.pre-phi26442, 116
  %92 = zext i32 %80 to i64
  %93 = add nuw nsw i64 %92, 8
  %94 = add nuw nsw i64 %.pre-phi26442, 124
  %95 = add nuw nsw i64 %.pre-phi26442, 120
  %96 = add nuw nsw i64 %.pre-phi26442, 96
  %97 = add i32 %20, -400
  %98 = add i32 %20, -432
  %99 = add nuw nsw i64 %.pre-phi26442, 128
  %100 = add nuw nsw i64 %.pre-phi26442, 136
  %101 = add nuw nsw i64 %.pre-phi26442, 156
  %102 = add nuw nsw i64 %.pre-phi26442, 152
  %103 = add nuw nsw i64 %.pre-phi26442, 144
  %104 = add nuw nsw i64 %.pre-phi26442, 88
  %105 = add i32 %2, 1356
  %106 = zext i32 %105 to i64
  %107 = add nuw nsw i64 %.pre-phi26442, 84
  %108 = add nuw nsw i64 %.pre-phi26442, 160
  %109 = add i32 %20, -364
  %110 = add i32 %20, -444
  %111 = add nuw nsw i64 %.pre-phi26442, 164
  %112 = add nuw nsw i64 %.pre-phi26442, 80
  %113 = add nuw nsw i64 %.pre-phi26442, 168
  %114 = add i32 %20, -356
  %115 = add i32 %20, -448
  %116 = add nuw nsw i64 %.pre-phi26442, 172
  %117 = add nuw nsw i64 %.pre-phi26442, 76
  %118 = add nuw nsw i64 %.pre-phi26442, 176
  %119 = add i32 %20, -348
  %120 = add i32 %20, -452
  %121 = add nuw nsw i64 %.pre-phi26442, 180
  %122 = add nuw nsw i64 %.pre-phi26442, 60
  %123 = add nuw nsw i64 %.pre-phi26442, 192
  %124 = add i32 %20, -332
  %125 = add i32 %20, -468
  %126 = add nuw nsw i64 %.pre-phi26442, 196
  %127 = add nuw nsw i64 %.pre-phi26442, 202
  %128 = add nuw nsw i64 %.pre-phi26442, 58
  %129 = add i32 %20, -470
  %130 = add i32 %20, -324
  %131 = add nuw nsw i64 %.pre-phi26442, 204
  %132 = add i32 %20, -320
  %133 = add nuw nsw i64 %.pre-phi26442, 208
  %134 = add i32 %2, 1368
  %135 = zext i32 %134 to i64
  %136 = add i32 %2, 1364
  %137 = zext i32 %136 to i64
  %138 = add nuw nsw i64 %23, 1364
  %139 = add i32 %20, -316
  %140 = add nuw nsw i64 %.pre-phi26442, 212
  %141 = getelementptr inbounds i8, ptr %0, i64 80
  %142 = getelementptr inbounds i8, ptr %0, i64 92
  %143 = load ptr, ptr @w2c_hermes_t6, align 8
  %144 = add i32 %20, -312
  %145 = add nuw nsw i64 %.pre-phi26442, 216
  %146 = add nuw nsw i64 %.pre-phi26442, 224
  %147 = add nuw nsw i64 %.pre-phi26442, 52
  %148 = add nuw nsw i64 %.pre-phi26442, 524
  %149 = add i32 %20, -476
  %150 = add nuw nsw i64 %.pre-phi26442, 244
  %151 = add nuw nsw i64 %.pre-phi26442, 240
  %152 = add nuw nsw i64 %.pre-phi26442, 232
  %153 = add i32 %20, -284
  %154 = add i32 %20, -288
  %155 = add i32 %20, -296
  %156 = add nuw nsw i64 %.pre-phi26442, 252
  %157 = add nuw nsw i64 %.pre-phi26442, 248
  %158 = add nuw nsw i64 %.pre-phi26442, 48
  %159 = add nuw nsw i64 %.pre-phi26442, 44
  %160 = add i32 %20, -480
  %161 = add i32 %20, -484
  %162 = add nuw nsw i64 %.pre-phi26442, 40
  %163 = add i32 %20, -272
  %164 = add i32 %20, -488
  %165 = add nuw nsw i64 %.pre-phi26442, 256
  %166 = add nuw nsw i64 %23, 1368
  %167 = add nuw nsw i64 %.pre-phi26442, 264
  %168 = add i32 %20, -264
  %169 = add nuw nsw i64 %.pre-phi26442, 268
  %170 = add nuw nsw i64 %.pre-phi26442, 36
  %171 = add i32 %20, -268
  %172 = add i32 %20, -492
  %173 = add nuw nsw i64 %.pre-phi26442, 260
  %174 = add nuw nsw i64 %23, 1356
  %175 = add i32 %2, 208
  %176 = add i32 %2, 216
  %177 = add i32 %2, 240
  %178 = add i32 %2, 232
  %179 = add i32 %2, 224
  %180 = add nuw nsw i64 %.pre-phi26442, 272
  %181 = add i32 %20, -256
  %182 = add nuw nsw i64 %.pre-phi26442, 276
  %183 = add nuw nsw i64 %.pre-phi26442, 32
  %184 = add i32 %20, -496
  %185 = add nuw nsw i64 %23, 696
  %186 = add nuw nsw i64 %23, 4813
  %187 = add nuw nsw i64 %.pre-phi26442, 288
  %188 = add nuw nsw i64 %.pre-phi26442, 24
  %189 = add nuw nsw i64 %.pre-phi26442, 284
  %190 = add nuw nsw i64 %.pre-phi26442, 280
  %191 = add nuw nsw i64 %.pre-phi26442, 16
  %192 = add i32 %20, -512
  %193 = add nuw nsw i64 %.pre-phi26442, 300
  %194 = add nuw nsw i64 %.pre-phi26442, 8
  %195 = add nuw nsw i64 %.pre-phi26442, 296
  %196 = add nuw nsw i64 %.pre-phi26442, 292
  %197 = add nuw nsw i64 %23, 632
  %198 = add nuw nsw i64 %23, 5640
  %199 = add i32 %2, 1276
  %200 = zext i32 %199 to i64
  %201 = add nuw nsw i64 %23, 600
  %202 = add nuw nsw i64 %23, 5764
  %203 = getelementptr inbounds i8, ptr %0, i64 8
  %204 = add nuw nsw i64 %23, 1276
  %205 = add nuw nsw i64 %23, 5712
  %206 = load ptr, ptr @w2c_hermes_t4, align 8
  %207 = load ptr, ptr @w2c_hermes_t3, align 8
  %208 = add nuw nsw i64 %.pre-phi26442, 188
  %209 = add nuw nsw i64 %.pre-phi26442, 184
  %210 = add nuw nsw i64 %.pre-phi26442, 64
  %211 = add i32 %20, -464
  %212 = add i32 %2, 160
  %213 = add i32 %2, 5656
  br label %.loopexit24754

.loopexit24754.loopexit:                          ; preds = %914, %922, %968, %994
  %.023873.ph = phi i32 [ %.323876, %968 ], [ %.323876, %994 ], [ %918, %914 ], [ %918, %922 ]
  %.023682.ph = phi i32 [ %969, %968 ], [ %996, %994 ], [ %.323685, %914 ], [ %924, %922 ]
  br label %.loopexit24754

.loopexit24754:                                   ; preds = %.loopexit24754.loopexit, %52
  %.023873 = phi i32 [ %22, %52 ], [ %.023873.ph, %.loopexit24754.loopexit ]
  %.023811 = phi i32 [ 0, %52 ], [ %.323814.ph, %.loopexit24754.loopexit ]
  %.023808 = phi i32 [ 0, %52 ], [ %.223810.ph, %.loopexit24754.loopexit ]
  %.023682 = phi i32 [ 0, %52 ], [ %.023682.ph, %.loopexit24754.loopexit ]
  %214 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %73)
  %215 = zext i32 %214 to i64
  %216 = add nuw nsw i64 %215, 60
  %217 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %216)
  %.not24176 = icmp eq i32 %217, 0
  br i1 %.not24176, label %218, label %592

218:                                              ; preds = %.loopexit24754
  %219 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef 138337)
  %220 = and i32 %219, 1
  %.not24177 = icmp eq i32 %220, 0
  br i1 %.not24177, label %592, label %221

221:                                              ; preds = %218
  %222 = zext i32 %.023873 to i64
  %223 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %222)
  %224 = load i32, ptr %5, align 8, !tbaa !5
  %225 = add i32 %224, -48
  store i32 %225, ptr %5, align 8, !tbaa !5
  %226 = add nuw nsw i64 %215, 28
  %227 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %228 = add nuw nsw i64 %215, 40
  %229 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %.not24178 = icmp eq i32 %229, 0
  br i1 %.not24178, label %.loopexit24770, label %230

230:                                              ; preds = %221
  %231 = add i32 %229, -1
  %232 = lshr i32 %223, 4
  %233 = lshr i32 %223, 9
  %234 = xor i32 %232, %233
  %235 = and i32 %231, %234
  %236 = shl nuw i32 %235, 4
  %237 = add i32 %236, %227
  %238 = zext i32 %237 to i64
  %239 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %238)
  %240 = icmp eq i32 %239, %223
  br i1 %240, label %.loopexit24771, label %.preheader24769

.preheader24769:                                  ; preds = %230, %242
  %.023916 = phi i32 [ %245, %242 ], [ %235, %230 ]
  %.023818 = phi i32 [ %249, %242 ], [ %239, %230 ]
  %.023692 = phi i32 [ %244, %242 ], [ 1, %230 ]
  %241 = icmp eq i32 %.023818, -4
  br i1 %241, label %.loopexit24770, label %242

242:                                              ; preds = %.preheader24769
  %243 = add i32 %.023692, %.023916
  %244 = add i32 %.023692, 1
  %245 = and i32 %243, %231
  %246 = shl i32 %245, 4
  %247 = add i32 %246, %227
  %248 = zext i32 %247 to i64
  %249 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %248)
  %.not24179 = icmp eq i32 %249, %223
  br i1 %.not24179, label %.loopexit24771, label %.preheader24769

.loopexit24770:                                   ; preds = %.preheader24769, %221
  %250 = shl i32 %229, 4
  %251 = add i32 %250, %227
  br label %.loopexit24771

.loopexit24771:                                   ; preds = %242, %230, %.loopexit24770
  %.023929 = phi i32 [ %251, %.loopexit24770 ], [ %237, %230 ], [ %247, %242 ]
  %252 = shl i32 %229, 4
  %253 = add i32 %252, %227
  %254 = icmp eq i32 %253, %.023929
  br i1 %254, label %255, label %578

255:                                              ; preds = %.loopexit24771
  %256 = zext i32 %223 to i64
  %257 = add nuw nsw i64 %256, 24
  %258 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %257)
  %.not24180 = icmp eq i32 %258, 0
  br i1 %.not24180, label %263, label %259

259:                                              ; preds = %255
  %260 = add nuw nsw i64 %256, 8
  %261 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %260)
  %262 = add i32 %261, 808
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %0, i32 noundef %262, i32 noundef %258) #5
  br label %263

263:                                              ; preds = %259, %255
  %264 = zext i32 %225 to i64
  %265 = add nuw nsw i64 %264, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %265, i32 noundef %258)
  %266 = add i32 %224, -12
  %267 = load i32, ptr %5, align 8, !tbaa !5
  %268 = add i32 %267, -16
  store i32 %268, ptr %5, align 8, !tbaa !5
  %269 = add i32 %214, 44
  %270 = zext i32 %269 to i64
  %271 = add nuw nsw i64 %270, 12
  %272 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %271)
  %.not24181 = icmp eq i32 %272, 0
  br i1 %.not24181, label %302, label %273

273:                                              ; preds = %263
  %274 = zext i32 %266 to i64
  %275 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %274)
  %276 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %270)
  %277 = add i32 %272, -1
  %278 = lshr i32 %275, 4
  %279 = lshr i32 %275, 9
  %280 = xor i32 %278, %279
  %281 = and i32 %280, %277
  %282 = shl nuw nsw i32 %281, 2
  %283 = add i32 %282, %276
  %284 = zext i32 %283 to i64
  %285 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %284)
  %.not24182 = icmp eq i32 %275, %285
  br i1 %.not24182, label %.loopexit24768, label %.preheader24767

.preheader24767:                                  ; preds = %273, %289
  %.123930 = phi i32 [ %292, %289 ], [ 0, %273 ]
  %.023844 = phi i32 [ %297, %289 ], [ %283, %273 ]
  %.123819 = phi i32 [ %295, %289 ], [ %281, %273 ]
  %.023815 = phi i32 [ %294, %289 ], [ 1, %273 ]
  %.123693 = phi i32 [ %299, %289 ], [ %285, %273 ]
  %286 = icmp eq i32 %.123693, -4
  %.not24185 = icmp eq i32 %.123930, 0
  br i1 %286, label %287, label %289

287:                                              ; preds = %.preheader24767
  %288 = select i1 %.not24185, i32 %.023844, i32 %.123930
  br label %302

289:                                              ; preds = %.preheader24767
  %290 = icmp eq i32 %.123693, -8
  %291 = select i1 %290, i1 %.not24185, i1 false
  %292 = select i1 %291, i32 %.023844, i32 %.123930
  %293 = add i32 %.023815, %.123819
  %294 = add i32 %.023815, 1
  %295 = and i32 %293, %277
  %296 = shl i32 %295, 2
  %297 = add i32 %296, %276
  %298 = zext i32 %297 to i64
  %299 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %298)
  %.not24184 = icmp eq i32 %275, %299
  br i1 %.not24184, label %.loopexit24768, label %.preheader24767

.loopexit24768:                                   ; preds = %289, %273
  %.123845 = phi i32 [ %283, %273 ], [ %297, %289 ]
  %300 = shl i32 %272, 2
  %301 = add i32 %276, %300
  br label %308

302:                                              ; preds = %263, %287
  %.223931 = phi i32 [ 0, %263 ], [ %288, %287 ]
  %303 = tail call i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x2A0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x2A0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AInstruction0x2A0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AInstruction0x2A0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x260x29(ptr noundef %0, i32 noundef %269, i32 noundef %.223931, i32 noundef %266) #5
  %304 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %270)
  %305 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %271)
  %306 = shl i32 %305, 2
  %307 = add i32 %306, %304
  br label %308

308:                                              ; preds = %302, %.loopexit24768
  %.323932 = phi i32 [ 1, %302 ], [ 0, %.loopexit24768 ]
  %.223846 = phi i32 [ %303, %302 ], [ %.123845, %.loopexit24768 ]
  %.023756 = phi i32 [ %307, %302 ], [ %301, %.loopexit24768 ]
  %309 = add nuw nsw i64 %264, 28
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %309, i32 noundef %.323932)
  %310 = zext i32 %.223846 to i64
  %311 = zext i32 %.023756 to i64
  %312 = shl nuw i64 %311, 32
  %313 = or disjoint i64 %312, %310
  %314 = add nuw nsw i64 %264, 20
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %314, i64 noundef %313)
  store i32 %267, ptr %5, align 8, !tbaa !5
  %315 = add nuw nsw i64 %256, 40
  %316 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %315)
  %317 = zext i32 %316 to i64
  %318 = add nuw nsw i64 %317, 8
  %319 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %318)
  %320 = add i32 %224, -40
  %321 = zext i32 %320 to i64
  %322 = add nuw nsw i64 %321, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %322, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %321, i64 noundef 0)
  %.not24186 = icmp eq i32 %319, 0
  br i1 %.not24186, label %._crit_edge26385, label %323

._crit_edge26385:                                 ; preds = %308
  %.pre26593 = add nuw nsw i64 %321, 4
  br label %355

323:                                              ; preds = %308
  %324 = icmp slt i32 %319, 0
  br i1 %324, label %362, label %325

325:                                              ; preds = %323
  %326 = add nsw i32 %319, -1
  %327 = lshr i32 %326, 5
  %328 = add nuw nsw i32 %327, 1
  %329 = shl nuw nsw i32 %328, 2
  %330 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %329) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %322, i32 noundef %328)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %321, i32 noundef %330)
  %331 = add nuw nsw i64 %321, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %331, i32 noundef %319)
  %332 = icmp ugt i32 %319, 32
  %333 = shl nuw nsw i32 %327, 2
  %334 = select i1 %332, i32 %333, i32 0
  %335 = add i32 %330, %334
  %336 = zext i32 %335 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %336, i32 noundef 0)
  %337 = lshr i32 %319, 5
  %338 = icmp ugt i32 %319, 31
  br i1 %338, label %339, label %342

339:                                              ; preds = %325
  %340 = shl nuw nsw i32 %337, 2
  %341 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef nonnull %0, i32 noundef %330, i32 noundef 0, i32 noundef %340) #5
  br label %342

342:                                              ; preds = %339, %325
  %343 = and i32 %319, 31
  %344 = icmp eq i32 %343, 0
  br i1 %344, label %355, label %345

345:                                              ; preds = %342
  %346 = shl nuw nsw i32 %337, 2
  %347 = add i32 %330, %346
  %348 = zext i32 %347 to i64
  %349 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %348)
  %350 = sub nsw i32 0, %319
  %351 = and i32 %350, 31
  %352 = lshr i32 -1, %351
  %353 = xor i32 %352, -1
  %354 = and i32 %349, %353
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %348, i32 noundef %354)
  br label %355

355:                                              ; preds = %._crit_edge26385, %342, %345
  %.pre-phi26594 = phi i64 [ %.pre26593, %._crit_edge26385 ], [ %331, %342 ], [ %331, %345 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %314, i32 noundef %223)
  %356 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %321)
  %357 = add nuw nsw i64 %264, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %357, i32 noundef %356)
  %358 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26594)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %309, i32 noundef %358)
  %359 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %322)
  %360 = add nuw nsw i64 %264, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %360, i32 noundef %359)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %322, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %321, i64 noundef 0)
  %361 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %.not24187 = icmp eq i32 %361, 0
  br i1 %.not24187, label %391, label %363

362:                                              ; preds = %323
  tail call void @w2c_hermes_abort(ptr noundef nonnull %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

363:                                              ; preds = %355
  %364 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %314)
  %365 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %366 = add i32 %361, -1
  %367 = lshr i32 %364, 4
  %368 = lshr i32 %364, 9
  %369 = xor i32 %367, %368
  %370 = and i32 %369, %366
  %371 = shl nuw i32 %370, 4
  %372 = add i32 %371, %365
  %373 = zext i32 %372 to i64
  %374 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %373)
  %.not24188 = icmp eq i32 %364, %374
  br i1 %.not24188, label %.loopexit24766, label %.preheader24765

.preheader24765:                                  ; preds = %363, %378
  %.423933 = phi i32 [ %381, %378 ], [ 0, %363 ]
  %.123917 = phi i32 [ %388, %378 ], [ %374, %363 ]
  %.323847 = phi i32 [ %386, %378 ], [ %372, %363 ]
  %.223820 = phi i32 [ %383, %378 ], [ 1, %363 ]
  %.223694 = phi i32 [ %384, %378 ], [ %370, %363 ]
  %375 = icmp eq i32 %.123917, -4
  %.not24191 = icmp eq i32 %.423933, 0
  br i1 %375, label %376, label %378

376:                                              ; preds = %.preheader24765
  %377 = select i1 %.not24191, i32 %.323847, i32 %.423933
  br label %391

378:                                              ; preds = %.preheader24765
  %379 = icmp eq i32 %.123917, -8
  %380 = select i1 %379, i1 %.not24191, i1 false
  %381 = select i1 %380, i32 %.323847, i32 %.423933
  %382 = add i32 %.223694, %.223820
  %383 = add i32 %.223820, 1
  %384 = and i32 %382, %366
  %385 = shl i32 %384, 4
  %386 = add i32 %385, %365
  %387 = zext i32 %386 to i64
  %388 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %387)
  %.not24190 = icmp eq i32 %364, %388
  br i1 %.not24190, label %.loopexit24766, label %.preheader24765

.loopexit24766:                                   ; preds = %378, %363
  %.423848 = phi i32 [ %372, %363 ], [ %386, %378 ]
  %389 = shl i32 %361, 4
  %390 = add i32 %365, %389
  br label %567

391:                                              ; preds = %355, %376
  %.523934 = phi i32 [ 0, %355 ], [ %377, %376 ]
  %392 = add nuw nsw i64 %215, 32
  %393 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %392)
  %394 = shl i32 %393, 2
  %395 = add i32 %394, 4
  %396 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %397 = mul i32 %396, 3
  %.not24192 = icmp ult i32 %395, %397
  br i1 %.not24192, label %400, label %398

398:                                              ; preds = %391
  %399 = shl i32 %396, 1
  br label %408

400:                                              ; preds = %391
  %401 = xor i32 %393, -1
  %402 = add i32 %396, %401
  %403 = add nuw nsw i64 %215, 36
  %404 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %403)
  %405 = sub i32 %402, %404
  %406 = lshr i32 %396, 3
  %407 = icmp ugt i32 %405, %406
  br i1 %407, label %545, label %408

408:                                              ; preds = %400, %398
  %.323695 = phi i32 [ %399, %398 ], [ %396, %400 ]
  %409 = add i32 %.323695, -1
  %410 = zext i32 %409 to i64
  %411 = lshr i64 %410, 1
  %412 = or i64 %411, %410
  %413 = lshr i64 %412, 2
  %414 = or i64 %413, %412
  %415 = lshr i64 %414, 4
  %416 = or i64 %415, %414
  %417 = lshr i64 %416, 8
  %418 = or i64 %417, %416
  %419 = lshr i64 %418, 16
  %420 = or i64 %419, %418
  %421 = trunc nuw i64 %420 to i32
  %422 = add i32 %421, 1
  %423 = icmp ult i32 %422, 65
  %424 = select i1 %423, i32 64, i32 %422
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %228, i32 noundef %424)
  %425 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %426 = shl i32 %424, 4
  %427 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %426) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %226, i32 noundef %427)
  %.not24193 = icmp eq i32 %425, 0
  br i1 %.not24193, label %428, label %450

428:                                              ; preds = %408
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %392, i64 noundef 0)
  %429 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %430 = add i32 %429, 268435455
  %431 = and i32 %430, 268435455
  %432 = and i32 %429, 7
  %.not24203 = icmp eq i32 %432, 0
  br i1 %.not24203, label %.loopexit24759, label %.preheader24758

.preheader24758:                                  ; preds = %428, %.preheader24758
  %.623935 = phi i32 [ %434, %.preheader24758 ], [ %427, %428 ]
  %.523849 = phi i32 [ %435, %.preheader24758 ], [ 0, %428 ]
  %433 = zext i32 %.623935 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %433, i32 noundef -4)
  %434 = add i32 %.623935, 16
  %435 = add nuw nsw i32 %.523849, 1
  %.not24204 = icmp eq i32 %435, %432
  br i1 %.not24204, label %.loopexit24759, label %.preheader24758

.loopexit24759:                                   ; preds = %.preheader24758, %428
  %.723936 = phi i32 [ %427, %428 ], [ %434, %.preheader24758 ]
  %436 = icmp ult i32 %431, 7
  br i1 %436, label %.loopexit24757, label %437

437:                                              ; preds = %.loopexit24759
  %438 = shl i32 %429, 4
  %439 = add i32 %438, %427
  br label %440

440:                                              ; preds = %440, %437
  %.823937 = phi i32 [ %.723936, %437 ], [ %449, %440 ]
  %441 = zext i32 %.823937 to i64
  %442 = add nuw nsw i64 %441, 112
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %442, i32 noundef -4)
  %443 = add nuw nsw i64 %441, 96
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %443, i32 noundef -4)
  %444 = add nuw nsw i64 %441, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %444, i32 noundef -4)
  %445 = add nuw nsw i64 %441, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %445, i32 noundef -4)
  %446 = add nuw nsw i64 %441, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %446, i32 noundef -4)
  %447 = add nuw nsw i64 %441, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %447, i32 noundef -4)
  %448 = add nuw nsw i64 %441, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %448, i32 noundef -4)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %441, i32 noundef -4)
  %449 = add i32 %.823937, 128
  %.not24205 = icmp eq i32 %449, %439
  br i1 %.not24205, label %.loopexit24757, label %440

450:                                              ; preds = %408
  %451 = shl i32 %396, 4
  %452 = add i32 %425, %451
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %392, i64 noundef 0)
  %453 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %.not24194 = icmp eq i32 %453, 0
  br i1 %.not24194, label %.loopexit24762, label %454

454:                                              ; preds = %450
  %455 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %456 = and i32 %453, 7
  %.not24195 = icmp eq i32 %456, 0
  br i1 %.not24195, label %.loopexit24764, label %.preheader24763

.preheader24763:                                  ; preds = %454, %.preheader24763
  %.223918 = phi i32 [ %459, %.preheader24763 ], [ 0, %454 ]
  %.623850 = phi i32 [ %458, %.preheader24763 ], [ %455, %454 ]
  %457 = zext i32 %.623850 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %457, i32 noundef -4)
  %458 = add i32 %.623850, 16
  %459 = add nuw nsw i32 %.223918, 1
  %.not24196 = icmp eq i32 %459, %456
  br i1 %.not24196, label %.loopexit24764, label %.preheader24763

.loopexit24764:                                   ; preds = %.preheader24763, %454
  %.723851 = phi i32 [ %455, %454 ], [ %458, %.preheader24763 ]
  %460 = add i32 %453, 268435455
  %461 = and i32 %460, 268435455
  %462 = icmp ult i32 %461, 7
  br i1 %462, label %.loopexit24762, label %463

463:                                              ; preds = %.loopexit24764
  %464 = shl i32 %453, 4
  %465 = add i32 %455, %464
  br label %466

466:                                              ; preds = %466, %463
  %.823852 = phi i32 [ %.723851, %463 ], [ %475, %466 ]
  %467 = zext i32 %.823852 to i64
  %468 = add nuw nsw i64 %467, 112
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %468, i32 noundef -4)
  %469 = add nuw nsw i64 %467, 96
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %469, i32 noundef -4)
  %470 = add nuw nsw i64 %467, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %470, i32 noundef -4)
  %471 = add nuw nsw i64 %467, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %471, i32 noundef -4)
  %472 = add nuw nsw i64 %467, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %472, i32 noundef -4)
  %473 = add nuw nsw i64 %467, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %473, i32 noundef -4)
  %474 = add nuw nsw i64 %467, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %474, i32 noundef -4)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %467, i32 noundef -4)
  %475 = add i32 %.823852, 128
  %.not24197 = icmp eq i32 %475, %465
  br i1 %.not24197, label %.loopexit24762, label %466

.loopexit24762:                                   ; preds = %466, %.loopexit24764, %450
  %.not24198 = icmp eq i32 %451, 0
  br i1 %.not24198, label %.loopexit24761, label %.preheader24760

.preheader24760:                                  ; preds = %.loopexit24762, %516
  %.423696 = phi i32 [ %517, %516 ], [ %425, %.loopexit24762 ]
  %476 = zext i32 %.423696 to i64
  %477 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %476)
  switch i32 %477, label %478 [
    i32 -8, label %516
    i32 -4, label %516
  ]

478:                                              ; preds = %.preheader24760
  %479 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %480 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %481 = add i32 %480, -1
  %482 = lshr i32 %477, 4
  %483 = lshr i32 %477, 9
  %484 = xor i32 %482, %483
  %485 = and i32 %481, %484
  %486 = shl nuw i32 %485, 4
  %487 = add i32 %486, %479
  %488 = zext i32 %487 to i64
  %489 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %488)
  %490 = icmp eq i32 %477, %489
  br i1 %490, label %.loopexit24753, label %.preheader24752

.preheader24752:                                  ; preds = %478, %494
  %.323919 = phi i32 [ %502, %494 ], [ %487, %478 ]
  %.923853 = phi i32 [ %497, %494 ], [ 0, %478 ]
  %.023841 = phi i32 [ %499, %494 ], [ 1, %478 ]
  %.323821 = phi i32 [ %500, %494 ], [ %485, %478 ]
  %.123816 = phi i32 [ %504, %494 ], [ %489, %478 ]
  %491 = icmp eq i32 %.123816, -4
  %.not24201 = icmp eq i32 %.923853, 0
  br i1 %491, label %492, label %494

492:                                              ; preds = %.preheader24752
  %493 = select i1 %.not24201, i32 %.323919, i32 %.923853
  %.pre26383 = zext i32 %493 to i64
  br label %.loopexit24753

494:                                              ; preds = %.preheader24752
  %495 = icmp eq i32 %.123816, -8
  %496 = select i1 %495, i1 %.not24201, i1 false
  %497 = select i1 %496, i32 %.323919, i32 %.923853
  %498 = add i32 %.323821, %.023841
  %499 = add i32 %.023841, 1
  %500 = and i32 %498, %481
  %501 = shl i32 %500, 4
  %502 = add i32 %501, %479
  %503 = zext i32 %502 to i64
  %504 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %503)
  %.not24200 = icmp eq i32 %477, %504
  br i1 %.not24200, label %.loopexit24753, label %.preheader24752

.loopexit24753:                                   ; preds = %494, %478, %492
  %.pre-phi26384 = phi i64 [ %488, %478 ], [ %.pre26383, %492 ], [ %503, %494 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26384, i32 noundef %477)
  %505 = add nuw nsw i64 %476, 4
  %506 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %505)
  %507 = add nuw nsw i64 %.pre-phi26384, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %507, i32 noundef %506)
  %508 = add nuw nsw i64 %476, 8
  %509 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %508)
  %510 = add nuw nsw i64 %.pre-phi26384, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %510, i32 noundef %509)
  %511 = add nuw nsw i64 %476, 12
  %512 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %511)
  %513 = add nuw nsw i64 %.pre-phi26384, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %513, i32 noundef %512)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %511, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %505, i64 noundef 0)
  %514 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %392)
  %515 = add i32 %514, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %392, i32 noundef %515)
  br label %516

516:                                              ; preds = %.preheader24760, %.preheader24760, %.loopexit24753
  %517 = add i32 %.423696, 16
  %.not24202 = icmp eq i32 %517, %452
  br i1 %.not24202, label %.loopexit24761, label %.preheader24760

.loopexit24761:                                   ; preds = %516, %.loopexit24762
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %425) #5
  %518 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %519 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  br label %.loopexit24757

.loopexit24757:                                   ; preds = %440, %.loopexit24759, %.loopexit24761
  %.523921 = phi i32 [ %429, %.loopexit24759 ], [ %519, %.loopexit24761 ], [ %429, %440 ]
  %.523697 = phi i32 [ %427, %.loopexit24759 ], [ %518, %.loopexit24761 ], [ %427, %440 ]
  %520 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %314)
  %521 = add i32 %.523921, -1
  %522 = lshr i32 %520, 4
  %523 = lshr i32 %520, 9
  %524 = xor i32 %522, %523
  %525 = and i32 %524, %521
  %526 = shl nuw i32 %525, 4
  %527 = add i32 %526, %.523697
  %528 = zext i32 %527 to i64
  %529 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %528)
  %530 = icmp eq i32 %520, %529
  br i1 %530, label %.loopexit24756, label %.preheader24755

.preheader24755:                                  ; preds = %.loopexit24757, %534
  %.923938 = phi i32 [ %542, %534 ], [ %527, %.loopexit24757 ]
  %.623922 = phi i32 [ %540, %534 ], [ %525, %.loopexit24757 ]
  %.123842 = phi i32 [ %539, %534 ], [ 1, %.loopexit24757 ]
  %.423822 = phi i32 [ %537, %534 ], [ 0, %.loopexit24757 ]
  %.223817 = phi i32 [ %544, %534 ], [ %529, %.loopexit24757 ]
  %531 = icmp eq i32 %.223817, -4
  %.not24208 = icmp eq i32 %.423822, 0
  br i1 %531, label %532, label %534

532:                                              ; preds = %.preheader24755
  %533 = select i1 %.not24208, i32 %.923938, i32 %.423822
  br label %545

534:                                              ; preds = %.preheader24755
  %535 = icmp eq i32 %.223817, -8
  %536 = select i1 %535, i1 %.not24208, i1 false
  %537 = select i1 %536, i32 %.923938, i32 %.423822
  %538 = add i32 %.123842, %.623922
  %539 = add i32 %.123842, 1
  %540 = and i32 %538, %521
  %541 = shl i32 %540, 4
  %542 = add i32 %541, %.523697
  %543 = zext i32 %542 to i64
  %544 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %543)
  %.not24207 = icmp eq i32 %520, %544
  br i1 %.not24207, label %.loopexit24756, label %.preheader24755

545:                                              ; preds = %400, %532
  %.1023939 = phi i32 [ %533, %532 ], [ %.523934, %400 ]
  %546 = zext i32 %.1023939 to i64
  %547 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %546)
  br label %.loopexit24756

.loopexit24756:                                   ; preds = %534, %.loopexit24757, %545
  %.1123940 = phi i32 [ %527, %.loopexit24757 ], [ %.1023939, %545 ], [ %542, %534 ]
  %.1023854 = phi i32 [ %520, %.loopexit24757 ], [ %547, %545 ], [ %520, %534 ]
  %548 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %392)
  %549 = add i32 %548, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %392, i32 noundef %549)
  %.not24209 = icmp eq i32 %.1023854, -4
  br i1 %.not24209, label %554, label %550

550:                                              ; preds = %.loopexit24756
  %551 = add nuw nsw i64 %215, 36
  %552 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %551)
  %553 = add i32 %552, -1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %551, i32 noundef %553)
  br label %554

554:                                              ; preds = %550, %.loopexit24756
  %555 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %314)
  %556 = zext i32 %.1123940 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %556, i32 noundef %555)
  %557 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %357)
  %558 = add nuw nsw i64 %556, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %558, i32 noundef %557)
  %559 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %309)
  %560 = add nuw nsw i64 %556, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %560, i32 noundef %559)
  %561 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %360)
  %562 = add nuw nsw i64 %556, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %562, i32 noundef %561)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %360, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %357, i64 noundef 0)
  %563 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %226)
  %564 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %228)
  %565 = shl i32 %564, 4
  %566 = add i32 %565, %563
  br label %567

567:                                              ; preds = %554, %.loopexit24766
  %.1123855 = phi i32 [ %.1123940, %554 ], [ %.423848, %.loopexit24766 ]
  %.123757 = phi i32 [ %566, %554 ], [ %390, %.loopexit24766 ]
  %.623698 = phi i32 [ 1, %554 ], [ 0, %.loopexit24766 ]
  %568 = zext i32 %266 to i64
  %569 = add nuw nsw i64 %568, 8
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %569, i32 noundef %.623698)
  %570 = add nuw nsw i64 %568, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %570, i32 noundef %.123757)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %568, i32 noundef %.1123855)
  %571 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %357)
  %.not24210 = icmp eq i32 %571, 0
  br i1 %.not24210, label %573, label %572

572:                                              ; preds = %567
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %571) #5
  br label %573

573:                                              ; preds = %572, %567
  %574 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %321)
  %.not24211 = icmp eq i32 %574, 0
  br i1 %.not24211, label %576, label %575

575:                                              ; preds = %573
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %574) #5
  br label %576

576:                                              ; preds = %575, %573
  %577 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %265)
  br label %578

578:                                              ; preds = %576, %.loopexit24771
  %.1223941 = phi i32 [ %577, %576 ], [ %.023929, %.loopexit24771 ]
  store i32 %224, ptr %5, align 8, !tbaa !5
  %579 = zext i32 %.1223941 to i64
  %580 = add nuw nsw i64 %579, 4
  %581 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %580)
  %582 = add nuw nsw i64 %222, 12
  %583 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %582)
  %584 = lshr i32 %583, 3
  %585 = and i32 %584, 536870908
  %586 = add i32 %585, %581
  %587 = zext i32 %586 to i64
  %588 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %587)
  %589 = and i32 %583, 31
  %590 = shl nuw i32 1, %589
  %591 = or i32 %590, %588
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %587, i32 noundef %591)
  br label %592

592:                                              ; preds = %218, %.loopexit24754, %578
  %593 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %75, i32 noundef %593)
  %594 = add i32 %593, -16
  %595 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %24)
  %596 = zext i32 %594 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %596, i64 noundef %595)
  %597 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %76)
  %598 = sub i32 %597, %593
  %599 = ashr i32 %598, 3
  %600 = zext i32 %599 to i64
  %601 = zext i32 %.023873 to i64
  %602 = add nuw nsw i64 %601, 4
  %603 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %602)
  %604 = and i32 %603, 1
  %.not24212 = icmp eq i32 %604, 0
  %605 = zext i32 %603 to i64
  br i1 %.not24212, label %609, label %606

606:                                              ; preds = %592
  %607 = add nuw nsw i64 %605, 19
  %608 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %607)
  br label %613

609:                                              ; preds = %592
  %610 = add nuw nsw i64 %605, 8
  %611 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %610)
  %612 = lshr i32 %611, 25
  br label %613

613:                                              ; preds = %609, %606
  %.023737 = phi i32 [ %608, %606 ], [ %612, %609 ]
  %614 = add i32 %.023737, 1
  %615 = zext i32 %614 to i64
  %616 = add nuw nsw i64 %615, 32
  %.not24213 = icmp ugt i64 %616, %600
  br i1 %.not24213, label %638, label %617

617:                                              ; preds = %613
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AallocStack0x28unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %2, i32 noundef %614)
  %618 = add nuw nsw i64 %601, 8
  %619 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %618)
  %620 = add i32 %593, -40
  %621 = zext i32 %620 to i64
  %622 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %621)
  %623 = ashr i64 %622, 47
  %624 = and i64 %623, 4294967295
  %625 = icmp ne i64 %624, 4294967284
  %626 = zext i1 %625 to i32
  %627 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %602)
  %628 = and i32 %627, 1
  %.not24214 = icmp eq i32 %628, 0
  %.123738.v = select i1 %.not24214, i32 15, i32 29
  %.123738 = add i32 %.123738.v, %627
  %629 = zext i32 %.123738 to i64
  %630 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %629)
  %631 = and i32 %630, 3
  %632 = icmp eq i32 %631, %626
  br i1 %632, label %633, label %650

633:                                              ; preds = %617
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %619)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %77, i32 noundef 0)
  br i1 %625, label %636, label %634

634:                                              ; preds = %633
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %78, i64 noundef 158913789953)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %79, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 18296)
  %635 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %0, i32 noundef %2, i32 noundef %80)
  br label %640

636:                                              ; preds = %633
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %78, i64 noundef 124554051585)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %79, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 36034)
  %637 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %0, i32 noundef %2, i32 noundef %80)
  br label %640

638:                                              ; preds = %613
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.023682)
  %639 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseStackOverflow0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AStackOverflowKind0x29(ptr noundef %0, i32 noundef %2, i32 noundef 0)
  br label %640

640:                                              ; preds = %638, %636, %634
  %.123812 = phi i32 [ %619, %634 ], [ %619, %636 ], [ %.023811, %638 ]
  %641 = add i32 %593, -24
  %642 = zext i32 %641 to i64
  %643 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %642)
  %644 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %596)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %74, i32 noundef %593)
  %645 = add i32 %593, -8
  %646 = zext i32 %645 to i64
  %647 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %646)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %75, i32 noundef %647)
  %.not24215 = icmp eq i32 %643, 0
  br i1 %.not24215, label %648, label %650

648:                                              ; preds = %640
  %649 = zext i32 %1 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %649, i32 noundef 0)
  br label %8588

650:                                              ; preds = %617, %640
  %.723923.in = phi i32 [ %647, %640 ], [ %593, %617 ]
  %.123874 = phi i32 [ 1, %640 ], [ 0, %617 ]
  %.023835 = phi i32 [ %643, %640 ], [ %.023873, %617 ]
  %.223813 = phi i32 [ %.123812, %640 ], [ %619, %617 ]
  %.123809 = phi i32 [ %.023808, %640 ], [ %.123738, %617 ]
  %.123683 = phi i32 [ %644, %640 ], [ %.023682, %617 ]
  %.723923 = add i32 %.723923.in, 8
  br label %.outer

.outer:                                           ; preds = %8582, %650
  %.823924.ph = phi i32 [ %.1223928, %8582 ], [ %.723923, %650 ]
  %.223875.ph = phi i32 [ 0, %8582 ], [ %.123874, %650 ]
  %.123836.ph = phi i32 [ %.523840, %8582 ], [ %.023835, %650 ]
  %.323814.ph = phi i32 [ %8587, %8582 ], [ %.223813, %650 ]
  %.223810.ph = phi i32 [ %.54, %8582 ], [ %.123809, %650 ]
  %.223684.ph = phi i32 [ %.39, %8582 ], [ %.123683, %650 ]
  %.not2421625765 = icmp eq i32 %.223875.ph, 0
  br i1 %.not2421625765, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %.outer
  %651 = zext i32 %.223810.ph to i64
  %652 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %651)
  %653 = lshr i32 %652, 2
  %654 = and i32 %653, 1
  br label %.backedge

._crit_edge.sink.split:                           ; preds = %4650, %3015, %2720, %2524, %2511, %.thread24705, %.thread24700, %1371, %4722, %4613, %4130, %1221
  %655 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  br label %._crit_edge

._crit_edge:                                      ; preds = %1012, %1019, %1612, %1640, %2028, %2079, %2275, %2345, %2559, %2685, %2717, %2723, %2954, %2977, %2992, %3020, %3264, %3413, %3670, %3861, %3892, %._crit_edge26436, %3982, %4029, %4047, %4065, %4081, %4099, %4168, %4211, %4469, %4569, %4581, %4615, %4690, %4740, %4776, %4786, %4791, %5085, %5195, %5287, %5379, %5526, %5673, %5820, %5974, %6128, %6282, %._crit_edge26422, %._crit_edge26421, %._crit_edge26420, %._crit_edge26419, %._crit_edge26418, %._crit_edge26416, %._crit_edge26414, %._crit_edge26412, %._crit_edge26410, %._crit_edge26408, %._crit_edge26406, %._crit_edge26404, %._crit_edge26402, %._crit_edge26400, %._crit_edge26398, %._crit_edge26396, %._crit_edge26394, %._crit_edge26392, %._crit_edge26390, %._crit_edge26388, %7382, %7403, %7424, %7445, %7466, %7569, %7750, %7835, %8109, %8132, %8143, %8162, %8471, %2907, %._crit_edge.sink.split, %922, %994, %.outer
  %.823924.lcssa = phi i32 [ %.823924.ph, %.outer ], [ %.923925, %994 ], [ %.923925, %922 ], [ %.923925, %._crit_edge.sink.split ], [ %.923925, %2907 ], [ %.923925, %8471 ], [ %.923925, %8162 ], [ %.923925, %8143 ], [ %.923925, %8132 ], [ %.923925, %8109 ], [ %.923925, %7835 ], [ %.923925, %7750 ], [ %.923925, %7569 ], [ %.923925, %7466 ], [ %.923925, %7445 ], [ %.923925, %7424 ], [ %.923925, %7403 ], [ %.923925, %7382 ], [ %.923925, %._crit_edge26388 ], [ %.923925, %._crit_edge26390 ], [ %.923925, %._crit_edge26392 ], [ %.923925, %._crit_edge26394 ], [ %.923925, %._crit_edge26396 ], [ %.923925, %._crit_edge26398 ], [ %.923925, %._crit_edge26400 ], [ %.923925, %._crit_edge26402 ], [ %.923925, %._crit_edge26404 ], [ %.923925, %._crit_edge26406 ], [ %.923925, %._crit_edge26408 ], [ %.923925, %._crit_edge26410 ], [ %.923925, %._crit_edge26412 ], [ %.923925, %._crit_edge26414 ], [ %.923925, %._crit_edge26416 ], [ %.923925, %._crit_edge26418 ], [ %.923925, %._crit_edge26419 ], [ %.923925, %._crit_edge26420 ], [ %.923925, %._crit_edge26421 ], [ %.923925, %._crit_edge26422 ], [ %.923925, %6282 ], [ %.923925, %6128 ], [ %.923925, %5974 ], [ %.923925, %5820 ], [ %.923925, %5673 ], [ %.923925, %5526 ], [ %.923925, %5379 ], [ %.923925, %5287 ], [ %.923925, %5195 ], [ %.923925, %5085 ], [ %.923925, %4791 ], [ %.923925, %4786 ], [ %.923925, %4776 ], [ %.923925, %4740 ], [ %.923925, %4690 ], [ %.923925, %4615 ], [ %.923925, %4581 ], [ %.923925, %4569 ], [ %.923925, %4469 ], [ %.923925, %4211 ], [ %.923925, %4168 ], [ %.923925, %4099 ], [ %.923925, %4081 ], [ %.923925, %4065 ], [ %.923925, %4047 ], [ %.923925, %4029 ], [ %.923925, %3982 ], [ %.923925, %._crit_edge26436 ], [ %.923925, %3892 ], [ %.923925, %3861 ], [ %.923925, %3670 ], [ %.923925, %3413 ], [ %.923925, %3264 ], [ %.923925, %3020 ], [ %.923925, %2992 ], [ %.923925, %2977 ], [ %.923925, %2954 ], [ %.923925, %2723 ], [ %.923925, %2717 ], [ %.923925, %2685 ], [ %.923925, %2559 ], [ %.923925, %2345 ], [ %.923925, %2275 ], [ %.923925, %2079 ], [ %.923925, %2028 ], [ %.923925, %1640 ], [ %.923925, %1612 ], [ %.923925, %1019 ], [ %.923925, %1012 ]
  %.123836.lcssa = phi i32 [ %.123836.ph, %.outer ], [ %.223837, %994 ], [ %.223837, %922 ], [ %.223837, %._crit_edge.sink.split ], [ %.223837, %2907 ], [ %.223837, %8471 ], [ %.223837, %8162 ], [ %.223837, %8143 ], [ %.223837, %8132 ], [ %.223837, %8109 ], [ %.223837, %7835 ], [ %.223837, %7750 ], [ %.223837, %7569 ], [ %.223837, %7466 ], [ %.223837, %7445 ], [ %.223837, %7424 ], [ %.223837, %7403 ], [ %.223837, %7382 ], [ %.223837, %._crit_edge26388 ], [ %.223837, %._crit_edge26390 ], [ %.223837, %._crit_edge26392 ], [ %.223837, %._crit_edge26394 ], [ %.223837, %._crit_edge26396 ], [ %.223837, %._crit_edge26398 ], [ %.223837, %._crit_edge26400 ], [ %.223837, %._crit_edge26402 ], [ %.223837, %._crit_edge26404 ], [ %.223837, %._crit_edge26406 ], [ %.223837, %._crit_edge26408 ], [ %.223837, %._crit_edge26410 ], [ %.223837, %._crit_edge26412 ], [ %.223837, %._crit_edge26414 ], [ %.223837, %._crit_edge26416 ], [ %.223837, %._crit_edge26418 ], [ %.223837, %._crit_edge26419 ], [ %.223837, %._crit_edge26420 ], [ %.223837, %._crit_edge26421 ], [ %.223837, %._crit_edge26422 ], [ %.223837, %6282 ], [ %.223837, %6128 ], [ %.223837, %5974 ], [ %.223837, %5820 ], [ %.223837, %5673 ], [ %.223837, %5526 ], [ %.223837, %5379 ], [ %.223837, %5287 ], [ %.223837, %5195 ], [ %.223837, %5085 ], [ %.223837, %4791 ], [ %.223837, %4786 ], [ %.223837, %4776 ], [ %.223837, %4740 ], [ %.223837, %4690 ], [ %.223837, %4615 ], [ %.223837, %4581 ], [ %.223837, %4569 ], [ %.223837, %4469 ], [ %.223837, %4211 ], [ %.223837, %4168 ], [ %.223837, %4099 ], [ %.223837, %4081 ], [ %.223837, %4065 ], [ %.223837, %4047 ], [ %.223837, %4029 ], [ %.223837, %3982 ], [ %.223837, %._crit_edge26436 ], [ %.223837, %3892 ], [ %.223837, %3861 ], [ %.223837, %3670 ], [ %.223837, %3413 ], [ %.223837, %3264 ], [ %.223837, %3020 ], [ %.223837, %2992 ], [ %.223837, %2977 ], [ %.223837, %2954 ], [ %.223837, %2723 ], [ %.223837, %2717 ], [ %.223837, %2685 ], [ %.223837, %2559 ], [ %.223837, %2345 ], [ %.223837, %2275 ], [ %.223837, %2079 ], [ %.223837, %2028 ], [ %.223837, %1640 ], [ %.223837, %1612 ], [ %.223837, %1019 ], [ %.223837, %1012 ]
  %.223684.lcssa = phi i32 [ %.223684.ph, %.outer ], [ %996, %994 ], [ %924, %922 ], [ %655, %._crit_edge.sink.split ], [ %2911, %2907 ], [ %1016, %1012 ], [ %1023, %1019 ], [ %1628, %1612 ], [ %1656, %1640 ], [ %2037, %2028 ], [ %2088, %2079 ], [ %2284, %2275 ], [ %2346, %2345 ], [ %2560, %2559 ], [ %2686, %2685 ], [ %2718, %2717 ], [ %2727, %2723 ], [ %2958, %2954 ], [ %2981, %2977 ], [ %2997, %2992 ], [ %3023, %3020 ], [ %3265, %3264 ], [ %3414, %3413 ], [ %3671, %3670 ], [ %3862, %3861 ], [ %3896, %3892 ], [ %3962, %._crit_edge26436 ], [ %3985, %3982 ], [ %4036, %4029 ], [ %4054, %4047 ], [ %4069, %4065 ], [ %4088, %4081 ], [ %4106, %4099 ], [ %4176, %4168 ], [ %4220, %4211 ], [ %4470, %4469 ], [ %4570, %4569 ], [ %4590, %4581 ], [ %4623, %4615 ], [ %4703, %4690 ], [ %4751, %4740 ], [ %4783, %4776 ], [ %4789, %4786 ], [ %4798, %4791 ], [ %5104, %5085 ], [ %5196, %5195 ], [ %5288, %5287 ], [ %5380, %5379 ], [ %5527, %5526 ], [ %5674, %5673 ], [ %5821, %5820 ], [ %5975, %5974 ], [ %6129, %6128 ], [ %6283, %6282 ], [ %6327, %._crit_edge26422 ], [ %6375, %._crit_edge26421 ], [ %6423, %._crit_edge26420 ], [ %6471, %._crit_edge26419 ], [ %6525, %._crit_edge26418 ], [ %6576, %._crit_edge26416 ], [ %6627, %._crit_edge26414 ], [ %6678, %._crit_edge26412 ], [ %6729, %._crit_edge26410 ], [ %6780, %._crit_edge26408 ], [ %6831, %._crit_edge26406 ], [ %6882, %._crit_edge26404 ], [ %6933, %._crit_edge26402 ], [ %6984, %._crit_edge26400 ], [ %7035, %._crit_edge26398 ], [ %7086, %._crit_edge26396 ], [ %7137, %._crit_edge26394 ], [ %7188, %._crit_edge26392 ], [ %7239, %._crit_edge26390 ], [ %7290, %._crit_edge26388 ], [ %7391, %7382 ], [ %7412, %7403 ], [ %7433, %7424 ], [ %7454, %7445 ], [ %7494, %7466 ], [ %7588, %7569 ], [ %7759, %7750 ], [ %7844, %7835 ], [ %8112, %8109 ], [ %8131, %8132 ], [ %8131, %8143 ], [ %8163, %8162 ], [ %8472, %8471 ]
  %656 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %81)
  br label %8514

.backedge:                                        ; preds = %.backedge.backedge, %.lr.ph
  %.923925 = phi i32 [ %.823924.ph, %.lr.ph ], [ %.923925.be, %.backedge.backedge ]
  %.223837 = phi i32 [ %.123836.ph, %.lr.ph ], [ %.223837.be, %.backedge.backedge ]
  %.523823 = phi i32 [ %654, %.lr.ph ], [ %.523823.be, %.backedge.backedge ]
  %.323685 = phi i32 [ %.323814.ph, %.lr.ph ], [ %.323685.be, %.backedge.backedge ]
  %657 = zext i32 %.323685 to i64
  %658 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %657)
  %659 = shl i32 %658, 2
  %660 = add i32 %659, 116304
  %661 = zext i32 %660 to i64
  %662 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %661)
  switch i32 %662, label %8149 [
    i32 2, label %663
    i32 3, label %676
    i32 4, label %697
    i32 5, label %718
    i32 6, label %739
    i32 7, label %757
    i32 8, label %767
    i32 9, label %771
    i32 10, label %782
    i32 11, label %801
    i32 12, label %828
    i32 13, label %863
    i32 14, label %873
    i32 15, label %945
    i32 16, label %997
    i32 17, label %1012
    i32 18, label %1019
    i32 19, label %1026
    i32 20, label %1034
    i32 21, label %1039
    i32 22, label %1044
    i32 23, label %1082
    i32 24, label %1154
    i32 25, label %1198
    i32 26, label %1206
    i32 27, label %1213
    i32 28, label %1230
    i32 29, label %1232
    i32 30, label %1375
    i32 31, label %1377
    i32 32, label %1378
    i32 33, label %1381
    i32 34, label %1432
    i32 35, label %1435
    i32 36, label %1522
    i32 37, label %1525
    i32 38, label %1612
    i32 39, label %1640
    i32 40, label %1668
    i32 41, label %1684
    i32 42, label %1744
    i32 43, label %1817
    i32 44, label %1841
    i32 45, label %1865
    i32 46, label %1896
    i32 47, label %1927
    i32 48, label %1947
    i32 49, label %1967
    i32 50, label %1975
    i32 51, label %1985
    i32 52, label %2040
    i32 53, label %2091
    i32 54, label %2095
    i32 55, label %2099
    i32 56, label %2103
    i32 57, label %2107
    i32 58, label %2356
    i32 59, label %2360
    i32 60, label %2364
    i32 61, label %2368
    i32 62, label %2543
    i32 63, label %2697
    i32 64, label %2730
    i32 65, label %2733
    i32 66, label %2747
    i32 67, label %2818
    i32 68, label %2946
    i32 69, label %2969
    i32 70, label %2992
    i32 71, label %3008
    i32 72, label %3035
    i32 73, label %3039
    i32 74, label %3043
    i32 75, label %3057
    i32 76, label %3071
    i32 77, label %3085
    i32 78, label %3099
    i32 79, label %3113
    i32 80, label %3127
    i32 81, label %3276
    i32 82, label %3425
    i32 83, label %._crit_edge26437
    i32 84, label %3682
    i32 85, label %3873
    i32 86, label %3907
    i32 87, label %3973
    i32 88, label %3997
    i32 89, label %4008
    i32 90, label %4029
    i32 91, label %4047
    i32 92, label %4065
    i32 93, label %4081
    i32 94, label %4099
    i32 95, label %4117
    i32 96, label %4188
    i32 97, label %4211
    i32 98, label %4239
    i32 99, label %4261
    i32 100, label %4284
    i32 101, label %4301
    i32 102, label %4481
    i32 103, label %4494
    i32 104, label %4581
    i32 105, label %4605
    i32 106, label %4638
    i32 107, label %4642
    i32 108, label %4646
    i32 109, label %4673
    i32 110, label %4677
    i32 111, label %4766
    i32 112, label %4813
    i32 113, label %4927
    i32 114, label %4975
    i32 115, label %4985
    i32 116, label %4995
    i32 117, label %5007
    i32 118, label %5022
    i32 119, label %5037
    i32 120, label %5044
    i32 121, label %5051
    i32 122, label %5058
    i32 123, label %5065
    i32 124, label %5072
    i32 125, label %5079
    i32 126, label %5082
    i32 127, label %5115
    i32 128, label %._crit_edge26433
    i32 129, label %5207
    i32 130, label %._crit_edge26431
    i32 131, label %5299
    i32 132, label %._crit_edge26429
    i32 133, label %5391
    i32 134, label %5538
    i32 135, label %5685
    i32 136, label %5832
    i32 137, label %5986
    i32 138, label %6140
    i32 139, label %6294
    i32 140, label %6342
    i32 141, label %6390
    i32 142, label %6438
    i32 143, label %6486
    i32 144, label %._crit_edge26417
    i32 145, label %6537
    i32 146, label %._crit_edge26415
    i32 147, label %6588
    i32 148, label %._crit_edge26413
    i32 149, label %6639
    i32 150, label %._crit_edge26411
    i32 151, label %6690
    i32 152, label %._crit_edge26409
    i32 153, label %6741
    i32 154, label %._crit_edge26407
    i32 155, label %6792
    i32 156, label %._crit_edge26405
    i32 157, label %6843
    i32 158, label %._crit_edge26403
    i32 159, label %6894
    i32 160, label %._crit_edge26401
    i32 161, label %6945
    i32 162, label %._crit_edge26399
    i32 163, label %6996
    i32 164, label %._crit_edge26397
    i32 165, label %7047
    i32 166, label %._crit_edge26395
    i32 167, label %7098
    i32 168, label %._crit_edge26393
    i32 169, label %7149
    i32 170, label %._crit_edge26391
    i32 171, label %7200
    i32 172, label %._crit_edge26389
    i32 173, label %7251
    i32 174, label %._crit_edge26387
    i32 175, label %7302
    i32 176, label %7322
    i32 177, label %7342
    i32 178, label %7362
    i32 179, label %7382
    i32 180, label %7403
    i32 181, label %7424
    i32 182, label %7445
    i32 183, label %7466
    i32 184, label %7497
    i32 185, label %7591
    i32 186, label %7762
    i32 187, label %7848
    i32 188, label %8116
    i32 189, label %8148
  ]

._crit_edge26437:                                 ; preds = %.backedge
  %.pre26449 = add nuw nsw i64 %657, 2
  %.pre26451 = add nuw nsw i64 %657, 3
  br label %3440

._crit_edge26433:                                 ; preds = %.backedge
  %.pre26459 = add nuw nsw i64 %657, 2
  %.pre26461 = add nuw nsw i64 %657, 3
  br label %5130

._crit_edge26431:                                 ; preds = %.backedge
  %.pre26465 = add nuw nsw i64 %657, 2
  %.pre26467 = add nuw nsw i64 %657, 3
  br label %5222

._crit_edge26429:                                 ; preds = %.backedge
  %.pre26471 = add nuw nsw i64 %657, 2
  %.pre26473 = add nuw nsw i64 %657, 3
  br label %5314

._crit_edge26417:                                 ; preds = %.backedge
  %.pre26497 = add nuw nsw i64 %657, 2
  %.pre26499 = add nuw nsw i64 %657, 3
  br label %6501

._crit_edge26415:                                 ; preds = %.backedge
  %.pre26503 = add nuw nsw i64 %657, 5
  %.pre26505 = add nuw nsw i64 %657, 6
  br label %6552

._crit_edge26413:                                 ; preds = %.backedge
  %.pre26509 = add nuw nsw i64 %657, 2
  %.pre26511 = add nuw nsw i64 %657, 3
  br label %6603

._crit_edge26411:                                 ; preds = %.backedge
  %.pre26515 = add nuw nsw i64 %657, 5
  %.pre26517 = add nuw nsw i64 %657, 6
  br label %6654

._crit_edge26409:                                 ; preds = %.backedge
  %.pre26521 = add nuw nsw i64 %657, 2
  %.pre26523 = add nuw nsw i64 %657, 3
  br label %6705

._crit_edge26407:                                 ; preds = %.backedge
  %.pre26527 = add nuw nsw i64 %657, 5
  %.pre26529 = add nuw nsw i64 %657, 6
  br label %6756

._crit_edge26405:                                 ; preds = %.backedge
  %.pre26533 = add nuw nsw i64 %657, 2
  %.pre26535 = add nuw nsw i64 %657, 3
  br label %6807

._crit_edge26403:                                 ; preds = %.backedge
  %.pre26539 = add nuw nsw i64 %657, 5
  %.pre26541 = add nuw nsw i64 %657, 6
  br label %6858

._crit_edge26401:                                 ; preds = %.backedge
  %.pre26545 = add nuw nsw i64 %657, 2
  %.pre26547 = add nuw nsw i64 %657, 3
  br label %6909

._crit_edge26399:                                 ; preds = %.backedge
  %.pre26551 = add nuw nsw i64 %657, 5
  %.pre26553 = add nuw nsw i64 %657, 6
  br label %6960

._crit_edge26397:                                 ; preds = %.backedge
  %.pre26557 = add nuw nsw i64 %657, 2
  %.pre26559 = add nuw nsw i64 %657, 3
  br label %7011

._crit_edge26395:                                 ; preds = %.backedge
  %.pre26563 = add nuw nsw i64 %657, 5
  %.pre26565 = add nuw nsw i64 %657, 6
  br label %7062

._crit_edge26393:                                 ; preds = %.backedge
  %.pre26569 = add nuw nsw i64 %657, 2
  %.pre26571 = add nuw nsw i64 %657, 3
  br label %7113

._crit_edge26391:                                 ; preds = %.backedge
  %.pre26575 = add nuw nsw i64 %657, 5
  %.pre26577 = add nuw nsw i64 %657, 6
  br label %7164

._crit_edge26389:                                 ; preds = %.backedge
  %.pre26581 = add nuw nsw i64 %657, 2
  %.pre26583 = add nuw nsw i64 %657, 3
  br label %7215

._crit_edge26387:                                 ; preds = %.backedge
  %.pre26587 = add nuw nsw i64 %657, 5
  %.pre26589 = add nuw nsw i64 %657, 6
  br label %7266

663:                                              ; preds = %.backedge
  %664 = add nuw nsw i64 %657, 1
  %665 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %664)
  %666 = shl i32 %665, 3
  %667 = add i32 %666, %.923925
  %668 = add nuw nsw i64 %657, 5
  %669 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %668)
  %670 = shl i32 %669, 3
  %671 = add i32 %670, %.923925
  %672 = zext i32 %671 to i64
  %673 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %672)
  %674 = zext i32 %667 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %674, i64 noundef %673)
  %675 = add i32 %.323685, 9
  br label %.backedge.backedge

.backedge.backedge:                               ; preds = %663, %686, %694, %707, %715, %736, %754, %997, %1017, %1024, %1026, %1034, %1039, %1081, %1152, %1174, %1198, %1223, %1230, %1373, %1375, %1423, %1512, %1602, %1630, %1658, %.loopexit24734, %.loopexit24737, %1838, %1862, %1892, %1923, %1927, %1947, %1967, %1975, %2038, %2089, %2183, %2228, %2265, %2348, %2482, %2510, %2542, %2688, %2728, %2736, %2814, %.loopexit24741, %2962, %2985, %2999, %3028, %3035, %3039, %3051, %3055, %3065, %3069, %3079, %3083, %3093, %3097, %3107, %3111, %3121, %3125, %3135, %3267, %3284, %3416, %3440, %3673, %3708, %3864, %3881, %3898, %3943, %3964, %3980, %3987, %3997, %4008, %4038, %4056, %4071, %4090, %4108, %4178, %4188, %4223, %4239, %4261, %4284, %4309, %4472, %4481, %4509, %4572, %4593, %4626, %4672, %4765, %4801, %4900, %4959, %4971, %4975, %4985, %4995, %5007, %5022, %5037, %5044, %5051, %5058, %5065, %5072, %5106, %5130, %5198, %5222, %5290, %5314, %5382, %5448, %5529, %5595, %5676, %5742, %5823, %5889, %5977, %6043, %6131, %6197, %6285, %6309, %6330, %6357, %6378, %6405, %6426, %6453, %6474, %6513, %6517, %6530, %6535, %6564, %6568, %6581, %6586, %6615, %6617, %6632, %6634, %6666, %6668, %6683, %6685, %6717, %6721, %6734, %6739, %6768, %6772, %6785, %6790, %6819, %6821, %6836, %6838, %6870, %6872, %6887, %6889, %6921, %6925, %6938, %6943, %6972, %6976, %6989, %6994, %7023, %7025, %7040, %7042, %7074, %7076, %7091, %7093, %7125, %7129, %7142, %7147, %7176, %7180, %7193, %7198, %7227, %7229, %7244, %7246, %7278, %7280, %7295, %7297, %7316, %7320, %7336, %7340, %7356, %7358, %7376, %7378, %7396, %7401, %7417, %7422, %7438, %7440, %7459, %7461, %7495, %7589, %7760, %7845, %8113, %8124, %8146, %8149, %8165, %8473, %.loopexit24731
  %.923925.be = phi i32 [ %.923925, %8149 ], [ %.923925, %8124 ], [ %.923925, %8146 ], [ %.923925, %8113 ], [ %.923925, %7845 ], [ %.923925, %7760 ], [ %.923925, %7589 ], [ %.923925, %7495 ], [ %.923925, %7459 ], [ %.923925, %7461 ], [ %.923925, %7438 ], [ %.923925, %7440 ], [ %.923925, %7417 ], [ %.923925, %7422 ], [ %.923925, %7396 ], [ %.923925, %7401 ], [ %.923925, %7376 ], [ %.923925, %7378 ], [ %.923925, %7356 ], [ %.923925, %7358 ], [ %.923925, %7336 ], [ %.923925, %7340 ], [ %.923925, %7316 ], [ %.923925, %7320 ], [ %.923925, %7278 ], [ %.923925, %7280 ], [ %.923925, %7295 ], [ %.923925, %7297 ], [ %.923925, %7227 ], [ %.923925, %7229 ], [ %.923925, %7244 ], [ %.923925, %7246 ], [ %.923925, %7176 ], [ %.923925, %7180 ], [ %.923925, %7193 ], [ %.923925, %7198 ], [ %.923925, %7125 ], [ %.923925, %7129 ], [ %.923925, %7142 ], [ %.923925, %7147 ], [ %.923925, %7074 ], [ %.923925, %7076 ], [ %.923925, %7091 ], [ %.923925, %7093 ], [ %.923925, %7023 ], [ %.923925, %7025 ], [ %.923925, %7040 ], [ %.923925, %7042 ], [ %.923925, %6972 ], [ %.923925, %6976 ], [ %.923925, %6989 ], [ %.923925, %6994 ], [ %.923925, %6921 ], [ %.923925, %6925 ], [ %.923925, %6938 ], [ %.923925, %6943 ], [ %.923925, %6870 ], [ %.923925, %6872 ], [ %.923925, %6887 ], [ %.923925, %6889 ], [ %.923925, %6819 ], [ %.923925, %6821 ], [ %.923925, %6836 ], [ %.923925, %6838 ], [ %.923925, %6768 ], [ %.923925, %6772 ], [ %.923925, %6785 ], [ %.923925, %6790 ], [ %.923925, %6717 ], [ %.923925, %6721 ], [ %.923925, %6734 ], [ %.923925, %6739 ], [ %.923925, %6666 ], [ %.923925, %6668 ], [ %.923925, %6683 ], [ %.923925, %6685 ], [ %.923925, %6615 ], [ %.923925, %6617 ], [ %.923925, %6632 ], [ %.923925, %6634 ], [ %.923925, %6564 ], [ %.923925, %6568 ], [ %.923925, %6581 ], [ %.923925, %6586 ], [ %.923925, %6513 ], [ %.923925, %6517 ], [ %.923925, %6530 ], [ %.923925, %6535 ], [ %.923925, %6474 ], [ %.923925, %6453 ], [ %.923925, %6426 ], [ %.923925, %6405 ], [ %.923925, %6378 ], [ %.923925, %6357 ], [ %.923925, %6330 ], [ %.923925, %6309 ], [ %.923925, %6285 ], [ %.923925, %6197 ], [ %.923925, %6131 ], [ %.923925, %6043 ], [ %.923925, %5977 ], [ %.923925, %5889 ], [ %.923925, %5823 ], [ %.923925, %5742 ], [ %.923925, %5676 ], [ %.923925, %5595 ], [ %.923925, %5529 ], [ %.923925, %5448 ], [ %.923925, %5314 ], [ %.923925, %5382 ], [ %.923925, %5222 ], [ %.923925, %5290 ], [ %.923925, %5130 ], [ %.923925, %5198 ], [ %.923925, %5106 ], [ %.923925, %5072 ], [ %.923925, %5065 ], [ %.923925, %5058 ], [ %.923925, %5051 ], [ %.923925, %5044 ], [ %.923925, %5037 ], [ %.923925, %5022 ], [ %.923925, %5007 ], [ %.923925, %4995 ], [ %.923925, %4985 ], [ %.923925, %4975 ], [ %.923925, %4971 ], [ %.923925, %4959 ], [ %.923925, %4900 ], [ %.923925, %4801 ], [ %.923925, %4765 ], [ %.923925, %4672 ], [ %.923925, %4626 ], [ %.923925, %4593 ], [ %.923925, %4572 ], [ %.923925, %4509 ], [ %.923925, %4481 ], [ %.923925, %4309 ], [ %.923925, %4472 ], [ %.923925, %4284 ], [ %.923925, %4261 ], [ %.923925, %4239 ], [ %.923925, %4223 ], [ %.923925, %4188 ], [ %.923925, %4178 ], [ %.923925, %4108 ], [ %.923925, %4090 ], [ %.923925, %4071 ], [ %.923925, %4056 ], [ %.923925, %4038 ], [ %.923925, %4008 ], [ %.923925, %3997 ], [ %.923925, %3980 ], [ %.923925, %3987 ], [ %.923925, %3964 ], [ %.923925, %3943 ], [ %.923925, %3881 ], [ %.923925, %3898 ], [ %.923925, %3708 ], [ %.923925, %3864 ], [ %.923925, %3440 ], [ %.923925, %3673 ], [ %.923925, %3284 ], [ %.923925, %3416 ], [ %.923925, %3135 ], [ %.923925, %3267 ], [ %.923925, %3121 ], [ %.923925, %3125 ], [ %.923925, %3107 ], [ %.923925, %3111 ], [ %.923925, %3093 ], [ %.923925, %3097 ], [ %.923925, %3079 ], [ %.923925, %3083 ], [ %.923925, %3065 ], [ %.923925, %3069 ], [ %.923925, %3051 ], [ %.923925, %3055 ], [ %.923925, %3039 ], [ %.923925, %3035 ], [ %.923925, %3028 ], [ %.923925, %2999 ], [ %.923925, %2985 ], [ %.923925, %2962 ], [ %.923925, %.loopexit24741 ], [ %.923925, %2814 ], [ %.923925, %2736 ], [ %.923925, %2728 ], [ %.923925, %2688 ], [ %.923925, %2482 ], [ %.923925, %2542 ], [ %.923925, %2510 ], [ %.923925, %2183 ], [ %.923925, %2348 ], [ %.923925, %2228 ], [ %.923925, %2265 ], [ %.923925, %2089 ], [ %.923925, %2038 ], [ %.923925, %1975 ], [ %.923925, %1967 ], [ %.923925, %1947 ], [ %.923925, %1927 ], [ %.923925, %1923 ], [ %.923925, %1892 ], [ %.923925, %1862 ], [ %.923925, %1838 ], [ %.923925, %.loopexit24737 ], [ %.923925, %.loopexit24734 ], [ %.923925, %.loopexit24731 ], [ %.923925, %1658 ], [ %.923925, %1630 ], [ %.923925, %1602 ], [ %.923925, %1512 ], [ %.923925, %1423 ], [ %.923925, %1375 ], [ %.923925, %1373 ], [ %.923925, %1230 ], [ %.923925, %1223 ], [ %.923925, %1198 ], [ %1175, %1174 ], [ %.923925, %1152 ], [ %.923925, %1081 ], [ %.923925, %1039 ], [ %.923925, %1034 ], [ %.923925, %1026 ], [ %.923925, %1024 ], [ %.923925, %1017 ], [ %.923925, %997 ], [ %.923925, %8473 ], [ %.923925, %754 ], [ %.923925, %8165 ], [ %.923925, %736 ], [ %.923925, %707 ], [ %.923925, %715 ], [ %.923925, %686 ], [ %.923925, %694 ], [ %.923925, %663 ]
  %.223837.be = phi i32 [ %.223837, %8149 ], [ %.223837, %8124 ], [ %.223837, %8146 ], [ %.223837, %8113 ], [ %.223837, %7845 ], [ %.223837, %7760 ], [ %.223837, %7589 ], [ %.223837, %7495 ], [ %.223837, %7459 ], [ %.223837, %7461 ], [ %.223837, %7438 ], [ %.223837, %7440 ], [ %.223837, %7417 ], [ %.223837, %7422 ], [ %.223837, %7396 ], [ %.223837, %7401 ], [ %.223837, %7376 ], [ %.223837, %7378 ], [ %.223837, %7356 ], [ %.223837, %7358 ], [ %.223837, %7336 ], [ %.223837, %7340 ], [ %.223837, %7316 ], [ %.223837, %7320 ], [ %.223837, %7278 ], [ %.223837, %7280 ], [ %.223837, %7295 ], [ %.223837, %7297 ], [ %.223837, %7227 ], [ %.223837, %7229 ], [ %.223837, %7244 ], [ %.223837, %7246 ], [ %.223837, %7176 ], [ %.223837, %7180 ], [ %.223837, %7193 ], [ %.223837, %7198 ], [ %.223837, %7125 ], [ %.223837, %7129 ], [ %.223837, %7142 ], [ %.223837, %7147 ], [ %.223837, %7074 ], [ %.223837, %7076 ], [ %.223837, %7091 ], [ %.223837, %7093 ], [ %.223837, %7023 ], [ %.223837, %7025 ], [ %.223837, %7040 ], [ %.223837, %7042 ], [ %.223837, %6972 ], [ %.223837, %6976 ], [ %.223837, %6989 ], [ %.223837, %6994 ], [ %.223837, %6921 ], [ %.223837, %6925 ], [ %.223837, %6938 ], [ %.223837, %6943 ], [ %.223837, %6870 ], [ %.223837, %6872 ], [ %.223837, %6887 ], [ %.223837, %6889 ], [ %.223837, %6819 ], [ %.223837, %6821 ], [ %.223837, %6836 ], [ %.223837, %6838 ], [ %.223837, %6768 ], [ %.223837, %6772 ], [ %.223837, %6785 ], [ %.223837, %6790 ], [ %.223837, %6717 ], [ %.223837, %6721 ], [ %.223837, %6734 ], [ %.223837, %6739 ], [ %.223837, %6666 ], [ %.223837, %6668 ], [ %.223837, %6683 ], [ %.223837, %6685 ], [ %.223837, %6615 ], [ %.223837, %6617 ], [ %.223837, %6632 ], [ %.223837, %6634 ], [ %.223837, %6564 ], [ %.223837, %6568 ], [ %.223837, %6581 ], [ %.223837, %6586 ], [ %.223837, %6513 ], [ %.223837, %6517 ], [ %.223837, %6530 ], [ %.223837, %6535 ], [ %.223837, %6474 ], [ %.223837, %6453 ], [ %.223837, %6426 ], [ %.223837, %6405 ], [ %.223837, %6378 ], [ %.223837, %6357 ], [ %.223837, %6330 ], [ %.223837, %6309 ], [ %.223837, %6285 ], [ %.223837, %6197 ], [ %.223837, %6131 ], [ %.223837, %6043 ], [ %.223837, %5977 ], [ %.223837, %5889 ], [ %.223837, %5823 ], [ %.223837, %5742 ], [ %.223837, %5676 ], [ %.223837, %5595 ], [ %.223837, %5529 ], [ %.223837, %5448 ], [ %.223837, %5314 ], [ %.223837, %5382 ], [ %.223837, %5222 ], [ %.223837, %5290 ], [ %.223837, %5130 ], [ %.223837, %5198 ], [ %.223837, %5106 ], [ %.223837, %5072 ], [ %.223837, %5065 ], [ %.223837, %5058 ], [ %.223837, %5051 ], [ %.223837, %5044 ], [ %.223837, %5037 ], [ %.223837, %5022 ], [ %.223837, %5007 ], [ %.223837, %4995 ], [ %.223837, %4985 ], [ %.223837, %4975 ], [ %.223837, %4971 ], [ %.223837, %4959 ], [ %.223837, %4900 ], [ %.223837, %4801 ], [ %.223837, %4765 ], [ %.223837, %4672 ], [ %.223837, %4626 ], [ %.223837, %4593 ], [ %.223837, %4572 ], [ %.223837, %4509 ], [ %.223837, %4481 ], [ %.223837, %4309 ], [ %.223837, %4472 ], [ %.223837, %4284 ], [ %.223837, %4261 ], [ %.223837, %4239 ], [ %.223837, %4223 ], [ %.223837, %4188 ], [ %.223837, %4178 ], [ %.223837, %4108 ], [ %.223837, %4090 ], [ %.223837, %4071 ], [ %.223837, %4056 ], [ %.223837, %4038 ], [ %.223837, %4008 ], [ %.223837, %3997 ], [ %.223837, %3980 ], [ %.223837, %3987 ], [ %.223837, %3964 ], [ %.223837, %3943 ], [ %.223837, %3881 ], [ %.223837, %3898 ], [ %.223837, %3708 ], [ %.223837, %3864 ], [ %.223837, %3440 ], [ %.223837, %3673 ], [ %.223837, %3284 ], [ %.223837, %3416 ], [ %.223837, %3135 ], [ %.223837, %3267 ], [ %.223837, %3121 ], [ %.223837, %3125 ], [ %.223837, %3107 ], [ %.223837, %3111 ], [ %.223837, %3093 ], [ %.223837, %3097 ], [ %.223837, %3079 ], [ %.223837, %3083 ], [ %.223837, %3065 ], [ %.223837, %3069 ], [ %.223837, %3051 ], [ %.223837, %3055 ], [ %.223837, %3039 ], [ %.223837, %3035 ], [ %.223837, %3028 ], [ %.223837, %2999 ], [ %.223837, %2985 ], [ %.223837, %2962 ], [ %.223837, %.loopexit24741 ], [ %.223837, %2814 ], [ %.223837, %2736 ], [ %.223837, %2728 ], [ %.223837, %2688 ], [ %.223837, %2482 ], [ %.223837, %2542 ], [ %.223837, %2510 ], [ %.223837, %2183 ], [ %.223837, %2348 ], [ %.223837, %2228 ], [ %.223837, %2265 ], [ %.223837, %2089 ], [ %.223837, %2038 ], [ %.223837, %1975 ], [ %.223837, %1967 ], [ %.223837, %1947 ], [ %.223837, %1927 ], [ %.223837, %1923 ], [ %.223837, %1892 ], [ %.223837, %1862 ], [ %.223837, %1838 ], [ %.223837, %.loopexit24737 ], [ %.223837, %.loopexit24734 ], [ %.223837, %.loopexit24731 ], [ %.223837, %1658 ], [ %.223837, %1630 ], [ %.223837, %1602 ], [ %.223837, %1512 ], [ %.223837, %1423 ], [ %.223837, %1375 ], [ %.223837, %1373 ], [ %.223837, %1230 ], [ %.223837, %1223 ], [ %.223837, %1198 ], [ %1157, %1174 ], [ %.223837, %1152 ], [ %.223837, %1081 ], [ %.223837, %1039 ], [ %.223837, %1034 ], [ %.223837, %1026 ], [ %.223837, %1024 ], [ %.223837, %1017 ], [ %.223837, %997 ], [ %.223837, %8473 ], [ %.223837, %754 ], [ %.223837, %8165 ], [ %.223837, %736 ], [ %.223837, %707 ], [ %.223837, %715 ], [ %.223837, %686 ], [ %.223837, %694 ], [ %.223837, %663 ]
  %.523823.be = phi i32 [ %.523823, %8149 ], [ %.523823, %8124 ], [ %.523823, %8146 ], [ %.523823, %8113 ], [ %.523823, %7845 ], [ %.523823, %7760 ], [ %.523823, %7589 ], [ %.523823, %7495 ], [ %.523823, %7459 ], [ %.523823, %7461 ], [ %.523823, %7438 ], [ %.523823, %7440 ], [ %.523823, %7417 ], [ %.523823, %7422 ], [ %.523823, %7396 ], [ %.523823, %7401 ], [ %.523823, %7376 ], [ %.523823, %7378 ], [ %.523823, %7356 ], [ %.523823, %7358 ], [ %.523823, %7336 ], [ %.523823, %7340 ], [ %.523823, %7316 ], [ %.523823, %7320 ], [ %.523823, %7278 ], [ %.523823, %7280 ], [ %.523823, %7295 ], [ %.523823, %7297 ], [ %.523823, %7227 ], [ %.523823, %7229 ], [ %.523823, %7244 ], [ %.523823, %7246 ], [ %.523823, %7176 ], [ %.523823, %7180 ], [ %.523823, %7193 ], [ %.523823, %7198 ], [ %.523823, %7125 ], [ %.523823, %7129 ], [ %.523823, %7142 ], [ %.523823, %7147 ], [ %.523823, %7074 ], [ %.523823, %7076 ], [ %.523823, %7091 ], [ %.523823, %7093 ], [ %.523823, %7023 ], [ %.523823, %7025 ], [ %.523823, %7040 ], [ %.523823, %7042 ], [ %.523823, %6972 ], [ %.523823, %6976 ], [ %.523823, %6989 ], [ %.523823, %6994 ], [ %.523823, %6921 ], [ %.523823, %6925 ], [ %.523823, %6938 ], [ %.523823, %6943 ], [ %.523823, %6870 ], [ %.523823, %6872 ], [ %.523823, %6887 ], [ %.523823, %6889 ], [ %.523823, %6819 ], [ %.523823, %6821 ], [ %.523823, %6836 ], [ %.523823, %6838 ], [ %.523823, %6768 ], [ %.523823, %6772 ], [ %.523823, %6785 ], [ %.523823, %6790 ], [ %.523823, %6717 ], [ %.523823, %6721 ], [ %.523823, %6734 ], [ %.523823, %6739 ], [ %.523823, %6666 ], [ %.523823, %6668 ], [ %.523823, %6683 ], [ %.523823, %6685 ], [ %.523823, %6615 ], [ %.523823, %6617 ], [ %.523823, %6632 ], [ %.523823, %6634 ], [ %.523823, %6564 ], [ %.523823, %6568 ], [ %.523823, %6581 ], [ %.523823, %6586 ], [ %.523823, %6513 ], [ %.523823, %6517 ], [ %.523823, %6530 ], [ %.523823, %6535 ], [ %.523823, %6474 ], [ %.523823, %6453 ], [ %.523823, %6426 ], [ %.523823, %6405 ], [ %.523823, %6378 ], [ %.523823, %6357 ], [ %.523823, %6330 ], [ %.523823, %6309 ], [ %.523823, %6285 ], [ %.523823, %6197 ], [ %.523823, %6131 ], [ %.523823, %6043 ], [ %.523823, %5977 ], [ %.523823, %5889 ], [ %.523823, %5823 ], [ %.523823, %5742 ], [ %.523823, %5676 ], [ %.523823, %5595 ], [ %.523823, %5529 ], [ %.523823, %5448 ], [ %.523823, %5314 ], [ %.523823, %5382 ], [ %.523823, %5222 ], [ %.523823, %5290 ], [ %.523823, %5130 ], [ %.523823, %5198 ], [ %.523823, %5106 ], [ %.523823, %5072 ], [ %.523823, %5065 ], [ %.523823, %5058 ], [ %.523823, %5051 ], [ %.523823, %5044 ], [ %.523823, %5037 ], [ %.523823, %5022 ], [ %.523823, %5007 ], [ %.523823, %4995 ], [ %.523823, %4985 ], [ %.523823, %4975 ], [ %.523823, %4971 ], [ %.523823, %4959 ], [ %.523823, %4900 ], [ %.523823, %4801 ], [ %.523823, %4765 ], [ %.523823, %4672 ], [ %.523823, %4626 ], [ %.523823, %4593 ], [ %.523823, %4572 ], [ %.523823, %4509 ], [ %.523823, %4481 ], [ %.523823, %4309 ], [ %.523823, %4472 ], [ %.523823, %4284 ], [ %.523823, %4261 ], [ %.523823, %4239 ], [ %.523823, %4223 ], [ %.523823, %4188 ], [ %.523823, %4178 ], [ %.523823, %4108 ], [ %.523823, %4090 ], [ %.523823, %4071 ], [ %.523823, %4056 ], [ %.523823, %4038 ], [ %.523823, %4008 ], [ %.523823, %3997 ], [ %.523823, %3980 ], [ %.523823, %3987 ], [ %.523823, %3964 ], [ %.523823, %3943 ], [ %.523823, %3881 ], [ %.523823, %3898 ], [ %.523823, %3708 ], [ %.523823, %3864 ], [ %.523823, %3440 ], [ %.523823, %3673 ], [ %.523823, %3284 ], [ %.523823, %3416 ], [ %.523823, %3135 ], [ %.523823, %3267 ], [ %.523823, %3121 ], [ %.523823, %3125 ], [ %.523823, %3107 ], [ %.523823, %3111 ], [ %.523823, %3093 ], [ %.523823, %3097 ], [ %.523823, %3079 ], [ %.523823, %3083 ], [ %.523823, %3065 ], [ %.523823, %3069 ], [ %.523823, %3051 ], [ %.523823, %3055 ], [ %.523823, %3039 ], [ %.523823, %3035 ], [ %.523823, %3028 ], [ %.523823, %2999 ], [ %.523823, %2985 ], [ %.523823, %2962 ], [ %.523823, %.loopexit24741 ], [ %.523823, %2814 ], [ %.523823, %2736 ], [ %.523823, %2728 ], [ %.523823, %2688 ], [ %.523823, %2482 ], [ %.523823, %2542 ], [ %.523823, %2510 ], [ %.523823, %2183 ], [ %.523823, %2348 ], [ %.523823, %2228 ], [ %.523823, %2265 ], [ %.523823, %2089 ], [ %.523823, %2038 ], [ %.523823, %1975 ], [ %.523823, %1967 ], [ %.523823, %1947 ], [ %.523823, %1927 ], [ %.523823, %1923 ], [ %.523823, %1892 ], [ %.523823, %1862 ], [ %.523823, %1838 ], [ %.523823, %.loopexit24737 ], [ %.523823, %.loopexit24734 ], [ %.523823, %.loopexit24731 ], [ %.523823, %1658 ], [ %.523823, %1630 ], [ %.523823, %1602 ], [ %.523823, %1512 ], [ %.523823, %1423 ], [ %.523823, %1375 ], [ %.523823, %1373 ], [ %.523823, %1230 ], [ %.523823, %1223 ], [ %.523823, %1198 ], [ %1189, %1174 ], [ %.523823, %1152 ], [ %.523823, %1081 ], [ %.523823, %1039 ], [ %.523823, %1034 ], [ %.523823, %1026 ], [ %.523823, %1024 ], [ %.523823, %1017 ], [ %.523823, %997 ], [ %.523823, %8473 ], [ %.523823, %754 ], [ %.523823, %8165 ], [ %.523823, %736 ], [ %.523823, %707 ], [ %.523823, %715 ], [ %.523823, %686 ], [ %.523823, %694 ], [ %.523823, %663 ]
  %.323685.be = phi i32 [ %8161, %8149 ], [ %8125, %8124 ], [ %8147, %8146 ], [ %8115, %8113 ], [ %7847, %7845 ], [ %7761, %7760 ], [ %7590, %7589 ], [ %7496, %7495 ], [ %7460, %7459 ], [ %7465, %7461 ], [ %7439, %7438 ], [ %7444, %7440 ], [ %7421, %7417 ], [ %7423, %7422 ], [ %7400, %7396 ], [ %7402, %7401 ], [ %7377, %7376 ], [ %7381, %7378 ], [ %7357, %7356 ], [ %7361, %7358 ], [ %7339, %7336 ], [ %7341, %7340 ], [ %7319, %7316 ], [ %7321, %7320 ], [ %7279, %7278 ], [ %7283, %7280 ], [ %7296, %7295 ], [ %7301, %7297 ], [ %7228, %7227 ], [ %7232, %7229 ], [ %7245, %7244 ], [ %7250, %7246 ], [ %7179, %7176 ], [ %7181, %7180 ], [ %7197, %7193 ], [ %7199, %7198 ], [ %7128, %7125 ], [ %7130, %7129 ], [ %7146, %7142 ], [ %7148, %7147 ], [ %7075, %7074 ], [ %7079, %7076 ], [ %7092, %7091 ], [ %7097, %7093 ], [ %7024, %7023 ], [ %7028, %7025 ], [ %7041, %7040 ], [ %7046, %7042 ], [ %6975, %6972 ], [ %6977, %6976 ], [ %6993, %6989 ], [ %6995, %6994 ], [ %6924, %6921 ], [ %6926, %6925 ], [ %6942, %6938 ], [ %6944, %6943 ], [ %6871, %6870 ], [ %6875, %6872 ], [ %6888, %6887 ], [ %6893, %6889 ], [ %6820, %6819 ], [ %6824, %6821 ], [ %6837, %6836 ], [ %6842, %6838 ], [ %6771, %6768 ], [ %6773, %6772 ], [ %6789, %6785 ], [ %6791, %6790 ], [ %6720, %6717 ], [ %6722, %6721 ], [ %6738, %6734 ], [ %6740, %6739 ], [ %6667, %6666 ], [ %6671, %6668 ], [ %6684, %6683 ], [ %6689, %6685 ], [ %6616, %6615 ], [ %6620, %6617 ], [ %6633, %6632 ], [ %6638, %6634 ], [ %6567, %6564 ], [ %6569, %6568 ], [ %6585, %6581 ], [ %6587, %6586 ], [ %6516, %6513 ], [ %6518, %6517 ], [ %6534, %6530 ], [ %6536, %6535 ], [ %6485, %6474 ], [ %6464, %6453 ], [ %6437, %6426 ], [ %6416, %6405 ], [ %6389, %6378 ], [ %6368, %6357 ], [ %6341, %6330 ], [ %6320, %6309 ], [ %6293, %6285 ], [ %6206, %6197 ], [ %6139, %6131 ], [ %6052, %6043 ], [ %5985, %5977 ], [ %5898, %5889 ], [ %5831, %5823 ], [ %5750, %5742 ], [ %5684, %5676 ], [ %5603, %5595 ], [ %5537, %5529 ], [ %5456, %5448 ], [ %5331, %5314 ], [ %5390, %5382 ], [ %5239, %5222 ], [ %5298, %5290 ], [ %5147, %5130 ], [ %5206, %5198 ], [ %5107, %5106 ], [ %5078, %5072 ], [ %5071, %5065 ], [ %5064, %5058 ], [ %5057, %5051 ], [ %5050, %5044 ], [ %5043, %5037 ], [ %5036, %5022 ], [ %5021, %5007 ], [ %5006, %4995 ], [ %4994, %4985 ], [ %4984, %4975 ], [ %4974, %4971 ], [ %4970, %4959 ], [ %4926, %4900 ], [ %4812, %4801 ], [ %.3423963, %4765 ], [ %.3323962, %4672 ], [ %4637, %4626 ], [ %4604, %4593 ], [ %4580, %4572 ], [ %4521, %4509 ], [ %4493, %4481 ], [ %4319, %4309 ], [ %4480, %4472 ], [ %4300, %4284 ], [ %4283, %4261 ], [ %4260, %4239 ], [ %4238, %4223 ], [ %4210, %4188 ], [ %4187, %4178 ], [ %4116, %4108 ], [ %4098, %4090 ], [ %4080, %4071 ], [ %4064, %4056 ], [ %4046, %4038 ], [ %4028, %4008 ], [ %4007, %3997 ], [ %3981, %3980 ], [ %3996, %3987 ], [ %3972, %3964 ], [ %3954, %3943 ], [ %3891, %3881 ], [ %3906, %3898 ], [ %3716, %3708 ], [ %3872, %3864 ], [ %3457, %3440 ], [ %3681, %3673 ], [ %3292, %3284 ], [ %3424, %3416 ], [ %3143, %3135 ], [ %3275, %3267 ], [ %3124, %3121 ], [ %3126, %3125 ], [ %3110, %3107 ], [ %3112, %3111 ], [ %3096, %3093 ], [ %3098, %3097 ], [ %3082, %3079 ], [ %3084, %3083 ], [ %3068, %3065 ], [ %3070, %3069 ], [ %3054, %3051 ], [ %3056, %3055 ], [ %3042, %3039 ], [ %3038, %3035 ], [ %3034, %3028 ], [ %3007, %2999 ], [ %2991, %2985 ], [ %2968, %2962 ], [ %2945, %.loopexit24741 ], [ %2817, %2814 ], [ %2737, %2736 ], [ %2729, %2728 ], [ %2696, %2688 ], [ %.1123703, %2482 ], [ %.1123703, %2542 ], [ %.1123703, %2510 ], [ %.1523888, %2183 ], [ %.1523888, %2348 ], [ %.1523888, %2228 ], [ %.1523888, %2265 ], [ %2090, %2089 ], [ %2039, %2038 ], [ %1984, %1975 ], [ %1974, %1967 ], [ %1966, %1947 ], [ %1946, %1927 ], [ %1926, %1923 ], [ %1895, %1892 ], [ %1864, %1862 ], [ %1840, %1838 ], [ %1816, %.loopexit24737 ], [ %1743, %.loopexit24734 ], [ %8513, %.loopexit24731 ], [ %1667, %1658 ], [ %1639, %1630 ], [ %1529, %1602 ], [ %1439, %1512 ], [ %1385, %1423 ], [ %1376, %1375 ], [ %1374, %1373 ], [ %1231, %1230 ], [ %1229, %1223 ], [ %1205, %1198 ], [ %1197, %1174 ], [ %1153, %1152 ], [ %.323740, %1081 ], [ %1043, %1039 ], [ %1038, %1034 ], [ %1033, %1026 ], [ %1025, %1024 ], [ %1018, %1017 ], [ %1011, %997 ], [ %.1423943, %8473 ], [ %756, %754 ], [ %8166, %8165 ], [ %738, %736 ], [ %714, %707 ], [ %717, %715 ], [ %693, %686 ], [ %696, %694 ], [ %675, %663 ]
  br label %.backedge

676:                                              ; preds = %.backedge
  %677 = add nuw nsw i64 %657, 2
  %678 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %677)
  %679 = add i32 %.923925, -40
  %680 = zext i32 %679 to i64
  %681 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %680)
  %.not24680 = icmp ugt i32 %678, %681
  %682 = add nuw nsw i64 %657, 1
  %683 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %682)
  %684 = shl i32 %683, 3
  %685 = add i32 %684, %.923925
  br i1 %.not24680, label %694, label %686

686:                                              ; preds = %676
  %687 = add i32 %.923925, -64
  %688 = shl i32 %678, 3
  %689 = sub i32 %687, %688
  %690 = zext i32 %689 to i64
  %691 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %690)
  %692 = zext i32 %685 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %692, i64 noundef %691)
  %693 = add i32 %.323685, 3
  br label %.backedge.backedge

694:                                              ; preds = %676
  %695 = zext i32 %685 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %695, i64 noundef -1688849860263936)
  %696 = add i32 %.323685, 3
  br label %.backedge.backedge

697:                                              ; preds = %.backedge
  %698 = add nuw nsw i64 %657, 2
  %699 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %698)
  %700 = add i32 %.923925, -40
  %701 = zext i32 %700 to i64
  %702 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %701)
  %.not24679 = icmp ugt i32 %699, %702
  %703 = add nuw nsw i64 %657, 1
  %704 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %703)
  %705 = shl i32 %704, 3
  %706 = add i32 %705, %.923925
  br i1 %.not24679, label %715, label %707

707:                                              ; preds = %697
  %708 = add i32 %.923925, -64
  %709 = shl i32 %699, 3
  %710 = sub i32 %708, %709
  %711 = zext i32 %710 to i64
  %712 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %711)
  %713 = zext i32 %706 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %713, i64 noundef %712)
  %714 = add i32 %.323685, 6
  br label %.backedge.backedge

715:                                              ; preds = %697
  %716 = zext i32 %706 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %716, i64 noundef -1688849860263936)
  %717 = add i32 %.323685, 6
  br label %.backedge.backedge

718:                                              ; preds = %.backedge
  %719 = add nuw nsw i64 %657, 2
  %720 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %719)
  %721 = shl i32 %720, 3
  %722 = add i32 %721, %.923925
  %723 = zext i32 %722 to i64
  %724 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %723)
  %725 = icmp ugt i64 %724, -281474976710657
  br i1 %725, label %726, label %729

726:                                              ; preds = %718
  %727 = add nuw nsw i64 %657, 1
  %728 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %727)
  br label %736

729:                                              ; preds = %718
  %730 = ashr i64 %724, 47
  %731 = and i64 %730, 4294967294
  %.not24677 = icmp eq i64 %731, 4294967284
  br i1 %.not24677, label %732, label %8162

732:                                              ; preds = %729
  %733 = add nuw nsw i64 %657, 1
  %734 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %733)
  %735 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %185)
  br label %736

736:                                              ; preds = %732, %726
  %.pn27237.in = phi i32 [ %734, %732 ], [ %728, %726 ]
  %.sink27187 = phi i64 [ %735, %732 ], [ %724, %726 ]
  %.pn27237 = shl i32 %.pn27237.in, 3
  %.sink27188 = add i32 %.pn27237, %.923925
  %737 = zext i32 %.sink27188 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %737, i64 noundef %.sink27187)
  %738 = add i32 %.323685, 3
  br label %.backedge.backedge

739:                                              ; preds = %.backedge
  %740 = add i32 %.923925, -64
  %741 = zext i32 %740 to i64
  %742 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %741)
  %743 = icmp ugt i64 %742, -281474976710657
  br i1 %743, label %744, label %747

744:                                              ; preds = %739
  %745 = add nuw nsw i64 %657, 1
  %746 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %745)
  br label %754

747:                                              ; preds = %739
  %748 = ashr i64 %742, 47
  %749 = and i64 %748, 4294967294
  %.not24675 = icmp eq i64 %749, 4294967284
  br i1 %.not24675, label %750, label %8162

750:                                              ; preds = %747
  %751 = add nuw nsw i64 %657, 1
  %752 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %751)
  %753 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %185)
  br label %754

754:                                              ; preds = %750, %744
  %.pn27236.in = phi i32 [ %752, %750 ], [ %746, %744 ]
  %.sink27189 = phi i64 [ %753, %750 ], [ %742, %744 ]
  %.pn27236 = shl i32 %.pn27236.in, 3
  %.sink27190 = add i32 %.pn27236, %.923925
  %755 = zext i32 %.sink27190 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %755, i64 noundef %.sink27189)
  %756 = add i32 %.323685, 2
  br label %.backedge.backedge

757:                                              ; preds = %.backedge
  %758 = add i32 %.323685, 7
  %759 = add nuw nsw i64 %657, 3
  %760 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %759)
  %761 = add nuw nsw i64 %657, 2
  %762 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %761)
  %763 = shl i32 %762, 3
  %764 = add i32 %763, %.923925
  %765 = zext i32 %764 to i64
  %766 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %765)
  br label %877

767:                                              ; preds = %.backedge
  %768 = add i32 %.323685, 7
  %769 = add nuw nsw i64 %657, 3
  %770 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %769)
  br label %877

771:                                              ; preds = %.backedge
  %772 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  %773 = add i32 %772, -56
  %774 = add nuw nsw i64 %657, 3
  %775 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %774)
  %776 = shl i32 %775, 3
  %777 = add i32 %776, %.923925
  %778 = zext i32 %777 to i64
  %779 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %778)
  %780 = zext i32 %773 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %780, i64 noundef %779)
  %781 = add i32 %.323685, 4
  br label %877

782:                                              ; preds = %.backedge
  %783 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  %784 = add i32 %783, -56
  %785 = add nuw nsw i64 %657, 3
  %786 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %785)
  %787 = shl i32 %786, 3
  %788 = add i32 %787, %.923925
  %789 = zext i32 %788 to i64
  %790 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %789)
  %791 = zext i32 %784 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %791, i64 noundef %790)
  %792 = add i32 %783, -64
  %793 = add nuw nsw i64 %657, 4
  %794 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %793)
  %795 = shl i32 %794, 3
  %796 = add i32 %795, %.923925
  %797 = zext i32 %796 to i64
  %798 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %797)
  %799 = zext i32 %792 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %799, i64 noundef %798)
  %800 = add i32 %.323685, 5
  br label %877

801:                                              ; preds = %.backedge
  %802 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  %803 = add i32 %802, -56
  %804 = add nuw nsw i64 %657, 3
  %805 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %804)
  %806 = shl i32 %805, 3
  %807 = add i32 %806, %.923925
  %808 = zext i32 %807 to i64
  %809 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %808)
  %810 = zext i32 %803 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %810, i64 noundef %809)
  %811 = add i32 %802, -64
  %812 = add nuw nsw i64 %657, 4
  %813 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %812)
  %814 = shl i32 %813, 3
  %815 = add i32 %814, %.923925
  %816 = zext i32 %815 to i64
  %817 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %816)
  %818 = zext i32 %811 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %818, i64 noundef %817)
  %819 = add i32 %802, -72
  %820 = add nuw nsw i64 %657, 5
  %821 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %820)
  %822 = shl i32 %821, 3
  %823 = add i32 %822, %.923925
  %824 = zext i32 %823 to i64
  %825 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %824)
  %826 = zext i32 %819 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %826, i64 noundef %825)
  %827 = add i32 %.323685, 6
  br label %877

828:                                              ; preds = %.backedge
  %829 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  %830 = add i32 %829, -56
  %831 = add nuw nsw i64 %657, 3
  %832 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %831)
  %833 = shl i32 %832, 3
  %834 = add i32 %833, %.923925
  %835 = zext i32 %834 to i64
  %836 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %835)
  %837 = zext i32 %830 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %837, i64 noundef %836)
  %838 = add i32 %829, -64
  %839 = add nuw nsw i64 %657, 4
  %840 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %839)
  %841 = shl i32 %840, 3
  %842 = add i32 %841, %.923925
  %843 = zext i32 %842 to i64
  %844 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %843)
  %845 = zext i32 %838 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %845, i64 noundef %844)
  %846 = add i32 %829, -72
  %847 = add nuw nsw i64 %657, 5
  %848 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %847)
  %849 = shl i32 %848, 3
  %850 = add i32 %849, %.923925
  %851 = zext i32 %850 to i64
  %852 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %851)
  %853 = zext i32 %846 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %853, i64 noundef %852)
  %854 = add i32 %829, -80
  %855 = add nuw nsw i64 %657, 6
  %856 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %855)
  %857 = shl i32 %856, 3
  %858 = add i32 %857, %.923925
  %859 = zext i32 %858 to i64
  %860 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %859)
  %861 = zext i32 %854 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %861, i64 noundef %860)
  %862 = add i32 %.323685, 7
  br label %877

863:                                              ; preds = %.backedge
  %864 = add i32 %.323685, 4
  %865 = add nuw nsw i64 %657, 3
  %866 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %865)
  %867 = add nuw nsw i64 %657, 2
  %868 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %867)
  %869 = shl i32 %868, 3
  %870 = add i32 %869, %.923925
  %871 = zext i32 %870 to i64
  %872 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %871)
  br label %877

873:                                              ; preds = %.backedge
  %874 = add i32 %.323685, 4
  %875 = add nuw nsw i64 %657, 3
  %876 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %875)
  br label %877

877:                                              ; preds = %767, %771, %782, %801, %828, %873, %863, %757
  %.1423943 = phi i32 [ %864, %863 ], [ %758, %757 ], [ %874, %873 ], [ %862, %828 ], [ %827, %801 ], [ %800, %782 ], [ %781, %771 ], [ %768, %767 ]
  %.723699 = phi i32 [ %866, %863 ], [ %760, %757 ], [ %876, %873 ], [ 4, %828 ], [ 3, %801 ], [ 2, %782 ], [ 1, %771 ], [ %770, %767 ]
  %.023689 = phi i64 [ %872, %863 ], [ %766, %757 ], [ -1688849860263936, %873 ], [ -1688849860263936, %828 ], [ -1688849860263936, %801 ], [ -1688849860263936, %782 ], [ -1688849860263936, %771 ], [ -1688849860263936, %767 ]
  %878 = add nuw nsw i64 %657, 2
  %879 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %878)
  %880 = shl i32 %879, 3
  %881 = add i32 %880, %.923925
  %882 = zext i32 %881 to i64
  %883 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %882)
  %884 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  %885 = add i32 %884, -16
  %886 = zext i32 %885 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %886, i64 noundef %657)
  %887 = add i32 %884, -8
  %888 = add i32 %.923925, -8
  %889 = zext i32 %888 to i64
  %890 = zext i32 %887 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %890, i64 noundef %889)
  %891 = add i32 %884, -24
  %892 = zext i32 %.223837 to i64
  %893 = zext i32 %891 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %893, i64 noundef %892)
  %894 = add i32 %884, -32
  %895 = add i32 %.723699, -1
  %896 = zext i32 %895 to i64
  %897 = or disjoint i64 %896, -1125899906842624
  %898 = zext i32 %894 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %898, i64 noundef %897)
  %899 = add i32 %884, -40
  %900 = zext i32 %899 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %900, i64 noundef %.023689)
  %901 = add i32 %884, -48
  %902 = zext i32 %901 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %902, i64 noundef %883)
  %903 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %878)
  %904 = shl i32 %903, 3
  %905 = add i32 %904, %.923925
  %906 = zext i32 %905 to i64
  %907 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %906)
  %908 = icmp ult i64 %907, -844424930131968
  br i1 %908, label %925, label %909

909:                                              ; preds = %877
  %910 = and i64 %907, 4294967295
  %911 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %910)
  %912 = add i32 %911, -1291845632
  %913 = icmp ult i32 %912, -67108864
  br i1 %913, label %925, label %914

914:                                              ; preds = %909
  %915 = add nuw nsw i64 %910, 24
  %916 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %915)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %917 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %204)
  %918 = xor i32 %917, %916
  %919 = zext i32 %918 to i64
  %920 = add nuw nsw i64 %919, 8
  %921 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %920)
  %.not24656 = icmp eq i32 %921, 0
  br i1 %.not24656, label %922, label %.loopexit24754.loopexit

922:                                              ; preds = %914
  %923 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %0, i32 noundef %918, i32 noundef %2) #5
  %924 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24657 = icmp eq i32 %923, 0
  br i1 %.not24657, label %._crit_edge, label %.loopexit24754.loopexit

925:                                              ; preds = %909, %877
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %926 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %878)
  %927 = shl i32 %926, 3
  %928 = add i32 %927, %.923925
  %929 = zext i32 %928 to i64
  %930 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %929)
  %931 = icmp ult i64 %930, -844424930131968
  br i1 %931, label %8174, label %932

932:                                              ; preds = %925
  %933 = trunc i64 %930 to i32
  %934 = and i64 %930, 4294967295
  %935 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %934)
  %936 = add i32 %935, -1157627904
  %937 = icmp ult i32 %936, 67108864
  br i1 %937, label %938, label %939

938:                                              ; preds = %932
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ANativeFunction0x3A0x3A_nativeCall0x28hermes0x3A0x3Avm0x3A0x3ANativeFunction0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %0, i32 noundef %80, i32 noundef %933, i32 noundef %2)
  br label %942

939:                                              ; preds = %932
  %940 = and i32 %935, -16777216
  %.not24658 = icmp eq i32 %940, 1140850688
  br i1 %.not24658, label %941, label %8174

941:                                              ; preds = %939
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABoundFunction0x3A0x3A_boundCall0x28hermes0x3A0x3Avm0x3A0x3ABoundFunction0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %0, i32 noundef %80, i32 noundef %933, i32 noundef %.323685, i32 noundef %2) #5
  br label %942

942:                                              ; preds = %941, %938
  %943 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %944 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  br label %8471

945:                                              ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %946 = zext i32 %.223837 to i64
  %947 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %946)
  %948 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %657)
  %949 = icmp eq i32 %948, 82
  %950 = zext i32 %947 to i64
  %951 = add nuw nsw i64 %950, 28
  %952 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %951)
  %953 = add nuw nsw i64 %657, 3
  br i1 %949, label %954, label %960

954:                                              ; preds = %945
  %955 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %953)
  %956 = shl i32 %955, 2
  %957 = add i32 %956, %952
  %958 = zext i32 %957 to i64
  %959 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %958)
  %.not24653 = icmp eq i32 %959, 0
  br i1 %.not24653, label %966, label %968

960:                                              ; preds = %945
  %961 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %953)
  %962 = shl i32 %961, 2
  %963 = add i32 %962, %952
  %964 = zext i32 %963 to i64
  %965 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %964)
  %.not24652 = icmp eq i32 %965, 0
  br i1 %.not24652, label %966, label %968

966:                                              ; preds = %960, %954
  %.423686 = phi i32 [ %955, %954 ], [ %961, %960 ]
  %967 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %947, i32 noundef %.423686)
  br label %968

968:                                              ; preds = %960, %954, %966
  %.323876 = phi i32 [ %967, %966 ], [ %959, %954 ], [ %965, %960 ]
  %969 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %970 = zext i32 %969 to i64
  %971 = add nuw nsw i64 %970, 2
  %972 = tail call i64 @i64_load8_u(ptr noundef nonnull %8, i64 noundef %971)
  %973 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %74)
  %974 = add i32 %973, -16
  %975 = zext i32 %974 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %975, i64 noundef %970)
  %976 = add i32 %973, -8
  %977 = add i32 %.923925, -8
  %978 = zext i32 %977 to i64
  %979 = zext i32 %976 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %979, i64 noundef %978)
  %980 = add i32 %973, -24
  %981 = zext i32 %980 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %981, i64 noundef %946)
  %982 = add i32 %973, -40
  %983 = zext i32 %982 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %983, i64 noundef -1688849860263936)
  %984 = add i32 %973, -48
  %985 = zext i32 %.323876 to i64
  %986 = zext i32 %984 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %986, i64 noundef %985)
  %987 = add i32 %973, -32
  %988 = add i64 %972, 4294967295
  %989 = and i64 %988, 4294967295
  %990 = or disjoint i64 %989, -1125899906842624
  %991 = zext i32 %987 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %991, i64 noundef %990)
  %992 = add nuw nsw i64 %985, 8
  %993 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %992)
  %.not24654 = icmp eq i32 %993, 0
  br i1 %.not24654, label %994, label %.loopexit24754.loopexit

994:                                              ; preds = %968
  %995 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %0, i32 noundef %.323876, i32 noundef %2) #5
  %996 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24655 = icmp eq i32 %995, 0
  br i1 %.not24655, label %._crit_edge, label %.loopexit24754.loopexit

997:                                              ; preds = %.backedge
  %998 = add nuw nsw i64 %657, 1
  %999 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %998)
  %1000 = shl i32 %999, 3
  %1001 = add i32 %1000, %.923925
  %1002 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %205)
  %1003 = add nuw nsw i64 %657, 2
  %1004 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1003)
  %1005 = shl i32 %1004, 2
  %1006 = add i32 %1005, %1002
  %1007 = zext i32 %1006 to i64
  %1008 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %1007)
  %1009 = or i64 %1008, -281474976710656
  %1010 = zext i32 %1001 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1010, i64 noundef %1009)
  %1011 = add i32 %.323685, 3
  br label %.backedge.backedge

1012:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1013 = add nuw nsw i64 %657, 3
  %1014 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1013)
  %1015 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AimplCallBuiltin0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %2, i32 noundef %.923925, i32 noundef %.223837, i32 noundef %1014) #5
  %1016 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24651 = icmp eq i32 %1015, 0
  br i1 %.not24651, label %._crit_edge, label %1017

1017:                                             ; preds = %1012
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %1018 = add i32 %1016, 4
  br label %.backedge.backedge

1019:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1020 = add nuw nsw i64 %657, 3
  %1021 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1020)
  %1022 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AimplCallBuiltin0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %2, i32 noundef %.923925, i32 noundef %.223837, i32 noundef %1021) #5
  %1023 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24650 = icmp eq i32 %1022, 0
  br i1 %.not24650, label %._crit_edge, label %1024

1024:                                             ; preds = %1019
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %1025 = add i32 %1023, 7
  br label %.backedge.backedge

1026:                                             ; preds = %.backedge
  %1027 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %75)
  %1028 = add i32 %1027, -48
  %1029 = zext i32 %1028 to i64
  %1030 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1029)
  %1031 = zext i32 %1030 to i64
  %1032 = add nuw nsw i64 %1031, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1032, i32 noundef 3)
  %1033 = add i32 %.323685, 1
  br label %.backedge.backedge

1034:                                             ; preds = %.backedge
  %1035 = add nuw nsw i64 %657, 1
  %1036 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1035)
  %1037 = add i32 %1036, %.323685
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AsaveGenerator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %0, i32 noundef %2, i32 noundef %.923925, i32 noundef %1037) #5
  %1038 = add i32 %.323685, 2
  br label %.backedge.backedge

1039:                                             ; preds = %.backedge
  %1040 = add nuw nsw i64 %657, 1
  %1041 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1040)
  %1042 = add i32 %1041, %.323685
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AsaveGenerator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %0, i32 noundef %2, i32 noundef %.923925, i32 noundef %1042) #5
  %1043 = add i32 %.323685, 5
  br label %.backedge.backedge

1044:                                             ; preds = %.backedge
  %1045 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %75)
  %1046 = add i32 %1045, -48
  %1047 = zext i32 %1046 to i64
  %1048 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1047)
  %1049 = zext i32 %1048 to i64
  %1050 = add nuw nsw i64 %1049, 32
  %1051 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1050)
  %.not24649 = icmp eq i32 %1051, 0
  br i1 %.not24649, label %1079, label %1052

1052:                                             ; preds = %1044
  %1053 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %204)
  %1054 = add nuw nsw i64 %1049, 24
  %1055 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1054)
  %1056 = xor i32 %1055, %1053
  %1057 = zext i32 %1056 to i64
  %1058 = add nuw nsw i64 %1057, 8
  %1059 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1058)
  %1060 = add nuw nsw i64 %1049, 48
  %1061 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1060)
  %1062 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %75)
  %1063 = add nuw nsw i64 %1049, 40
  %1064 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1063)
  %1065 = add i32 %1064, 8
  %1066 = add nuw nsw i64 %1049, 36
  %1067 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1066)
  %1068 = shl i32 %1067, 3
  %1069 = add i32 %1064, 16
  %1070 = add i32 %1069, %1068
  %1071 = zext i32 %1064 to i64
  %1072 = add nuw nsw i64 %1071, 4
  %1073 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1072)
  %1074 = shl i32 %1073, 3
  %1075 = add i32 %1074, %1065
  %1076 = sub i32 %1075, %1070
  %1077 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %0, i32 noundef %1062, i32 noundef %1070, i32 noundef %1076) #5
  %1078 = add i32 %1061, %1059
  br label %1081

1079:                                             ; preds = %1044
  %1080 = add i32 %.323685, 1
  br label %1081

1081:                                             ; preds = %1079, %1052
  %.323740 = phi i32 [ %1078, %1052 ], [ %1080, %1079 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1050, i32 noundef 2)
  br label %.backedge.backedge

1082:                                             ; preds = %.backedge
  %1083 = add nuw nsw i64 %657, 2
  %1084 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1083)
  %1085 = shl i32 %1084, 3
  %1086 = add i32 %1085, %.923925
  %1087 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %75)
  %1088 = add i32 %1087, -48
  %1089 = zext i32 %1088 to i64
  %1090 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1089)
  %1091 = zext i32 %1090 to i64
  %1092 = add nuw nsw i64 %1091, 52
  %1093 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1092)
  %1094 = icmp eq i32 %1093, 2
  %1095 = zext i1 %1094 to i64
  %1096 = or disjoint i64 %1095, -1407374883553280
  %1097 = zext i32 %1086 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1097, i64 noundef %1096)
  %1098 = add i32 %1090, 44
  %1099 = add nuw nsw i64 %1091, 44
  %1100 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1099)
  %1101 = and i32 %1100, 15
  switch i32 %1101, label %1102 [
    i32 1, label %1105
    i32 2, label %1109
    i32 3, label %1113
    i32 4, label %1121
    i32 5, label %1125
    i32 6, label %1129
    i32 7, label %1133
    i32 15, label %1134
    i32 9, label %1105
    i32 10, label %1109
    i32 11, label %1113
    i32 12, label %1121
    i32 13, label %1125
    i32 14, label %1135
  ]

1102:                                             ; preds = %1082
  %1103 = zext i32 %1100 to i64
  %1104 = or disjoint i64 %1103, -281474976710656
  br label %1135

1105:                                             ; preds = %1082, %1082
  %1106 = and i32 %1100, -8
  %1107 = zext i32 %1106 to i64
  %1108 = or disjoint i64 %1107, -562949953421312
  br label %1135

1109:                                             ; preds = %1082, %1082
  %1110 = and i32 %1100, -8
  %1111 = zext i32 %1110 to i64
  %1112 = or disjoint i64 %1111, -844424930131968
  br label %1135

1113:                                             ; preds = %1082, %1082
  %1114 = and i32 %1100, -8
  %1115 = zext i32 %1114 to i64
  %1116 = add nuw nsw i64 %1115, 8
  %1117 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %1116)
  %1118 = tail call i64 @i64_reinterpret_f64(double noundef %1117)
  %1119 = fcmp uno double %1117, 0.000000e+00
  %1120 = select i1 %1119, i64 9221120237041090560, i64 %1118
  br label %1135

1121:                                             ; preds = %1082, %1082
  %1122 = ashr i32 %1100, 3
  %1123 = sitofp i32 %1122 to double
  %1124 = tail call i64 @i64_reinterpret_f64(double noundef %1123)
  br label %1135

1125:                                             ; preds = %1082, %1082
  %1126 = lshr i32 %1100, 3
  %1127 = zext nneg i32 %1126 to i64
  %1128 = or disjoint i64 %1127, -1266637395197952
  br label %1135

1129:                                             ; preds = %1082
  %1130 = icmp ugt i32 %1100, 15
  %1131 = zext i1 %1130 to i64
  %1132 = or disjoint i64 %1131, -1407374883553280
  br label %1135

1133:                                             ; preds = %1082
  br label %1135

1134:                                             ; preds = %1082
  br label %1135

1135:                                             ; preds = %1082, %1134, %1133, %1129, %1125, %1121, %1113, %1109, %1105, %1102
  %.023796 = phi i64 [ %1104, %1102 ], [ -1688849860263936, %1082 ], [ -1548112371908608, %1134 ], [ -1970324836974592, %1133 ], [ %1132, %1129 ], [ %1128, %1125 ], [ %1124, %1121 ], [ %1120, %1113 ], [ %1112, %1109 ], [ %1108, %1105 ]
  %1136 = add nuw nsw i64 %657, 1
  %1137 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1136)
  %1138 = shl i32 %1137, 3
  %1139 = add i32 %1138, %.923925
  %1140 = zext i32 %1139 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1140, i64 noundef %.023796)
  %1141 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1142 = and i32 %1098, -4194304
  %1143 = icmp eq i32 %1141, %1142
  br i1 %1143, label %1149, label %1144

1144:                                             ; preds = %1135
  %1145 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %186)
  %.not24639 = icmp eq i32 %1145, 0
  br i1 %.not24639, label %1149, label %1146

1146:                                             ; preds = %1144
  %1147 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1099)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef %0, i32 noundef %72, i32 noundef %1147) #5
  %1148 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1092)
  br label %1149

1149:                                             ; preds = %1144, %1135, %1146
  %.1523944 = phi i32 [ %1093, %1135 ], [ %1093, %1144 ], [ %1148, %1146 ]
  %1150 = zext i32 %1098 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1150, i32 noundef 7)
  %1151 = icmp eq i32 %.1523944, 1
  br i1 %1151, label %.loopexit27240, label %1152

1152:                                             ; preds = %1149
  %1153 = add i32 %.323685, 3
  br label %.backedge.backedge

1154:                                             ; preds = %.backedge
  %1155 = add i32 %.923925, -32
  %1156 = zext i32 %1155 to i64
  %1157 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1156)
  %1158 = add i32 %.923925, -24
  %1159 = zext i32 %1158 to i64
  %1160 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1159)
  %1161 = add nuw nsw i64 %657, 1
  %1162 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1161)
  %1163 = shl i32 %1162, 3
  %1164 = add i32 %1163, %.923925
  %1165 = zext i32 %1164 to i64
  %1166 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1165)
  %1167 = add i32 %.923925, -8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %74, i32 noundef %1167)
  %1168 = add i32 %.923925, -16
  %1169 = zext i32 %1168 to i64
  %1170 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1169)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %75, i32 noundef %1170)
  %.not24637 = icmp eq i32 %1157, 0
  br i1 %.not24637, label %1171, label %1174

1171:                                             ; preds = %1154
  %1172 = zext i32 %1 to i64
  %1173 = add nuw nsw i64 %1172, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1173, i64 noundef %1166)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1172, i32 noundef 1)
  br label %8588

1174:                                             ; preds = %1154
  %1175 = add i32 %1170, 8
  %1176 = zext i32 %1157 to i64
  %1177 = add nuw nsw i64 %1176, 4
  %1178 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1177)
  %1179 = and i32 %1178, 1
  %.not24638 = icmp eq i32 %1179, 0
  %.423741.v = select i1 %.not24638, i32 15, i32 29
  %.423741 = add i32 %.423741.v, %1178
  %1180 = zext i32 %.423741 to i64
  %1181 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1180)
  %1182 = zext i32 %1160 to i64
  %1183 = add nuw nsw i64 %1182, 1
  %1184 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1183)
  %1185 = shl i32 %1184, 3
  %1186 = add i32 %1185, %1175
  %1187 = zext i32 %1186 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1187, i64 noundef %1166)
  %1188 = lshr i32 %1181, 2
  %1189 = and i32 %1188, 1
  %1190 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1182)
  %1191 = shl i32 %1190, 1
  %1192 = add i32 %1191, 2
  %1193 = and i32 %1192, 30
  %1194 = lshr i32 1046848, %1193
  %1195 = and i32 %1194, 3
  %1196 = add i32 %1160, 4
  %1197 = add i32 %1196, %1195
  br label %.backedge.backedge

1198:                                             ; preds = %.backedge
  %1199 = add nuw nsw i64 %657, 1
  %1200 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1199)
  %1201 = shl i32 %1200, 3
  %1202 = add i32 %1201, %.923925
  %1203 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %81)
  %1204 = zext i32 %1202 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1204, i64 noundef %1203)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef -1970324836974592)
  %1205 = add i32 %.323685, 2
  br label %.backedge.backedge

1206:                                             ; preds = %.backedge
  %1207 = add nuw nsw i64 %657, 1
  br label %.loopexit27240

.loopexit27240:                                   ; preds = %1149, %1206
  %.sink = phi i64 [ %1207, %1206 ], [ %1136, %1149 ]
  %1208 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.sink)
  %1209 = shl i32 %1208, 3
  %1210 = add i32 %1209, %.923925
  %1211 = zext i32 %1210 to i64
  %1212 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1211)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef %1212)
  br label %8514

1213:                                             ; preds = %.backedge
  %1214 = add nuw nsw i64 %657, 2
  %1215 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1214)
  %1216 = shl i32 %1215, 3
  %1217 = add i32 %1216, %.923925
  %1218 = zext i32 %1217 to i64
  %1219 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1218)
  %.mask24636 = and i64 %1219, -140737488355328
  %1220 = icmp eq i64 %.mask24636, -1970324836974592
  br i1 %1220, label %1221, label %1223

1221:                                             ; preds = %1213
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %77, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %78, i64 noundef 150323855361)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %79, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 51503)
  %1222 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseReferenceError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %0, i32 noundef %2, i32 noundef %80)
  br label %._crit_edge.sink.split

1223:                                             ; preds = %1213
  %1224 = add nuw nsw i64 %657, 1
  %1225 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1224)
  %1226 = shl i32 %1225, 3
  %1227 = add i32 %1226, %.923925
  %1228 = zext i32 %1227 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1228, i64 noundef %1219)
  %1229 = add i32 %.323685, 3
  br label %.backedge.backedge

1230:                                             ; preds = %.backedge
  %1231 = add i32 %.323685, 1
  br label %.backedge.backedge

1232:                                             ; preds = %.backedge
  %1233 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %202)
  %.not24628 = icmp eq i32 %1233, 0
  br i1 %.not24628, label %1234, label %1237

1234:                                             ; preds = %1232
  %1235 = load ptr, ptr %203, align 8, !tbaa !17
  %1236 = tail call i32 @w2c_hermes__import_test_timeout(ptr noundef %1235) #5
  %.not24629 = icmp eq i32 %1236, 0
  br i1 %.not24629, label %1373, label %1237

1237:                                             ; preds = %1234, %1232
  %1238 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %202)
  %1239 = and i32 %1238, 4
  %.not24630 = icmp eq i32 %1239, 0
  br i1 %.not24630, label %1243, label %1240

1240:                                             ; preds = %1237
  %1241 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %202)
  %1242 = and i32 %1241, 251
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %202, i32 noundef %1242)
  br label %1243

1243:                                             ; preds = %1240, %1237
  %.423877 = phi i32 [ %1241, %1240 ], [ 0, %1237 ]
  %1244 = load ptr, ptr %203, align 8, !tbaa !17
  %1245 = tail call i32 @w2c_hermes__import_test_and_clear_timeout(ptr noundef %1244) #5
  %1246 = or i32 %1245, %.423877
  %.not24631 = icmp eq i32 %1246, 0
  br i1 %.not24631, label %1373, label %1247

1247:                                             ; preds = %1243
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1248 = load i32, ptr %5, align 8, !tbaa !5
  %1249 = add i32 %1248, -16
  store i32 %1249, ptr %5, align 8, !tbaa !5
  %1250 = zext i32 %1249 to i64
  %1251 = add nuw nsw i64 %1250, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1251, i32 noundef 35)
  %1252 = add nuw nsw i64 %1250, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1252, i32 noundef 57134)
  %1253 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1252)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1250, i64 noundef %1253)
  %1254 = load i32, ptr %5, align 8, !tbaa !5
  %1255 = add i32 %1254, -48
  %1256 = add i32 %1254, -64
  store i32 %1256, ptr %5, align 8, !tbaa !5
  %1257 = zext i32 %1256 to i64
  %1258 = add nuw nsw i64 %1257, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1258, i32 noundef %212)
  %1259 = add nuw nsw i64 %1257, 11
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1259, i32 noundef 0)
  %1260 = add nuw nsw i64 %1257, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1260, i32 noundef %213)
  %1261 = add i32 %1254, -52
  %1262 = add i32 %1254, -60
  %1263 = add i32 %1254, -53
  %1264 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x2A0x20hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AmakeA0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x2C0x20true0x2C0x200x28hermes0x3A0x3Avm0x3A0x3AHasFinalizer0x2910x2C0x200x28hermes0x3A0x3Avm0x3A0x3ALongLived0x2900x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x2C0x20bool0x260x3E0x28unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x260x260x2C0x20bool0x260x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %1261, i32 noundef %1262, i32 noundef %1263) #5
  store i32 %1255, ptr %5, align 8, !tbaa !5
  %1265 = zext i32 %1264 to i64
  %1266 = or disjoint i64 %1265, -281474976710656
  %1267 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %1268 = zext i32 %1267 to i64
  %1269 = add nuw nsw i64 %1268, 164
  %1270 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1269)
  %1271 = add nuw nsw i64 %1268, 168
  %1272 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1271)
  %1273 = icmp ult i32 %1270, %1272
  br i1 %1273, label %1274, label %1277

1274:                                             ; preds = %1247
  %1275 = add i32 %1270, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1269, i32 noundef %1275)
  %1276 = zext i32 %1270 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1276, i64 noundef %1266)
  br label %1279

1277:                                             ; preds = %1247
  %1278 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %1267, i64 noundef %1266) #5
  br label %1279

1279:                                             ; preds = %1277, %1274
  %.023824 = phi i32 [ %1270, %1274 ], [ %1278, %1277 ]
  %1280 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1250)
  %1281 = add nuw nsw i64 %1250, 4
  %1282 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1281)
  %1283 = icmp ult i32 %1282, 65536
  br i1 %1283, label %1284, label %1292

1284:                                             ; preds = %1279
  %1285 = zext i32 %1255 to i64
  %1286 = add nuw nsw i64 %1285, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1286, i32 noundef %1282)
  %1287 = add nuw nsw i64 %1285, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1287, i32 noundef %1280)
  %1288 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1287)
  %1289 = add nuw nsw i64 %1285, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1289, i64 noundef %1288)
  %1290 = add i32 %1254, -32
  %1291 = add i32 %1254, -40
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ADynamicStringPrimitive0x3Cchar0x2C0x20false0x3E0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cchar0x3E0x29(ptr noundef nonnull %0, i32 noundef %1290, i32 noundef %2, i32 noundef %1291) #5
  br label %1347

1292:                                             ; preds = %1279
  %1293 = icmp ugt i32 %1282, 2147483631
  br i1 %1293, label %1372, label %1294

1294:                                             ; preds = %1292
  %1295 = or i32 %1282, 15
  %1296 = add nuw i32 %1295, 1
  %1297 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %1296) #5
  %1298 = or i32 %1296, -2147483648
  %1299 = zext i32 %1255 to i64
  %1300 = add nuw nsw i64 %1299, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1300, i32 noundef %1298)
  %1301 = add nuw nsw i64 %1299, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1301, i32 noundef %1297)
  %1302 = add nuw nsw i64 %1299, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1302, i32 noundef %1282)
  %1303 = and i32 %1282, 7
  %.not24632 = icmp eq i32 %1303, 0
  br i1 %.not24632, label %.loopexit24750, label %.preheader24749

.preheader24749:                                  ; preds = %1294, %.preheader24749
  %.1223856 = phi i32 [ %1307, %.preheader24749 ], [ %1297, %1294 ]
  %.223843 = phi i32 [ %1309, %.preheader24749 ], [ 0, %1294 ]
  %.523687 = phi i32 [ %1308, %.preheader24749 ], [ %1280, %1294 ]
  %1304 = zext i32 %.523687 to i64
  %1305 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1304)
  %1306 = zext i32 %.1223856 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1306, i32 noundef %1305)
  %1307 = add i32 %.1223856, 1
  %1308 = add i32 %.523687, 1
  %1309 = add nuw nsw i32 %.223843, 1
  %.not24633 = icmp eq i32 %1309, %1303
  br i1 %.not24633, label %.loopexit24750, label %.preheader24749

.loopexit24750:                                   ; preds = %.preheader24749, %1294
  %.1323857 = phi i32 [ %1297, %1294 ], [ %1307, %.preheader24749 ]
  %.623688 = phi i32 [ %1280, %1294 ], [ %1308, %.preheader24749 ]
  %1310 = add i32 %1282, %1280
  br label %1311

1311:                                             ; preds = %1311, %.loopexit24750
  %.1423858 = phi i32 [ %.1323857, %.loopexit24750 ], [ %1336, %1311 ]
  %.7 = phi i32 [ %.623688, %.loopexit24750 ], [ %1337, %1311 ]
  %1312 = zext i32 %.7 to i64
  %1313 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1312)
  %1314 = zext i32 %.1423858 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1314, i32 noundef %1313)
  %1315 = add nuw nsw i64 %1312, 1
  %1316 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1315)
  %1317 = add nuw nsw i64 %1314, 1
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1317, i32 noundef %1316)
  %1318 = add nuw nsw i64 %1312, 2
  %1319 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1318)
  %1320 = add nuw nsw i64 %1314, 2
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1320, i32 noundef %1319)
  %1321 = add nuw nsw i64 %1312, 3
  %1322 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1321)
  %1323 = add nuw nsw i64 %1314, 3
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1323, i32 noundef %1322)
  %1324 = add nuw nsw i64 %1312, 4
  %1325 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1324)
  %1326 = add nuw nsw i64 %1314, 4
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1326, i32 noundef %1325)
  %1327 = add nuw nsw i64 %1312, 5
  %1328 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1327)
  %1329 = add nuw nsw i64 %1314, 5
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1329, i32 noundef %1328)
  %1330 = add nuw nsw i64 %1312, 6
  %1331 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1330)
  %1332 = add nuw nsw i64 %1314, 6
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1332, i32 noundef %1331)
  %1333 = add nuw nsw i64 %1312, 7
  %1334 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1333)
  %1335 = add nuw nsw i64 %1314, 7
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1335, i32 noundef %1334)
  %1336 = add i32 %.1423858, 8
  %1337 = add i32 %.7, 8
  %.not24634 = icmp eq i32 %1337, %1310
  br i1 %.not24634, label %1338, label %1311

1338:                                             ; preds = %1311
  %1339 = zext i32 %1336 to i64
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %1339, i32 noundef 0)
  %1340 = add i32 %1254, -32
  %1341 = add i32 %1254, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x20hermes0x3A0x3Avm0x3A0x3AExternalStringPrimitive0x3Cchar0x3E0x3A0x3Acreate0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x260x260x29(ptr noundef %0, i32 noundef %1340, i32 noundef %2, i32 noundef %1341) #5
  %1342 = add nuw nsw i64 %1299, 43
  %1343 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %1342)
  %1344 = icmp sgt i32 %1343, -1
  br i1 %1344, label %1347, label %1345

1345:                                             ; preds = %1338
  %1346 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1301)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1346) #5
  br label %1347

1347:                                             ; preds = %1338, %1345, %1284
  %.pre-phi26366 = phi i64 [ %1299, %1338 ], [ %1299, %1345 ], [ %1285, %1284 ]
  %1348 = add nuw nsw i64 %.pre-phi26366, 16
  %1349 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1348)
  %.not24635 = icmp eq i32 %1349, 0
  br i1 %.not24635, label %1371, label %1350

1350:                                             ; preds = %1347
  %1351 = add nuw nsw i64 %.pre-phi26366, 24
  %1352 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1351)
  %1353 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %1354 = zext i32 %1353 to i64
  %1355 = add nuw nsw i64 %1354, 164
  %1356 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1355)
  %1357 = add nuw nsw i64 %1354, 168
  %1358 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1357)
  %1359 = icmp ult i32 %1356, %1358
  br i1 %1359, label %1360, label %1363

1360:                                             ; preds = %1350
  %1361 = add i32 %1356, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1355, i32 noundef %1361)
  %1362 = zext i32 %1356 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1362, i64 noundef %1352)
  br label %1365

1363:                                             ; preds = %1350
  %1364 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %1353, i64 noundef %1352) #5
  br label %1365

1365:                                             ; preds = %1363, %1360
  %.8 = phi i32 [ %1356, %1360 ], [ %1364, %1363 ]
  %1366 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3ArecordStackTrace0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20bool0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %0, i32 noundef %.023824, i32 noundef %2, i32 noundef 0, i32 noundef 0, i32 noundef 0) #5
  %1367 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3AsetupStack0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %0, i32 noundef %.023824, i32 noundef %2) #5
  %1368 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3AsetMessage0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %.023824, i32 noundef %2, i32 noundef %.8) #5
  %1369 = zext i32 %.023824 to i64
  %1370 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1369)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef %1370)
  br label %1371

1371:                                             ; preds = %1365, %1347
  store i32 %1248, ptr %5, align 8, !tbaa !5
  br label %._crit_edge.sink.split

1372:                                             ; preds = %1292
  tail call void @w2c_hermes_abort(ptr noundef nonnull %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1373:                                             ; preds = %1243, %1234
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %1374 = add i32 %.323685, 1
  br label %.backedge.backedge

1375:                                             ; preds = %.backedge
  %1376 = add i32 %.323685, 3
  br label %.backedge.backedge

1377:                                             ; preds = %.backedge
  tail call void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef %0, i32 noundef 54133) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1378:                                             ; preds = %.backedge
  %1379 = add nuw nsw i64 %657, 3
  %1380 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1379)
  br label %1384

1381:                                             ; preds = %.backedge
  %1382 = add nuw nsw i64 %657, 3
  %1383 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1382)
  br label %1384

1384:                                             ; preds = %1381, %1378
  %.sink27193 = phi i32 [ 7, %1381 ], [ 5, %1378 ]
  %.1623945 = phi i32 [ %1383, %1381 ], [ %1380, %1378 ]
  %1385 = add i32 %.323685, %.sink27193
  %1386 = zext i32 %.223837 to i64
  %1387 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1386)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1388 = zext i32 %1387 to i64
  %1389 = add nuw nsw i64 %1388, 24
  %1390 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1389)
  %.not24626 = icmp eq i32 %1390, 0
  br i1 %.not24626, label %1395, label %1391

1391:                                             ; preds = %1384
  %1392 = add nuw nsw i64 %1388, 8
  %1393 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1392)
  %1394 = add i32 %1393, 808
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %0, i32 noundef %1394, i32 noundef %1390) #5
  br label %1395

1395:                                             ; preds = %1391, %1384
  %1396 = zext i32 %1390 to i64
  %1397 = or disjoint i64 %1396, -281474976710656
  %1398 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %1399 = zext i32 %1398 to i64
  %1400 = add nuw nsw i64 %1399, 164
  %1401 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1400)
  %1402 = add nuw nsw i64 %1399, 168
  %1403 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1402)
  %1404 = icmp ult i32 %1401, %1403
  br i1 %1404, label %1405, label %1408

1405:                                             ; preds = %1395
  %1406 = add i32 %1401, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1400, i32 noundef %1406)
  %1407 = zext i32 %1401 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1407, i64 noundef %1397)
  br label %1410

1408:                                             ; preds = %1395
  %1409 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %1398, i64 noundef %1397) #5
  br label %1410

1410:                                             ; preds = %1408, %1405
  %.523878 = phi i32 [ %1401, %1405 ], [ %1409, %1408 ]
  %1411 = add nuw nsw i64 %657, 2
  %1412 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1411)
  %1413 = shl i32 %1412, 3
  %1414 = add i32 %1413, %.923925
  %1415 = add nuw nsw i64 %1388, 28
  %1416 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1415)
  %1417 = shl i32 %.1623945, 2
  %1418 = add i32 %1416, %1417
  %1419 = zext i32 %1418 to i64
  %1420 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1419)
  %.not24627 = icmp eq i32 %1420, 0
  br i1 %.not24627, label %1421, label %1423

1421:                                             ; preds = %1410
  %1422 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %1387, i32 noundef %.1623945)
  br label %1423

1423:                                             ; preds = %1410, %1421
  %.023730 = phi i32 [ %1422, %1421 ], [ %1420, %1410 ]
  %1424 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSFunction0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ADomain0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x29(ptr noundef %0, i32 noundef %2, i32 noundef %.523878, i32 noundef %69, i32 noundef %1414, i32 noundef %.023730) #5
  %1425 = add nuw nsw i64 %657, 1
  %1426 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1425)
  %1427 = shl i32 %1426, 3
  %1428 = add i32 %1427, %.923925
  %1429 = zext i32 %1424 to i64
  %1430 = or disjoint i64 %1429, -281474976710656
  %1431 = zext i32 %1428 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1431, i64 noundef %1430)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

1432:                                             ; preds = %.backedge
  %1433 = add nuw nsw i64 %657, 3
  %1434 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1433)
  br label %1438

1435:                                             ; preds = %.backedge
  %1436 = add nuw nsw i64 %657, 3
  %1437 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1436)
  br label %1438

1438:                                             ; preds = %1435, %1432
  %.sink27194 = phi i32 [ 7, %1435 ], [ 5, %1432 ]
  %.1723946 = phi i32 [ %1437, %1435 ], [ %1434, %1432 ]
  %1439 = add i32 %.323685, %.sink27194
  %1440 = zext i32 %.223837 to i64
  %1441 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1440)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1442 = zext i32 %1441 to i64
  %1443 = add nuw nsw i64 %1442, 24
  %1444 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1443)
  %.not24622 = icmp eq i32 %1444, 0
  br i1 %.not24622, label %1449, label %1445

1445:                                             ; preds = %1438
  %1446 = add nuw nsw i64 %1442, 8
  %1447 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1446)
  %1448 = add i32 %1447, 808
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %0, i32 noundef %1448, i32 noundef %1444) #5
  br label %1449

1449:                                             ; preds = %1445, %1438
  %1450 = zext i32 %1444 to i64
  %1451 = or disjoint i64 %1450, -281474976710656
  %1452 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %1453 = zext i32 %1452 to i64
  %1454 = add nuw nsw i64 %1453, 164
  %1455 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1454)
  %1456 = add nuw nsw i64 %1453, 168
  %1457 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1456)
  %1458 = icmp ult i32 %1455, %1457
  br i1 %1458, label %1459, label %1462

1459:                                             ; preds = %1449
  %1460 = add i32 %1455, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1454, i32 noundef %1460)
  %1461 = zext i32 %1455 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1461, i64 noundef %1451)
  br label %1464

1462:                                             ; preds = %1449
  %1463 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %1452, i64 noundef %1451) #5
  br label %1464

1464:                                             ; preds = %1462, %1459
  %.623879 = phi i32 [ %1455, %1459 ], [ %1463, %1462 ]
  %1465 = add nuw nsw i64 %657, 2
  %1466 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1465)
  %1467 = shl i32 %1466, 3
  %1468 = add i32 %1467, %.923925
  %1469 = add nuw nsw i64 %1442, 28
  %1470 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1469)
  %1471 = shl i32 %.1723946, 2
  %1472 = add i32 %1470, %1471
  %1473 = zext i32 %1472 to i64
  %1474 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1473)
  %.not24623 = icmp eq i32 %1474, 0
  br i1 %.not24623, label %1475, label %1477

1475:                                             ; preds = %1464
  %1476 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %1441, i32 noundef %.1723946)
  br label %1477

1477:                                             ; preds = %1475, %1464
  %.1623860 = phi i32 [ %1476, %1475 ], [ %1474, %1464 ]
  %1478 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %1479 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %1480 = sub i32 %1478, %1479
  %1481 = icmp ult i32 %1480, 40
  br i1 %1481, label %1482, label %1484

1482:                                             ; preds = %1477
  %1483 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %72, i32 noundef 40) #5
  br label %1486

1484:                                             ; preds = %1477
  %1485 = add i32 %1479, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %1485)
  br label %1486

1486:                                             ; preds = %1484, %1482
  %.1823947 = phi i32 [ %1483, %1482 ], [ %1479, %1484 ]
  %1487 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %201)
  %1488 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %198)
  %1489 = zext i32 %.1823947 to i64
  %1490 = add nuw nsw i64 %1489, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1490, i32 noundef 0)
  %1491 = add nuw nsw i64 %1489, 12
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %1491, i64 noundef %1488)
  %1492 = add nuw nsw i64 %1489, 8
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %1492, i64 noundef %1487)
  %1493 = add nuw nsw i64 %1489, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1493, i32 noundef 0)
  %1494 = zext i32 %1468 to i64
  %1495 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1494)
  %1496 = add nuw nsw i64 %1489, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1496, i32 noundef %1495)
  %1497 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %106)
  %1498 = add i32 %.1823947, 20
  %1499 = and i32 %1498, -4194304
  %.not24624 = icmp eq i32 %1497, %1499
  br i1 %.not24624, label %1501, label %1500

1500:                                             ; preds = %1486
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1498, i32 noundef %1495) #5
  br label %1501

1501:                                             ; preds = %1500, %1486
  %1502 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %200)
  %1503 = xor i32 %1502, %.1623860
  %1504 = add nuw nsw i64 %1489, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1504, i32 noundef %1503)
  %1505 = zext i32 %.623879 to i64
  %1506 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1505)
  %1507 = add nuw nsw i64 %1489, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1507, i32 noundef %1506)
  %1508 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1509 = add i32 %.1823947, 28
  %1510 = and i32 %1509, -4194304
  %.not24625 = icmp eq i32 %1508, %1510
  br i1 %.not24625, label %1512, label %1511

1511:                                             ; preds = %1501
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1509, i32 noundef %1506) #5
  br label %1512

1512:                                             ; preds = %1511, %1501
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1489, i32 noundef 1258291240)
  %1513 = add nuw nsw i64 %1489, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1513, i64 noundef 60129542158)
  %1514 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1493)
  %1515 = or i32 %1514, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1493, i32 noundef %1515)
  %1516 = add nuw nsw i64 %657, 1
  %1517 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1516)
  %1518 = shl i32 %1517, 3
  %1519 = add i32 %1518, %.923925
  %1520 = or disjoint i64 %1489, -281474976710656
  %1521 = zext i32 %1519 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1521, i64 noundef %1520)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

1522:                                             ; preds = %.backedge
  %1523 = add nuw nsw i64 %657, 3
  %1524 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1523)
  br label %1528

1525:                                             ; preds = %.backedge
  %1526 = add nuw nsw i64 %657, 3
  %1527 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1526)
  br label %1528

1528:                                             ; preds = %1525, %1522
  %.sink27195 = phi i32 [ 7, %1525 ], [ 5, %1522 ]
  %.1923948 = phi i32 [ %1527, %1525 ], [ %1524, %1522 ]
  %1529 = add i32 %.323685, %.sink27195
  %1530 = zext i32 %.223837 to i64
  %1531 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1530)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1532 = zext i32 %1531 to i64
  %1533 = add nuw nsw i64 %1532, 24
  %1534 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1533)
  %.not24618 = icmp eq i32 %1534, 0
  br i1 %.not24618, label %1539, label %1535

1535:                                             ; preds = %1528
  %1536 = add nuw nsw i64 %1532, 8
  %1537 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1536)
  %1538 = add i32 %1537, 808
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AweakRefReadBarrier0x28hermes0x3A0x3Avm0x3A0x3AGCCell0x2A0x29(ptr noundef %0, i32 noundef %1538, i32 noundef %1534) #5
  br label %1539

1539:                                             ; preds = %1535, %1528
  %1540 = zext i32 %1534 to i64
  %1541 = or disjoint i64 %1540, -281474976710656
  %1542 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %1543 = zext i32 %1542 to i64
  %1544 = add nuw nsw i64 %1543, 164
  %1545 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1544)
  %1546 = add nuw nsw i64 %1543, 168
  %1547 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1546)
  %1548 = icmp ult i32 %1545, %1547
  br i1 %1548, label %1549, label %1552

1549:                                             ; preds = %1539
  %1550 = add i32 %1545, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1544, i32 noundef %1550)
  %1551 = zext i32 %1545 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1551, i64 noundef %1541)
  br label %1554

1552:                                             ; preds = %1539
  %1553 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %1542, i64 noundef %1541) #5
  br label %1554

1554:                                             ; preds = %1552, %1549
  %.723880 = phi i32 [ %1545, %1549 ], [ %1553, %1552 ]
  %1555 = add nuw nsw i64 %657, 2
  %1556 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1555)
  %1557 = shl i32 %1556, 3
  %1558 = add i32 %1557, %.923925
  %1559 = add nuw nsw i64 %1532, 28
  %1560 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1559)
  %1561 = shl i32 %.1923948, 2
  %1562 = add i32 %1560, %1561
  %1563 = zext i32 %1562 to i64
  %1564 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1563)
  %.not24619 = icmp eq i32 %1564, 0
  br i1 %.not24619, label %1565, label %1567

1565:                                             ; preds = %1554
  %1566 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetCodeBlockSlowPath0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %1531, i32 noundef %.1923948)
  br label %1567

1567:                                             ; preds = %1565, %1554
  %.1723861 = phi i32 [ %1566, %1565 ], [ %1564, %1554 ]
  %1568 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %1569 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %1570 = sub i32 %1568, %1569
  %1571 = icmp ult i32 %1570, 40
  br i1 %1571, label %1572, label %1574

1572:                                             ; preds = %1567
  %1573 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %72, i32 noundef 40) #5
  br label %1576

1574:                                             ; preds = %1567
  %1575 = add i32 %1569, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %1575)
  br label %1576

1576:                                             ; preds = %1574, %1572
  %.2023949 = phi i32 [ %1573, %1572 ], [ %1569, %1574 ]
  %1577 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %197)
  %1578 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %198)
  %1579 = zext i32 %.2023949 to i64
  %1580 = add nuw nsw i64 %1579, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1580, i32 noundef 0)
  %1581 = add nuw nsw i64 %1579, 12
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %1581, i64 noundef %1578)
  %1582 = add nuw nsw i64 %1579, 8
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %1582, i64 noundef %1577)
  %1583 = add nuw nsw i64 %1579, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1583, i32 noundef 0)
  %1584 = zext i32 %1558 to i64
  %1585 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1584)
  %1586 = add nuw nsw i64 %1579, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1586, i32 noundef %1585)
  %1587 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %106)
  %1588 = add i32 %.2023949, 20
  %1589 = and i32 %1588, -4194304
  %.not24620 = icmp eq i32 %1587, %1589
  br i1 %.not24620, label %1591, label %1590

1590:                                             ; preds = %1576
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1588, i32 noundef %1585) #5
  br label %1591

1591:                                             ; preds = %1590, %1576
  %1592 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %200)
  %1593 = xor i32 %1592, %.1723861
  %1594 = add nuw nsw i64 %1579, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1594, i32 noundef %1593)
  %1595 = zext i32 %.723880 to i64
  %1596 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1595)
  %1597 = add nuw nsw i64 %1579, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1597, i32 noundef %1596)
  %1598 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1599 = add i32 %.2023949, 28
  %1600 = and i32 %1599, -4194304
  %.not24621 = icmp eq i32 %1598, %1600
  br i1 %.not24621, label %1602, label %1601

1601:                                             ; preds = %1591
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1599, i32 noundef %1596) #5
  br label %1602

1602:                                             ; preds = %1601, %1591
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1579, i32 noundef 1224736808)
  %1603 = add nuw nsw i64 %1579, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1603, i64 noundef 60129542158)
  %1604 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1583)
  %1605 = or i32 %1604, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1583, i32 noundef %1605)
  %1606 = add nuw nsw i64 %657, 1
  %1607 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1606)
  %1608 = shl i32 %1607, 3
  %1609 = add i32 %1608, %.923925
  %1610 = or disjoint i64 %1579, -281474976710656
  %1611 = zext i32 %1609 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1611, i64 noundef %1610)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

1612:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1613 = add i32 %.923925, -40
  %1614 = zext i32 %1613 to i64
  %1615 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1614)
  %1616 = add nuw nsw i64 %657, 3
  %1617 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1616)
  %1618 = zext i32 %.223837 to i64
  %1619 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1618)
  %1620 = add nuw nsw i64 %657, 2
  %1621 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1620)
  %1622 = add i32 %.923925, -48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %193, i32 noundef %1622)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %194, i32 noundef %1622)
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %195, i64 noundef %1615)
  %1623 = add i32 %.923925, -64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %196, i32 noundef %1623)
  %1624 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %196)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26442, i64 noundef %1624)
  %1625 = shl i32 %1621, 3
  %1626 = add i32 %1625, %.923925
  %1627 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateGenerator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x2A0x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ANativeArgs0x29(ptr noundef %0, i32 noundef %2, i32 noundef %1619, i32 noundef %1617, i32 noundef %1626, i32 noundef %21) #5
  %1628 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %1629 = icmp eq i32 %1627, -1
  br i1 %1629, label %._crit_edge, label %1630

1630:                                             ; preds = %1612
  %1631 = zext i32 %1628 to i64
  %1632 = add nuw nsw i64 %1631, 1
  %1633 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1632)
  %1634 = shl i32 %1633, 3
  %1635 = add i32 %1634, %.923925
  %1636 = zext i32 %1627 to i64
  %1637 = or disjoint i64 %1636, -281474976710656
  %1638 = zext i32 %1635 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1638, i64 noundef %1637)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %1639 = add i32 %1628, 5
  br label %.backedge.backedge

1640:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1641 = add i32 %.923925, -40
  %1642 = zext i32 %1641 to i64
  %1643 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1642)
  %1644 = add nuw nsw i64 %657, 3
  %1645 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1644)
  %1646 = zext i32 %.223837 to i64
  %1647 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1646)
  %1648 = add nuw nsw i64 %657, 2
  %1649 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1648)
  %1650 = add i32 %.923925, -48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %187, i32 noundef %1650)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %188, i32 noundef %1650)
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %189, i64 noundef %1643)
  %1651 = add i32 %.923925, -64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %190, i32 noundef %1651)
  %1652 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %190)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %191, i64 noundef %1652)
  %1653 = shl i32 %1649, 3
  %1654 = add i32 %1653, %.923925
  %1655 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateGenerator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x2A0x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ANativeArgs0x29(ptr noundef %0, i32 noundef %2, i32 noundef %1647, i32 noundef %1645, i32 noundef %1654, i32 noundef %192) #5
  %1656 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %1657 = icmp eq i32 %1655, -1
  br i1 %1657, label %._crit_edge, label %1658

1658:                                             ; preds = %1640
  %1659 = zext i32 %1656 to i64
  %1660 = add nuw nsw i64 %1659, 1
  %1661 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1660)
  %1662 = shl i32 %1661, 3
  %1663 = add i32 %1662, %.923925
  %1664 = zext i32 %1655 to i64
  %1665 = or disjoint i64 %1664, -281474976710656
  %1666 = zext i32 %1663 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1666, i64 noundef %1665)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %1667 = add i32 %1656, 7
  br label %.backedge.backedge

1668:                                             ; preds = %.backedge
  %1669 = add i32 %.923925, -56
  %1670 = zext i32 %1669 to i64
  %1671 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1670)
  %1672 = zext i32 %1671 to i64
  %1673 = add nuw nsw i64 %1672, 20
  %1674 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1673)
  %1675 = add nuw nsw i64 %657, 2
  %1676 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1675)
  %.not24614 = icmp eq i32 %1676, 0
  br i1 %.not24614, label %.loopexit24731, label %1677

1677:                                             ; preds = %1668
  %1678 = and i32 %1676, 7
  %.not24615 = icmp eq i32 %1678, 0
  br i1 %.not24615, label %.loopexit24733, label %.preheader24732.preheader

.preheader24732.preheader:                        ; preds = %1677
  %1679 = and i32 %1676, -8
  br label %.preheader24732

.preheader24732:                                  ; preds = %.preheader24732.preheader, %.preheader24732
  %.2123950 = phi i32 [ %1683, %.preheader24732 ], [ 0, %.preheader24732.preheader ]
  %.823881 = phi i32 [ %1682, %.preheader24732 ], [ %1674, %.preheader24732.preheader ]
  %1680 = zext i32 %.823881 to i64
  %1681 = add nuw nsw i64 %1680, 4
  %1682 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1681)
  %1683 = add nuw nsw i32 %.2123950, 1
  %.not24616 = icmp eq i32 %1683, %1678
  br i1 %.not24616, label %.loopexit24733, label %.preheader24732

1684:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1685 = add nuw nsw i64 %657, 2
  %1686 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1685)
  %1687 = shl i32 %1686, 3
  %1688 = add i32 %1687, %.923925
  %1689 = add nuw nsw i64 %657, 3
  %1690 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1689)
  %1691 = shl i32 %1690, 3
  %1692 = add i32 %1691, 23
  %1693 = and i32 %1692, -8
  %1694 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %166)
  %1695 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %138)
  %1696 = sub i32 %1694, %1695
  %1697 = icmp ugt i32 %1693, %1696
  br i1 %1697, label %1698, label %1700

1698:                                             ; preds = %1684
  %1699 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1693) #5
  br label %1702

1700:                                             ; preds = %1684
  %1701 = add i32 %1693, %1695
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %1701)
  br label %1702

1702:                                             ; preds = %1700, %1698
  %.2223951 = phi i32 [ %1699, %1698 ], [ %1695, %1700 ]
  %1703 = zext i32 %1688 to i64
  %1704 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1703)
  %1705 = zext i32 %.2223951 to i64
  %1706 = add nuw nsw i64 %1705, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1706, i32 noundef %1704)
  %1707 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1708 = add i32 %.2223951, 4
  %1709 = and i32 %1708, -4194304
  %.not24609 = icmp eq i32 %1707, %1709
  br i1 %.not24609, label %1711, label %1710

1710:                                             ; preds = %1702
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1708, i32 noundef %1704) #5
  br label %1711

1711:                                             ; preds = %1710, %1702
  %1712 = add nuw nsw i64 %1705, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1712, i32 noundef %1690)
  %.not24610 = icmp eq i32 %1690, 0
  br i1 %.not24610, label %.loopexit24734, label %1713

1713:                                             ; preds = %1711
  %1714 = add i32 %.2223951, 16
  %1715 = and i32 %1690, 7
  %.not24611 = icmp eq i32 %1715, 0
  br i1 %.not24611, label %.loopexit24736, label %.preheader24735

.preheader24735:                                  ; preds = %1713, %.preheader24735
  %.923882 = phi i32 [ %1717, %.preheader24735 ], [ %1714, %1713 ]
  %.923701 = phi i32 [ %1718, %.preheader24735 ], [ 0, %1713 ]
  %1716 = zext i32 %.923882 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1716, i64 noundef -1688849860263936)
  %1717 = add i32 %.923882, 8
  %1718 = add nuw nsw i32 %.923701, 1
  %.not24612 = icmp eq i32 %1718, %1715
  br i1 %.not24612, label %.loopexit24736, label %.preheader24735

.loopexit24736:                                   ; preds = %.preheader24735, %1713
  %.1023883 = phi i32 [ %1714, %1713 ], [ %1717, %.preheader24735 ]
  %1719 = add i32 %1690, 536870911
  %1720 = and i32 %1719, 536870911
  %1721 = icmp ult i32 %1720, 7
  br i1 %1721, label %.loopexit24734, label %1722

1722:                                             ; preds = %.loopexit24736
  %1723 = add i32 %1714, %1691
  br label %1724

1724:                                             ; preds = %1724, %1722
  %.1123884 = phi i32 [ %.1023883, %1722 ], [ %1733, %1724 ]
  %1725 = zext i32 %.1123884 to i64
  %1726 = add nuw nsw i64 %1725, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1726, i64 noundef -1688849860263936)
  %1727 = add nuw nsw i64 %1725, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1727, i64 noundef -1688849860263936)
  %1728 = add nuw nsw i64 %1725, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1728, i64 noundef -1688849860263936)
  %1729 = add nuw nsw i64 %1725, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1729, i64 noundef -1688849860263936)
  %1730 = add nuw nsw i64 %1725, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1730, i64 noundef -1688849860263936)
  %1731 = add nuw nsw i64 %1725, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1731, i64 noundef -1688849860263936)
  %1732 = add nuw nsw i64 %1725, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1732, i64 noundef -1688849860263936)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1725, i64 noundef -1688849860263936)
  %1733 = add i32 %.1123884, 64
  %.not24613 = icmp eq i32 %1733, %1723
  br i1 %.not24613, label %.loopexit24734, label %1724

.loopexit24734:                                   ; preds = %1724, %.loopexit24736, %1711
  %1734 = and i32 %1692, 16777208
  %1735 = or disjoint i32 %1734, 352321536
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1705, i32 noundef %1735)
  %1736 = add nuw nsw i64 %657, 1
  %1737 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1736)
  %1738 = shl i32 %1737, 3
  %1739 = add i32 %1738, %.923925
  %1740 = or disjoint i64 %1705, -281474976710656
  %1741 = zext i32 %1739 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1741, i64 noundef %1740)
  %1742 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %1743 = add i32 %1742, 7
  br label %.backedge.backedge

1744:                                             ; preds = %.backedge
  %1745 = add i32 %.923925, -56
  %1746 = zext i32 %1745 to i64
  %1747 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1746)
  %1748 = zext i32 %1747 to i64
  %1749 = add nuw nsw i64 %1748, 20
  %1750 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %1749)
  %1751 = or i64 %1750, -281474976710656
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %1751)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1752 = zext i32 %.223837 to i64
  %1753 = add nuw nsw i64 %1752, 4
  %1754 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1753)
  %1755 = and i32 %1754, 1
  %.not24603 = icmp eq i32 %1755, 0
  %1756 = zext i32 %1754 to i64
  br i1 %.not24603, label %1760, label %1757

1757:                                             ; preds = %1744
  %1758 = add nuw nsw i64 %1756, 23
  %1759 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1758)
  br label %1763

1760:                                             ; preds = %1744
  %1761 = add nuw nsw i64 %1756, 12
  %1762 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1761)
  br label %1763

1763:                                             ; preds = %1760, %1757
  %.523761 = phi i32 [ %1759, %1757 ], [ %1762, %1760 ]
  %1764 = shl i32 %.523761, 3
  %1765 = add i32 %1764, 23
  %1766 = and i32 %1765, -8
  %1767 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %166)
  %1768 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %138)
  %1769 = sub i32 %1767, %1768
  %1770 = icmp ugt i32 %1766, %1769
  br i1 %1770, label %1771, label %1774

1771:                                             ; preds = %1763
  %1772 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1766) #5
  %1773 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %66)
  br label %1776

1774:                                             ; preds = %1763
  %1775 = add i32 %1766, %1768
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %1775)
  br label %1776

1776:                                             ; preds = %1774, %1771
  %.2323952 = phi i32 [ %1772, %1771 ], [ %1768, %1774 ]
  %.123797 = phi i64 [ %1773, %1771 ], [ %1751, %1774 ]
  %1777 = trunc i64 %.123797 to i32
  %1778 = zext i32 %.2323952 to i64
  %1779 = add nuw nsw i64 %1778, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1779, i32 noundef %1777)
  %1780 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1781 = add i32 %.2323952, 4
  %1782 = and i32 %1781, -4194304
  %.not24604 = icmp eq i32 %1780, %1782
  br i1 %.not24604, label %1784, label %1783

1783:                                             ; preds = %1776
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3ArelocationWriteBarrier0x28void0x20const0x2A0x2C0x20void0x20const0x2A0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1781, i32 noundef %1777) #5
  br label %1784

1784:                                             ; preds = %1783, %1776
  %1785 = add nuw nsw i64 %1778, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1785, i32 noundef %.523761)
  %.not24605 = icmp eq i32 %.523761, 0
  br i1 %.not24605, label %.loopexit24737, label %1786

1786:                                             ; preds = %1784
  %1787 = add i32 %.2323952, 16
  %1788 = and i32 %.523761, 7
  %.not24606 = icmp eq i32 %1788, 0
  br i1 %.not24606, label %.loopexit24739, label %.preheader24738

.preheader24738:                                  ; preds = %1786, %.preheader24738
  %.1223885 = phi i32 [ %1790, %.preheader24738 ], [ %1787, %1786 ]
  %.1023702 = phi i32 [ %1791, %.preheader24738 ], [ 0, %1786 ]
  %1789 = zext i32 %.1223885 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1789, i64 noundef -1688849860263936)
  %1790 = add i32 %.1223885, 8
  %1791 = add nuw nsw i32 %.1023702, 1
  %.not24607 = icmp eq i32 %1791, %1788
  br i1 %.not24607, label %.loopexit24739, label %.preheader24738

.loopexit24739:                                   ; preds = %.preheader24738, %1786
  %.1323886 = phi i32 [ %1787, %1786 ], [ %1790, %.preheader24738 ]
  %1792 = add i32 %.523761, 536870911
  %1793 = and i32 %1792, 536870911
  %1794 = icmp ult i32 %1793, 7
  br i1 %1794, label %.loopexit24737, label %1795

1795:                                             ; preds = %.loopexit24739
  %1796 = add i32 %1787, %1764
  br label %1797

1797:                                             ; preds = %1797, %1795
  %.1423887 = phi i32 [ %.1323886, %1795 ], [ %1806, %1797 ]
  %1798 = zext i32 %.1423887 to i64
  %1799 = add nuw nsw i64 %1798, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1799, i64 noundef -1688849860263936)
  %1800 = add nuw nsw i64 %1798, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1800, i64 noundef -1688849860263936)
  %1801 = add nuw nsw i64 %1798, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1801, i64 noundef -1688849860263936)
  %1802 = add nuw nsw i64 %1798, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1802, i64 noundef -1688849860263936)
  %1803 = add nuw nsw i64 %1798, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1803, i64 noundef -1688849860263936)
  %1804 = add nuw nsw i64 %1798, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1804, i64 noundef -1688849860263936)
  %1805 = add nuw nsw i64 %1798, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1805, i64 noundef -1688849860263936)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1798, i64 noundef -1688849860263936)
  %1806 = add i32 %.1423887, 64
  %.not24608 = icmp eq i32 %1806, %1796
  br i1 %.not24608, label %.loopexit24737, label %1797

.loopexit24737:                                   ; preds = %1797, %.loopexit24739, %1784
  %1807 = and i32 %1765, 16777208
  %1808 = or disjoint i32 %1807, 352321536
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1778, i32 noundef %1808)
  %1809 = add nuw nsw i64 %657, 1
  %1810 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1809)
  %1811 = shl i32 %1810, 3
  %1812 = add i32 %1811, %.923925
  %1813 = or disjoint i64 %1778, -281474976710656
  %1814 = zext i32 %1812 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1814, i64 noundef %1813)
  %1815 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %1816 = add i32 %1815, 2
  br label %.backedge.backedge

1817:                                             ; preds = %.backedge
  %1818 = add nuw nsw i64 %657, 3
  %1819 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1818)
  %1820 = shl i32 %1819, 3
  %1821 = add i32 %1820, %.923925
  %1822 = zext i32 %1821 to i64
  %1823 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1822)
  %1824 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1825 = add nuw nsw i64 %657, 1
  %1826 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1825)
  %1827 = shl i32 %1826, 3
  %1828 = add i32 %1827, %.923925
  %1829 = zext i32 %1828 to i64
  %1830 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1829)
  %1831 = add nuw nsw i64 %657, 2
  %1832 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1831)
  %1833 = shl i32 %1832, 3
  %1834 = add i32 %1830, 16
  %1835 = add i32 %1834, %1833
  %1836 = and i32 %1835, -4194304
  %.not24602 = icmp eq i32 %1824, %1836
  br i1 %.not24602, label %1838, label %1837

1837:                                             ; preds = %1817
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1835, i64 noundef %1823) #5
  br label %1838

1838:                                             ; preds = %1837, %1817
  %1839 = zext i32 %1835 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1839, i64 noundef %1823)
  %1840 = add i32 %.323685, 4
  br label %.backedge.backedge

1841:                                             ; preds = %.backedge
  %1842 = add nuw nsw i64 %657, 4
  %1843 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1842)
  %1844 = shl i32 %1843, 3
  %1845 = add i32 %1844, %.923925
  %1846 = zext i32 %1845 to i64
  %1847 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1846)
  %1848 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1849 = add nuw nsw i64 %657, 1
  %1850 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1849)
  %1851 = shl i32 %1850, 3
  %1852 = add i32 %1851, %.923925
  %1853 = zext i32 %1852 to i64
  %1854 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1853)
  %1855 = add nuw nsw i64 %657, 2
  %1856 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1855)
  %1857 = shl i32 %1856, 3
  %1858 = add i32 %1854, 16
  %1859 = add i32 %1858, %1857
  %1860 = and i32 %1859, -4194304
  %.not24601 = icmp eq i32 %1848, %1860
  br i1 %.not24601, label %1862, label %1861

1861:                                             ; preds = %1841
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %72, i32 noundef %1859, i64 noundef %1847) #5
  br label %1862

1862:                                             ; preds = %1861, %1841
  %1863 = zext i32 %1859 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1863, i64 noundef %1847)
  %1864 = add i32 %.323685, 5
  br label %.backedge.backedge

1865:                                             ; preds = %.backedge
  %1866 = add nuw nsw i64 %657, 3
  %1867 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1866)
  %1868 = shl i32 %1867, 3
  %1869 = add i32 %1868, %.923925
  %1870 = zext i32 %1869 to i64
  %1871 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1870)
  %1872 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1873 = add nuw nsw i64 %657, 1
  %1874 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1873)
  %1875 = shl i32 %1874, 3
  %1876 = add i32 %1875, %.923925
  %1877 = zext i32 %1876 to i64
  %1878 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1877)
  %1879 = add nuw nsw i64 %657, 2
  %1880 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1879)
  %1881 = shl i32 %1880, 3
  %1882 = add i32 %1881, %1878
  %1883 = add i32 %1882, 16
  %1884 = and i32 %1883, -4194304
  %1885 = icmp eq i32 %1872, %1884
  br i1 %1885, label %1892, label %1886

1886:                                             ; preds = %1865
  %1887 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %186)
  %.not24600 = icmp eq i32 %1887, 0
  br i1 %.not24600, label %1892, label %1888

1888:                                             ; preds = %1886
  %1889 = zext i32 %1882 to i64
  %1890 = add nuw nsw i64 %1889, 16
  %1891 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1890)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %72, i64 noundef %1891) #5
  br label %1892

1892:                                             ; preds = %1886, %1865, %1888
  %1893 = zext i32 %1882 to i64
  %1894 = add nuw nsw i64 %1893, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1894, i64 noundef %1871)
  %1895 = add i32 %.323685, 4
  br label %.backedge.backedge

1896:                                             ; preds = %.backedge
  %1897 = add nuw nsw i64 %657, 4
  %1898 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1897)
  %1899 = shl i32 %1898, 3
  %1900 = add i32 %1899, %.923925
  %1901 = zext i32 %1900 to i64
  %1902 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1901)
  %1903 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  %1904 = add nuw nsw i64 %657, 1
  %1905 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1904)
  %1906 = shl i32 %1905, 3
  %1907 = add i32 %1906, %.923925
  %1908 = zext i32 %1907 to i64
  %1909 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1908)
  %1910 = add nuw nsw i64 %657, 2
  %1911 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1910)
  %1912 = shl i32 %1911, 3
  %1913 = add i32 %1912, %1909
  %1914 = add i32 %1913, 16
  %1915 = and i32 %1914, -4194304
  %1916 = icmp eq i32 %1903, %1915
  br i1 %1916, label %1923, label %1917

1917:                                             ; preds = %1896
  %1918 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %186)
  %.not24599 = icmp eq i32 %1918, 0
  br i1 %.not24599, label %1923, label %1919

1919:                                             ; preds = %1917
  %1920 = zext i32 %1913 to i64
  %1921 = add nuw nsw i64 %1920, 16
  %1922 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1921)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %72, i64 noundef %1922) #5
  br label %1923

1923:                                             ; preds = %1917, %1896, %1919
  %1924 = zext i32 %1913 to i64
  %1925 = add nuw nsw i64 %1924, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1925, i64 noundef %1902)
  %1926 = add i32 %.323685, 5
  br label %.backedge.backedge

1927:                                             ; preds = %.backedge
  %1928 = add nuw nsw i64 %657, 1
  %1929 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1928)
  %1930 = shl i32 %1929, 3
  %1931 = add i32 %1930, %.923925
  %1932 = add nuw nsw i64 %657, 2
  %1933 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1932)
  %1934 = shl i32 %1933, 3
  %1935 = add i32 %1934, %.923925
  %1936 = zext i32 %1935 to i64
  %1937 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1936)
  %1938 = add nuw nsw i64 %657, 3
  %1939 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1938)
  %1940 = shl i32 %1939, 3
  %1941 = add i32 %1940, %1937
  %1942 = zext i32 %1941 to i64
  %1943 = add nuw nsw i64 %1942, 16
  %1944 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1943)
  %1945 = zext i32 %1931 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1945, i64 noundef %1944)
  %1946 = add i32 %.323685, 4
  br label %.backedge.backedge

1947:                                             ; preds = %.backedge
  %1948 = add nuw nsw i64 %657, 1
  %1949 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1948)
  %1950 = shl i32 %1949, 3
  %1951 = add i32 %1950, %.923925
  %1952 = add nuw nsw i64 %657, 2
  %1953 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1952)
  %1954 = shl i32 %1953, 3
  %1955 = add i32 %1954, %.923925
  %1956 = zext i32 %1955 to i64
  %1957 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1956)
  %1958 = add nuw nsw i64 %657, 3
  %1959 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %1958)
  %1960 = shl i32 %1959, 3
  %1961 = add i32 %1960, %1957
  %1962 = zext i32 %1961 to i64
  %1963 = add nuw nsw i64 %1962, 16
  %1964 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1963)
  %1965 = zext i32 %1951 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1965, i64 noundef %1964)
  %1966 = add i32 %.323685, 5
  br label %.backedge.backedge

1967:                                             ; preds = %.backedge
  %1968 = add nuw nsw i64 %657, 1
  %1969 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1968)
  %1970 = shl i32 %1969, 3
  %1971 = add i32 %1970, %.923925
  %1972 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %185)
  %1973 = zext i32 %1971 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1973, i64 noundef %1972)
  %1974 = add i32 %.323685, 2
  br label %.backedge.backedge

1975:                                             ; preds = %.backedge
  %1976 = add nuw nsw i64 %657, 1
  %1977 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %1976)
  %1978 = shl i32 %1977, 3
  %1979 = add i32 %1978, %.923925
  %1980 = add i32 %.923925, -48
  %1981 = zext i32 %1980 to i64
  %1982 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %1981)
  %1983 = zext i32 %1979 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %1983, i64 noundef %1982)
  %1984 = add i32 %.323685, 2
  br label %.backedge.backedge

1985:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %1986 = load i32, ptr %5, align 8, !tbaa !5
  %1987 = add i32 %1986, -32
  store i32 %1987, ptr %5, align 8, !tbaa !5
  %1988 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %1989 = zext i32 %1988 to i64
  %1990 = add nuw nsw i64 %1989, 172
  %1991 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1990)
  %1992 = add nuw nsw i64 %1989, 164
  %1993 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1992)
  %1994 = zext i32 %.223837 to i64
  %1995 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1994)
  %1996 = zext i32 %1995 to i64
  %1997 = add nuw nsw i64 %1996, 12
  %1998 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1997)
  %1999 = add nuw nsw i64 %657, 1
  %2000 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1999)
  %2001 = shl i32 %2000, 2
  %2002 = add i32 %2001, %1998
  %2003 = zext i32 %2002 to i64
  %2004 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2003)
  %2005 = zext i32 %1987 to i64
  %2006 = add nuw nsw i64 %2005, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2006, i32 noundef 59)
  %2007 = add nuw nsw i64 %2005, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2007, i32 noundef 1)
  %2008 = add nuw nsw i64 %2005, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2008, i32 noundef 59)
  %2009 = add nuw nsw i64 %2005, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2009, i32 noundef 1)
  %2010 = add i32 %1986, -8
  %2011 = add i32 %1986, -20
  %2012 = add i32 %1986, -24
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnPropertyInternal0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %2010, i32 noundef %83, i32 noundef %2, i32 noundef %2004, i32 noundef %2011, i32 noundef 67208, i32 noundef %2012) #5
  %2013 = add nuw nsw i64 %2005, 24
  %2014 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2013)
  %.not24596 = icmp eq i32 %2014, 0
  br i1 %.not24596, label %2015, label %2028

2015:                                             ; preds = %1985
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2008, i64 noundef -4294967296)
  %2016 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1994)
  %2017 = zext i32 %2016 to i64
  %2018 = add nuw nsw i64 %2017, 12
  %2019 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2018)
  %2020 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %1999)
  %2021 = shl i32 %2020, 2
  %2022 = add i32 %2021, %2019
  %2023 = zext i32 %2022 to i64
  %2024 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2023)
  %2025 = add i32 %1986, -16
  %2026 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetOwnNamedDescriptor0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef nonnull %0, i32 noundef %83, i32 noundef %2, i32 noundef %2024, i32 noundef %2025) #5
  %.not24597 = icmp eq i32 %2026, 0
  br i1 %.not24597, label %2028, label %2027

2027:                                             ; preds = %2015
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef -1970324836974592)
  br label %2028

2028:                                             ; preds = %2015, %1985, %2027
  %.not24598 = phi i1 [ false, %1985 ], [ false, %2027 ], [ true, %2015 ]
  %2029 = add nuw nsw i64 %1989, 136
  %2030 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2029)
  %2031 = shl i32 %1991, 2
  %2032 = add i32 %2030, %2031
  %2033 = zext i32 %2032 to i64
  %2034 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2033)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1990, i32 noundef %1991)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %1992, i32 noundef %1993)
  %2035 = add i32 %2034, 128
  %2036 = add nuw nsw i64 %1989, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2036, i32 noundef %2035)
  store i32 %1986, ptr %5, align 8, !tbaa !5
  %2037 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  br i1 %.not24598, label %._crit_edge, label %2038

2038:                                             ; preds = %2028
  %2039 = add i32 %2037, 5
  br label %.backedge.backedge

2040:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2041 = load i32, ptr %5, align 8, !tbaa !5
  %2042 = add i32 %2041, -48
  store i32 %2042, ptr %5, align 8, !tbaa !5
  %2043 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %2044 = zext i32 %2043 to i64
  %2045 = add nuw nsw i64 %2044, 172
  %2046 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2045)
  %2047 = add nuw nsw i64 %2044, 164
  %2048 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2047)
  %2049 = zext i32 %.223837 to i64
  %2050 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2049)
  %2051 = zext i32 %2050 to i64
  %2052 = add nuw nsw i64 %2051, 12
  %2053 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2052)
  %2054 = add nuw nsw i64 %657, 1
  %2055 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2054)
  %2056 = shl i32 %2055, 2
  %2057 = add i32 %2056, %2053
  %2058 = zext i32 %2057 to i64
  %2059 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2058)
  %2060 = load i32, ptr %5, align 8, !tbaa !5
  %2061 = add i32 %2060, -16
  store i32 %2061, ptr %5, align 8, !tbaa !5
  %2062 = zext i32 %2061 to i64
  %2063 = add nuw nsw i64 %2062, 4
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2063, i64 noundef -4294967296)
  %2064 = add nuw nsw i64 %2062, 2
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %2064, i32 noundef 1)
  %2065 = add nuw nsw i64 %2062, 14
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %2065, i32 noundef 1)
  %2066 = add i32 %2060, -14
  %2067 = add i32 %2060, -12
  %2068 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedDescriptorUnsafe0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %0, i32 noundef %83, i32 noundef %2, i32 noundef %2059, i32 noundef %2066, i32 noundef %2067) #5
  %2069 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2063)
  store i32 %2060, ptr %5, align 8, !tbaa !5
  %.not24592 = icmp eq i32 %2068, 0
  %2070 = and i32 %2069, 8
  %.not2459324594 = icmp ne i32 %2070, 0
  %.not24593 = select i1 %.not24592, i1 true, i1 %.not2459324594
  br i1 %.not24593, label %2079, label %2071

2071:                                             ; preds = %2040
  %2072 = zext i32 %2042 to i64
  %2073 = add nuw nsw i64 %2072, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2073, i32 noundef 0)
  %2074 = add nuw nsw i64 %2072, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2074, i64 noundef 163208757249)
  %2075 = add nuw nsw i64 %2072, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2075, i32 noundef 3)
  %2076 = add nuw nsw i64 %2072, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2076, i32 noundef 38140)
  %2077 = add i32 %2041, -40
  %2078 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseSyntaxError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %2077)
  br label %2079

2079:                                             ; preds = %2071, %2040
  %.2423953 = phi i32 [ %2078, %2071 ], [ 1, %2040 ]
  %2080 = add nuw nsw i64 %2044, 136
  %2081 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2080)
  %2082 = shl i32 %2046, 2
  %2083 = add i32 %2081, %2082
  %2084 = zext i32 %2083 to i64
  %2085 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2084)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2045, i32 noundef %2046)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2047, i32 noundef %2048)
  %2086 = add i32 %2085, 128
  %2087 = add nuw nsw i64 %2044, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2087, i32 noundef %2086)
  store i32 %2041, ptr %5, align 8, !tbaa !5
  %2088 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24595 = icmp eq i32 %.2423953, 0
  br i1 %.not24595, label %._crit_edge, label %2089

2089:                                             ; preds = %2079
  %2090 = add i32 %2088, 5
  br label %.backedge.backedge

2091:                                             ; preds = %.backedge
  %2092 = add i32 %.323685, 8
  %2093 = add nuw nsw i64 %657, 4
  %2094 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2093)
  br label %2111

2095:                                             ; preds = %.backedge
  %2096 = add nuw nsw i64 %657, 4
  %2097 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2096)
  %2098 = add i32 %.323685, 8
  br label %2111

2099:                                             ; preds = %.backedge
  %2100 = add nuw nsw i64 %657, 4
  %2101 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2100)
  %2102 = add i32 %.323685, 5
  br label %2111

2103:                                             ; preds = %.backedge
  %2104 = add i32 %.323685, 6
  %2105 = add nuw nsw i64 %657, 4
  %2106 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2105)
  br label %2111

2107:                                             ; preds = %.backedge
  %2108 = add nuw nsw i64 %657, 4
  %2109 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2108)
  %2110 = add i32 %.323685, 6
  br label %2111

2111:                                             ; preds = %2095, %2099, %2107, %2103, %2091
  %.2623955 = phi i32 [ %2106, %2103 ], [ %2094, %2091 ], [ %2109, %2107 ], [ %2101, %2099 ], [ %2097, %2095 ]
  %.1523888 = phi i32 [ %2104, %2103 ], [ %2092, %2091 ], [ %2110, %2107 ], [ %2102, %2099 ], [ %2098, %2095 ]
  %.not24587 = phi i1 [ false, %2103 ], [ false, %2091 ], [ true, %2107 ], [ true, %2099 ], [ true, %2095 ]
  %2112 = add nuw nsw i64 %657, 2
  %2113 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2112)
  %2114 = shl i32 %2113, 3
  %2115 = add i32 %2114, %.923925
  %2116 = zext i32 %2115 to i64
  %2117 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2116)
  %2118 = icmp ugt i64 %2117, -281474976710657
  br i1 %2118, label %2119, label %2286

2119:                                             ; preds = %2111
  %2120 = trunc i64 %2117 to i32
  %2121 = and i64 %2117, 4294967295
  %2122 = add nuw nsw i64 %2121, 12
  %2123 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2122)
  %2124 = add i32 %.223837, 24
  %2125 = add nuw nsw i64 %657, 3
  %2126 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2125)
  %2127 = shl i32 %2126, 3
  %2128 = add i32 %2124, %2127
  %2129 = zext i32 %2128 to i64
  %2130 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2129)
  %2131 = icmp eq i32 %2123, %2130
  br i1 %2131, label %2132, label %2189

2132:                                             ; preds = %2119
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2133 = add nuw nsw i64 %2129, 4
  %2134 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2133)
  %2135 = icmp ult i32 %2134, 5
  br i1 %2135, label %2136, label %2140

2136:                                             ; preds = %2132
  %2137 = shl nuw nsw i32 %2134, 2
  %2138 = add i32 %2120, 20
  %2139 = add i32 %2138, %2137
  br label %2146

2140:                                             ; preds = %2132
  %2141 = add nuw nsw i64 %2121, 16
  %2142 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2141)
  %2143 = shl i32 %2134, 2
  %2144 = add i32 %2143, -12
  %2145 = add i32 %2144, %2142
  br label %2146

2146:                                             ; preds = %2140, %2136
  %.823764 = phi i32 [ %2139, %2136 ], [ %2145, %2140 ]
  %2147 = zext i32 %.823764 to i64
  %2148 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2147)
  %2149 = and i32 %2148, 15
  switch i32 %2149, label %2150 [
    i32 1, label %2153
    i32 2, label %2157
    i32 3, label %2161
    i32 4, label %2169
    i32 5, label %2173
    i32 6, label %2177
    i32 7, label %2181
    i32 15, label %2182
    i32 9, label %2153
    i32 10, label %2157
    i32 11, label %2161
    i32 12, label %2169
    i32 13, label %2173
    i32 14, label %2183
  ]

2150:                                             ; preds = %2146
  %2151 = zext i32 %2148 to i64
  %2152 = or disjoint i64 %2151, -281474976710656
  br label %2183

2153:                                             ; preds = %2146, %2146
  %2154 = and i32 %2148, -8
  %2155 = zext i32 %2154 to i64
  %2156 = or disjoint i64 %2155, -562949953421312
  br label %2183

2157:                                             ; preds = %2146, %2146
  %2158 = and i32 %2148, -8
  %2159 = zext i32 %2158 to i64
  %2160 = or disjoint i64 %2159, -844424930131968
  br label %2183

2161:                                             ; preds = %2146, %2146
  %2162 = and i32 %2148, -8
  %2163 = zext i32 %2162 to i64
  %2164 = add nuw nsw i64 %2163, 8
  %2165 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %2164)
  %2166 = tail call i64 @i64_reinterpret_f64(double noundef %2165)
  %2167 = fcmp uno double %2165, 0.000000e+00
  %2168 = select i1 %2167, i64 9221120237041090560, i64 %2166
  br label %2183

2169:                                             ; preds = %2146, %2146
  %2170 = ashr i32 %2148, 3
  %2171 = sitofp i32 %2170 to double
  %2172 = tail call i64 @i64_reinterpret_f64(double noundef %2171)
  br label %2183

2173:                                             ; preds = %2146, %2146
  %2174 = lshr i32 %2148, 3
  %2175 = zext nneg i32 %2174 to i64
  %2176 = or disjoint i64 %2175, -1266637395197952
  br label %2183

2177:                                             ; preds = %2146
  %2178 = icmp ugt i32 %2148, 15
  %2179 = zext i1 %2178 to i64
  %2180 = or disjoint i64 %2179, -1407374883553280
  br label %2183

2181:                                             ; preds = %2146
  br label %2183

2182:                                             ; preds = %2146
  br label %2183

2183:                                             ; preds = %2146, %2182, %2181, %2177, %2173, %2169, %2161, %2157, %2153, %2150
  %.223798 = phi i64 [ %2152, %2150 ], [ -1688849860263936, %2146 ], [ -1548112371908608, %2182 ], [ -1970324836974592, %2181 ], [ %2180, %2177 ], [ %2176, %2173 ], [ %2172, %2169 ], [ %2168, %2161 ], [ %2160, %2157 ], [ %2156, %2153 ]
  %2184 = add nuw nsw i64 %657, 1
  %2185 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2184)
  %2186 = shl i32 %2185, 3
  %2187 = add i32 %2186, %.923925
  %2188 = zext i32 %2187 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2188, i64 noundef %.223798)
  br label %.backedge.backedge

2189:                                             ; preds = %2119
  %2190 = zext i32 %.223837 to i64
  %2191 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2190)
  %2192 = zext i32 %2191 to i64
  %2193 = add nuw nsw i64 %2192, 12
  %2194 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2193)
  %2195 = shl i32 %.2623955, 2
  %2196 = add i32 %2194, %2195
  %2197 = zext i32 %2196 to i64
  %2198 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2197)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %180, i64 noundef -4294967296)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2199 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AtryGetOwnNamedDescriptorFast0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %0, i32 noundef %2120, i32 noundef %2198, i32 noundef %181) #5
  %2200 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2201 = icmp slt i32 %2199, 0
  br i1 %2201, label %2275, label %2202

2202:                                             ; preds = %2189
  %.not24579 = icmp eq i32 %2199, 0
  br i1 %.not24579, label %2238, label %2203

2203:                                             ; preds = %2202
  %2204 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %180)
  %2205 = and i32 %2204, 16
  %.not24584 = icmp eq i32 %2205, 0
  br i1 %.not24584, label %2206, label %2275

2206:                                             ; preds = %2203
  %.not24585 = icmp eq i32 %2126, 0
  br i1 %.not24585, label %2215, label %2207

2207:                                             ; preds = %2206
  %2208 = zext i32 %2123 to i64
  %2209 = add nuw nsw i64 %2208, 10
  %2210 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2209)
  %2211 = and i32 %2210, 2
  %.not24586 = icmp eq i32 %2211, 0
  br i1 %.not24586, label %2212, label %2215

2212:                                             ; preds = %2207
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2129, i32 noundef %2123)
  %2213 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %182)
  %2214 = add nuw nsw i64 %2129, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2214, i32 noundef %2213)
  br label %2215

2215:                                             ; preds = %2207, %2206, %2212
  %2216 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %182)
  %2217 = icmp ult i32 %2216, 5
  br i1 %2217, label %2218, label %2222

2218:                                             ; preds = %2215
  %2219 = shl nuw nsw i32 %2216, 2
  %2220 = add i32 %2120, 20
  %2221 = add i32 %2220, %2219
  br label %2228

2222:                                             ; preds = %2215
  %2223 = add nuw nsw i64 %2121, 16
  %2224 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2223)
  %2225 = shl i32 %2216, 2
  %2226 = add i32 %2225, -12
  %2227 = add i32 %2226, %2224
  br label %2228

2228:                                             ; preds = %2222, %2218
  %.523742 = phi i32 [ %2221, %2218 ], [ %2227, %2222 ]
  %2229 = zext i32 %.523742 to i64
  %2230 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2229)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %2230)
  %2231 = tail call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHermesValue320x3A0x3AunboxToHV0x28hermes0x3A0x3Avm0x3A0x3APointerBase0x260x290x20const(ptr noundef %0, i32 noundef %80) #5
  %2232 = zext i32 %2200 to i64
  %2233 = add nuw nsw i64 %2232, 1
  %2234 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2233)
  %2235 = shl i32 %2234, 3
  %2236 = add i32 %2235, %.923925
  %2237 = zext i32 %2236 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2237, i64 noundef %2231)
  br label %.backedge.backedge

2238:                                             ; preds = %2202
  %2239 = add nuw nsw i64 %2121, 4
  %2240 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2239)
  %2241 = and i32 %2240, 128
  %.not24580 = icmp eq i32 %2241, 0
  br i1 %.not24580, label %2242, label %2275

2242:                                             ; preds = %2238
  %2243 = add nuw nsw i64 %2121, 8
  %2244 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2243)
  %.not24581 = icmp ne i32 %2244, 0
  %2245 = and i32 %2240, 64
  %.not24582 = icmp eq i32 %2245, 0
  %or.cond = and i1 %.not24582, %.not24581
  br i1 %or.cond, label %2246, label %2275

2246:                                             ; preds = %2242
  %2247 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2129)
  %2248 = zext i32 %2244 to i64
  %2249 = add nuw nsw i64 %2248, 12
  %2250 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2249)
  %.not24583 = icmp eq i32 %2247, %2250
  br i1 %.not24583, label %2251, label %2275

2251:                                             ; preds = %2246
  %2252 = add nuw nsw i64 %2129, 4
  %2253 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2252)
  %2254 = icmp ult i32 %2253, 5
  br i1 %2254, label %2255, label %2259

2255:                                             ; preds = %2251
  %2256 = shl nuw nsw i32 %2253, 2
  %2257 = add i32 %2244, 20
  %2258 = add i32 %2257, %2256
  br label %2265

2259:                                             ; preds = %2251
  %2260 = add nuw nsw i64 %2248, 16
  %2261 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2260)
  %2262 = shl i32 %2253, 2
  %2263 = add i32 %2262, -12
  %2264 = add i32 %2263, %2261
  br label %2265

2265:                                             ; preds = %2259, %2255
  %.623743 = phi i32 [ %2258, %2255 ], [ %2264, %2259 ]
  %2266 = zext i32 %.623743 to i64
  %2267 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2266)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %2267)
  %2268 = tail call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHermesValue320x3A0x3AunboxToHV0x28hermes0x3A0x3Avm0x3A0x3APointerBase0x260x290x20const(ptr noundef %0, i32 noundef %80) #5
  %2269 = zext i32 %2200 to i64
  %2270 = add nuw nsw i64 %2269, 1
  %2271 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2270)
  %2272 = shl i32 %2271, 3
  %2273 = add i32 %2272, %.923925
  %2274 = zext i32 %2273 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2274, i64 noundef %2268)
  br label %.backedge.backedge

2275:                                             ; preds = %2246, %2242, %2238, %2203, %2189
  %2276 = zext i32 %2200 to i64
  %2277 = add nuw nsw i64 %2276, 2
  %2278 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2277)
  %2279 = or disjoint i32 %.523823, 2
  %2280 = select i1 %.not24587, i32 %.523823, i32 %2279
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %183, i32 noundef %2280)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %148, i32 noundef %2280)
  %2281 = shl i32 %2278, 3
  %2282 = add i32 %2281, %.923925
  %.not24588 = icmp eq i32 %2126, 0
  %2283 = select i1 %.not24588, i32 0, i32 %2128
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2282, i32 noundef %2, i32 noundef %2198, i32 noundef %2282, i32 noundef %184, i32 noundef %2283) #5
  %2284 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2285 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24589 = icmp eq i32 %2285, 0
  br i1 %.not24589, label %._crit_edge, label %2348

2286:                                             ; preds = %2111
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2287 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2112)
  %2288 = shl i32 %2287, 3
  %2289 = add i32 %2288, %.923925
  %2290 = zext i32 %.223837 to i64
  %2291 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2290)
  %2292 = zext i32 %2291 to i64
  %2293 = add nuw nsw i64 %2292, 12
  %2294 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2293)
  %2295 = shl i32 %.2623955, 2
  %2296 = add i32 %2294, %2295
  %2297 = zext i32 %2296 to i64
  %2298 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2297)
  %2299 = load i32, ptr %5, align 8, !tbaa !5
  %2300 = add i32 %2299, -32
  store i32 %2300, ptr %5, align 8, !tbaa !5
  %2301 = zext i32 %2289 to i64
  %2302 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2301)
  %.mask24575 = and i64 %2302, -281474976710656
  %.not24574 = icmp eq i64 %.mask24575, -844424930131968
  %.not24576 = icmp eq i32 %2298, 85
  %or.cond24681 = select i1 %.not24574, i1 %.not24576, i1 false
  br i1 %or.cond24681, label %2303, label %2312

2303:                                             ; preds = %2286
  %2304 = and i64 %2302, 4294967295
  %2305 = add nuw nsw i64 %2304, 4
  %2306 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2305)
  %2307 = and i32 %2306, 2147483647
  %2308 = uitofp nneg i32 %2307 to double
  %2309 = tail call i64 @i64_reinterpret_f64(double noundef %2308)
  %.mask24577 = and i64 %2309, -140737488355328
  %2310 = icmp eq i64 %.mask24577, -1970324836974592
  br i1 %2310, label %2312, label %2311

2311:                                             ; preds = %2303
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %2308)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  br label %2345

2312:                                             ; preds = %2303, %2286
  %2313 = load i32, ptr %5, align 8, !tbaa !5
  %2314 = add i32 %2313, -48
  store i32 %2314, ptr %5, align 8, !tbaa !5
  %2315 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2301)
  %2316 = ashr i64 %2315, 47
  %2317 = trunc nsw i64 %2316 to i32
  switch i32 %2317, label %2322 [
    i32 -12, label %.thread
    i32 -11, label %2318
    i32 -10, label %2320
    i32 -9, label %2321
    i32 -3, label %2319
    i32 -4, label %2319
    i32 -6, label %2330
    i32 -5, label %2330
  ]

2318:                                             ; preds = %2312
  br label %.thread

2319:                                             ; preds = %2312, %2312
  br label %2330

2320:                                             ; preds = %2312
  br label %2330

2321:                                             ; preds = %2312
  br label %2330

2322:                                             ; preds = %2312
  br label %2330

.thread:                                          ; preds = %2312, %2318
  %.sink27203 = phi i64 [ 150323855361, %2318 ], [ 171798691841, %2312 ]
  %.sink27198 = phi i32 [ 31005, %2318 ], [ 31041, %2312 ]
  %2323 = zext i32 %2314 to i64
  %2324 = add nuw nsw i64 %2323, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2324, i32 noundef 0)
  %2325 = add nuw nsw i64 %2323, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2325, i64 noundef %.sink27203)
  %2326 = add nuw nsw i64 %2323, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2326, i32 noundef 3)
  %2327 = add nuw nsw i64 %2323, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2327, i32 noundef %.sink27198)
  %2328 = add i32 %2313, -40
  %2329 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %2328)
  store i32 %2313, ptr %5, align 8, !tbaa !5
  br label %2332

2330:                                             ; preds = %2312, %2312, %2322, %2321, %2320, %2319
  %.923765 = phi i32 [ %179, %2322 ], [ %176, %2319 ], [ %177, %2321 ], [ %178, %2320 ], [ %175, %2312 ], [ %175, %2312 ]
  store i32 %2313, ptr %5, align 8, !tbaa !5
  %2331 = icmp eq i32 %.923765, -1
  br i1 %2331, label %2332, label %2340

2332:                                             ; preds = %.thread, %2330
  %2333 = zext i32 %2300 to i64
  %2334 = add nuw nsw i64 %2333, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2334, i32 noundef 4)
  %2335 = add nuw nsw i64 %2333, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2335, i32 noundef 55430)
  %2336 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2335)
  %2337 = add nuw nsw i64 %2333, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2337, i64 noundef %2336)
  %2338 = add i32 %2299, -24
  %2339 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AamendPropAccessErrorMsgWithPropName0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %2289, i32 noundef %2338, i32 noundef %2298)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef -1688849860263936)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef %2339)
  br label %2345

2340:                                             ; preds = %2330
  %2341 = zext i32 %2300 to i64
  %2342 = add nuw nsw i64 %2341, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2342, i32 noundef 0)
  %2343 = add nuw nsw i64 %2341, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2343, i32 noundef 0)
  %2344 = add i32 %2299, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %.923765, i32 noundef %2, i32 noundef %2298, i32 noundef %2289, i32 noundef %2344, i32 noundef 0) #5
  br label %2345

2345:                                             ; preds = %2340, %2332, %2311
  store i32 %2299, ptr %5, align 8, !tbaa !5
  %2346 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2347 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24578 = icmp eq i32 %2347, 0
  br i1 %.not24578, label %._crit_edge, label %2348

2348:                                             ; preds = %2345, %2275
  %.10 = phi i32 [ %2284, %2275 ], [ %2346, %2345 ]
  %2349 = zext i32 %.10 to i64
  %2350 = add nuw nsw i64 %2349, 1
  %2351 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2350)
  %2352 = shl i32 %2351, 3
  %2353 = add i32 %2352, %.923925
  %2354 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %2355 = zext i32 %2353 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2355, i64 noundef %2354)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

2356:                                             ; preds = %.backedge
  %2357 = add i32 %.323685, 8
  %2358 = add nuw nsw i64 %657, 4
  %2359 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2358)
  br label %2372

2360:                                             ; preds = %.backedge
  %2361 = add nuw nsw i64 %657, 4
  %2362 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2361)
  %2363 = add i32 %.323685, 8
  br label %2372

2364:                                             ; preds = %.backedge
  %2365 = add i32 %.323685, 6
  %2366 = add nuw nsw i64 %657, 4
  %2367 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2366)
  br label %2372

2368:                                             ; preds = %.backedge
  %2369 = add nuw nsw i64 %657, 4
  %2370 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2369)
  %2371 = add i32 %.323685, 6
  br label %2372

2372:                                             ; preds = %2360, %2368, %2364, %2356
  %.2823957 = phi i32 [ %2367, %2364 ], [ %2359, %2356 ], [ %2370, %2368 ], [ %2362, %2360 ]
  %.not24570 = phi i1 [ false, %2364 ], [ false, %2356 ], [ true, %2368 ], [ true, %2360 ]
  %.1123703 = phi i32 [ %2365, %2364 ], [ %2357, %2356 ], [ %2371, %2368 ], [ %2363, %2360 ]
  %2373 = add nuw nsw i64 %657, 1
  %2374 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2373)
  %2375 = shl i32 %2374, 3
  %2376 = add i32 %2375, %.923925
  %2377 = zext i32 %2376 to i64
  %2378 = add nuw nsw i64 %2377, 6
  %2379 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %2378)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2380 = icmp eq i32 %2379, -1
  br i1 %2380, label %2381, label %2524

2381:                                             ; preds = %2372
  %2382 = add nuw nsw i64 %657, 2
  %2383 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2382)
  %2384 = shl i32 %2383, 3
  %2385 = add i32 %2384, %.923925
  %2386 = zext i32 %2385 to i64
  %2387 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2386)
  %2388 = ashr i64 %2387, 47
  %2389 = trunc nsw i64 %2388 to i32
  switch i32 %2389, label %2407 [
    i32 -14, label %2442
    i32 -1, label %2405
    i32 -12, label %2390
    i32 -11, label %2391
    i32 -10, label %2392
    i32 -9, label %2395
    i32 -2, label %2405
    i32 -3, label %2402
    i32 -6, label %2399
    i32 -5, label %2399
    i32 -4, label %2402
  ]

2390:                                             ; preds = %2381
  br label %2442

2391:                                             ; preds = %2381
  br label %2442

2392:                                             ; preds = %2381
  %2393 = and i64 %2387, 1
  %.not24563 = icmp eq i64 %2393, 0
  %2394 = select i1 %.not24563, i32 6, i32 22
  br label %2442

2395:                                             ; preds = %2381
  %2396 = trunc i64 %2387 to i32
  %2397 = shl i32 %2396, 3
  %2398 = or disjoint i32 %2397, 5
  br label %2442

2399:                                             ; preds = %2381, %2381
  %2400 = trunc i64 %2387 to i32
  %2401 = or i32 %2400, 2
  br label %2442

2402:                                             ; preds = %2381, %2381
  %2403 = trunc i64 %2387 to i32
  %2404 = or i32 %2403, 1
  br label %2442

2405:                                             ; preds = %2381, %2381
  %2406 = trunc i64 %2387 to i32
  br label %2442

2407:                                             ; preds = %2381
  %2408 = tail call double @f64_reinterpret_i64(i64 noundef %2387)
  %2409 = tail call double @wasm_fabs(double noundef %2408)
  %2410 = fcmp olt double %2409, 0x41E0000000000000
  br i1 %2410, label %2411, label %2420

2411:                                             ; preds = %2407
  %2412 = fcmp uno double %2408, 0.000000e+00
  br i1 %2412, label %2413, label %2414, !prof !18

2413:                                             ; preds = %2411
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

2414:                                             ; preds = %2411
  %2415 = fcmp ule double %2408, 0xC1E0000000200000
  %2416 = fcmp uge double %2408, 0x41E0000000000000
  %.not24566 = or i1 %2415, %2416
  br i1 %.not24566, label %2417, label %2418, !prof !18

2417:                                             ; preds = %2414
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

2418:                                             ; preds = %2414
  %2419 = fptosi double %2408 to i32
  br label %2420

2420:                                             ; preds = %2407, %2418
  %.1223768 = phi i32 [ %2419, %2418 ], [ -2147483648, %2407 ]
  %2421 = shl i32 %.1223768, 3
  %2422 = ashr exact i32 %2421, 3
  %2423 = sitofp i32 %2422 to double
  %2424 = tail call i64 @i64_reinterpret_f64(double noundef %2423)
  %2425 = icmp eq i64 %2424, %2387
  br i1 %2425, label %2426, label %2428

2426:                                             ; preds = %2420
  %2427 = or disjoint i32 %2421, 4
  br label %2442

2428:                                             ; preds = %2420
  %2429 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %166)
  %2430 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %138)
  %2431 = sub i32 %2429, %2430
  %2432 = icmp ult i32 %2431, 16
  br i1 %2432, label %2433, label %2435

2433:                                             ; preds = %2428
  %2434 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %72, i32 noundef 16) #5
  br label %2437

2435:                                             ; preds = %2428
  %2436 = add i32 %2430, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %2436)
  br label %2437

2437:                                             ; preds = %2435, %2433
  %.11 = phi i32 [ %2434, %2433 ], [ %2430, %2435 ]
  %2438 = zext i32 %.11 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2438, i32 noundef 402653200)
  %2439 = add nuw nsw i64 %2438, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2439, i64 noundef %2387)
  %2440 = or i32 %.11, 3
  %2441 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.pre26367 = zext i32 %2441 to i64
  %.pre26369 = add nuw nsw i64 %.pre26367, 1
  br label %2442

2442:                                             ; preds = %2381, %2437, %2426, %2405, %2402, %2399, %2395, %2392, %2391, %2390
  %.pre-phi26370 = phi i64 [ %2373, %2381 ], [ %.pre26369, %2437 ], [ %2373, %2426 ], [ %2373, %2405 ], [ %2373, %2402 ], [ %2373, %2399 ], [ %2373, %2395 ], [ %2373, %2392 ], [ %2373, %2391 ], [ %2373, %2390 ]
  %.pre-phi26368 = phi i64 [ %657, %2381 ], [ %.pre26367, %2437 ], [ %657, %2426 ], [ %657, %2405 ], [ %657, %2402 ], [ %657, %2399 ], [ %657, %2395 ], [ %657, %2392 ], [ %657, %2391 ], [ %657, %2390 ]
  %.1623889 = phi i32 [ 7, %2381 ], [ %2440, %2437 ], [ %2427, %2426 ], [ %2406, %2405 ], [ %2404, %2402 ], [ %2401, %2399 ], [ %2398, %2395 ], [ %2394, %2392 ], [ 15, %2391 ], [ 14, %2390 ]
  %2443 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26370)
  %2444 = shl i32 %2443, 3
  %2445 = add i32 %2444, %.923925
  %2446 = zext i32 %2445 to i64
  %2447 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2446)
  %2448 = zext i32 %2447 to i64
  %2449 = add nuw nsw i64 %2448, 12
  %2450 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2449)
  %2451 = add i32 %.223837, 24
  %2452 = add nuw nsw i64 %.pre-phi26368, 3
  %2453 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2452)
  %2454 = zext i32 %.223837 to i64
  %2455 = add nuw nsw i64 %2454, 20
  %2456 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2455)
  %2457 = add i32 %2456, %2453
  %2458 = shl i32 %2457, 3
  %2459 = add i32 %2451, %2458
  %2460 = zext i32 %2459 to i64
  %2461 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2460)
  %2462 = icmp eq i32 %2450, %2461
  br i1 %2462, label %2463, label %2484

2463:                                             ; preds = %2442
  %2464 = add nuw nsw i64 %2460, 4
  %2465 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2464)
  %2466 = icmp ult i32 %2465, 5
  %2467 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %174)
  br i1 %2466, label %2468, label %2473

2468:                                             ; preds = %2463
  %2469 = shl nuw nsw i32 %2465, 2
  %2470 = add i32 %2447, 20
  %2471 = add i32 %2470, %2469
  %2472 = and i32 %2471, -4194304
  %.not24572 = icmp eq i32 %2467, %2472
  br i1 %.not24572, label %2482, label %2481

2473:                                             ; preds = %2463
  %2474 = add nuw nsw i64 %2448, 16
  %2475 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2474)
  %2476 = shl i32 %2465, 2
  %2477 = add i32 %2476, -12
  %2478 = add i32 %2477, %2475
  %2479 = and i32 %2478, -4194304
  %2480 = icmp eq i32 %2467, %2479
  br i1 %2480, label %2482, label %2481

2481:                                             ; preds = %2473, %2468
  %.13 = phi i32 [ %2471, %2468 ], [ %2478, %2473 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCHermesValueBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef %0, i32 noundef %72, i32 noundef %.13, i32 noundef %.1623889) #5
  br label %2482

2482:                                             ; preds = %2473, %2468, %2481
  %.14 = phi i32 [ %.13, %2481 ], [ %2471, %2468 ], [ %2478, %2473 ]
  %2483 = zext i32 %.14 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2483, i32 noundef %.1623889)
  br label %.backedge.backedge

2484:                                             ; preds = %2442
  %2485 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2454)
  %2486 = zext i32 %2485 to i64
  %2487 = add nuw nsw i64 %2486, 12
  %2488 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2487)
  %2489 = shl i32 %.2823957, 2
  %2490 = add i32 %2488, %2489
  %2491 = zext i32 %2490 to i64
  %2492 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2491)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %167, i64 noundef -4294967296)
  %2493 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AtryGetOwnNamedDescriptorFast0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef %0, i32 noundef %2447, i32 noundef %2492, i32 noundef %168) #5
  %2494 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2495 = icmp slt i32 %2493, 1
  br i1 %2495, label %2511, label %2496

2496:                                             ; preds = %2484
  %2497 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %167)
  %2498 = and i32 %2497, 84
  %.not24567 = icmp eq i32 %2498, 4
  br i1 %.not24567, label %2499, label %2511

2499:                                             ; preds = %2496
  %.not24568 = icmp eq i32 %2453, 0
  br i1 %.not24568, label %2505, label %2500

2500:                                             ; preds = %2499
  %2501 = zext i32 %2450 to i64
  %2502 = add nuw nsw i64 %2501, 10
  %2503 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2502)
  %2504 = and i32 %2503, 1
  %.not24569 = icmp eq i32 %2504, 0
  br i1 %.not24569, label %2507, label %2505

2505:                                             ; preds = %2500, %2499
  %2506 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %169)
  br label %2510

2507:                                             ; preds = %2500
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2460, i32 noundef %2450)
  %2508 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %169)
  %2509 = add nuw nsw i64 %2460, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2509, i32 noundef %2508)
  br label %2510

2510:                                             ; preds = %2507, %2505
  %.2923958 = phi i32 [ %2508, %2507 ], [ %2506, %2505 ]
  tail call void @w2c_hermes_void0x20hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AsetNamedSlotValueUnsafe0x3C0x28hermes0x3A0x3Avm0x3A0x3AArrayStorageBase0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue320x3E0x3A0x3AInline0x2900x3E0x28hermes0x3A0x3Avm0x3A0x3AJSObject0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef %0, i32 noundef %2447, i32 noundef %2, i32 noundef %.2923958, i32 noundef %.1623889) #5
  br label %.backedge.backedge

2511:                                             ; preds = %2496, %2484
  %2512 = zext i32 %2494 to i64
  %2513 = add nuw nsw i64 %2512, 1
  %2514 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2513)
  %2515 = add nuw nsw i64 %2512, 2
  %2516 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2515)
  %2517 = or disjoint i32 %.523823, 2
  %2518 = select i1 %.not24570, i32 %.523823, i32 %2517
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %170, i32 noundef %2518)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %2518)
  %2519 = shl i32 %2514, 3
  %2520 = add i32 %2519, %.923925
  %2521 = shl i32 %2516, 3
  %2522 = add i32 %2521, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %171, i32 noundef %2520, i32 noundef %2, i32 noundef %2492, i32 noundef %2522, i32 noundef %2520, i32 noundef %172) #5
  %2523 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %173)
  %.not24571 = icmp eq i32 %2523, 0
  br i1 %.not24571, label %._crit_edge.sink.split, label %2542

2524:                                             ; preds = %2372
  %2525 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2373)
  %2526 = shl i32 %2525, 3
  %2527 = add i32 %2526, %.923925
  %2528 = zext i32 %.223837 to i64
  %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, 12
  %2532 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2531)
  %2533 = shl i32 %.2823957, 2
  %2534 = add i32 %2532, %2533
  %2535 = zext i32 %2534 to i64
  %2536 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2535)
  %2537 = add nuw nsw i64 %657, 2
  %2538 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2537)
  %2539 = shl i32 %2538, 3
  %2540 = add i32 %2539, %.923925
  %2541 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AputByIdTransient_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %2, i32 noundef %2527, i32 noundef %2536, i32 noundef %2540, i32 noundef %.523823) #5
  %.not24562 = icmp eq i32 %2541, 0
  br i1 %.not24562, label %._crit_edge.sink.split, label %2542

2542:                                             ; preds = %2524, %2511
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

2543:                                             ; preds = %.backedge
  %2544 = add nuw nsw i64 %657, 2
  %2545 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2544)
  %2546 = shl i32 %2545, 3
  %2547 = add i32 %2546, %.923925
  %2548 = zext i32 %2547 to i64
  %2549 = add nuw nsw i64 %2548, 6
  %2550 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %2549)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2551 = icmp eq i32 %2550, -1
  %2552 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2544)
  %2553 = shl i32 %2552, 3
  %2554 = add i32 %2553, %.923925
  %2555 = add nuw nsw i64 %657, 3
  %2556 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2555)
  %2557 = shl i32 %2556, 3
  %2558 = add i32 %2557, %.923925
  br i1 %2551, label %2559, label %2562

2559:                                             ; preds = %2543
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2554, i32 noundef %2, i32 noundef %2558, i32 noundef %2554) #5
  %2560 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2561 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24561 = icmp eq i32 %2561, 0
  br i1 %.not24561, label %._crit_edge, label %2688

2562:                                             ; preds = %2543
  %2563 = load i32, ptr %5, align 8, !tbaa !5
  %2564 = add i32 %2563, -16
  store i32 %2564, ptr %5, align 8, !tbaa !5
  %2565 = zext i32 %2554 to i64
  %2566 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2565)
  %.mask24547 = and i64 %2566, -281474976710656
  %.not24546 = icmp eq i64 %.mask24547, -844424930131968
  br i1 %.not24546, label %2567, label %.thread24692

2567:                                             ; preds = %2562
  %2568 = zext i32 %2558 to i64
  %2569 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2568)
  %2570 = icmp ugt i64 %2569, -1970324836974593
  br i1 %2570, label %.thread24692, label %2571

2571:                                             ; preds = %2567
  %2572 = tail call double @f64_reinterpret_i64(i64 noundef %2569)
  %2573 = fcmp olt double %2572, 0x41F0000000000000
  %2574 = fcmp oge double %2572, 0.000000e+00
  %2575 = and i1 %2573, %2574
  br i1 %2575, label %2576, label %2584

2576:                                             ; preds = %2571
  %2577 = fcmp uno double %2572, 0.000000e+00
  br i1 %2577, label %2578, label %2579, !prof !18

2578:                                             ; preds = %2576
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

2579:                                             ; preds = %2576
  %2580 = fcmp ogt double %2572, -1.000000e+00
  br i1 %2580, label %2582, label %2581, !prof !19

2581:                                             ; preds = %2579
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

2582:                                             ; preds = %2579
  %2583 = fptoui double %2572 to i32
  br label %2584

2584:                                             ; preds = %2571, %2582
  %.1323769 = phi i32 [ %2583, %2582 ], [ 0, %2571 ]
  %2585 = icmp eq i32 %.1323769, -1
  %2586 = uitofp i32 %.1323769 to double
  %2587 = fcmp une double %2572, %2586
  %.not24550 = or i1 %2585, %2587
  br i1 %.not24550, label %.thread24692, label %2588

2588:                                             ; preds = %2584
  %2589 = trunc i64 %2566 to i32
  %2590 = and i64 %2566, 4294967295
  %2591 = add nuw nsw i64 %2590, 4
  %2592 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2591)
  %2593 = and i32 %2592, 2147483647
  %.not24551 = icmp ult i32 %.1323769, %2593
  br i1 %.not24551, label %2594, label %.thread24692

2594:                                             ; preds = %2588
  %2595 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2590)
  %2596 = and i32 %2595, 16777216
  %.not24552 = icmp eq i32 %2596, 0
  %2597 = icmp ugt i32 %2595, 150994943
  br i1 %.not24552, label %2598, label %2628

2598:                                             ; preds = %2594
  br i1 %2597, label %2599, label %2607

2599:                                             ; preds = %2598
  %2600 = add nuw nsw i64 %2590, 12
  %2601 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2600)
  %2602 = add i32 %2589, 12
  %2603 = add nuw nsw i64 %2590, 23
  %2604 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %2603)
  %2605 = icmp slt i32 %2604, 0
  %2606 = select i1 %2605, i32 %2601, i32 %2602
  br label %2624

2607:                                             ; preds = %2598
  %2608 = and i32 %2595, 234881024
  switch i32 %2608, label %2613 [
    i32 67108864, label %2611
    i32 134217728, label %2609
  ]

2609:                                             ; preds = %2607
  %2610 = add i32 %2589, 12
  br label %2624

2611:                                             ; preds = %2607
  %2612 = add i32 %2589, 8
  br label %2624

2613:                                             ; preds = %2607
  %2614 = add nuw nsw i64 %2590, 8
  %2615 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2614)
  %2616 = zext i32 %2615 to i64
  %2617 = add nuw nsw i64 %2616, 12
  %2618 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2617)
  %2619 = add i32 %2615, 12
  %2620 = add nuw nsw i64 %2616, 23
  %2621 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %2620)
  %2622 = icmp slt i32 %2621, 0
  %2623 = select i1 %2622, i32 %2618, i32 %2619
  br label %2624

2624:                                             ; preds = %2613, %2611, %2609, %2599
  %.723744 = phi i32 [ %2606, %2599 ], [ %2623, %2613 ], [ %2610, %2609 ], [ %2612, %2611 ]
  %2625 = add i32 %.723744, %.1323769
  %2626 = zext i32 %2625 to i64
  %2627 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %2626)
  br label %2659

2628:                                             ; preds = %2594
  br i1 %2597, label %2629, label %2637

2629:                                             ; preds = %2628
  %2630 = add nuw nsw i64 %2590, 12
  %2631 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2630)
  %2632 = add i32 %2589, 12
  %2633 = add nuw nsw i64 %2590, 23
  %2634 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %2633)
  %2635 = icmp slt i32 %2634, 0
  %2636 = select i1 %2635, i32 %2631, i32 %2632
  br label %2654

2637:                                             ; preds = %2628
  %2638 = and i32 %2595, 251658240
  switch i32 %2638, label %2643 [
    i32 50331648, label %2641
    i32 117440512, label %2639
  ]

2639:                                             ; preds = %2637
  %2640 = add i32 %2589, 12
  br label %2654

2641:                                             ; preds = %2637
  %2642 = add i32 %2589, 8
  br label %2654

2643:                                             ; preds = %2637
  %2644 = add nuw nsw i64 %2590, 8
  %2645 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2644)
  %2646 = zext i32 %2645 to i64
  %2647 = add nuw nsw i64 %2646, 12
  %2648 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2647)
  %2649 = add i32 %2645, 12
  %2650 = add nuw nsw i64 %2646, 23
  %2651 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %2650)
  %2652 = icmp slt i32 %2651, 0
  %2653 = select i1 %2652, i32 %2648, i32 %2649
  br label %2654

2654:                                             ; preds = %2643, %2641, %2639, %2629
  %.823745 = phi i32 [ %2636, %2629 ], [ %2653, %2643 ], [ %2640, %2639 ], [ %2642, %2641 ]
  %2655 = shl nuw i32 %.1323769, 1
  %2656 = add i32 %.823745, %2655
  %2657 = zext i32 %2656 to i64
  %2658 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %2657)
  br label %2659

2659:                                             ; preds = %2624, %2654
  %.923746 = phi i32 [ %2627, %2624 ], [ %2658, %2654 ]
  %2660 = and i32 %.923746, 65535
  %2661 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AgetCharacterString0x28char16_t0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %2660)
  %2662 = zext i32 %2661 to i64
  %2663 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2662)
  %.mask24558 = and i64 %2663, -140737488355328
  %.not24557 = icmp eq i64 %.mask24558, -1970324836974592
  br i1 %.not24557, label %.thread24692, label %2664

2664:                                             ; preds = %2659
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %2663)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  br label %2685

.thread24692:                                     ; preds = %2588, %2584, %2567, %2562, %2659
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %2564, i32 noundef %2, i32 noundef %2554) #5
  %2665 = zext i32 %2564 to i64
  %2666 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2665)
  %.not24559 = icmp eq i32 %2666, 0
  br i1 %.not24559, label %2667, label %2668

2667:                                             ; preds = %.thread24692
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef -1688849860263936)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %2685

2668:                                             ; preds = %.thread24692
  %2669 = add nuw nsw i64 %2665, 8
  %2670 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %2669)
  %2671 = or i64 %2670, -281474976710656
  %2672 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %2673 = zext i32 %2672 to i64
  %2674 = add nuw nsw i64 %2673, 164
  %2675 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2674)
  %2676 = add nuw nsw i64 %2673, 168
  %2677 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2676)
  %2678 = icmp ult i32 %2675, %2677
  br i1 %2678, label %2679, label %2682

2679:                                             ; preds = %2668
  %2680 = add i32 %2675, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2674, i32 noundef %2680)
  %2681 = zext i32 %2675 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2681, i64 noundef %2671)
  br label %2684

2682:                                             ; preds = %2668
  %2683 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %2672, i64 noundef %2671) #5
  br label %2684

2684:                                             ; preds = %2682, %2679
  %.15 = phi i32 [ %2675, %2679 ], [ %2683, %2682 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %.15, i32 noundef %2, i32 noundef %2558, i32 noundef %2554) #5
  br label %2685

2685:                                             ; preds = %2684, %2667, %2664
  store i32 %2563, ptr %5, align 8, !tbaa !5
  %2686 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2687 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24560 = icmp eq i32 %2687, 0
  br i1 %.not24560, label %._crit_edge, label %2688

2688:                                             ; preds = %2685, %2559
  %.16 = phi i32 [ %2560, %2559 ], [ %2686, %2685 ]
  %2689 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %2690 = zext i32 %.16 to i64
  %2691 = add nuw nsw i64 %2690, 1
  %2692 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2691)
  %2693 = shl i32 %2692, 3
  %2694 = add i32 %2693, %.923925
  %2695 = zext i32 %2694 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2695, i64 noundef %2689)
  %2696 = add i32 %.16, 4
  br label %.backedge.backedge

2697:                                             ; preds = %.backedge
  %2698 = add nuw nsw i64 %657, 1
  %2699 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2698)
  %2700 = shl i32 %2699, 3
  %2701 = add i32 %2700, %.923925
  %2702 = zext i32 %2701 to i64
  %2703 = add nuw nsw i64 %2702, 6
  %2704 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %2703)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2705 = add nuw nsw i64 %657, 3
  %2706 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2705)
  %2707 = shl i32 %2706, 3
  %2708 = add i32 %2707, %.923925
  %2709 = add nuw nsw i64 %657, 2
  %2710 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2709)
  %2711 = shl i32 %2710, 3
  %2712 = add i32 %2711, %.923925
  %2713 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2698)
  %2714 = shl i32 %2713, 3
  %2715 = add i32 %2714, %.923925
  %2716 = icmp eq i32 %2704, -1
  br i1 %2716, label %2717, label %2720

2717:                                             ; preds = %2697
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %162, i32 noundef %.523823)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %.523823)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %163, i32 noundef %2715, i32 noundef %2, i32 noundef %2712, i32 noundef %2708, i32 noundef %2715, i32 noundef %164) #5
  %2718 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2719 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %165)
  %.not24545 = icmp eq i32 %2719, 0
  br i1 %.not24545, label %._crit_edge, label %2728

2720:                                             ; preds = %2697
  %2721 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AvalueToSymbolID0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %2712) #5
  %2722 = icmp eq i32 %2721, -1
  br i1 %2722, label %._crit_edge.sink.split, label %2723

2723:                                             ; preds = %2720
  %2724 = zext i32 %2721 to i64
  %2725 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2724)
  %2726 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AputByIdTransient_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %2, i32 noundef %2715, i32 noundef %2725, i32 noundef %2708, i32 noundef %.523823) #5
  %2727 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24544 = icmp eq i32 %2726, 0
  br i1 %.not24544, label %._crit_edge, label %2728

2728:                                             ; preds = %2723, %2717
  %.17 = phi i32 [ %2718, %2717 ], [ %2727, %2723 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %2729 = add i32 %.17, 4
  br label %.backedge.backedge

2730:                                             ; preds = %.backedge
  %2731 = add nuw nsw i64 %657, 3
  %2732 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2731)
  br label %2736

2733:                                             ; preds = %.backedge
  %2734 = add nuw nsw i64 %657, 3
  %2735 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2734)
  br label %2736

2736:                                             ; preds = %2733, %2730
  %.sink27207 = phi i32 [ 4, %2733 ], [ 7, %2730 ]
  %.1723890 = phi i32 [ %2735, %2733 ], [ %2732, %2730 ]
  %2737 = add i32 %.323685, %.sink27207
  %2738 = uitofp i32 %.1723890 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %66, double noundef %2738)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2739 = add nuw nsw i64 %657, 1
  %2740 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2739)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %156, i32 noundef 319)
  %2741 = add nuw nsw i64 %657, 2
  %2742 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2741)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %157, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %158, i32 noundef 319)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %159, i32 noundef 0)
  %2743 = shl i32 %2740, 3
  %2744 = add i32 %2743, %.923925
  %2745 = shl i32 %2742, 3
  %2746 = add i32 %2745, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputedPrimitive0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2744, i32 noundef %2, i32 noundef %57, i32 noundef %160, i32 noundef %2746, i32 noundef %161) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  br label %.backedge.backedge

2747:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2748 = load i32, ptr %5, align 8, !tbaa !5
  %2749 = add i32 %2748, -32
  store i32 %2749, ptr %5, align 8, !tbaa !5
  %2750 = add nuw nsw i64 %657, 2
  %2751 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2750)
  %2752 = shl i32 %2751, 3
  %2753 = add i32 %2752, %.923925
  %2754 = zext i32 %2753 to i64
  %2755 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2754)
  %2756 = ashr i64 %2755, 47
  %2757 = and i64 %2756, 4294967294
  %2758 = icmp eq i64 %2757, 4294967284
  br i1 %2758, label %2759, label %2762

2759:                                             ; preds = %2747
  %2760 = add nuw nsw i64 %657, 1
  %2761 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2760)
  br label %2814

2762:                                             ; preds = %2747
  %2763 = add i32 %2748, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %2763, i32 noundef %2, i32 noundef %2753) #5
  %2764 = zext i32 %2749 to i64
  %2765 = add nuw nsw i64 %2764, 16
  %2766 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2765)
  %.not24542 = icmp eq i32 %2766, 0
  br i1 %.not24542, label %.thread24700, label %2767

2767:                                             ; preds = %2762
  %2768 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2750)
  %2769 = shl i32 %2768, 3
  %2770 = add i32 %2769, %.923925
  %2771 = add nuw nsw i64 %2764, 24
  %2772 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2771)
  %2773 = zext i32 %2770 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2773, i64 noundef %2772)
  %2774 = and i64 %2772, 4294967295
  %2775 = or disjoint i64 %2774, -281474976710656
  %2776 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %2777 = zext i32 %2776 to i64
  %2778 = add nuw nsw i64 %2777, 164
  %2779 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2778)
  %2780 = add nuw nsw i64 %2777, 168
  %2781 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2780)
  %2782 = icmp ult i32 %2779, %2781
  br i1 %2782, label %2783, label %2786

2783:                                             ; preds = %2767
  %2784 = add i32 %2779, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2778, i32 noundef %2784)
  %2785 = zext i32 %2779 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2785, i64 noundef %2775)
  br label %2788

2786:                                             ; preds = %2767
  %2787 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %2776, i64 noundef %2775) #5
  br label %2788

2788:                                             ; preds = %2786, %2783
  %.1223704 = phi i32 [ %2779, %2783 ], [ %2787, %2786 ]
  %2789 = add i32 %2748, -20
  %2790 = add i32 %2748, -24
  %2791 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetForInPropertyNames0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20unsigned0x20int0x260x2C0x20unsigned0x20int0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %.1223704, i32 noundef %2789, i32 noundef %2790) #5
  %2792 = icmp eq i32 %2791, -1
  br i1 %2792, label %.thread24700, label %2793

2793:                                             ; preds = %2788
  %2794 = add nuw nsw i64 %657, 3
  %2795 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2794)
  %2796 = shl i32 %2795, 3
  %2797 = add i32 %2796, %.923925
  %2798 = add nuw nsw i64 %2764, 12
  %2799 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2798)
  %2800 = uitofp i32 %2799 to double
  %2801 = zext i32 %2797 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %2801, double noundef %2800)
  %2802 = add nuw nsw i64 %657, 4
  %2803 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2802)
  %2804 = shl i32 %2803, 3
  %2805 = add i32 %2804, %.923925
  %2806 = add nuw nsw i64 %2764, 8
  %2807 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2806)
  %2808 = uitofp i32 %2807 to double
  %2809 = zext i32 %2805 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %2809, double noundef %2808)
  %2810 = add nuw nsw i64 %657, 1
  %2811 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2810)
  %2812 = zext i32 %2791 to i64
  %2813 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2812)
  br label %2814

.thread24700:                                     ; preds = %2762, %2788
  store i32 %2748, ptr %5, align 8, !tbaa !5
  br label %._crit_edge.sink.split

2814:                                             ; preds = %2793, %2759
  %.pn27235.in = phi i32 [ %2811, %2793 ], [ %2761, %2759 ]
  %.sink27209 = phi i64 [ %2813, %2793 ], [ -1688849860263936, %2759 ]
  %.pn27235 = shl i32 %.pn27235.in, 3
  %.sink27210 = add i32 %.pn27235, %.923925
  %2815 = zext i32 %.sink27210 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2815, i64 noundef %.sink27209)
  store i32 %2748, ptr %5, align 8, !tbaa !5
  %2816 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %2817 = add i32 %2816, 5
  br label %.backedge.backedge

2818:                                             ; preds = %.backedge
  %2819 = add nuw nsw i64 %657, 2
  %2820 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2819)
  %2821 = add nuw nsw i64 %657, 3
  %2822 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2821)
  %2823 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %2824 = zext i32 %2823 to i64
  %2825 = add nuw nsw i64 %2824, 168
  %2826 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2825)
  %2827 = add nuw nsw i64 %2824, 164
  %2828 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2827)
  %2829 = add nuw nsw i64 %657, 5
  %2830 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2829)
  %2831 = shl i32 %2830, 3
  %2832 = add i32 %2831, %.923925
  %2833 = zext i32 %2832 to i64
  %2834 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %2833)
  %2835 = fcmp olt double %2834, 0x41F0000000000000
  %2836 = fcmp oge double %2834, 0.000000e+00
  %2837 = and i1 %2835, %2836
  br i1 %2837, label %2838, label %2846

2838:                                             ; preds = %2818
  %2839 = fcmp uno double %2834, 0.000000e+00
  br i1 %2839, label %2840, label %2841, !prof !18

2840:                                             ; preds = %2838
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

2841:                                             ; preds = %2838
  %2842 = fcmp ogt double %2834, -1.000000e+00
  br i1 %2842, label %2844, label %2843, !prof !19

2843:                                             ; preds = %2841
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

2844:                                             ; preds = %2841
  %2845 = fptoui double %2834 to i32
  br label %2846

2846:                                             ; preds = %2818, %2844
  %.1723773 = phi i32 [ %2845, %2844 ], [ 0, %2818 ]
  %.not24538 = icmp ugt i32 %2826, %2828
  %2847 = add nuw nsw i64 %657, 4
  %2848 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2847)
  %2849 = shl i32 %2848, 3
  %2850 = add i32 %2849, %.923925
  %2851 = zext i32 %2850 to i64
  %2852 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %2851)
  %2853 = fcmp olt double %2852, 0x41F0000000000000
  %2854 = fcmp oge double %2852, 0.000000e+00
  %2855 = and i1 %2853, %2854
  br i1 %2855, label %2856, label %2864

2856:                                             ; preds = %2846
  %2857 = fcmp uno double %2852, 0.000000e+00
  br i1 %2857, label %2858, label %2859, !prof !18

2858:                                             ; preds = %2856
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

2859:                                             ; preds = %2856
  %2860 = fcmp ogt double %2852, -1.000000e+00
  br i1 %2860, label %2862, label %2861, !prof !19

2861:                                             ; preds = %2859
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

2862:                                             ; preds = %2859
  %2863 = fptoui double %2852 to i32
  br label %2864

2864:                                             ; preds = %2846, %2862
  %.1823774 = phi i32 [ %2863, %2862 ], [ 0, %2846 ]
  br i1 %.not24538, label %2865, label %2868

2865:                                             ; preds = %2864
  %2866 = add i32 %2828, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2827, i32 noundef %2866)
  %2867 = zext i32 %2828 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2867, i64 noundef -281474976710656)
  br label %2870

2868:                                             ; preds = %2864
  %2869 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %2823, i64 noundef -281474976710656) #5
  br label %2870

2870:                                             ; preds = %2868, %2865
  %.1823891 = phi i32 [ %2828, %2865 ], [ %2869, %2868 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %150, i32 noundef %.1823891)
  %2871 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %2872 = zext i32 %2871 to i64
  %2873 = add nuw nsw i64 %2872, 164
  %2874 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2873)
  %2875 = add nuw nsw i64 %2872, 168
  %2876 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2875)
  %2877 = icmp ult i32 %2874, %2876
  br i1 %2877, label %2878, label %2881

2878:                                             ; preds = %2870
  %2879 = add i32 %2874, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %2873, i32 noundef %2879)
  %2880 = zext i32 %2874 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2880, i64 noundef -1266636858327041)
  br label %2883

2881:                                             ; preds = %2870
  %2882 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %2871, i64 noundef -1266636858327041) #5
  br label %2883

2883:                                             ; preds = %2881, %2878
  %.1923892 = phi i32 [ %2874, %2878 ], [ %2882, %2881 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %151, i32 noundef %.1923892)
  %.not24539 = icmp ult i32 %.1823774, %.1723773
  br i1 %.not24539, label %2884, label %.loopexit24741

2884:                                             ; preds = %2883
  %2885 = shl i32 %2820, 3
  %2886 = add i32 %2885, %.923925
  %2887 = shl i32 %2822, 3
  %2888 = add i32 %2887, %.923925
  %2889 = zext i32 %2886 to i64
  br label %2890

2890:                                             ; preds = %2920, %2884
  %.1323705 = phi i32 [ %.1823774, %2884 ], [ %2921, %2920 ]
  %.18 = phi i32 [ %.323685, %2884 ], [ %2911, %2920 ]
  %2891 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2889)
  %2892 = icmp ult i32 %.1323705, 4096
  br i1 %2892, label %2893, label %2896

2893:                                             ; preds = %2890
  %2894 = shl nuw nsw i32 %.1323705, 3
  %2895 = add i32 %2891, %2894
  br label %2907

2896:                                             ; preds = %2890
  %2897 = add i32 %.1323705, -4096
  %2898 = lshr i32 %2897, 7
  %2899 = and i32 %2898, 33554424
  %2900 = add i32 %2891, 32776
  %2901 = add i32 %2900, %2899
  %2902 = zext i32 %2901 to i64
  %2903 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %2902)
  %2904 = shl i32 %.1323705, 3
  %2905 = and i32 %2904, 8184
  %2906 = add i32 %2903, %2905
  br label %2907

2907:                                             ; preds = %2896, %2893
  %.1923775.in = phi i32 [ %2895, %2893 ], [ %2906, %2896 ]
  %.1923775 = add i32 %.1923775.in, 8
  %2908 = zext i32 %.1923775 to i64
  %2909 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2908)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %152, i64 noundef -4294967296)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %2909)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.18)
  %2910 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedPrimitiveDescriptor0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AMutableHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AMutableHandle0x3Chermes0x3A0x3Avm0x3A0x3ASymbolID0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AComputedPropertyDescriptor0x260x29(ptr noundef %0, i32 noundef %2888, i32 noundef %2, i32 noundef %57, i32 noundef %153, i32 noundef %154, i32 noundef %155) #5
  %2911 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24540 = icmp eq i32 %2910, 0
  br i1 %.not24540, label %._crit_edge, label %2912

2912:                                             ; preds = %2907
  %2913 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %150)
  %2914 = zext i32 %2913 to i64
  %2915 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2914)
  %2916 = icmp ugt i64 %2915, -844424930131969
  %2917 = and i64 %2915, 4294967295
  %2918 = icmp ne i64 %2917, 0
  %2919 = and i1 %2916, %2918
  br i1 %2919, label %2922, label %2920

2920:                                             ; preds = %2912
  %2921 = add i32 %.1323705, 1
  %.not24541 = icmp eq i32 %2921, %.1723773
  br i1 %.not24541, label %.loopexit24741.loopexit, label %2890

2922:                                             ; preds = %2912
  %2923 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %66)
  %2924 = icmp ult i64 %2923, -1970324836974592
  br i1 %2924, label %2925, label %2930

2925:                                             ; preds = %2922
  %2926 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %57) #5
  %2927 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2928 = zext i32 %2926 to i64
  %2929 = or disjoint i64 %2928, -844424930131968
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %2929)
  br label %2930

2930:                                             ; preds = %2925, %2922
  %.19 = phi i32 [ %2927, %2925 ], [ %2911, %2922 ]
  %2931 = zext i32 %.19 to i64
  %2932 = add nuw nsw i64 %2931, 4
  %2933 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2932)
  %2934 = shl i32 %2933, 3
  %2935 = add i32 %2934, %.923925
  %2936 = add i32 %.1323705, 1
  %2937 = uitofp i32 %2936 to double
  %2938 = zext i32 %2935 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %2938, double noundef %2937)
  %2939 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %66)
  br label %.loopexit24741

.loopexit24741.loopexit:                          ; preds = %2920
  %.pre26371 = zext i32 %2911 to i64
  br label %.loopexit24741

.loopexit24741:                                   ; preds = %.loopexit24741.loopexit, %2883, %2930
  %.pre-phi26372 = phi i64 [ %.pre26371, %.loopexit24741.loopexit ], [ %657, %2883 ], [ %2931, %2930 ]
  %.023691 = phi i64 [ -1688849860263936, %.loopexit24741.loopexit ], [ -1688849860263936, %2883 ], [ %2939, %2930 ]
  %.20 = phi i32 [ %2911, %.loopexit24741.loopexit ], [ %.323685, %2883 ], [ %.19, %2930 ]
  %2940 = add nuw nsw i64 %.pre-phi26372, 1
  %2941 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2940)
  %2942 = shl i32 %2941, 3
  %2943 = add i32 %2942, %.923925
  %2944 = zext i32 %2943 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2944, i64 noundef %.023691)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %2945 = add i32 %.20, 6
  br label %.backedge.backedge

2946:                                             ; preds = %.backedge
  %2947 = add nuw nsw i64 %657, 2
  %2948 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2947)
  %2949 = shl i32 %2948, 3
  %2950 = add i32 %2949, %.923925
  %2951 = zext i32 %2950 to i64
  %2952 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2951)
  %2953 = icmp ugt i64 %2952, -1970324836974593
  br i1 %2953, label %2954, label %2962

2954:                                             ; preds = %2946
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2955 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2947)
  %2956 = shl i32 %2955, 3
  %2957 = add i32 %2956, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %2957) #5
  %2958 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2959 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24537 = icmp eq i32 %2959, 0
  br i1 %.not24537, label %._crit_edge, label %2960

2960:                                             ; preds = %2954
  %2961 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %.pre26373 = zext i32 %2958 to i64
  br label %2962

2962:                                             ; preds = %2960, %2946
  %.pre-phi26374 = phi i64 [ %.pre26373, %2960 ], [ %657, %2946 ]
  %.423800 = phi i64 [ %2961, %2960 ], [ %2952, %2946 ]
  %.21 = phi i32 [ %2958, %2960 ], [ %.323685, %2946 ]
  %2963 = add nuw nsw i64 %.pre-phi26374, 1
  %2964 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2963)
  %2965 = shl i32 %2964, 3
  %2966 = add i32 %2965, %.923925
  %2967 = zext i32 %2966 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2967, i64 noundef %.423800)
  %2968 = add i32 %.21, 3
  br label %.backedge.backedge

2969:                                             ; preds = %.backedge
  %2970 = add nuw nsw i64 %657, 2
  %2971 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2970)
  %2972 = shl i32 %2971, 3
  %2973 = add i32 %2972, %.923925
  %2974 = zext i32 %2973 to i64
  %2975 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %2974)
  %2976 = icmp ugt i64 %2975, -1970324836974593
  br i1 %2976, label %2977, label %2985

2977:                                             ; preds = %2969
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2978 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2970)
  %2979 = shl i32 %2978, 3
  %2980 = add i32 %2979, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %2980) #5
  %2981 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2982 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24536 = icmp eq i32 %2982, 0
  br i1 %.not24536, label %._crit_edge, label %2983

2983:                                             ; preds = %2977
  %2984 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %.pre26375 = zext i32 %2981 to i64
  br label %2985

2985:                                             ; preds = %2983, %2969
  %.pre-phi26376 = phi i64 [ %.pre26375, %2983 ], [ %657, %2969 ]
  %.523801 = phi i64 [ %2984, %2983 ], [ %2975, %2969 ]
  %.22 = phi i32 [ %2981, %2983 ], [ %.323685, %2969 ]
  %2986 = add nuw nsw i64 %.pre-phi26376, 1
  %2987 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2986)
  %2988 = shl i32 %2987, 3
  %2989 = add i32 %2988, %.923925
  %2990 = zext i32 %2989 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %2990, i64 noundef %.523801)
  %2991 = add i32 %.22, 3
  br label %.backedge.backedge

2992:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %2993 = add nuw nsw i64 %657, 2
  %2994 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %2993)
  %2995 = shl i32 %2994, 3
  %2996 = add i32 %2995, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %2996) #5
  %2997 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %2998 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24535 = icmp eq i32 %2998, 0
  br i1 %.not24535, label %._crit_edge, label %2999

2999:                                             ; preds = %2992
  %3000 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3001 = zext i32 %2997 to i64
  %3002 = add nuw nsw i64 %3001, 1
  %3003 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3002)
  %3004 = shl i32 %3003, 3
  %3005 = add i32 %3004, %.923925
  %3006 = zext i32 %3005 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3006, i64 noundef %3000)
  %3007 = add i32 %2997, 3
  br label %.backedge.backedge

3008:                                             ; preds = %.backedge
  %3009 = add nuw nsw i64 %657, 2
  %3010 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3009)
  %3011 = shl i32 %3010, 3
  %3012 = add i32 %3011, %.923925
  %3013 = zext i32 %3012 to i64
  %3014 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3013)
  %.mask24533 = and i64 %3014, -281474976710656
  %.not24532 = icmp eq i64 %.mask24533, -844424930131968
  br i1 %.not24532, label %3028, label %3015

3015:                                             ; preds = %3008
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3016 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3009)
  %3017 = shl i32 %3016, 3
  %3018 = add i32 %3017, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %3018, i32 noundef 0) #5
  %3019 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24534 = icmp eq i32 %3019, 0
  br i1 %.not24534, label %._crit_edge.sink.split, label %3020

3020:                                             ; preds = %3015
  %3021 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %3021)
  %3022 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %57) #5
  %3023 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3024 = icmp eq i32 %3022, -1
  br i1 %3024, label %._crit_edge, label %3025

3025:                                             ; preds = %3020
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %3026 = zext i32 %3022 to i64
  %3027 = or disjoint i64 %3026, -844424930131968
  %.pre26377 = zext i32 %3023 to i64
  br label %3028

3028:                                             ; preds = %3025, %3008
  %.pre-phi26378 = phi i64 [ %.pre26377, %3025 ], [ %657, %3008 ]
  %.623802 = phi i64 [ %3027, %3025 ], [ %3014, %3008 ]
  %.23 = phi i32 [ %3023, %3025 ], [ %.323685, %3008 ]
  %3029 = add nuw nsw i64 %.pre-phi26378, 1
  %3030 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3029)
  %3031 = shl i32 %3030, 3
  %3032 = add i32 %3031, %.923925
  %3033 = zext i32 %3032 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3033, i64 noundef %.623802)
  %3034 = add i32 %.23, 3
  br label %.backedge.backedge

3035:                                             ; preds = %.backedge
  %3036 = add nuw nsw i64 %657, 1
  %3037 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %3036)
  %3038 = add i32 %3037, %.323685
  br label %.backedge.backedge

3039:                                             ; preds = %.backedge
  %3040 = add nuw nsw i64 %657, 1
  %3041 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3040)
  %3042 = add i32 %3041, %.323685
  br label %.backedge.backedge

3043:                                             ; preds = %.backedge
  %3044 = add nuw nsw i64 %657, 2
  %3045 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3044)
  %3046 = shl i32 %3045, 3
  %3047 = add i32 %3046, %.923925
  %3048 = zext i32 %3047 to i64
  %3049 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3048)
  %3050 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %3049) #5
  %.not24531 = icmp eq i32 %3050, 0
  br i1 %.not24531, label %3055, label %3051

3051:                                             ; preds = %3043
  %3052 = add nuw nsw i64 %657, 1
  %3053 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %3052)
  %3054 = add i32 %3053, %.323685
  br label %.backedge.backedge

3055:                                             ; preds = %3043
  %3056 = add i32 %.323685, 3
  br label %.backedge.backedge

3057:                                             ; preds = %.backedge
  %3058 = add nuw nsw i64 %657, 5
  %3059 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3058)
  %3060 = shl i32 %3059, 3
  %3061 = add i32 %3060, %.923925
  %3062 = zext i32 %3061 to i64
  %3063 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3062)
  %3064 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %3063) #5
  %.not24530 = icmp eq i32 %3064, 0
  br i1 %.not24530, label %3069, label %3065

3065:                                             ; preds = %3057
  %3066 = add nuw nsw i64 %657, 1
  %3067 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3066)
  %3068 = add i32 %3067, %.323685
  br label %.backedge.backedge

3069:                                             ; preds = %3057
  %3070 = add i32 %.323685, 6
  br label %.backedge.backedge

3071:                                             ; preds = %.backedge
  %3072 = add nuw nsw i64 %657, 2
  %3073 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3072)
  %3074 = shl i32 %3073, 3
  %3075 = add i32 %3074, %.923925
  %3076 = zext i32 %3075 to i64
  %3077 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3076)
  %3078 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %3077) #5
  %.not24529 = icmp eq i32 %3078, 0
  br i1 %.not24529, label %3079, label %3083

3079:                                             ; preds = %3071
  %3080 = add nuw nsw i64 %657, 1
  %3081 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %3080)
  %3082 = add i32 %3081, %.323685
  br label %.backedge.backedge

3083:                                             ; preds = %3071
  %3084 = add i32 %.323685, 3
  br label %.backedge.backedge

3085:                                             ; preds = %.backedge
  %3086 = add nuw nsw i64 %657, 5
  %3087 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3086)
  %3088 = shl i32 %3087, 3
  %3089 = add i32 %3088, %.923925
  %3090 = zext i32 %3089 to i64
  %3091 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3090)
  %3092 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %3091) #5
  %.not24528 = icmp eq i32 %3092, 0
  br i1 %.not24528, label %3093, label %3097

3093:                                             ; preds = %3085
  %3094 = add nuw nsw i64 %657, 1
  %3095 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3094)
  %3096 = add i32 %3095, %.323685
  br label %.backedge.backedge

3097:                                             ; preds = %3085
  %3098 = add i32 %.323685, 6
  br label %.backedge.backedge

3099:                                             ; preds = %.backedge
  %3100 = add nuw nsw i64 %657, 2
  %3101 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3100)
  %3102 = shl i32 %3101, 3
  %3103 = add i32 %3102, %.923925
  %3104 = zext i32 %3103 to i64
  %3105 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3104)
  %.mask24527 = and i64 %3105, -140737488355328
  %3106 = icmp eq i64 %.mask24527, -1688849860263936
  br i1 %3106, label %3107, label %3111

3107:                                             ; preds = %3099
  %3108 = add nuw nsw i64 %657, 1
  %3109 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %3108)
  %3110 = add i32 %3109, %.323685
  br label %.backedge.backedge

3111:                                             ; preds = %3099
  %3112 = add i32 %.323685, 3
  br label %.backedge.backedge

3113:                                             ; preds = %.backedge
  %3114 = add nuw nsw i64 %657, 5
  %3115 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3114)
  %3116 = shl i32 %3115, 3
  %3117 = add i32 %3116, %.923925
  %3118 = zext i32 %3117 to i64
  %3119 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3118)
  %.mask24526 = and i64 %3119, -140737488355328
  %3120 = icmp eq i64 %.mask24526, -1688849860263936
  br i1 %3120, label %3121, label %3125

3121:                                             ; preds = %3113
  %3122 = add nuw nsw i64 %657, 1
  %3123 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3122)
  %3124 = add i32 %3123, %.323685
  br label %.backedge.backedge

3125:                                             ; preds = %3113
  %3126 = add i32 %.323685, 6
  br label %.backedge.backedge

3127:                                             ; preds = %.backedge
  %3128 = add nuw nsw i64 %657, 2
  %3129 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3128)
  %3130 = shl i32 %3129, 3
  %3131 = add i32 %3130, %.923925
  %3132 = zext i32 %3131 to i64
  %3133 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3132)
  %3134 = icmp ult i64 %3133, -1970324836974592
  br i1 %3134, label %3135, label %3144

3135:                                             ; preds = %3127
  %3136 = add nuw nsw i64 %657, 1
  %3137 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3136)
  %3138 = shl i32 %3137, 3
  %3139 = add i32 %3138, %.923925
  %3140 = tail call double @f64_reinterpret_i64(i64 noundef %3133)
  %3141 = fadd double %3140, 1.000000e+00
  %3142 = zext i32 %3139 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %3142, double noundef %3141)
  %3143 = add i32 %.323685, 3
  br label %.backedge.backedge

3144:                                             ; preds = %3127
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3145 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3128)
  %3146 = shl i32 %3145, 3
  %3147 = add i32 %3146, %.923925
  %3148 = load i32, ptr %5, align 8, !tbaa !5
  %3149 = add i32 %3148, -32
  store i32 %3149, ptr %5, align 8, !tbaa !5
  %3150 = add i32 %3148, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %3150, i32 noundef %2, i32 noundef %3147, i32 noundef 2) #5
  %3151 = zext i32 %3149 to i64
  %3152 = add nuw nsw i64 %3151, 16
  %3153 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3152)
  %.not24519 = icmp eq i32 %3153, 0
  br i1 %.not24519, label %3154, label %3155

3154:                                             ; preds = %3144
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3264

3155:                                             ; preds = %3144
  %3156 = add nuw nsw i64 %3151, 24
  %3157 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3156)
  %.mask24521 = and i64 %3157, -281474976710656
  %.not24520 = icmp eq i64 %.mask24521, -562949953421312
  br i1 %.not24520, label %3181, label %3158

3158:                                             ; preds = %3155
  %3159 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %3160 = zext i32 %3159 to i64
  %3161 = add nuw nsw i64 %3160, 164
  %3162 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3161)
  %3163 = add nuw nsw i64 %3160, 168
  %3164 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3163)
  %3165 = icmp ult i32 %3162, %3164
  br i1 %3165, label %3166, label %3169

3166:                                             ; preds = %3158
  %3167 = add i32 %3162, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3161, i32 noundef %3167)
  %3168 = zext i32 %3162 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3168, i64 noundef %3157)
  br label %3171

3169:                                             ; preds = %3158
  %3170 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %3159, i64 noundef %3157) #5
  br label %3171

3171:                                             ; preds = %3169, %3166
  %.1423706 = phi i32 [ %3162, %3166 ], [ %3170, %3169 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %3149, i32 noundef %2, i32 noundef %.1423706) #5
  %3172 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3151)
  %.not24524 = icmp eq i32 %3172, 0
  br i1 %.not24524, label %3173, label %3174

3173:                                             ; preds = %3171
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3264

3174:                                             ; preds = %3171
  %3175 = add nuw nsw i64 %3151, 8
  %3176 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %3175)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %3177 = fadd double %3176, 1.000000e+00
  %3178 = tail call i64 @i64_reinterpret_f64(double noundef %3177)
  %3179 = fcmp uno double %3177, 0.000000e+00
  %3180 = select i1 %3179, i64 9221120237041090560, i64 %3178
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %3180)
  br label %3264

3181:                                             ; preds = %3155
  %3182 = trunc i64 %3157 to i32
  %3183 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3182) #5
  %3184 = load i32, ptr %5, align 8, !tbaa !5
  %3185 = add i32 %3184, -80
  store i32 %3185, ptr %5, align 8, !tbaa !5
  %3186 = zext i32 %3183 to i64
  %3187 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3186)
  %3188 = zext i32 %3187 to i64
  %3189 = add nuw nsw i64 %3188, 4
  %3190 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3189)
  %3191 = zext i32 %3185 to i64
  %3192 = add nuw nsw i64 %3191, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3192, i32 noundef %3190)
  %3193 = add i32 %3187, 8
  %3194 = add nuw nsw i64 %3191, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3194, i32 noundef %3193)
  %3195 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3194)
  %3196 = add nuw nsw i64 %3191, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3196, i64 noundef %3195)
  %3197 = add i32 %3184, -64
  %3198 = tail call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3AaddSignedResultSize0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef nonnull %0, i32 noundef %3197) #5
  %3199 = icmp ult i32 %3198, 1025
  br i1 %3199, label %3200, label %3209

3200:                                             ; preds = %3181
  %3201 = shl nuw nsw i32 %3198, 3
  %3202 = add nuw nsw i32 %3201, 15
  %3203 = and i32 %3202, 32760
  %3204 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %3205 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %3206 = sub i32 %3204, %3205
  %.not24522 = icmp ugt i32 %3203, %3206
  br i1 %.not24522, label %3207, label %3216

3207:                                             ; preds = %3200
  %3208 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %3203) #5
  br label %3218

3209:                                             ; preds = %3181
  %3210 = add nuw nsw i64 %3191, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3210, i32 noundef 0)
  %3211 = add nuw nsw i64 %3191, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3211, i64 noundef 120259084289)
  %3212 = add nuw nsw i64 %3191, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3212, i32 noundef 3)
  %3213 = add nuw nsw i64 %3191, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3213, i32 noundef 55293)
  %3214 = add i32 %3184, -48
  %3215 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3214)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3264

3216:                                             ; preds = %3200
  %3217 = add i32 %3205, %3203
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %3217)
  br label %3218

3218:                                             ; preds = %3216, %3207
  %.123825 = phi i32 [ %3205, %3216 ], [ %3208, %3207 ]
  %3219 = zext i32 %.123825 to i64
  %3220 = add nuw nsw i64 %3219, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3220, i32 noundef %3198)
  %3221 = or disjoint i32 %3203, 1291845632
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3219, i32 noundef %3221)
  %3222 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3186)
  %3223 = zext i32 %3222 to i64
  %3224 = add nuw nsw i64 %3223, 4
  %3225 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %3224)
  %3226 = add i32 %.123825, 8
  %3227 = zext i32 %3226 to i64
  %3228 = add i32 %.123825, 4
  %3229 = zext i32 %3228 to i64
  %3230 = shl nuw i64 %3229, 32
  %3231 = or disjoint i64 %3230, %3227
  %3232 = add nuw nsw i64 %3191, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3232, i64 noundef %3231)
  %3233 = add nuw nsw i64 %3191, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3233, i64 noundef %3231)
  %3234 = add i32 %3222, 8
  %3235 = zext i32 %3234 to i64
  %3236 = shl i64 %3225, 32
  %3237 = or disjoint i64 %3236, %3235
  %3238 = add nuw nsw i64 %3191, 72
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3238, i64 noundef %3237)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3191, i64 noundef %3237)
  %3239 = load i32, ptr %5, align 8, !tbaa !5
  %3240 = add i32 %3239, -64
  store i32 %3240, ptr %5, align 8, !tbaa !5
  %3241 = zext i32 %3240 to i64
  %3242 = add nuw nsw i64 %3241, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3242, i64 noundef 1)
  %3243 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3232)
  %3244 = add nuw nsw i64 %3241, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3244, i64 noundef %3243)
  %3245 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3191)
  %3246 = add nuw nsw i64 %3241, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3246, i64 noundef %3245)
  %3247 = add nuw nsw i64 %3241, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3247, i32 noundef 1)
  %3248 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3244)
  %3249 = add nuw nsw i64 %3241, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3249, i64 noundef %3248)
  %3250 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3246)
  %3251 = add nuw nsw i64 %3241, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3251, i64 noundef %3250)
  %3252 = add i32 %3239, -8
  %3253 = add nuw nsw i64 %3241, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3253, i32 noundef %3252)
  %3254 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3253)
  %3255 = add nuw nsw i64 %3241, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3255, i64 noundef %3254)
  %3256 = add i32 %3239, -40
  %3257 = add i32 %3239, -48
  %3258 = add i32 %3239, -56
  %3259 = tail call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Aadd0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef nonnull %0, i32 noundef %3256, i32 noundef %3257, i32 noundef %3258) #5
  store i32 %3239, ptr %5, align 8, !tbaa !5
  %.not24523 = icmp eq i32 %3259, 0
  br i1 %.not24523, label %3262, label %3260

3260:                                             ; preds = %3218
  %3261 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3259) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %3261)
  br label %3264

3262:                                             ; preds = %3218
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %3263 = or disjoint i64 %3219, -562949953421312
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %3263)
  br label %3264

3264:                                             ; preds = %3209, %3260, %3262, %3174, %3173, %3154
  store i32 %3148, ptr %5, align 8, !tbaa !5
  %3265 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3266 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24525 = icmp eq i32 %3266, 0
  br i1 %.not24525, label %._crit_edge, label %3267

3267:                                             ; preds = %3264
  %3268 = zext i32 %3265 to i64
  %3269 = add nuw nsw i64 %3268, 1
  %3270 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3269)
  %3271 = shl i32 %3270, 3
  %3272 = add i32 %3271, %.923925
  %3273 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %3274 = zext i32 %3272 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3274, i64 noundef %3273)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3275 = add i32 %3265, 3
  br label %.backedge.backedge

3276:                                             ; preds = %.backedge
  %3277 = add nuw nsw i64 %657, 2
  %3278 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3277)
  %3279 = shl i32 %3278, 3
  %3280 = add i32 %3279, %.923925
  %3281 = zext i32 %3280 to i64
  %3282 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3281)
  %3283 = icmp ult i64 %3282, -1970324836974592
  br i1 %3283, label %3284, label %3293

3284:                                             ; preds = %3276
  %3285 = add nuw nsw i64 %657, 1
  %3286 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3285)
  %3287 = shl i32 %3286, 3
  %3288 = add i32 %3287, %.923925
  %3289 = tail call double @f64_reinterpret_i64(i64 noundef %3282)
  %3290 = fadd double %3289, -1.000000e+00
  %3291 = zext i32 %3288 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %3291, double noundef %3290)
  %3292 = add i32 %.323685, 3
  br label %.backedge.backedge

3293:                                             ; preds = %3276
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3294 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3277)
  %3295 = shl i32 %3294, 3
  %3296 = add i32 %3295, %.923925
  %3297 = load i32, ptr %5, align 8, !tbaa !5
  %3298 = add i32 %3297, -32
  store i32 %3298, ptr %5, align 8, !tbaa !5
  %3299 = add i32 %3297, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %3299, i32 noundef %2, i32 noundef %3296, i32 noundef 2) #5
  %3300 = zext i32 %3298 to i64
  %3301 = add nuw nsw i64 %3300, 16
  %3302 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3301)
  %.not24512 = icmp eq i32 %3302, 0
  br i1 %.not24512, label %3303, label %3304

3303:                                             ; preds = %3293
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3413

3304:                                             ; preds = %3293
  %3305 = add nuw nsw i64 %3300, 24
  %3306 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3305)
  %.mask24514 = and i64 %3306, -281474976710656
  %.not24513 = icmp eq i64 %.mask24514, -562949953421312
  br i1 %.not24513, label %3330, label %3307

3307:                                             ; preds = %3304
  %3308 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %3309 = zext i32 %3308 to i64
  %3310 = add nuw nsw i64 %3309, 164
  %3311 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3310)
  %3312 = add nuw nsw i64 %3309, 168
  %3313 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3312)
  %3314 = icmp ult i32 %3311, %3313
  br i1 %3314, label %3315, label %3318

3315:                                             ; preds = %3307
  %3316 = add i32 %3311, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3310, i32 noundef %3316)
  %3317 = zext i32 %3311 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3317, i64 noundef %3306)
  br label %3320

3318:                                             ; preds = %3307
  %3319 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %3308, i64 noundef %3306) #5
  br label %3320

3320:                                             ; preds = %3318, %3315
  %.1523707 = phi i32 [ %3311, %3315 ], [ %3319, %3318 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %3298, i32 noundef %2, i32 noundef %.1523707) #5
  %3321 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3300)
  %.not24517 = icmp eq i32 %3321, 0
  br i1 %.not24517, label %3322, label %3323

3322:                                             ; preds = %3320
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3413

3323:                                             ; preds = %3320
  %3324 = add nuw nsw i64 %3300, 8
  %3325 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %3324)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %3326 = fadd double %3325, -1.000000e+00
  %3327 = tail call i64 @i64_reinterpret_f64(double noundef %3326)
  %3328 = fcmp uno double %3326, 0.000000e+00
  %3329 = select i1 %3328, i64 9221120237041090560, i64 %3327
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %3329)
  br label %3413

3330:                                             ; preds = %3304
  %3331 = trunc i64 %3306 to i32
  %3332 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3331) #5
  %3333 = load i32, ptr %5, align 8, !tbaa !5
  %3334 = add i32 %3333, -80
  store i32 %3334, ptr %5, align 8, !tbaa !5
  %3335 = zext i32 %3332 to i64
  %3336 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3335)
  %3337 = zext i32 %3336 to i64
  %3338 = add nuw nsw i64 %3337, 4
  %3339 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3338)
  %3340 = zext i32 %3334 to i64
  %3341 = add nuw nsw i64 %3340, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3341, i32 noundef %3339)
  %3342 = add i32 %3336, 8
  %3343 = add nuw nsw i64 %3340, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3343, i32 noundef %3342)
  %3344 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3343)
  %3345 = add nuw nsw i64 %3340, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3345, i64 noundef %3344)
  %3346 = add i32 %3333, -64
  %3347 = tail call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3AaddSignedResultSize0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef nonnull %0, i32 noundef %3346) #5
  %3348 = icmp ult i32 %3347, 1025
  br i1 %3348, label %3349, label %3358

3349:                                             ; preds = %3330
  %3350 = shl nuw nsw i32 %3347, 3
  %3351 = add nuw nsw i32 %3350, 15
  %3352 = and i32 %3351, 32760
  %3353 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %3354 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %3355 = sub i32 %3353, %3354
  %.not24515 = icmp ugt i32 %3352, %3355
  br i1 %.not24515, label %3356, label %3365

3356:                                             ; preds = %3349
  %3357 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %3352) #5
  br label %3367

3358:                                             ; preds = %3330
  %3359 = add nuw nsw i64 %3340, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3359, i32 noundef 0)
  %3360 = add nuw nsw i64 %3340, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3360, i64 noundef 120259084289)
  %3361 = add nuw nsw i64 %3340, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3361, i32 noundef 3)
  %3362 = add nuw nsw i64 %3340, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3362, i32 noundef 55293)
  %3363 = add i32 %3333, -48
  %3364 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3363)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3413

3365:                                             ; preds = %3349
  %3366 = add i32 %3354, %3352
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %3366)
  br label %3367

3367:                                             ; preds = %3365, %3356
  %.223826 = phi i32 [ %3354, %3365 ], [ %3357, %3356 ]
  %3368 = zext i32 %.223826 to i64
  %3369 = add nuw nsw i64 %3368, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3369, i32 noundef %3347)
  %3370 = or disjoint i32 %3352, 1291845632
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3368, i32 noundef %3370)
  %3371 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3335)
  %3372 = zext i32 %3371 to i64
  %3373 = add nuw nsw i64 %3372, 4
  %3374 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %3373)
  %3375 = add i32 %.223826, 8
  %3376 = zext i32 %3375 to i64
  %3377 = add i32 %.223826, 4
  %3378 = zext i32 %3377 to i64
  %3379 = shl nuw i64 %3378, 32
  %3380 = or disjoint i64 %3379, %3376
  %3381 = add nuw nsw i64 %3340, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3381, i64 noundef %3380)
  %3382 = add nuw nsw i64 %3340, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3382, i64 noundef %3380)
  %3383 = add i32 %3371, 8
  %3384 = zext i32 %3383 to i64
  %3385 = shl i64 %3374, 32
  %3386 = or disjoint i64 %3385, %3384
  %3387 = add nuw nsw i64 %3340, 72
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3387, i64 noundef %3386)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3340, i64 noundef %3386)
  %3388 = load i32, ptr %5, align 8, !tbaa !5
  %3389 = add i32 %3388, -64
  store i32 %3389, ptr %5, align 8, !tbaa !5
  %3390 = zext i32 %3389 to i64
  %3391 = add nuw nsw i64 %3390, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3391, i64 noundef 1)
  %3392 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3381)
  %3393 = add nuw nsw i64 %3390, 48
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3393, i64 noundef %3392)
  %3394 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3340)
  %3395 = add nuw nsw i64 %3390, 40
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3395, i64 noundef %3394)
  %3396 = add nuw nsw i64 %3390, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3396, i32 noundef 1)
  %3397 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3393)
  %3398 = add nuw nsw i64 %3390, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3398, i64 noundef %3397)
  %3399 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3395)
  %3400 = add nuw nsw i64 %3390, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3400, i64 noundef %3399)
  %3401 = add i32 %3388, -8
  %3402 = add nuw nsw i64 %3390, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3402, i32 noundef %3401)
  %3403 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3402)
  %3404 = add nuw nsw i64 %3390, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3404, i64 noundef %3403)
  %3405 = add i32 %3388, -40
  %3406 = add i32 %3388, -48
  %3407 = add i32 %3388, -56
  %3408 = tail call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Asubtract0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef nonnull %0, i32 noundef %3405, i32 noundef %3406, i32 noundef %3407) #5
  store i32 %3388, ptr %5, align 8, !tbaa !5
  %.not24516 = icmp eq i32 %3408, 0
  br i1 %.not24516, label %3411, label %3409

3409:                                             ; preds = %3367
  %3410 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3408) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %3410)
  br label %3413

3411:                                             ; preds = %3367
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %3412 = or disjoint i64 %3368, -562949953421312
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %3412)
  br label %3413

3413:                                             ; preds = %3358, %3409, %3411, %3323, %3322, %3303
  store i32 %3297, ptr %5, align 8, !tbaa !5
  %3414 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3415 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24518 = icmp eq i32 %3415, 0
  br i1 %.not24518, label %._crit_edge, label %3416

3416:                                             ; preds = %3413
  %3417 = zext i32 %3414 to i64
  %3418 = add nuw nsw i64 %3417, 1
  %3419 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3418)
  %3420 = shl i32 %3419, 3
  %3421 = add i32 %3420, %.923925
  %3422 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %3423 = zext i32 %3421 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3423, i64 noundef %3422)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3424 = add i32 %3414, 3
  br label %.backedge.backedge

3425:                                             ; preds = %.backedge
  %3426 = add nuw nsw i64 %657, 2
  %3427 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3426)
  %3428 = shl i32 %3427, 3
  %3429 = add i32 %3428, %.923925
  %3430 = zext i32 %3429 to i64
  %3431 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3430)
  %3432 = icmp ugt i64 %3431, -1970324836974593
  %.pre26447 = add nuw nsw i64 %657, 3
  br i1 %3432, label %._crit_edge26438, label %3433

3433:                                             ; preds = %3425
  %3434 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26447)
  %3435 = shl i32 %3434, 3
  %3436 = add i32 %3435, %.923925
  %3437 = zext i32 %3436 to i64
  %3438 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3437)
  %3439 = icmp ugt i64 %3438, -1970324836974593
  br i1 %3439, label %._crit_edge26438, label %3440

3440:                                             ; preds = %._crit_edge26437, %3433
  %.pre-phi26452 = phi i64 [ %.pre26451, %._crit_edge26437 ], [ %.pre26447, %3433 ]
  %.pre-phi26450 = phi i64 [ %.pre26449, %._crit_edge26437 ], [ %3426, %3433 ]
  %3441 = add nuw nsw i64 %657, 1
  %3442 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3441)
  %3443 = shl i32 %3442, 3
  %3444 = add i32 %3443, %.923925
  %3445 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26450)
  %3446 = shl i32 %3445, 3
  %3447 = add i32 %3446, %.923925
  %3448 = zext i32 %3447 to i64
  %3449 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %3448)
  %3450 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26452)
  %3451 = shl i32 %3450, 3
  %3452 = add i32 %3451, %.923925
  %3453 = zext i32 %3452 to i64
  %3454 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %3453)
  %3455 = fadd double %3449, %3454
  %3456 = zext i32 %3444 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %3456, double noundef %3455)
  %3457 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26438:                                 ; preds = %3425, %3433
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3458 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3426)
  %3459 = shl i32 %3458, 3
  %3460 = add i32 %3459, %.923925
  %3461 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26447)
  %3462 = shl i32 %3461, 3
  %3463 = add i32 %3462, %.923925
  %3464 = load i32, ptr %5, align 8, !tbaa !5
  %3465 = add i32 %3464, -112
  store i32 %3465, ptr %5, align 8, !tbaa !5
  %3466 = add i32 %3464, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %3466, i32 noundef %2, i32 noundef %3460, i32 noundef 0) #5
  %3467 = zext i32 %3465 to i64
  %3468 = add nuw nsw i64 %3467, 96
  %3469 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3468)
  %.not24501 = icmp eq i32 %3469, 0
  br i1 %.not24501, label %3470, label %3471

3470:                                             ; preds = %._crit_edge26438
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3471:                                             ; preds = %._crit_edge26438
  %3472 = add nuw nsw i64 %3467, 104
  %3473 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3472)
  %3474 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %3475 = zext i32 %3474 to i64
  %3476 = add nuw nsw i64 %3475, 164
  %3477 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3476)
  %3478 = add nuw nsw i64 %3475, 168
  %3479 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3478)
  %3480 = icmp ult i32 %3477, %3479
  br i1 %3480, label %3481, label %3484

3481:                                             ; preds = %3471
  %3482 = add i32 %3477, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3476, i32 noundef %3482)
  %3483 = zext i32 %3477 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3483, i64 noundef %3473)
  br label %3486

3484:                                             ; preds = %3471
  %3485 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %3474, i64 noundef %3473) #5
  br label %3486

3486:                                             ; preds = %3484, %3481
  %.1623708 = phi i32 [ %3477, %3481 ], [ %3485, %3484 ]
  %3487 = add i32 %3464, -32
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef nonnull %0, i32 noundef %3487, i32 noundef %2, i32 noundef %3463, i32 noundef 0) #5
  %3488 = add nuw nsw i64 %3467, 80
  %3489 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3488)
  %.not24502 = icmp eq i32 %3489, 0
  br i1 %.not24502, label %3490, label %3491

3490:                                             ; preds = %3486
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3491:                                             ; preds = %3486
  %3492 = add nuw nsw i64 %3467, 88
  %3493 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3492)
  %3494 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %3495 = zext i32 %3494 to i64
  %3496 = add nuw nsw i64 %3495, 164
  %3497 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3496)
  %3498 = add nuw nsw i64 %3495, 168
  %3499 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3498)
  %3500 = icmp ult i32 %3497, %3499
  br i1 %3500, label %3501, label %3504

3501:                                             ; preds = %3491
  %3502 = add i32 %3497, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3496, i32 noundef %3502)
  %3503 = zext i32 %3497 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3503, i64 noundef %3493)
  br label %3506

3504:                                             ; preds = %3491
  %3505 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %3494, i64 noundef %3493) #5
  br label %3506

3506:                                             ; preds = %3504, %3501
  %.3023959 = phi i32 [ %3497, %3501 ], [ %3505, %3504 ]
  %3507 = zext i32 %.1623708 to i64
  %3508 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3507)
  %3509 = ashr i64 %3508, 48
  %3510 = and i64 %3509, 4294967295
  %.not24503 = icmp eq i64 %3510, 4294967293
  br i1 %.not24503, label %3516, label %3511

3511:                                             ; preds = %3506
  %3512 = zext i32 %.3023959 to i64
  %3513 = add nuw nsw i64 %3512, 6
  %3514 = tail call i64 @i64_load16_s(ptr noundef nonnull %8, i64 noundef %3513)
  %3515 = and i64 %3514, 4294967295
  %.not24504 = icmp eq i64 %3515, 4294967293
  br i1 %.not24504, label %3516, label %3554

3516:                                             ; preds = %3511, %3506
  %3517 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %.1623708) #5
  %3518 = icmp eq i32 %3517, -1
  br i1 %3518, label %3519, label %3520

3519:                                             ; preds = %3516
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3520:                                             ; preds = %3516
  %3521 = zext i32 %3517 to i64
  %3522 = or disjoint i64 %3521, -844424930131968
  %3523 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %3524 = zext i32 %3523 to i64
  %3525 = add nuw nsw i64 %3524, 164
  %3526 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3525)
  %3527 = add nuw nsw i64 %3524, 168
  %3528 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3527)
  %3529 = icmp ult i32 %3526, %3528
  br i1 %3529, label %3530, label %3533

3530:                                             ; preds = %3520
  %3531 = add i32 %3526, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3525, i32 noundef %3531)
  %3532 = zext i32 %3526 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3532, i64 noundef %3522)
  br label %3535

3533:                                             ; preds = %3520
  %3534 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %3523, i64 noundef %3522) #5
  br label %3535

3535:                                             ; preds = %3533, %3530
  %.1723709 = phi i32 [ %3526, %3530 ], [ %3534, %3533 ]
  %3536 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %.3023959) #5
  %3537 = icmp eq i32 %3536, -1
  br i1 %3537, label %3538, label %3539

3538:                                             ; preds = %3535
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3539:                                             ; preds = %3535
  %3540 = zext i32 %3536 to i64
  %3541 = or disjoint i64 %3540, -844424930131968
  %3542 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %3543 = zext i32 %3542 to i64
  %3544 = add nuw nsw i64 %3543, 164
  %3545 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3544)
  %3546 = add nuw nsw i64 %3543, 168
  %3547 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3546)
  %3548 = icmp ult i32 %3545, %3547
  br i1 %3548, label %3549, label %3552

3549:                                             ; preds = %3539
  %3550 = add i32 %3545, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3544, i32 noundef %3550)
  %3551 = zext i32 %3545 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3551, i64 noundef %3541)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3A0x3Aconcat0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef %.1723709, i32 noundef %3545)
  br label %3670

3552:                                             ; preds = %3539
  %3553 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %3542, i64 noundef %3541) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3A0x3Aconcat0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef %.1723709, i32 noundef %3553)
  br label %3670

3554:                                             ; preds = %3511
  %.not24505 = icmp eq i64 %3510, 4294967294
  br i1 %.not24505, label %3572, label %3555

3555:                                             ; preds = %3554
  %3556 = add i32 %3464, -72
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %3556, i32 noundef %2, i32 noundef %.1623708) #5
  %3557 = add nuw nsw i64 %3467, 40
  %3558 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3557)
  %.not24509 = icmp eq i32 %3558, 0
  br i1 %.not24509, label %3559, label %3560

3559:                                             ; preds = %3555
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3560:                                             ; preds = %3555
  %3561 = add nuw nsw i64 %3467, 48
  %3562 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %3561)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %3465, i32 noundef %2, i32 noundef %.3023959) #5
  %3563 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3467)
  %.not24510 = icmp eq i32 %3563, 0
  br i1 %.not24510, label %3564, label %3565

3564:                                             ; preds = %3560
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3565:                                             ; preds = %3560
  %3566 = add nuw nsw i64 %3467, 8
  %3567 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %3566)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %3568 = fadd double %3562, %3567
  %3569 = tail call i64 @i64_reinterpret_f64(double noundef %3568)
  %3570 = fcmp uno double %3568, 0.000000e+00
  %3571 = select i1 %3570, i64 9221120237041090560, i64 %3569
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %3571)
  br label %3670

3572:                                             ; preds = %3554
  %.not24506 = icmp eq i64 %3515, 4294967294
  br i1 %.not24506, label %3583, label %3573

3573:                                             ; preds = %3572
  %3574 = add nuw nsw i64 %3467, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3574, i32 noundef 0)
  %3575 = add nuw nsw i64 %3467, 64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3575, i64 noundef 64424509441)
  %3576 = add nuw nsw i64 %3467, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3576, i32 noundef 3)
  %3577 = add nuw nsw i64 %3467, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3577, i32 noundef 61934)
  %3578 = add nuw nsw i64 %3467, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3578, i32 noundef 0)
  %3579 = add nuw nsw i64 %3467, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3579, i64 noundef 42949672961)
  %3580 = add nuw nsw i64 %3467, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3580, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3467, i32 noundef 22121)
  %3581 = add i32 %3464, -72
  %3582 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3581, i32 noundef %3463, i32 noundef %3465)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef %3582)
  br label %3670

3583:                                             ; preds = %3572
  %3584 = trunc i64 %3508 to i32
  %3585 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3584) #5
  %3586 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3512)
  %3587 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3586) #5
  %3588 = load i32, ptr %5, align 8, !tbaa !5
  %3589 = add i32 %3588, -112
  store i32 %3589, ptr %5, align 8, !tbaa !5
  %3590 = zext i32 %3585 to i64
  %3591 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3590)
  %3592 = zext i32 %3591 to i64
  %3593 = add nuw nsw i64 %3592, 4
  %3594 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3593)
  %3595 = zext i32 %3589 to i64
  %3596 = add nuw nsw i64 %3595, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3596, i32 noundef %3594)
  %3597 = add i32 %3591, 8
  %3598 = add nuw nsw i64 %3595, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3598, i32 noundef %3597)
  %3599 = zext i32 %3587 to i64
  %3600 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3599)
  %3601 = zext i32 %3600 to i64
  %3602 = add nuw nsw i64 %3601, 4
  %3603 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3602)
  %3604 = add nuw nsw i64 %3595, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3604, i32 noundef %3603)
  %3605 = add i32 %3600, 8
  %3606 = add nuw nsw i64 %3595, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3606, i32 noundef %3605)
  %3607 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3598)
  %3608 = add nuw nsw i64 %3595, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3608, i64 noundef %3607)
  %3609 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3606)
  %3610 = add nuw nsw i64 %3595, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3610, i64 noundef %3609)
  %3611 = add nuw nsw i64 %3595, 36
  %3612 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3611)
  %3613 = add nuw nsw i64 %3595, 28
  %3614 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3613)
  %3615 = tail call i32 @llvm.umax.i32(i32 %3614, i32 %3612)
  %3616 = add i32 %3615, 1
  %3617 = icmp ult i32 %3616, 1025
  br i1 %3617, label %3618, label %3627

3618:                                             ; preds = %3583
  %3619 = shl nuw nsw i32 %3616, 3
  %3620 = add nuw nsw i32 %3619, 15
  %3621 = and i32 %3620, 32760
  %3622 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %3623 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %3624 = sub i32 %3622, %3623
  %.not24507 = icmp ugt i32 %3621, %3624
  br i1 %.not24507, label %3625, label %3634

3625:                                             ; preds = %3618
  %3626 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %3621) #5
  br label %3636

3627:                                             ; preds = %3583
  %3628 = add nuw nsw i64 %3595, 104
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3628, i32 noundef 0)
  %3629 = add nuw nsw i64 %3595, 96
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3629, i64 noundef 120259084289)
  %3630 = add nuw nsw i64 %3595, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3630, i32 noundef 3)
  %3631 = add nuw nsw i64 %3595, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3631, i32 noundef 55293)
  %3632 = add i32 %3588, -40
  %3633 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3632)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %3670

3634:                                             ; preds = %3618
  %3635 = add i32 %3623, %3621
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %3635)
  br label %3636

3636:                                             ; preds = %3634, %3625
  %.1823710 = phi i32 [ %3623, %3634 ], [ %3626, %3625 ]
  %3637 = zext i32 %.1823710 to i64
  %3638 = add nuw nsw i64 %3637, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3638, i32 noundef %3616)
  %3639 = or disjoint i32 %3621, 1291845632
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3637, i32 noundef %3639)
  %3640 = add i32 %.1823710, 4
  %3641 = add nuw nsw i64 %3595, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3641, i32 noundef %3640)
  %3642 = add i32 %.1823710, 8
  %3643 = add nuw nsw i64 %3595, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3643, i32 noundef %3642)
  %3644 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3590)
  %3645 = zext i32 %3644 to i64
  %3646 = add nuw nsw i64 %3645, 4
  %3647 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3646)
  %3648 = add nuw nsw i64 %3595, 68
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3648, i32 noundef %3647)
  %3649 = add i32 %3644, 8
  %3650 = add nuw nsw i64 %3595, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3650, i32 noundef %3649)
  %3651 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3599)
  %3652 = zext i32 %3651 to i64
  %3653 = add nuw nsw i64 %3652, 4
  %3654 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3653)
  %3655 = add nuw nsw i64 %3595, 60
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3655, i32 noundef %3654)
  %3656 = add i32 %3651, 8
  %3657 = add nuw nsw i64 %3595, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3657, i32 noundef %3656)
  %3658 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3643)
  %3659 = add nuw nsw i64 %3595, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3659, i64 noundef %3658)
  %3660 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3650)
  %3661 = add nuw nsw i64 %3595, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3661, i64 noundef %3660)
  %3662 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3657)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3595, i64 noundef %3662)
  %3663 = add i32 %3588, -96
  %3664 = add i32 %3588, -104
  %3665 = tail call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Aadd0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef nonnull %0, i32 noundef %3663, i32 noundef %3664, i32 noundef %3589) #5
  %.not24508 = icmp eq i32 %3665, 0
  br i1 %.not24508, label %3668, label %3666

3666:                                             ; preds = %3636
  %3667 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3665) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef %3667)
  br label %3670

3668:                                             ; preds = %3636
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %3669 = or disjoint i64 %3637, -562949953421312
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %3669)
  br label %3670

3670:                                             ; preds = %3627, %3666, %3668, %3573, %3565, %3564, %3559, %3552, %3549, %3538, %3519, %3490, %3470
  store i32 %3464, ptr %5, align 8, !tbaa !5
  %3671 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3672 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24511 = icmp eq i32 %3672, 0
  br i1 %.not24511, label %._crit_edge, label %3673

3673:                                             ; preds = %3670
  %3674 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3675 = zext i32 %3671 to i64
  %3676 = add nuw nsw i64 %3675, 1
  %3677 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3676)
  %3678 = shl i32 %3677, 3
  %3679 = add i32 %3678, %.923925
  %3680 = zext i32 %3679 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3680, i64 noundef %3674)
  %3681 = add i32 %3671, 4
  br label %.backedge.backedge

3682:                                             ; preds = %.backedge
  %3683 = add nuw nsw i64 %657, 2
  %3684 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3683)
  %3685 = shl i32 %3684, 3
  %3686 = add i32 %3685, %.923925
  %3687 = zext i32 %3686 to i64
  %3688 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3687)
  %3689 = icmp ult i64 %3688, -1970324836974592
  br i1 %3689, label %3690, label %3717

3690:                                             ; preds = %3682
  %3691 = tail call double @f64_reinterpret_i64(i64 noundef %3688)
  %3692 = tail call double @wasm_fabs(double noundef %3691)
  %3693 = fcmp olt double %3692, 0x41E0000000000000
  br i1 %3693, label %3694, label %3703

3694:                                             ; preds = %3690
  %3695 = fcmp uno double %3691, 0.000000e+00
  br i1 %3695, label %3696, label %3697, !prof !18

3696:                                             ; preds = %3694
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

3697:                                             ; preds = %3694
  %3698 = fcmp ule double %3691, 0xC1E0000000200000
  %3699 = fcmp uge double %3691, 0x41E0000000000000
  %.not24500 = or i1 %3698, %3699
  br i1 %.not24500, label %3700, label %3701, !prof !18

3700:                                             ; preds = %3697
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

3701:                                             ; preds = %3697
  %3702 = fptosi double %3691 to i32
  br label %3703

3703:                                             ; preds = %3690, %3701
  %.2023776 = phi i32 [ %3702, %3701 ], [ -2147483648, %3690 ]
  %3704 = sitofp i32 %.2023776 to double
  %3705 = fcmp une double %3691, %3704
  br i1 %3705, label %3706, label %3708

3706:                                             ; preds = %3703
  %3707 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %3691) #5
  br label %3708

3708:                                             ; preds = %3706, %3703
  %.2023893 = phi i32 [ %3707, %3706 ], [ %.2023776, %3703 ]
  %3709 = add nuw nsw i64 %657, 1
  %3710 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3709)
  %3711 = shl i32 %3710, 3
  %3712 = add i32 %3711, %.923925
  %3713 = xor i32 %.2023893, -1
  %3714 = sitofp i32 %3713 to double
  %3715 = zext i32 %3712 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %3715, double noundef %3714)
  %3716 = add i32 %.323685, 3
  br label %.backedge.backedge

3717:                                             ; preds = %3682
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3718 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3683)
  %3719 = shl i32 %3718, 3
  %3720 = add i32 %3719, %.923925
  %3721 = load i32, ptr %5, align 8, !tbaa !5
  %3722 = add i32 %3721, -16
  store i32 %3722, ptr %5, align 8, !tbaa !5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %3722, i32 noundef %2, i32 noundef %3720) #5
  %3723 = zext i32 %3722 to i64
  %3724 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3723)
  %.not24482 = icmp eq i32 %3724, 0
  br i1 %.not24482, label %3725, label %3726

3725:                                             ; preds = %3717
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3861

3726:                                             ; preds = %3717
  %3727 = add nuw nsw i64 %3723, 8
  %3728 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3727)
  %.mask24484 = and i64 %3728, -281474976710656
  %.not24483 = icmp eq i64 %.mask24484, -562949953421312
  br i1 %.not24483, label %3750, label %3729

3729:                                             ; preds = %3726
  %3730 = tail call double @f64_reinterpret_i64(i64 noundef %3728)
  %3731 = tail call double @wasm_fabs(double noundef %3730)
  %3732 = fcmp olt double %3731, 0x41E0000000000000
  br i1 %3732, label %3733, label %3742

3733:                                             ; preds = %3729
  %3734 = fcmp uno double %3730, 0.000000e+00
  br i1 %3734, label %3735, label %3736, !prof !18

3735:                                             ; preds = %3733
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

3736:                                             ; preds = %3733
  %3737 = fcmp ule double %3730, 0xC1E0000000200000
  %3738 = fcmp uge double %3730, 0x41E0000000000000
  %.not24496 = or i1 %3737, %3738
  br i1 %.not24496, label %3739, label %3740, !prof !18

3739:                                             ; preds = %3736
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

3740:                                             ; preds = %3736
  %3741 = fptosi double %3730 to i32
  br label %3742

3742:                                             ; preds = %3729, %3740
  %.2123777 = phi i32 [ %3741, %3740 ], [ -2147483648, %3729 ]
  %3743 = sitofp i32 %.2123777 to double
  %3744 = fcmp une double %3730, %3743
  br i1 %3744, label %3745, label %3747

3745:                                             ; preds = %3742
  %3746 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef nonnull %0, double noundef %3730) #5
  br label %3747

3747:                                             ; preds = %3745, %3742
  %.1923711 = phi i32 [ %3746, %3745 ], [ %.2123777, %3742 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %3748 = xor i32 %.1923711, -1
  %3749 = sitofp i32 %3748 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %79, double noundef %3749)
  br label %3861

3750:                                             ; preds = %3726
  %3751 = trunc i64 %3728 to i32
  %3752 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3751) #5
  %3753 = load i32, ptr %5, align 8, !tbaa !5
  %3754 = add i32 %3753, -80
  store i32 %3754, ptr %5, align 8, !tbaa !5
  %3755 = zext i32 %3752 to i64
  %3756 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3755)
  %3757 = zext i32 %3756 to i64
  %3758 = add nuw nsw i64 %3757, 4
  %3759 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3758)
  %3760 = zext i32 %3754 to i64
  %3761 = add nuw nsw i64 %3760, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3761, i32 noundef %3759)
  %3762 = add i32 %3756, 8
  %3763 = add nuw nsw i64 %3760, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3763, i32 noundef %3762)
  %3764 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3763)
  %3765 = add nuw nsw i64 %3760, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3765, i64 noundef %3764)
  %3766 = add nuw nsw i64 %3760, 20
  %3767 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3766)
  %3768 = tail call i32 @llvm.umax.i32(i32 %3767, i32 1)
  %3769 = icmp ult i32 %3767, 1025
  br i1 %3769, label %3770, label %3779

3770:                                             ; preds = %3750
  %3771 = shl nuw nsw i32 %3768, 3
  %3772 = add nuw nsw i32 %3771, 15
  %3773 = and i32 %3772, 32760
  %3774 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %3775 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %3776 = sub i32 %3774, %3775
  %.not24485 = icmp ugt i32 %3773, %3776
  br i1 %.not24485, label %3777, label %3786

3777:                                             ; preds = %3770
  %3778 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %3773) #5
  br label %3788

3779:                                             ; preds = %3750
  %3780 = add nuw nsw i64 %3760, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3780, i32 noundef 0)
  %3781 = add nuw nsw i64 %3760, 64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3781, i64 noundef 120259084289)
  %3782 = add nuw nsw i64 %3760, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3782, i32 noundef 3)
  %3783 = add nuw nsw i64 %3760, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3783, i32 noundef 55293)
  %3784 = add i32 %3753, -40
  %3785 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %3784)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %3861

3786:                                             ; preds = %3770
  %3787 = add i32 %3775, %3773
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %3787)
  br label %3788

3788:                                             ; preds = %3786, %3777
  %.323827 = phi i32 [ %3775, %3786 ], [ %3778, %3777 ]
  %3789 = zext i32 %.323827 to i64
  %3790 = add nuw nsw i64 %3789, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3790, i32 noundef %3768)
  %3791 = or disjoint i32 %3773, 1291845632
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3789, i32 noundef %3791)
  %3792 = add i32 %.323827, 4
  %3793 = add nuw nsw i64 %3760, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3793, i32 noundef %3792)
  %3794 = add i32 %.323827, 8
  %3795 = add nuw nsw i64 %3760, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3795, i32 noundef %3794)
  %3796 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3755)
  %3797 = zext i32 %3796 to i64
  %3798 = add nuw nsw i64 %3797, 4
  %3799 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3798)
  %3800 = add nuw nsw i64 %3760, 36
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3800, i32 noundef %3799)
  %3801 = add i32 %3796, 8
  %3802 = add nuw nsw i64 %3760, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3802, i32 noundef %3801)
  %3803 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3795)
  %3804 = add nuw nsw i64 %3760, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3804, i64 noundef %3803)
  %3805 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3802)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3760, i64 noundef %3805)
  %3806 = add nuw nsw i64 %3760, 4
  %3807 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3806)
  %3808 = add nuw nsw i64 %3760, 12
  %3809 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3808)
  %3810 = zext i32 %3809 to i64
  %3811 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3810)
  %.not24486.not = icmp ugt i32 %3807, %3811
  br i1 %.not24486.not, label %.critedge, label %3812

3812:                                             ; preds = %3788
  %3813 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3804)
  %3814 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3760)
  %3815 = shl i32 %3807, 3
  %3816 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef nonnull %0, i32 noundef %3813, i32 noundef %3814, i32 noundef %3815) #5
  %3817 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3810)
  %3818 = sub i32 %3817, %3807
  %3819 = shl i32 %3818, 3
  %3820 = add i32 %3816, %3815
  %.not24487 = icmp eq i32 %3807, 0
  br i1 %.not24487, label %3828, label %3821

3821:                                             ; preds = %3812
  %3822 = add i32 %3815, -8
  %3823 = add i32 %3822, %3814
  %3824 = zext i32 %3823 to i64
  %3825 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3824)
  %3826 = ashr i64 %3825, 63
  %3827 = trunc nsw i64 %3826 to i32
  br label %3828

3828:                                             ; preds = %3812, %3821
  %.1023747 = phi i32 [ %3827, %3821 ], [ 0, %3812 ]
  %3829 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef nonnull %0, i32 noundef %3820, i32 noundef %.1023747, i32 noundef %3819) #5
  %3830 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3810)
  tail call void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcComplement0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %3816, i32 noundef %3830) #5
  %3831 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3810)
  %3832 = shl i32 %3831, 3
  %.not24488 = icmp eq i32 %3832, 0
  br i1 %.not24488, label %3859, label %3833

3833:                                             ; preds = %3828
  %3834 = add i32 %3832, -1
  %3835 = add i32 %3834, %3816
  %3836 = zext i32 %3835 to i64
  %3837 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3836)
  %sext24489 = shl i32 %3837, 24
  %3838 = ashr i32 %sext24489, 31
  %3839 = and i32 %3838, 255
  %.not24490 = icmp eq i32 %3837, %3839
  br i1 %.not24490, label %3840, label %.loopexit24742

3840:                                             ; preds = %3833
  %3841 = zext i32 %3834 to i64
  %3842 = add i32 %3816, -1
  br label %3843

3843:                                             ; preds = %3844, %3840
  %.723803 = phi i64 [ %3841, %3840 ], [ %3847, %3844 ]
  %.24 = phi i32 [ %3832, %3840 ], [ %3845, %3844 ]
  %.not24491 = icmp eq i64 %.723803, 0
  br i1 %.not24491, label %.loopexit24742, label %3844

3844:                                             ; preds = %3843
  %3845 = add i32 %.24, -1
  %3846 = trunc i64 %.723803 to i32
  %3847 = add nsw i64 %.723803, -1
  %3848 = add i32 %3842, %3846
  %3849 = zext i32 %3848 to i64
  %3850 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3849)
  %3851 = icmp eq i32 %3837, %3850
  br i1 %3851, label %3843, label %3852

3852:                                             ; preds = %3844
  %sext24492 = shl i32 %3850, 24
  %3853 = ashr i32 %sext24492, 31
  br label %.loopexit24742

.loopexit24742:                                   ; preds = %3843, %3833, %3852
  %.3123960 = phi i32 [ %.24, %3852 ], [ %3832, %3833 ], [ 1, %3843 ]
  %.1123748 = phi i32 [ %3853, %3852 ], [ %3838, %3833 ], [ 0, %3843 ]
  %.2023712 = phi i32 [ %3846, %3852 ], [ %3832, %3833 ], [ 0, %3843 ]
  %3854 = icmp eq i32 %.1123748, %3838
  %3855 = select i1 %3854, i32 %.2023712, i32 %.3123960
  %3856 = add i32 %3855, 7
  %3857 = lshr i32 %3856, 3
  br label %3859

.critedge:                                        ; preds = %3788
  %3858 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef 1) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %3858)
  br label %3861

3859:                                             ; preds = %.loopexit24742, %3828
  %.1223749 = phi i32 [ %3857, %.loopexit24742 ], [ 0, %3828 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %3810, i32 noundef %.1223749)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %3860 = or disjoint i64 %3789, -562949953421312
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %3860)
  br label %3861

3861:                                             ; preds = %3779, %.critedge, %3859, %3747, %3725
  store i32 %3721, ptr %5, align 8, !tbaa !5
  %3862 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3863 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24497 = icmp eq i32 %3863, 0
  br i1 %.not24497, label %._crit_edge, label %3864

3864:                                             ; preds = %3861
  %3865 = zext i32 %3862 to i64
  %3866 = add nuw nsw i64 %3865, 1
  %3867 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3866)
  %3868 = shl i32 %3867, 3
  %3869 = add i32 %3868, %.923925
  %3870 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %3871 = zext i32 %3869 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3871, i64 noundef %3870)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3872 = add i32 %3862, 3
  br label %.backedge.backedge

3873:                                             ; preds = %.backedge
  %3874 = add nuw nsw i64 %657, 2
  %3875 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3874)
  %3876 = shl i32 %3875, 3
  %3877 = add i32 %3876, %.923925
  %3878 = zext i32 %3877 to i64
  %3879 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3878)
  %.mask24480 = and i64 %3879, -140737488355328
  %3880 = icmp eq i64 %.mask24480, -1688849860263936
  br i1 %3880, label %3881, label %3892

3881:                                             ; preds = %3873
  %3882 = add nuw nsw i64 %657, 1
  %3883 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3882)
  %3884 = shl i32 %3883, 3
  %3885 = add i32 %3884, %.923925
  %3886 = add i32 %.923925, -40
  %3887 = zext i32 %3886 to i64
  %3888 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3887)
  %3889 = uitofp i32 %3888 to double
  %3890 = zext i32 %3885 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %3890, double noundef %3889)
  %3891 = add i32 %.323685, 3
  br label %.backedge.backedge

3892:                                             ; preds = %3873
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3893 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3874)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %147, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %148, i32 noundef 0)
  %3894 = shl i32 %3893, 3
  %3895 = add i32 %3894, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %0, i32 noundef %80, i32 noundef %3895, i32 noundef %2, i32 noundef 85, i32 noundef %3895, i32 noundef %149, i32 noundef 0) #5
  %3896 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3897 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24481 = icmp eq i32 %3897, 0
  br i1 %.not24481, label %._crit_edge, label %3898

3898:                                             ; preds = %3892
  %3899 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3900 = zext i32 %3896 to i64
  %3901 = add nuw nsw i64 %3900, 1
  %3902 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3901)
  %3903 = shl i32 %3902, 3
  %3904 = add i32 %3903, %.923925
  %3905 = zext i32 %3904 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3905, i64 noundef %3899)
  %3906 = add i32 %3896, 3
  br label %.backedge.backedge

3907:                                             ; preds = %.backedge
  %3908 = add nuw nsw i64 %657, 3
  %3909 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3908)
  %3910 = shl i32 %3909, 3
  %3911 = add i32 %3910, %.923925
  %3912 = zext i32 %3911 to i64
  %3913 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3912)
  %.mask24474 = and i64 %3913, -140737488355328
  %.not24473 = icmp eq i64 %.mask24474, -1688849860263936
  %3914 = add nuw nsw i64 %657, 2
  br i1 %.not24473, label %3915, label %._crit_edge26436

3915:                                             ; preds = %3907
  %3916 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3914)
  %3917 = shl i32 %3916, 3
  %3918 = add i32 %3917, %.923925
  %3919 = zext i32 %3918 to i64
  %3920 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3919)
  %3921 = icmp ugt i64 %3920, -1970324836974593
  br i1 %3921, label %._crit_edge26436, label %3922

3922:                                             ; preds = %3915
  %3923 = tail call double @f64_reinterpret_i64(i64 noundef %3920)
  %3924 = fcmp olt double %3923, 0x41F0000000000000
  %3925 = fcmp oge double %3923, 0.000000e+00
  %3926 = and i1 %3924, %3925
  br i1 %3926, label %3927, label %3935

3927:                                             ; preds = %3922
  %3928 = fcmp uno double %3923, 0.000000e+00
  br i1 %3928, label %3929, label %3930, !prof !18

3929:                                             ; preds = %3927
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

3930:                                             ; preds = %3927
  %3931 = fcmp ogt double %3923, -1.000000e+00
  br i1 %3931, label %3933, label %3932, !prof !19

3932:                                             ; preds = %3930
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

3933:                                             ; preds = %3930
  %3934 = fptoui double %3923 to i32
  br label %3935

3935:                                             ; preds = %3922, %3933
  %.2323779 = phi i32 [ %3934, %3933 ], [ 0, %3922 ]
  %3936 = icmp eq i32 %.2323779, -1
  %3937 = uitofp i32 %.2323779 to double
  %3938 = fcmp une double %3923, %3937
  %.not24477 = or i1 %3936, %3938
  br i1 %.not24477, label %._crit_edge26436, label %3939

3939:                                             ; preds = %3935
  %3940 = add i32 %.923925, -40
  %3941 = zext i32 %3940 to i64
  %3942 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %3941)
  %.not24478 = icmp ult i32 %.2323779, %3942
  br i1 %.not24478, label %3943, label %._crit_edge26436

3943:                                             ; preds = %3939
  %3944 = add nuw nsw i64 %657, 1
  %3945 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3944)
  %3946 = shl i32 %3945, 3
  %3947 = add i32 %3946, %.923925
  %3948 = add i32 %.923925, -72
  %3949 = shl i32 %.2323779, 3
  %3950 = sub i32 %3948, %3949
  %3951 = zext i32 %3950 to i64
  %3952 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3951)
  %3953 = zext i32 %3947 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3953, i64 noundef %3952)
  %3954 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26436:                                 ; preds = %3907, %3939, %3935, %3915
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3955 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3908)
  %3956 = shl i32 %3955, 3
  %3957 = add i32 %3956, %.923925
  %3958 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3914)
  %3959 = shl i32 %3958, 3
  %3960 = add i32 %3959, %.923925
  %3961 = add i32 %.923925, -56
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AgetArgumentsPropByValSlowPath_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %144, i32 noundef %2, i32 noundef %3957, i32 noundef %3960, i32 noundef %3961, i32 noundef %.523823) #5
  %3962 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3963 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %145)
  %.not24479 = icmp eq i32 %3963, 0
  br i1 %.not24479, label %._crit_edge, label %3964

3964:                                             ; preds = %._crit_edge26436
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3965 = zext i32 %3962 to i64
  %3966 = add nuw nsw i64 %3965, 1
  %3967 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3966)
  %3968 = shl i32 %3967, 3
  %3969 = add i32 %3968, %.923925
  %3970 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %146)
  %3971 = zext i32 %3969 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3971, i64 noundef %3970)
  %3972 = add i32 %3962, 4
  br label %.backedge.backedge

3973:                                             ; preds = %.backedge
  %3974 = add nuw nsw i64 %657, 1
  %3975 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3974)
  %3976 = shl i32 %3975, 3
  %3977 = add i32 %3976, %.923925
  %3978 = zext i32 %3977 to i64
  %3979 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3978)
  %.mask24472 = and i64 %3979, -140737488355328
  %.not24471 = icmp eq i64 %.mask24472, -1688849860263936
  br i1 %.not24471, label %3982, label %3980

3980:                                             ; preds = %3973
  %3981 = add i32 %.323685, 2
  br label %.backedge.backedge

3982:                                             ; preds = %3973
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3983 = add i32 %.923925, -56
  %3984 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AreifyArgumentsSlowPath0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %2, i32 noundef %3983, i32 noundef %.523823) #5
  %3985 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %3986 = icmp eq i32 %3984, -1
  br i1 %3986, label %._crit_edge, label %3987

3987:                                             ; preds = %3982
  %3988 = zext i32 %3985 to i64
  %3989 = add nuw nsw i64 %3988, 1
  %3990 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3989)
  %3991 = shl i32 %3990, 3
  %3992 = add i32 %3991, %.923925
  %3993 = zext i32 %3984 to i64
  %3994 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %3993)
  %3995 = zext i32 %3992 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %3995, i64 noundef %3994)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %3996 = add i32 %3985, 2
  br label %.backedge.backedge

3997:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %3998 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef %0, i32 noundef %2) #5
  %3999 = add nuw nsw i64 %657, 1
  %4000 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %3999)
  %4001 = shl i32 %4000, 3
  %4002 = add i32 %4001, %.923925
  %4003 = zext i32 %3998 to i64
  %4004 = or disjoint i64 %4003, -281474976710656
  %4005 = zext i32 %4002 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4005, i64 noundef %4004)
  %4006 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4007 = add i32 %4006, 2
  br label %.backedge.backedge

4008:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4009 = add nuw nsw i64 %657, 2
  %4010 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4009)
  %4011 = shl i32 %4010, 3
  %4012 = add i32 %4011, %.923925
  %4013 = zext i32 %4012 to i64
  %4014 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4013)
  %.mask24469 = and i64 %4014, -140737488355328
  %4015 = icmp eq i64 %.mask24469, -1548112371908608
  %4016 = select i1 %4015, i32 67200, i32 %70
  %4017 = icmp ugt i64 %4014, -281474976710657
  %4018 = select i1 %4017, i32 %4012, i32 %4016
  %4019 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %4018) #5
  %4020 = add nuw nsw i64 %657, 1
  %4021 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4020)
  %4022 = shl i32 %4021, 3
  %4023 = add i32 %4022, %.923925
  %4024 = zext i32 %4019 to i64
  %4025 = or disjoint i64 %4024, -281474976710656
  %4026 = zext i32 %4023 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4026, i64 noundef %4025)
  %4027 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4028 = add i32 %4027, 3
  br label %.backedge.backedge

4029:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4030 = add nuw nsw i64 %657, 4
  %4031 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4030)
  %4032 = add nuw nsw i64 %657, 6
  %4033 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4032)
  %4034 = add nuw nsw i64 %657, 8
  %4035 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4034)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateObjectFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %.223837, i32 noundef %4031, i32 noundef %4033, i32 noundef %4035) #5
  %4036 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4037 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24468 = icmp eq i32 %4037, 0
  br i1 %.not24468, label %._crit_edge, label %4038

4038:                                             ; preds = %4029
  %4039 = zext i32 %4036 to i64
  %4040 = add nuw nsw i64 %4039, 1
  %4041 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4040)
  %4042 = shl i32 %4041, 3
  %4043 = add i32 %4042, %.923925
  %4044 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %4045 = zext i32 %4043 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4045, i64 noundef %4044)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4046 = add i32 %4036, 10
  br label %.backedge.backedge

4047:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4048 = add nuw nsw i64 %657, 4
  %4049 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4048)
  %4050 = add nuw nsw i64 %657, 6
  %4051 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4050)
  %4052 = add nuw nsw i64 %657, 10
  %4053 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4052)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateObjectFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %.223837, i32 noundef %4049, i32 noundef %4051, i32 noundef %4053) #5
  %4054 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4055 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24467 = icmp eq i32 %4055, 0
  br i1 %.not24467, label %._crit_edge, label %4056

4056:                                             ; preds = %4047
  %4057 = zext i32 %4054 to i64
  %4058 = add nuw nsw i64 %4057, 1
  %4059 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4058)
  %4060 = shl i32 %4059, 3
  %4061 = add i32 %4060, %.923925
  %4062 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %4063 = zext i32 %4061 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4063, i64 noundef %4062)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4064 = add i32 %4054, 14
  br label %.backedge.backedge

4065:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4066 = add nuw nsw i64 %657, 2
  %4067 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4066)
  %4068 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSArray0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %2, i32 noundef %4067, i32 noundef %4067) #5
  %4069 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4070 = icmp eq i32 %4068, -1
  br i1 %4070, label %._crit_edge, label %4071

4071:                                             ; preds = %4065
  %4072 = zext i32 %4069 to i64
  %4073 = add nuw nsw i64 %4072, 1
  %4074 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4073)
  %4075 = shl i32 %4074, 3
  %4076 = add i32 %4075, %.923925
  %4077 = zext i32 %4068 to i64
  %4078 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4077)
  %4079 = zext i32 %4076 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4079, i64 noundef %4078)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4080 = add i32 %4069, 4
  br label %.backedge.backedge

4081:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4082 = add nuw nsw i64 %657, 2
  %4083 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4082)
  %4084 = add nuw nsw i64 %657, 4
  %4085 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4084)
  %4086 = add nuw nsw i64 %657, 6
  %4087 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4086)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateArrayFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %.223837, i32 noundef %4083, i32 noundef %4085, i32 noundef %4087) #5
  %4088 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4089 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24466 = icmp eq i32 %4089, 0
  br i1 %.not24466, label %._crit_edge, label %4090

4090:                                             ; preds = %4081
  %4091 = zext i32 %4088 to i64
  %4092 = add nuw nsw i64 %4091, 1
  %4093 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4092)
  %4094 = shl i32 %4093, 3
  %4095 = add i32 %4094, %.923925
  %4096 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %4097 = zext i32 %4095 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4097, i64 noundef %4096)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %4098 = add i32 %4088, 8
  br label %.backedge.backedge

4099:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4100 = add nuw nsw i64 %657, 2
  %4101 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4100)
  %4102 = add nuw nsw i64 %657, 4
  %4103 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4102)
  %4104 = add nuw nsw i64 %657, 6
  %4105 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4104)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateArrayFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %.223837, i32 noundef %4101, i32 noundef %4103, i32 noundef %4105) #5
  %4106 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4107 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24465 = icmp eq i32 %4107, 0
  br i1 %.not24465, label %._crit_edge, label %4108

4108:                                             ; preds = %4099
  %4109 = zext i32 %4106 to i64
  %4110 = add nuw nsw i64 %4109, 1
  %4111 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4110)
  %4112 = shl i32 %4111, 3
  %4113 = add i32 %4112, %.923925
  %4114 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %4115 = zext i32 %4113 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4115, i64 noundef %4114)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %4116 = add i32 %4106, 10
  br label %.backedge.backedge

4117:                                             ; preds = %.backedge
  %4118 = add nuw nsw i64 %657, 3
  %4119 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4118)
  %4120 = shl i32 %4119, 3
  %4121 = add i32 %4120, %.923925
  %4122 = zext i32 %4121 to i64
  %4123 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4122)
  %4124 = icmp ugt i64 %4123, -844424930131969
  br i1 %4124, label %4125, label %4130

4125:                                             ; preds = %4117
  %4126 = and i64 %4123, 4294967295
  %4127 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4126)
  %4128 = add i32 %4127, -1140850688
  %4129 = icmp ult i32 %4128, 150994944
  br i1 %4129, label %4132, label %4130

4130:                                             ; preds = %4125, %4117
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %77, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %78, i64 noundef 115964116993)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %79, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 50799)
  %4131 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %0, i32 noundef %2, i32 noundef %80)
  br label %._crit_edge.sink.split

4132:                                             ; preds = %4125
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4133 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4118)
  %4134 = shl i32 %4133, 3
  %4135 = add i32 %4134, %.923925
  %4136 = zext i32 %4135 to i64
  %4137 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4136)
  %4138 = zext i32 %4137 to i64
  %4139 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4138)
  %4140 = add nuw nsw i64 %657, 2
  %4141 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4140)
  %4142 = shl i32 %4141, 3
  %4143 = add i32 %4142, %.923925
  %4144 = zext i32 %4143 to i64
  %4145 = add nuw nsw i64 %4144, 6
  %4146 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %4145)
  %4147 = icmp eq i32 %4146, -1
  %4148 = select i1 %4147, i32 %4143, i32 %70
  %4149 = lshr i32 %4139, 22
  %4150 = and i32 %4149, 1020
  %4151 = add nuw nsw i32 %4150, 138008
  %4152 = zext nneg i32 %4151 to i64
  %4153 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4152)
  %4154 = zext i32 %4153 to i64
  %4155 = add nuw nsw i64 %4154, 56
  %4156 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4155)
  %4157 = load i32, ptr %142, align 4, !tbaa !20
  %4158 = icmp ult i32 %4156, %4157
  br i1 %4158, label %4159, label %.critedge24683, !prof !19

4159:                                             ; preds = %4132
  %4160 = load ptr, ptr %141, align 8, !tbaa !21
  %4161 = zext i32 %4156 to i64
  %4162 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4160, i64 %4161
  %4163 = getelementptr inbounds i8, ptr %4162, i64 8
  %4164 = load ptr, ptr %4163, align 8, !tbaa !22
  %.not24464 = icmp eq ptr %4164, null
  br i1 %.not24464, label %.critedge24683, label %4165, !prof !18

4165:                                             ; preds = %4159
  %4166 = load ptr, ptr %4162, align 8, !tbaa !24
  %4167 = tail call zeroext i1 @func_types_eq(ptr noundef %143, ptr noundef %4166)
  br i1 %4167, label %4168, label %.critedge24683, !prof !19

.critedge24683:                                   ; preds = %4159, %4132, %4165
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

4168:                                             ; preds = %4165
  %4169 = load ptr, ptr %141, align 8, !tbaa !21
  %4170 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4169, i64 %4161
  %4171 = getelementptr inbounds i8, ptr %4170, i64 8
  %4172 = load ptr, ptr %4171, align 8, !tbaa !22
  %4173 = getelementptr inbounds i8, ptr %4170, i64 16
  %4174 = load ptr, ptr %4173, align 8, !tbaa !25
  %4175 = tail call i32 %4172(ptr noundef %4174, i32 noundef %4135, i32 noundef %2, i32 noundef %4148) #5
  %4176 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4177 = icmp eq i32 %4175, -1
  br i1 %4177, label %._crit_edge, label %4178

4178:                                             ; preds = %4168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4179 = zext i32 %4176 to i64
  %4180 = add nuw nsw i64 %4179, 1
  %4181 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4180)
  %4182 = shl i32 %4181, 3
  %4183 = add i32 %4182, %.923925
  %4184 = zext i32 %4175 to i64
  %4185 = or disjoint i64 %4184, -281474976710656
  %4186 = zext i32 %4183 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4186, i64 noundef %4185)
  %4187 = add i32 %4176, 4
  br label %.backedge.backedge

4188:                                             ; preds = %.backedge
  %4189 = add nuw nsw i64 %657, 1
  %4190 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4189)
  %4191 = shl i32 %4190, 3
  %4192 = add i32 %4191, %.923925
  %4193 = add nuw nsw i64 %657, 3
  %4194 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4193)
  %4195 = shl i32 %4194, 3
  %4196 = add i32 %4195, %.923925
  %4197 = zext i32 %4196 to i64
  %4198 = add nuw nsw i64 %4197, 6
  %4199 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %4198)
  %4200 = icmp eq i32 %4199, -1
  %4201 = select i1 %4200, i32 3, i32 2
  %4202 = add i32 %4201, %.323685
  %4203 = zext i32 %4202 to i64
  %4204 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4203)
  %4205 = shl i32 %4204, 3
  %4206 = add i32 %4205, %.923925
  %4207 = zext i32 %4206 to i64
  %4208 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4207)
  %4209 = zext i32 %4192 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4209, i64 noundef %4208)
  %4210 = add i32 %.323685, 4
  br label %.backedge.backedge

4211:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4212 = add nuw nsw i64 %657, 2
  %4213 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4212)
  %4214 = shl i32 %4213, 3
  %4215 = add i32 %4214, %.923925
  %4216 = add nuw nsw i64 %657, 3
  %4217 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4216)
  %4218 = shl i32 %4217, 3
  %4219 = add i32 %4218, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %139, i32 noundef %2, i32 noundef %4215, i32 noundef %4219)
  %4220 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4221 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %140)
  %4222 = and i32 %4221, 255
  %.not24462 = icmp eq i32 %4222, 0
  br i1 %.not24462, label %._crit_edge, label %4223

4223:                                             ; preds = %4211
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4224 = zext i32 %4220 to i64
  %4225 = add nuw nsw i64 %4224, 1
  %4226 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4225)
  %4227 = shl i32 %4226, 3
  %4228 = add i32 %4227, %.923925
  %4229 = lshr i32 %4221, 8
  %4230 = and i32 %4229, 1
  %4231 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4224)
  %4232 = icmp ne i32 %4231, 14
  %4233 = zext i1 %4232 to i32
  %4234 = xor i32 %4230, %4233
  %4235 = zext nneg i32 %4234 to i64
  %4236 = or disjoint i64 %4235, -1407374883553280
  %4237 = zext i32 %4228 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4237, i64 noundef %4236)
  %4238 = add i32 %4220, 4
  br label %.backedge.backedge

4239:                                             ; preds = %.backedge
  %4240 = add nuw nsw i64 %657, 2
  %4241 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4240)
  %4242 = shl i32 %4241, 3
  %4243 = add i32 %4242, %.923925
  %4244 = zext i32 %4243 to i64
  %4245 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4244)
  %4246 = add nuw nsw i64 %657, 3
  %4247 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4246)
  %4248 = shl i32 %4247, 3
  %4249 = add i32 %4248, %.923925
  %4250 = zext i32 %4249 to i64
  %4251 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4250)
  %4252 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %4245, i64 noundef %4251) #5
  %4253 = add nuw nsw i64 %657, 1
  %4254 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4253)
  %4255 = shl i32 %4254, 3
  %4256 = add i32 %4255, %.923925
  %4257 = zext i32 %4252 to i64
  %4258 = or disjoint i64 %4257, -1407374883553280
  %4259 = zext i32 %4256 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4259, i64 noundef %4258)
  %4260 = add i32 %.323685, 4
  br label %.backedge.backedge

4261:                                             ; preds = %.backedge
  %4262 = add nuw nsw i64 %657, 2
  %4263 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4262)
  %4264 = shl i32 %4263, 3
  %4265 = add i32 %4264, %.923925
  %4266 = zext i32 %4265 to i64
  %4267 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4266)
  %4268 = add nuw nsw i64 %657, 3
  %4269 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4268)
  %4270 = shl i32 %4269, 3
  %4271 = add i32 %4270, %.923925
  %4272 = zext i32 %4271 to i64
  %4273 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4272)
  %4274 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %4267, i64 noundef %4273) #5
  %4275 = add nuw nsw i64 %657, 1
  %4276 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4275)
  %4277 = shl i32 %4276, 3
  %4278 = add i32 %4277, %.923925
  %4279 = xor i32 %4274, 1
  %4280 = zext i32 %4279 to i64
  %4281 = or disjoint i64 %4280, -1407374883553280
  %4282 = zext i32 %4278 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4282, i64 noundef %4281)
  %4283 = add i32 %.323685, 4
  br label %.backedge.backedge

4284:                                             ; preds = %.backedge
  %4285 = add nuw nsw i64 %657, 2
  %4286 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4285)
  %4287 = shl i32 %4286, 3
  %4288 = add i32 %4287, %.923925
  %4289 = zext i32 %4288 to i64
  %4290 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4289)
  %4291 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %4290) #5
  %4292 = add nuw nsw i64 %657, 1
  %4293 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4292)
  %4294 = shl i32 %4293, 3
  %4295 = add i32 %4294, %.923925
  %4296 = xor i32 %4291, 1
  %4297 = zext i32 %4296 to i64
  %4298 = or disjoint i64 %4297, -1407374883553280
  %4299 = zext i32 %4295 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4299, i64 noundef %4298)
  %4300 = add i32 %.323685, 3
  br label %.backedge.backedge

4301:                                             ; preds = %.backedge
  %4302 = add nuw nsw i64 %657, 2
  %4303 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4302)
  %4304 = shl i32 %4303, 3
  %4305 = add i32 %4304, %.923925
  %4306 = zext i32 %4305 to i64
  %4307 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4306)
  %4308 = icmp ult i64 %4307, -1970324836974592
  br i1 %4308, label %4309, label %4320

4309:                                             ; preds = %4301
  %4310 = add nuw nsw i64 %657, 1
  %4311 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4310)
  %4312 = shl i32 %4311, 3
  %4313 = add i32 %4312, %.923925
  %4314 = xor i64 %4307, -9223372036854775808
  %4315 = tail call double @f64_reinterpret_i64(i64 noundef %4307)
  %4316 = fcmp uno double %4315, 0.000000e+00
  %4317 = select i1 %4316, i64 9221120237041090560, i64 %4314
  %4318 = zext i32 %4313 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4318, i64 noundef %4317)
  %4319 = add i32 %.323685, 3
  br label %.backedge.backedge

4320:                                             ; preds = %4301
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4321 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4302)
  %4322 = shl i32 %4321, 3
  %4323 = add i32 %4322, %.923925
  %4324 = load i32, ptr %5, align 8, !tbaa !5
  %4325 = add i32 %4324, -16
  store i32 %4325, ptr %5, align 8, !tbaa !5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %4325, i32 noundef %2, i32 noundef %4323) #5
  %4326 = zext i32 %4325 to i64
  %4327 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4326)
  %.not24448 = icmp eq i32 %4327, 0
  br i1 %.not24448, label %4328, label %4329

4328:                                             ; preds = %4320
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %4469

4329:                                             ; preds = %4320
  %4330 = add nuw nsw i64 %4326, 8
  %4331 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4330)
  %.mask24450 = and i64 %4331, -281474976710656
  %.not24449 = icmp eq i64 %.mask24450, -562949953421312
  br i1 %.not24449, label %4337, label %4332

4332:                                             ; preds = %4329
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %4333 = xor i64 %4331, -9223372036854775808
  %4334 = tail call double @f64_reinterpret_i64(i64 noundef %4331)
  %4335 = fcmp uno double %4334, 0.000000e+00
  %4336 = select i1 %4335, i64 9221120237041090560, i64 %4333
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %4336)
  br label %4469

4337:                                             ; preds = %4329
  %4338 = trunc i64 %4331 to i32
  %4339 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %4338) #5
  %4340 = load i32, ptr %5, align 8, !tbaa !5
  %4341 = add i32 %4340, -96
  store i32 %4341, ptr %5, align 8, !tbaa !5
  %4342 = zext i32 %4339 to i64
  %4343 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4342)
  %4344 = add i32 %4343, 8
  %4345 = zext i32 %4341 to i64
  %4346 = add nuw nsw i64 %4345, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4346, i32 noundef %4344)
  %4347 = zext i32 %4343 to i64
  %4348 = add nuw nsw i64 %4347, 4
  %4349 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4348)
  %4350 = add nuw nsw i64 %4345, 60
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4350, i32 noundef %4349)
  %4351 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4346)
  %4352 = add nuw nsw i64 %4345, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4352, i64 noundef %4351)
  %4353 = add i32 %4340, -64
  %4354 = tail call i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Acompare0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef nonnull %0, i32 noundef %4353, i64 noundef 0) #5
  %4355 = tail call i64 @i64_load32_u(ptr noundef nonnull %8, i64 noundef %4342)
  %.not24451 = icmp eq i32 %4354, 0
  br i1 %.not24451, label %4356, label %4358

4356:                                             ; preds = %4337
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %4357 = or i64 %4355, -562949953421312
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %4357)
  br label %4469

4358:                                             ; preds = %4337
  %4359 = trunc i64 %4355 to i32
  %4360 = and i64 %4355, 4294967295
  %4361 = add nuw nsw i64 %4360, 4
  %4362 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4361)
  %4363 = add nuw nsw i64 %4345, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4363, i32 noundef %4362)
  %4364 = add i32 %4359, 8
  %4365 = add nuw nsw i64 %4345, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4365, i32 noundef %4364)
  %4366 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4365)
  %4367 = add nuw nsw i64 %4345, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4367, i64 noundef %4366)
  %4368 = add nuw nsw i64 %4345, 28
  %4369 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4368)
  %.not24452 = icmp eq i32 %4369, 0
  br i1 %.not24452, label %.thread24702, label %4370

4370:                                             ; preds = %4358
  %4371 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4367)
  %4372 = shl i32 %4369, 3
  %4373 = add i32 %4372, -8
  %4374 = add i32 %4373, %4371
  %4375 = zext i32 %4374 to i64
  %4376 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4375)
  %4377 = lshr i64 %4376, 63
  %4378 = trunc nuw nsw i64 %4377 to i32
  %4379 = add i32 %4369, %4378
  %4380 = icmp ult i32 %4379, 1025
  br i1 %4380, label %.thread24702, label %4389

.thread24702:                                     ; preds = %4358, %4370
  %.242378024704 = phi i32 [ %4379, %4370 ], [ 0, %4358 ]
  %4381 = shl nuw nsw i32 %.242378024704, 3
  %4382 = add nuw nsw i32 %4381, 15
  %4383 = and i32 %4382, 32760
  %4384 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %135)
  %4385 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %137)
  %4386 = sub i32 %4384, %4385
  %.not24453 = icmp ugt i32 %4383, %4386
  br i1 %.not24453, label %4387, label %4395

4387:                                             ; preds = %.thread24702
  %4388 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AallocSlow0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %4383) #5
  br label %4397

4389:                                             ; preds = %4370
  %4390 = add nuw nsw i64 %4345, 88
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4390, i32 noundef 0)
  %4391 = add nuw nsw i64 %4345, 80
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4391, i64 noundef 120259084289)
  %4392 = add nuw nsw i64 %4345, 64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4392, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4346, i32 noundef 55293)
  %4393 = add i32 %4340, -40
  %4394 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseRangeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %4393)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 0)
  br label %4469

4395:                                             ; preds = %.thread24702
  %4396 = add i32 %4383, %4385
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %138, i32 noundef %4396)
  br label %4397

4397:                                             ; preds = %4395, %4387
  %.423828 = phi i32 [ %4385, %4395 ], [ %4388, %4387 ]
  %4398 = zext i32 %.423828 to i64
  %4399 = add nuw nsw i64 %4398, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4399, i32 noundef %.242378024704)
  %4400 = or disjoint i32 %4383, 1291845632
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4398, i32 noundef %4400)
  %4401 = add i32 %.423828, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4350, i32 noundef %4401)
  %4402 = add i32 %.423828, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4346, i32 noundef %4402)
  %4403 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4342)
  %4404 = zext i32 %4403 to i64
  %4405 = add nuw nsw i64 %4404, 4
  %4406 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4405)
  %4407 = add nuw nsw i64 %4345, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4407, i32 noundef %4406)
  %4408 = add i32 %4403, 8
  %4409 = add nuw nsw i64 %4345, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4409, i32 noundef %4408)
  %4410 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4346)
  %4411 = add nuw nsw i64 %4345, 16
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4411, i64 noundef %4410)
  %4412 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4409)
  %4413 = add nuw nsw i64 %4345, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4413, i64 noundef %4412)
  %4414 = add nuw nsw i64 %4345, 12
  %4415 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4414)
  %4416 = add nuw nsw i64 %4345, 20
  %4417 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4416)
  %4418 = zext i32 %4417 to i64
  %4419 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4418)
  %.not24454.not = icmp ugt i32 %4415, %4419
  br i1 %.not24454.not, label %.critedge24685, label %4420

4420:                                             ; preds = %4397
  %4421 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4411)
  %4422 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4413)
  %4423 = shl i32 %4415, 3
  %4424 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef nonnull %0, i32 noundef %4421, i32 noundef %4422, i32 noundef %4423) #5
  %4425 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4418)
  %4426 = sub i32 %4425, %4415
  %4427 = shl i32 %4426, 3
  %4428 = add i32 %4424, %4423
  %.not24455 = icmp eq i32 %4415, 0
  br i1 %.not24455, label %4436, label %4429

4429:                                             ; preds = %4420
  %4430 = add i32 %4423, -8
  %4431 = add i32 %4430, %4422
  %4432 = zext i32 %4431 to i64
  %4433 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4432)
  %4434 = ashr i64 %4433, 63
  %4435 = trunc nsw i64 %4434 to i32
  br label %4436

4436:                                             ; preds = %4420, %4429
  %.1323750 = phi i32 [ %4435, %4429 ], [ 0, %4420 ]
  %4437 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef nonnull %0, i32 noundef %4428, i32 noundef %.1323750, i32 noundef %4427) #5
  %4438 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4418)
  tail call void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcNegate0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %4424, i32 noundef %4438) #5
  %4439 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4418)
  %4440 = shl i32 %4439, 3
  %.not24456 = icmp eq i32 %4440, 0
  br i1 %.not24456, label %4467, label %4441

4441:                                             ; preds = %4436
  %4442 = add i32 %4440, -1
  %4443 = add i32 %4442, %4424
  %4444 = zext i32 %4443 to i64
  %4445 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4444)
  %sext = shl i32 %4445, 24
  %4446 = ashr i32 %sext, 31
  %4447 = and i32 %4446, 255
  %.not24457 = icmp eq i32 %4445, %4447
  br i1 %.not24457, label %4448, label %.loopexit24743

4448:                                             ; preds = %4441
  %4449 = zext i32 %4442 to i64
  %4450 = add i32 %4424, -1
  br label %4451

4451:                                             ; preds = %4452, %4448
  %.823804 = phi i64 [ %4449, %4448 ], [ %4455, %4452 ]
  %.25 = phi i32 [ %4440, %4448 ], [ %4453, %4452 ]
  %.not24458 = icmp eq i64 %.823804, 0
  br i1 %.not24458, label %.loopexit24743, label %4452

4452:                                             ; preds = %4451
  %4453 = add i32 %.25, -1
  %4454 = trunc i64 %.823804 to i32
  %4455 = add nsw i64 %.823804, -1
  %4456 = add i32 %4450, %4454
  %4457 = zext i32 %4456 to i64
  %4458 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4457)
  %4459 = icmp eq i32 %4445, %4458
  br i1 %4459, label %4451, label %4460

4460:                                             ; preds = %4452
  %sext24459 = shl i32 %4458, 24
  %4461 = ashr i32 %sext24459, 31
  br label %.loopexit24743

.loopexit24743:                                   ; preds = %4451, %4441, %4460
  %.3223961 = phi i32 [ %.25, %4460 ], [ %4440, %4441 ], [ 1, %4451 ]
  %.2123894 = phi i32 [ %4454, %4460 ], [ %4440, %4441 ], [ 0, %4451 ]
  %.1423751 = phi i32 [ %4461, %4460 ], [ %4446, %4441 ], [ 0, %4451 ]
  %4462 = icmp eq i32 %.1423751, %4446
  %4463 = select i1 %4462, i32 %.2123894, i32 %.3223961
  %4464 = add i32 %4463, 7
  %4465 = lshr i32 %4464, 3
  br label %4467

.critedge24685:                                   ; preds = %4397
  %4466 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef 1) #5
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef %4466)
  br label %4469

4467:                                             ; preds = %.loopexit24743, %4436
  %.1523752 = phi i32 [ %4465, %.loopexit24743 ], [ 0, %4436 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4418, i32 noundef %.1523752)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 1)
  %4468 = or disjoint i64 %4398, -562949953421312
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %79, i64 noundef %4468)
  br label %4469

4469:                                             ; preds = %4356, %4389, %.critedge24685, %4467, %4332, %4328
  store i32 %4324, ptr %5, align 8, !tbaa !5
  %4470 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4471 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24461 = icmp eq i32 %4471, 0
  br i1 %.not24461, label %._crit_edge, label %4472

4472:                                             ; preds = %4469
  %4473 = zext i32 %4470 to i64
  %4474 = add nuw nsw i64 %4473, 1
  %4475 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4474)
  %4476 = shl i32 %4475, 3
  %4477 = add i32 %4476, %.923925
  %4478 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %4479 = zext i32 %4477 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4479, i64 noundef %4478)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4480 = add i32 %4470, 3
  br label %.backedge.backedge

4481:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4482 = add nuw nsw i64 %657, 2
  %4483 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4482)
  %4484 = shl i32 %4483, 3
  %4485 = add i32 %4484, %.923925
  %4486 = tail call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtypeOf0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %4485) #5
  %4487 = add nuw nsw i64 %657, 1
  %4488 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4487)
  %4489 = shl i32 %4488, 3
  %4490 = add i32 %4489, %.923925
  %4491 = zext i32 %4490 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4491, i64 noundef %4486)
  %4492 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4493 = add i32 %4492, 3
  br label %.backedge.backedge

4494:                                             ; preds = %.backedge
  %4495 = add nuw nsw i64 %657, 2
  %4496 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4495)
  %4497 = shl i32 %4496, 3
  %4498 = add i32 %4497, %.923925
  %4499 = zext i32 %4498 to i64
  %4500 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4499)
  %4501 = icmp ugt i64 %4500, -1970324836974593
  %.pre26455 = add nuw nsw i64 %657, 3
  br i1 %4501, label %._crit_edge26435, label %4502

4502:                                             ; preds = %4494
  %4503 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26455)
  %4504 = shl i32 %4503, 3
  %4505 = add i32 %4504, %.923925
  %4506 = zext i32 %4505 to i64
  %4507 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4506)
  %4508 = icmp ugt i64 %4507, -1970324836974593
  br i1 %4508, label %._crit_edge26435, label %4509

4509:                                             ; preds = %4502
  %4510 = tail call double @f64_reinterpret_i64(i64 noundef %4500)
  %4511 = tail call double @f64_reinterpret_i64(i64 noundef %4507)
  %4512 = tail call double @w2c_hermes_fmod(ptr noundef %0, double noundef %4510, double noundef %4511) #5
  %4513 = add nuw nsw i64 %657, 1
  %4514 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4513)
  %4515 = shl i32 %4514, 3
  %4516 = add i32 %4515, %.923925
  %4517 = tail call i64 @i64_reinterpret_f64(double noundef %4512)
  %4518 = fcmp uno double %4512, 0.000000e+00
  %4519 = select i1 %4518, i64 9221120237041090560, i64 %4517
  %4520 = zext i32 %4516 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4520, i64 noundef %4519)
  %4521 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26435:                                 ; preds = %4494, %4502
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4522 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4495)
  %4523 = shl i32 %4522, 3
  %4524 = add i32 %4523, %.923925
  %4525 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26455)
  %4526 = shl i32 %4525, 3
  %4527 = add i32 %4526, %.923925
  %4528 = load i32, ptr %5, align 8, !tbaa !5
  %4529 = add i32 %4528, -32
  store i32 %4529, ptr %5, align 8, !tbaa !5
  %4530 = add i32 %4528, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %4530, i32 noundef %2, i32 noundef %4524, i32 noundef 2) #5
  %4531 = zext i32 %4529 to i64
  %4532 = add nuw nsw i64 %4531, 16
  %4533 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4532)
  %.not24442 = icmp eq i32 %4533, 0
  br i1 %.not24442, label %4534, label %4535

4534:                                             ; preds = %._crit_edge26435
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %4569

4535:                                             ; preds = %._crit_edge26435
  %4536 = add nuw nsw i64 %4531, 24
  %4537 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4536)
  %.mask24444 = and i64 %4537, -281474976710656
  %.not24443 = icmp eq i64 %.mask24444, -562949953421312
  br i1 %.not24443, label %4566, label %4538

4538:                                             ; preds = %4535
  %4539 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %4540 = zext i32 %4539 to i64
  %4541 = add nuw nsw i64 %4540, 164
  %4542 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4541)
  %4543 = add nuw nsw i64 %4540, 168
  %4544 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4543)
  %4545 = icmp ult i32 %4542, %4544
  br i1 %4545, label %4546, label %4549

4546:                                             ; preds = %4538
  %4547 = add i32 %4542, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4541, i32 noundef %4547)
  %4548 = zext i32 %4542 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4548, i64 noundef %4537)
  br label %4551

4549:                                             ; preds = %4538
  %4550 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %4539, i64 noundef %4537) #5
  br label %4551

4551:                                             ; preds = %4549, %4546
  %.2123713 = phi i32 [ %4542, %4546 ], [ %4550, %4549 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %4529, i32 noundef %2, i32 noundef %.2123713) #5
  %4552 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4531)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4532, i32 noundef %4552)
  %4553 = add nuw nsw i64 %4531, 8
  %4554 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4553)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4536, i64 noundef %4554)
  %.not24445 = icmp eq i32 %4552, 0
  br i1 %.not24445, label %4555, label %4556

4555:                                             ; preds = %4551
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %4569

4556:                                             ; preds = %4551
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %4529, i32 noundef %2, i32 noundef %4527) #5
  %4557 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4531)
  %.not24446 = icmp eq i32 %4557, 0
  br i1 %.not24446, label %4558, label %4559

4558:                                             ; preds = %4556
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %4569

4559:                                             ; preds = %4556
  %4560 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %4553)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %4561 = tail call double @f64_reinterpret_i64(i64 noundef %4554)
  %4562 = tail call double @w2c_hermes_fmod(ptr noundef nonnull %0, double noundef %4561, double noundef %4560) #5
  %4563 = tail call i64 @i64_reinterpret_f64(double noundef %4562)
  %4564 = fcmp uno double %4562, 0.000000e+00
  %4565 = select i1 %4564, i64 9221120237041090560, i64 %4563
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %4565)
  br label %4569

4566:                                             ; preds = %4535
  %4567 = trunc i64 %4537 to i32
  %4568 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %4567) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 542, i32 noundef %4568, i32 noundef %4527) #5
  br label %4569

4569:                                             ; preds = %4566, %4559, %4558, %4555, %4534
  store i32 %4528, ptr %5, align 8, !tbaa !5
  %4570 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4571 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24447 = icmp eq i32 %4571, 0
  br i1 %.not24447, label %._crit_edge, label %4572

4572:                                             ; preds = %4569
  %4573 = zext i32 %4570 to i64
  %4574 = add nuw nsw i64 %4573, 1
  %4575 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4574)
  %4576 = shl i32 %4575, 3
  %4577 = add i32 %4576, %.923925
  %4578 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %4579 = zext i32 %4577 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4579, i64 noundef %4578)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4580 = add i32 %4570, 4
  br label %.backedge.backedge

4581:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4582 = add nuw nsw i64 %657, 2
  %4583 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4582)
  %4584 = shl i32 %4583, 3
  %4585 = add i32 %4584, %.923925
  %4586 = add nuw nsw i64 %657, 3
  %4587 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4586)
  %4588 = shl i32 %4587, 3
  %4589 = add i32 %4588, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AinstanceOfOperator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %132, i32 noundef %2, i32 noundef %4585, i32 noundef %4589) #5
  %4590 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4591 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %133)
  %4592 = and i32 %4591, 255
  %.not24441 = icmp eq i32 %4592, 0
  br i1 %.not24441, label %._crit_edge, label %4593

4593:                                             ; preds = %4581
  %4594 = zext i32 %4590 to i64
  %4595 = add nuw nsw i64 %4594, 1
  %4596 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4595)
  %4597 = shl i32 %4596, 3
  %4598 = add i32 %4597, %.923925
  %4599 = lshr i32 %4591, 8
  %4600 = and i32 %4599, 1
  %4601 = zext nneg i32 %4600 to i64
  %4602 = or disjoint i64 %4601, -1407374883553280
  %4603 = zext i32 %4598 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4603, i64 noundef %4602)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4604 = add i32 %4590, 4
  br label %.backedge.backedge

4605:                                             ; preds = %.backedge
  %4606 = add nuw nsw i64 %657, 3
  %4607 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4606)
  %4608 = shl i32 %4607, 3
  %4609 = add i32 %4608, %.923925
  %4610 = zext i32 %4609 to i64
  %4611 = add nuw nsw i64 %4610, 6
  %4612 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %4611)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %.not24439 = icmp eq i32 %4612, -1
  br i1 %.not24439, label %4615, label %4613

4613:                                             ; preds = %4605
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %77, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %78, i64 noundef 163208757249)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %79, i32 noundef 3)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %.pre-phi26444, i32 noundef 31290)
  %4614 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %0, i32 noundef %2, i32 noundef %80)
  br label %._crit_edge.sink.split

4615:                                             ; preds = %4605
  %4616 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4606)
  %4617 = shl i32 %4616, 3
  %4618 = add i32 %4617, %.923925
  %4619 = add nuw nsw i64 %657, 2
  %4620 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4619)
  %4621 = shl i32 %4620, 3
  %4622 = add i32 %4621, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AhasComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %130, i32 noundef %4618, i32 noundef %2, i32 noundef %4622) #5
  %4623 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4624 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %131)
  %4625 = and i32 %4624, 255
  %.not24440 = icmp eq i32 %4625, 0
  br i1 %.not24440, label %._crit_edge, label %4626

4626:                                             ; preds = %4615
  %4627 = zext i32 %4623 to i64
  %4628 = add nuw nsw i64 %4627, 1
  %4629 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4628)
  %4630 = shl i32 %4629, 3
  %4631 = add i32 %4630, %.923925
  %4632 = lshr i32 %4624, 8
  %4633 = and i32 %4632, 1
  %4634 = zext nneg i32 %4633 to i64
  %4635 = or disjoint i64 %4634, -1407374883553280
  %4636 = zext i32 %4631 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4636, i64 noundef %4635)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4637 = add i32 %4623, 4
  br label %.backedge.backedge

4638:                                             ; preds = %.backedge
  %4639 = add i32 %.323685, 4
  %4640 = add nuw nsw i64 %657, 3
  %4641 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4640)
  br label %4650

4642:                                             ; preds = %.backedge
  %4643 = add i32 %.323685, 7
  %4644 = add nuw nsw i64 %657, 3
  %4645 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4644)
  br label %4650

4646:                                             ; preds = %.backedge
  %4647 = add i32 %.323685, 5
  %4648 = add nuw nsw i64 %657, 3
  %4649 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4648)
  br label %4650

4650:                                             ; preds = %4646, %4642, %4638
  %.3323962 = phi i32 [ %4647, %4646 ], [ %4643, %4642 ], [ %4639, %4638 ]
  %.2623782 = phi i32 [ %4649, %4646 ], [ %4645, %4642 ], [ %4641, %4638 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4651 = zext i32 %.223837 to i64
  %4652 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4651)
  %4653 = zext i32 %4652 to i64
  %4654 = add nuw nsw i64 %4653, 12
  %4655 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4654)
  %4656 = shl i32 %.2623782, 2
  %4657 = add i32 %4655, %4656
  %4658 = zext i32 %4657 to i64
  %4659 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4658)
  %4660 = add nuw nsw i64 %657, 1
  %4661 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4660)
  %4662 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %657)
  %4663 = icmp ult i32 %4662, 66
  %4664 = select i1 %4663, i32 14, i32 12
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %127, i32 noundef %4664)
  %4665 = add nuw nsw i64 %657, 2
  %4666 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4665)
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %128, i32 noundef %4664)
  %4667 = shl i32 %4661, 3
  %4668 = add i32 %4667, %.923925
  %4669 = shl i32 %4666, 3
  %4670 = add i32 %4669, %.923925
  %4671 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineNewOwnProperty0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %4668, i32 noundef %2, i32 noundef %4659, i32 noundef %129, i32 noundef %4670) #5
  %.not24438 = icmp eq i32 %4671, 0
  br i1 %.not24438, label %._crit_edge.sink.split, label %4672

4672:                                             ; preds = %4650
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

4673:                                             ; preds = %.backedge
  %4674 = add i32 %.323685, 7
  %4675 = add nuw nsw i64 %657, 3
  %4676 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4675)
  br label %4681

4677:                                             ; preds = %.backedge
  %4678 = add i32 %.323685, 5
  %4679 = add nuw nsw i64 %657, 3
  %4680 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %4679)
  br label %4681

4681:                                             ; preds = %4677, %4673
  %.3423963 = phi i32 [ %4678, %4677 ], [ %4674, %4673 ]
  %.2723783 = phi i32 [ %4680, %4677 ], [ %4676, %4673 ]
  %4682 = add nuw nsw i64 %657, 2
  %4683 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4682)
  %4684 = shl i32 %4683, 3
  %4685 = add i32 %4684, %.923925
  %4686 = zext i32 %4685 to i64
  %4687 = add nuw nsw i64 %4686, 6
  %4688 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %4687)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4689 = icmp eq i32 %4688, -1
  br i1 %4689, label %4690, label %4717

4690:                                             ; preds = %4681
  %4691 = zext i32 %.223837 to i64
  %4692 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4691)
  %4693 = zext i32 %4692 to i64
  %4694 = add nuw nsw i64 %4693, 12
  %4695 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4694)
  %4696 = shl i32 %.2723783, 2
  %4697 = add i32 %4695, %4696
  %4698 = zext i32 %4697 to i64
  %4699 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4698)
  %4700 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4682)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %122, i32 noundef %.523823)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %123, i32 noundef %.523823)
  %4701 = shl i32 %4700, 3
  %4702 = add i32 %4701, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteNamed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %124, i32 noundef %4702, i32 noundef %2, i32 noundef %4699, i32 noundef %125) #5
  %4703 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4704 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %126)
  %4705 = and i32 %4704, 255
  %.not24437 = icmp eq i32 %4705, 0
  br i1 %.not24437, label %._crit_edge, label %4706

4706:                                             ; preds = %4690
  %4707 = zext i32 %4703 to i64
  %4708 = add nuw nsw i64 %4707, 1
  %4709 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4708)
  %4710 = shl i32 %4709, 3
  %4711 = add i32 %4710, %.923925
  %4712 = lshr i32 %4704, 8
  %4713 = and i32 %4712, 1
  %4714 = zext nneg i32 %4713 to i64
  %4715 = or disjoint i64 %4714, -1407374883553280
  %4716 = zext i32 %4711 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4716, i64 noundef %4715)
  br label %4765

4717:                                             ; preds = %4681
  %4718 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4682)
  %4719 = shl i32 %4718, 3
  %4720 = add i32 %4719, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %4720) #5
  %4721 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24435 = icmp eq i32 %4721, 0
  br i1 %.not24435, label %4722, label %4740

4722:                                             ; preds = %4717
  %4723 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4724 = zext i32 %4723 to i64
  %4725 = add nuw nsw i64 %4724, 2
  %4726 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4725)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %208, i32 noundef 6)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %209, i32 noundef 46931)
  %4727 = zext i32 %.223837 to i64
  %4728 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4727)
  %4729 = zext i32 %4728 to i64
  %4730 = add nuw nsw i64 %4729, 12
  %4731 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4730)
  %4732 = shl i32 %.2723783, 2
  %4733 = add i32 %4731, %4732
  %4734 = zext i32 %4733 to i64
  %4735 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4734)
  %4736 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %209)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %210, i64 noundef %4736)
  %4737 = shl i32 %4726, 3
  %4738 = add i32 %4737, %.923925
  %4739 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AamendPropAccessErrorMsgWithPropName0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x29(ptr noundef %0, i32 noundef %2, i32 noundef %4738, i32 noundef %211, i32 noundef %4735)
  br label %._crit_edge.sink.split

4740:                                             ; preds = %4717
  %4741 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %4741)
  %4742 = zext i32 %.223837 to i64
  %4743 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4742)
  %4744 = zext i32 %4743 to i64
  %4745 = add nuw nsw i64 %4744, 12
  %4746 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4745)
  %4747 = shl i32 %.2723783, 2
  %4748 = add i32 %4746, %4747
  %4749 = zext i32 %4748 to i64
  %4750 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4749)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %117, i32 noundef %.523823)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %118, i32 noundef %.523823)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteNamed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %119, i32 noundef %57, i32 noundef %2, i32 noundef %4750, i32 noundef %120) #5
  %4751 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4752 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %121)
  %4753 = and i32 %4752, 255
  %.not24436 = icmp eq i32 %4753, 0
  br i1 %.not24436, label %._crit_edge, label %4754

4754:                                             ; preds = %4740
  %4755 = zext i32 %4751 to i64
  %4756 = add nuw nsw i64 %4755, 1
  %4757 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4756)
  %4758 = shl i32 %4757, 3
  %4759 = add i32 %4758, %.923925
  %4760 = lshr i32 %4752, 8
  %4761 = and i32 %4760, 1
  %4762 = zext nneg i32 %4761 to i64
  %4763 = or disjoint i64 %4762, -1407374883553280
  %4764 = zext i32 %4759 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4764, i64 noundef %4763)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  br label %4765

4765:                                             ; preds = %4754, %4706
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

4766:                                             ; preds = %.backedge
  %4767 = add nuw nsw i64 %657, 2
  %4768 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4767)
  %4769 = shl i32 %4768, 3
  %4770 = add i32 %4769, %.923925
  %4771 = zext i32 %4770 to i64
  %4772 = add nuw nsw i64 %4771, 6
  %4773 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %4772)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4774 = icmp eq i32 %4773, -1
  %4775 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4767)
  br i1 %4774, label %4776, label %4786

4776:                                             ; preds = %4766
  %4777 = add nuw nsw i64 %657, 3
  %4778 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4777)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %112, i32 noundef %.523823)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %113, i32 noundef %.523823)
  %4779 = shl i32 %4775, 3
  %4780 = add i32 %4779, %.923925
  %4781 = shl i32 %4778, 3
  %4782 = add i32 %4781, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %114, i32 noundef %4780, i32 noundef %2, i32 noundef %4782, i32 noundef %115) #5
  %4783 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4784 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %116)
  %4785 = and i32 %4784, 255
  %.not24434 = icmp eq i32 %4785, 0
  br i1 %.not24434, label %._crit_edge, label %4801

4786:                                             ; preds = %4766
  %4787 = shl i32 %4775, 3
  %4788 = add i32 %4787, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %4788) #5
  %4789 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4790 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24432 = icmp eq i32 %4790, 0
  br i1 %.not24432, label %._crit_edge, label %4791

4791:                                             ; preds = %4786
  %4792 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %4792)
  %4793 = zext i32 %4789 to i64
  %4794 = add nuw nsw i64 %4793, 3
  %4795 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4794)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %107, i32 noundef %.523823)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %108, i32 noundef %.523823)
  %4796 = shl i32 %4795, 3
  %4797 = add i32 %4796, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %109, i32 noundef %57, i32 noundef %2, i32 noundef %4797, i32 noundef %110) #5
  %4798 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4799 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %111)
  %4800 = and i32 %4799, 255
  %.not24433 = icmp eq i32 %4800, 0
  br i1 %.not24433, label %._crit_edge, label %4801

4801:                                             ; preds = %4791, %4776
  %.2223895 = phi i32 [ %4784, %4776 ], [ %4799, %4791 ]
  %.26 = phi i32 [ %4783, %4776 ], [ %4798, %4791 ]
  %4802 = zext i32 %.26 to i64
  %4803 = add nuw nsw i64 %4802, 1
  %4804 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4803)
  %4805 = shl i32 %4804, 3
  %4806 = add i32 %4805, %.923925
  %4807 = lshr i32 %.2223895, 8
  %4808 = and i32 %4807, 1
  %4809 = zext nneg i32 %4808 to i64
  %4810 = or disjoint i64 %4809, -1407374883553280
  %4811 = zext i32 %4806 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4811, i64 noundef %4810)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %4812 = add i32 %.26, 4
  br label %.backedge.backedge

4813:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %4814 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSRegExp0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %71) #5
  %4815 = add nuw nsw i64 %657, 1
  %4816 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4815)
  %4817 = shl i32 %4816, 3
  %4818 = add i32 %4817, %.923925
  %4819 = zext i32 %4814 to i64
  %4820 = or disjoint i64 %4819, -281474976710656
  %4821 = zext i32 %4818 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4821, i64 noundef %4820)
  %4822 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4823 = zext i32 %4822 to i64
  %4824 = add nuw nsw i64 %4823, 1
  %4825 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4824)
  %4826 = shl i32 %4825, 3
  %4827 = zext i32 %.223837 to i64
  %4828 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4827)
  %4829 = add nuw nsw i64 %4823, 2
  %4830 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4829)
  %4831 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %4828, i32 noundef %4830)
  %4832 = zext i32 %4831 to i64
  %4833 = or disjoint i64 %4832, -844424930131968
  %4834 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %4835 = zext i32 %4834 to i64
  %4836 = add nuw nsw i64 %4835, 164
  %4837 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4836)
  %4838 = add nuw nsw i64 %4835, 168
  %4839 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4838)
  %4840 = icmp ult i32 %4837, %4839
  br i1 %4840, label %4841, label %4844

4841:                                             ; preds = %4813
  %4842 = add i32 %4837, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4836, i32 noundef %4842)
  %4843 = zext i32 %4837 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4843, i64 noundef %4833)
  br label %4846

4844:                                             ; preds = %4813
  %4845 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %4834, i64 noundef %4833) #5
  br label %4846

4846:                                             ; preds = %4844, %4841
  %.27 = phi i32 [ %4837, %4841 ], [ %4845, %4844 ]
  %4847 = add i32 %4826, %.923925
  %4848 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4827)
  %4849 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4850 = zext i32 %4849 to i64
  %4851 = add nuw nsw i64 %4850, 6
  %4852 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4851)
  %4853 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %4848, i32 noundef %4852)
  %4854 = zext i32 %4853 to i64
  %4855 = or disjoint i64 %4854, -844424930131968
  %4856 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %4857 = zext i32 %4856 to i64
  %4858 = add nuw nsw i64 %4857, 164
  %4859 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4858)
  %4860 = add nuw nsw i64 %4857, 168
  %4861 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4860)
  %4862 = icmp ult i32 %4859, %4861
  br i1 %4862, label %4863, label %4866

4863:                                             ; preds = %4846
  %4864 = add i32 %4859, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4858, i32 noundef %4864)
  %4865 = zext i32 %4859 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %4865, i64 noundef %4855)
  br label %4868

4866:                                             ; preds = %4846
  %4867 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %4856, i64 noundef %4855) #5
  br label %4868

4868:                                             ; preds = %4866, %4863
  %4869 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4827)
  %4870 = zext i32 %4869 to i64
  %4871 = add nuw nsw i64 %4870, 40
  %4872 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4871)
  %4873 = zext i32 %4872 to i64
  %4874 = add nuw nsw i64 %4873, 84
  %4875 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4874)
  %4876 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %4877 = zext i32 %4876 to i64
  %4878 = add nuw nsw i64 %4877, 10
  %4879 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4878)
  %4880 = shl i32 %4879, 3
  %4881 = add i32 %4880, %4875
  %4882 = zext i32 %4881 to i64
  %4883 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4882)
  %4884 = add nuw nsw i64 %4873, 92
  %4885 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4884)
  %4886 = add nuw nsw i64 %4882, 4
  %4887 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4886)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %101, i32 noundef %4887)
  %4888 = add i32 %4885, %4883
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %102, i32 noundef %4888)
  %4889 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %102)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %103, i64 noundef %4889)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %104, i64 noundef %4889)
  %4890 = load i32, ptr %5, align 8, !tbaa !5
  %4891 = add i32 %4890, -32
  store i32 %4891, ptr %5, align 8, !tbaa !5
  %4892 = zext i32 %.27 to i64
  %4893 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4892)
  %4894 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %106)
  %4895 = zext i32 %4847 to i64
  %4896 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4895)
  %4897 = add i32 %4896, 20
  %4898 = and i32 %4897, -4194304
  %.not24431 = icmp eq i32 %4894, %4898
  br i1 %.not24431, label %4900, label %4899

4899:                                             ; preds = %4868
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AwriteBarrierSlow0x28hermes0x3A0x3Avm0x3A0x3AGCPointerBase0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AGCCell0x20const0x2A0x29(ptr noundef nonnull %0, i32 noundef %72, i32 noundef %4897, i32 noundef %4893) #5
  br label %4900

4900:                                             ; preds = %4899, %4868
  %4901 = zext i32 %4897 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4901, i32 noundef %4893)
  %4902 = zext i32 %4891 to i64
  %4903 = add nuw nsw i64 %4902, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4903, i32 noundef 314)
  %4904 = add nuw nsw i64 %4902, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4904, i32 noundef 0)
  %4905 = add nuw nsw i64 %4902, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4905, i32 noundef 314)
  %4906 = add nuw nsw i64 %4902, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4906, i32 noundef 0)
  %4907 = add i32 %4890, -12
  %4908 = add i32 %4890, -16
  %4909 = add i32 %4890, -20
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnPropertyInternal0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef nonnull %0, i32 noundef %4907, i32 noundef %4847, i32 noundef %2, i32 noundef 342, i32 noundef %4908, i32 noundef 67248, i32 noundef %4909) #5
  %4910 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %104)
  %4911 = trunc i64 %4910 to i32
  %4912 = and i64 %4910, 4294967295
  %4913 = add nuw nsw i64 %4912, 4
  %4914 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4913)
  %4915 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4895)
  %4916 = lshr i64 %4910, 32
  %4917 = trunc nuw i64 %4916 to i32
  %4918 = zext i32 %4915 to i64
  %4919 = add nuw nsw i64 %4918, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4919, i32 noundef %4917)
  %4920 = and i32 %4914, 127
  %4921 = add nuw nsw i64 %4918, 32
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %4921, i32 noundef %4920)
  %4922 = tail call i32 @w2c_hermes_hermes0x3A0x3AcheckedMalloc0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %4917) #5
  %4923 = add nuw nsw i64 %4918, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %4923, i32 noundef %4922)
  %4924 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef nonnull %0, i32 noundef %4922, i32 noundef %4911, i32 noundef %4917) #5
  store i32 %4890, ptr %5, align 8, !tbaa !5
  %4925 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %4926 = add i32 %4925, 14
  br label %.backedge.backedge

4927:                                             ; preds = %.backedge
  %4928 = add nuw nsw i64 %657, 1
  %4929 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4928)
  %4930 = shl i32 %4929, 3
  %4931 = add i32 %4930, %.923925
  %4932 = zext i32 %4931 to i64
  %4933 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %4932)
  %4934 = icmp ugt i64 %4933, -1970324836974593
  br i1 %4934, label %4971, label %4935

4935:                                             ; preds = %4927
  %4936 = tail call double @f64_reinterpret_i64(i64 noundef %4933)
  %4937 = fcmp olt double %4936, 0x41F0000000000000
  %4938 = fcmp oge double %4936, 0.000000e+00
  %4939 = and i1 %4937, %4938
  br i1 %4939, label %4940, label %4948

4940:                                             ; preds = %4935
  %4941 = fcmp uno double %4936, 0.000000e+00
  br i1 %4941, label %4942, label %4943, !prof !18

4942:                                             ; preds = %4940
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

4943:                                             ; preds = %4940
  %4944 = fcmp ogt double %4936, -1.000000e+00
  br i1 %4944, label %4946, label %4945, !prof !19

4945:                                             ; preds = %4943
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

4946:                                             ; preds = %4943
  %4947 = fptoui double %4936 to i32
  br label %4948

4948:                                             ; preds = %4935, %4946
  %.2823784 = phi i32 [ %4947, %4946 ], [ 0, %4935 ]
  %4949 = uitofp i32 %.2823784 to double
  %4950 = fcmp une double %4936, %4949
  br i1 %4950, label %4971, label %4951

4951:                                             ; preds = %4948
  %4952 = add nuw nsw i64 %657, 10
  %4953 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4952)
  %4954 = icmp ugt i32 %4953, %.2823784
  br i1 %4954, label %4971, label %4955

4955:                                             ; preds = %4951
  %4956 = add nuw nsw i64 %657, 14
  %4957 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4956)
  %4958 = icmp ult i32 %4957, %.2823784
  br i1 %4958, label %4971, label %4959

4959:                                             ; preds = %4955
  %4960 = add nuw nsw i64 %657, 2
  %4961 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4960)
  %4962 = add i32 %.323685, 3
  %4963 = add i32 %4962, %4961
  %4964 = and i32 %4963, -4
  %4965 = sub i32 %.2823784, %4953
  %4966 = shl i32 %4965, 2
  %4967 = add i32 %4966, %4964
  %4968 = zext i32 %4967 to i64
  %4969 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4968)
  %4970 = add i32 %4969, %.323685
  br label %.backedge.backedge

4971:                                             ; preds = %4955, %4951, %4948, %4927
  %4972 = add nuw nsw i64 %657, 6
  %4973 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4972)
  %4974 = add i32 %4973, %.323685
  br label %.backedge.backedge

4975:                                             ; preds = %.backedge
  %4976 = add nuw nsw i64 %657, 1
  %4977 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4976)
  %4978 = shl i32 %4977, 3
  %4979 = add i32 %4978, %.923925
  %4980 = add nuw nsw i64 %657, 2
  %4981 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4980)
  %4982 = uitofp i32 %4981 to double
  %4983 = zext i32 %4979 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %4983, double noundef %4982)
  %4984 = add i32 %.323685, 3
  br label %.backedge.backedge

4985:                                             ; preds = %.backedge
  %4986 = add nuw nsw i64 %657, 1
  %4987 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4986)
  %4988 = shl i32 %4987, 3
  %4989 = add i32 %4988, %.923925
  %4990 = add nuw nsw i64 %657, 2
  %4991 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %4990)
  %4992 = sitofp i32 %4991 to double
  %4993 = zext i32 %4989 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %4993, double noundef %4992)
  %4994 = add i32 %.323685, 6
  br label %.backedge.backedge

4995:                                             ; preds = %.backedge
  %4996 = add nuw nsw i64 %657, 1
  %4997 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %4996)
  %4998 = shl i32 %4997, 3
  %4999 = add i32 %4998, %.923925
  %5000 = add nuw nsw i64 %657, 2
  %5001 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5000)
  %5002 = tail call i64 @i64_reinterpret_f64(double noundef %5001)
  %5003 = fcmp uno double %5001, 0.000000e+00
  %5004 = select i1 %5003, i64 9221120237041090560, i64 %5002
  %5005 = zext i32 %4999 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5005, i64 noundef %5004)
  %5006 = add i32 %.323685, 10
  br label %.backedge.backedge

5007:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5008 = zext i32 %.223837 to i64
  %5009 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5008)
  %5010 = add nuw nsw i64 %657, 2
  %5011 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %5010)
  %5012 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %5009, i32 noundef %5011)
  %5013 = add nuw nsw i64 %657, 1
  %5014 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5013)
  %5015 = shl i32 %5014, 3
  %5016 = add i32 %5015, %.923925
  %5017 = zext i32 %5012 to i64
  %5018 = or disjoint i64 %5017, -844424930131968
  %5019 = zext i32 %5016 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5019, i64 noundef %5018)
  %5020 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5021 = add i32 %5020, 4
  br label %.backedge.backedge

5022:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5023 = zext i32 %.223837 to i64
  %5024 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5023)
  %5025 = add nuw nsw i64 %657, 2
  %5026 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5025)
  %5027 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x3A0x3AgetStringPrimFromStringIDMayAllocate0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %5024, i32 noundef %5026)
  %5028 = add nuw nsw i64 %657, 1
  %5029 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5028)
  %5030 = shl i32 %5029, 3
  %5031 = add i32 %5030, %.923925
  %5032 = zext i32 %5027 to i64
  %5033 = or disjoint i64 %5032, -844424930131968
  %5034 = zext i32 %5031 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5034, i64 noundef %5033)
  %5035 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5036 = add i32 %5035, 6
  br label %.backedge.backedge

5037:                                             ; preds = %.backedge
  %5038 = add nuw nsw i64 %657, 1
  %5039 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5038)
  %5040 = shl i32 %5039, 3
  %5041 = add i32 %5040, %.923925
  %5042 = zext i32 %5041 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5042, i64 noundef -1970324836974592)
  %5043 = add i32 %.323685, 2
  br label %.backedge.backedge

5044:                                             ; preds = %.backedge
  %5045 = add nuw nsw i64 %657, 1
  %5046 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5045)
  %5047 = shl i32 %5046, 3
  %5048 = add i32 %5047, %.923925
  %5049 = zext i32 %5048 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5049, i64 noundef -1688849860263936)
  %5050 = add i32 %.323685, 2
  br label %.backedge.backedge

5051:                                             ; preds = %.backedge
  %5052 = add nuw nsw i64 %657, 1
  %5053 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5052)
  %5054 = shl i32 %5053, 3
  %5055 = add i32 %5054, %.923925
  %5056 = zext i32 %5055 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5056, i64 noundef -1548112371908608)
  %5057 = add i32 %.323685, 2
  br label %.backedge.backedge

5058:                                             ; preds = %.backedge
  %5059 = add nuw nsw i64 %657, 1
  %5060 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5059)
  %5061 = shl i32 %5060, 3
  %5062 = add i32 %5061, %.923925
  %5063 = zext i32 %5062 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5063, i64 noundef -1407374883553279)
  %5064 = add i32 %.323685, 2
  br label %.backedge.backedge

5065:                                             ; preds = %.backedge
  %5066 = add nuw nsw i64 %657, 1
  %5067 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5066)
  %5068 = shl i32 %5067, 3
  %5069 = add i32 %5068, %.923925
  %5070 = zext i32 %5069 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5070, i64 noundef -1407374883553280)
  %5071 = add i32 %.323685, 2
  br label %.backedge.backedge

5072:                                             ; preds = %.backedge
  %5073 = add nuw nsw i64 %657, 1
  %5074 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5073)
  %5075 = shl i32 %5074, 3
  %5076 = add i32 %5075, %.923925
  %5077 = zext i32 %5076 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5077, i64 noundef 0)
  %5078 = add i32 %.323685, 2
  br label %.backedge.backedge

5079:                                             ; preds = %.backedge
  %5080 = add nuw nsw i64 %657, 2
  %5081 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %5080)
  br label %5085

5082:                                             ; preds = %.backedge
  %5083 = add nuw nsw i64 %657, 2
  %5084 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5083)
  br label %5085

5085:                                             ; preds = %5082, %5079
  %.sink27211 = phi i32 [ 6, %5082 ], [ 4, %5079 ]
  %.2323896 = phi i32 [ %5084, %5082 ], [ %5081, %5079 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5086 = zext i32 %.223837 to i64
  %5087 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5086)
  %5088 = zext i32 %5087 to i64
  %5089 = add nuw nsw i64 %5088, 40
  %5090 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5089)
  %5091 = zext i32 %5090 to i64
  %5092 = add nuw nsw i64 %5091, 68
  %5093 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5092)
  %5094 = shl i32 %.2323896, 3
  %5095 = add i32 %5093, %5094
  %5096 = zext i32 %5095 to i64
  %5097 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5096)
  %5098 = add nuw nsw i64 %5091, 76
  %5099 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5098)
  %5100 = add nuw nsw i64 %5096, 4
  %5101 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5100)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %94, i32 noundef %5101)
  %5102 = add i32 %5099, %5097
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %95, i32 noundef %5102)
  %5103 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %95)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %96, i64 noundef %5103)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AfromBytes0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x29(ptr noundef %0, i32 noundef %97, i32 noundef %2, i32 noundef %98) #5
  %5104 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5105 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %99)
  %.not24430 = icmp eq i32 %5105, 0
  br i1 %.not24430, label %._crit_edge, label %5106

5106:                                             ; preds = %5085
  %5107 = add i32 %.323685, %.sink27211
  %5108 = zext i32 %5104 to i64
  %5109 = add nuw nsw i64 %5108, 1
  %5110 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5109)
  %5111 = shl i32 %5110, 3
  %5112 = add i32 %5111, %.923925
  %5113 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %100)
  %5114 = zext i32 %5112 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5114, i64 noundef %5113)
  br label %.backedge.backedge

5115:                                             ; preds = %.backedge
  %5116 = add nuw nsw i64 %657, 2
  %5117 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5116)
  %5118 = shl i32 %5117, 3
  %5119 = add i32 %5118, %.923925
  %5120 = zext i32 %5119 to i64
  %5121 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5120)
  %5122 = icmp ugt i64 %5121, -1970324836974593
  %.pre26457 = add nuw nsw i64 %657, 3
  br i1 %5122, label %._crit_edge26434, label %5123

5123:                                             ; preds = %5115
  %5124 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26457)
  %5125 = shl i32 %5124, 3
  %5126 = add i32 %5125, %.923925
  %5127 = zext i32 %5126 to i64
  %5128 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5127)
  %5129 = icmp ugt i64 %5128, -1970324836974593
  br i1 %5129, label %._crit_edge26434, label %5130

5130:                                             ; preds = %._crit_edge26433, %5123
  %.pre-phi26462 = phi i64 [ %.pre26461, %._crit_edge26433 ], [ %.pre26457, %5123 ]
  %.pre-phi26460 = phi i64 [ %.pre26459, %._crit_edge26433 ], [ %5116, %5123 ]
  %5131 = add nuw nsw i64 %657, 1
  %5132 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5131)
  %5133 = shl i32 %5132, 3
  %5134 = add i32 %5133, %.923925
  %5135 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26460)
  %5136 = shl i32 %5135, 3
  %5137 = add i32 %5136, %.923925
  %5138 = zext i32 %5137 to i64
  %5139 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5138)
  %5140 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26462)
  %5141 = shl i32 %5140, 3
  %5142 = add i32 %5141, %.923925
  %5143 = zext i32 %5142 to i64
  %5144 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5143)
  %5145 = fsub double %5139, %5144
  %5146 = zext i32 %5134 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5146, double noundef %5145)
  %5147 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26434:                                 ; preds = %5115, %5123
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5148 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5116)
  %5149 = shl i32 %5148, 3
  %5150 = add i32 %5149, %.923925
  %5151 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26457)
  %5152 = shl i32 %5151, 3
  %5153 = add i32 %5152, %.923925
  %5154 = load i32, ptr %5, align 8, !tbaa !5
  %5155 = add i32 %5154, -32
  store i32 %5155, ptr %5, align 8, !tbaa !5
  %5156 = add i32 %5154, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5156, i32 noundef %2, i32 noundef %5150, i32 noundef 2) #5
  %5157 = zext i32 %5155 to i64
  %5158 = add nuw nsw i64 %5157, 16
  %5159 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5158)
  %.not24424 = icmp eq i32 %5159, 0
  br i1 %.not24424, label %5160, label %5161

5160:                                             ; preds = %._crit_edge26434
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5195

5161:                                             ; preds = %._crit_edge26434
  %5162 = add nuw nsw i64 %5157, 24
  %5163 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5162)
  %.mask24426 = and i64 %5163, -281474976710656
  %.not24425 = icmp eq i64 %.mask24426, -562949953421312
  br i1 %.not24425, label %5192, label %5164

5164:                                             ; preds = %5161
  %5165 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5166 = zext i32 %5165 to i64
  %5167 = add nuw nsw i64 %5166, 164
  %5168 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5167)
  %5169 = add nuw nsw i64 %5166, 168
  %5170 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5169)
  %5171 = icmp ult i32 %5168, %5170
  br i1 %5171, label %5172, label %5175

5172:                                             ; preds = %5164
  %5173 = add i32 %5168, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5167, i32 noundef %5173)
  %5174 = zext i32 %5168 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5174, i64 noundef %5163)
  br label %5177

5175:                                             ; preds = %5164
  %5176 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5165, i64 noundef %5163) #5
  br label %5177

5177:                                             ; preds = %5175, %5172
  %.2223714 = phi i32 [ %5168, %5172 ], [ %5176, %5175 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5155, i32 noundef %2, i32 noundef %.2223714) #5
  %5178 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5157)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5158, i32 noundef %5178)
  %5179 = add nuw nsw i64 %5157, 8
  %5180 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5179)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5162, i64 noundef %5180)
  %.not24427 = icmp eq i32 %5178, 0
  br i1 %.not24427, label %5181, label %5182

5181:                                             ; preds = %5177
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5195

5182:                                             ; preds = %5177
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5155, i32 noundef %2, i32 noundef %5153) #5
  %5183 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5157)
  %.not24428 = icmp eq i32 %5183, 0
  br i1 %.not24428, label %5184, label %5185

5184:                                             ; preds = %5182
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5195

5185:                                             ; preds = %5182
  %5186 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5179)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5187 = tail call double @f64_reinterpret_i64(i64 noundef %5180)
  %5188 = fsub double %5187, %5186
  %5189 = tail call i64 @i64_reinterpret_f64(double noundef %5188)
  %5190 = fcmp uno double %5188, 0.000000e+00
  %5191 = select i1 %5190, i64 9221120237041090560, i64 %5189
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %5191)
  br label %5195

5192:                                             ; preds = %5161
  %5193 = trunc i64 %5163 to i32
  %5194 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5193) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 544, i32 noundef %5194, i32 noundef %5153) #5
  br label %5195

5195:                                             ; preds = %5192, %5185, %5184, %5181, %5160
  store i32 %5154, ptr %5, align 8, !tbaa !5
  %5196 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5197 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24429 = icmp eq i32 %5197, 0
  br i1 %.not24429, label %._crit_edge, label %5198

5198:                                             ; preds = %5195
  %5199 = zext i32 %5196 to i64
  %5200 = add nuw nsw i64 %5199, 1
  %5201 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5200)
  %5202 = shl i32 %5201, 3
  %5203 = add i32 %5202, %.923925
  %5204 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5205 = zext i32 %5203 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5205, i64 noundef %5204)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5206 = add i32 %5196, 4
  br label %.backedge.backedge

5207:                                             ; preds = %.backedge
  %5208 = add nuw nsw i64 %657, 2
  %5209 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5208)
  %5210 = shl i32 %5209, 3
  %5211 = add i32 %5210, %.923925
  %5212 = zext i32 %5211 to i64
  %5213 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5212)
  %5214 = icmp ugt i64 %5213, -1970324836974593
  %.pre26463 = add nuw nsw i64 %657, 3
  br i1 %5214, label %._crit_edge26432, label %5215

5215:                                             ; preds = %5207
  %5216 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26463)
  %5217 = shl i32 %5216, 3
  %5218 = add i32 %5217, %.923925
  %5219 = zext i32 %5218 to i64
  %5220 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5219)
  %5221 = icmp ugt i64 %5220, -1970324836974593
  br i1 %5221, label %._crit_edge26432, label %5222

5222:                                             ; preds = %._crit_edge26431, %5215
  %.pre-phi26468 = phi i64 [ %.pre26467, %._crit_edge26431 ], [ %.pre26463, %5215 ]
  %.pre-phi26466 = phi i64 [ %.pre26465, %._crit_edge26431 ], [ %5208, %5215 ]
  %5223 = add nuw nsw i64 %657, 1
  %5224 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5223)
  %5225 = shl i32 %5224, 3
  %5226 = add i32 %5225, %.923925
  %5227 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26466)
  %5228 = shl i32 %5227, 3
  %5229 = add i32 %5228, %.923925
  %5230 = zext i32 %5229 to i64
  %5231 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5230)
  %5232 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26468)
  %5233 = shl i32 %5232, 3
  %5234 = add i32 %5233, %.923925
  %5235 = zext i32 %5234 to i64
  %5236 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5235)
  %5237 = fmul double %5231, %5236
  %5238 = zext i32 %5226 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5238, double noundef %5237)
  %5239 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26432:                                 ; preds = %5207, %5215
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5240 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5208)
  %5241 = shl i32 %5240, 3
  %5242 = add i32 %5241, %.923925
  %5243 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26463)
  %5244 = shl i32 %5243, 3
  %5245 = add i32 %5244, %.923925
  %5246 = load i32, ptr %5, align 8, !tbaa !5
  %5247 = add i32 %5246, -32
  store i32 %5247, ptr %5, align 8, !tbaa !5
  %5248 = add i32 %5246, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5248, i32 noundef %2, i32 noundef %5242, i32 noundef 2) #5
  %5249 = zext i32 %5247 to i64
  %5250 = add nuw nsw i64 %5249, 16
  %5251 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5250)
  %.not24418 = icmp eq i32 %5251, 0
  br i1 %.not24418, label %5252, label %5253

5252:                                             ; preds = %._crit_edge26432
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5287

5253:                                             ; preds = %._crit_edge26432
  %5254 = add nuw nsw i64 %5249, 24
  %5255 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5254)
  %.mask24420 = and i64 %5255, -281474976710656
  %.not24419 = icmp eq i64 %.mask24420, -562949953421312
  br i1 %.not24419, label %5284, label %5256

5256:                                             ; preds = %5253
  %5257 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5258 = zext i32 %5257 to i64
  %5259 = add nuw nsw i64 %5258, 164
  %5260 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5259)
  %5261 = add nuw nsw i64 %5258, 168
  %5262 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5261)
  %5263 = icmp ult i32 %5260, %5262
  br i1 %5263, label %5264, label %5267

5264:                                             ; preds = %5256
  %5265 = add i32 %5260, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5259, i32 noundef %5265)
  %5266 = zext i32 %5260 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5266, i64 noundef %5255)
  br label %5269

5267:                                             ; preds = %5256
  %5268 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5257, i64 noundef %5255) #5
  br label %5269

5269:                                             ; preds = %5267, %5264
  %.2323715 = phi i32 [ %5260, %5264 ], [ %5268, %5267 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5247, i32 noundef %2, i32 noundef %.2323715) #5
  %5270 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5249)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5250, i32 noundef %5270)
  %5271 = add nuw nsw i64 %5249, 8
  %5272 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5271)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5254, i64 noundef %5272)
  %.not24421 = icmp eq i32 %5270, 0
  br i1 %.not24421, label %5273, label %5274

5273:                                             ; preds = %5269
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5287

5274:                                             ; preds = %5269
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5247, i32 noundef %2, i32 noundef %5245) #5
  %5275 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5249)
  %.not24422 = icmp eq i32 %5275, 0
  br i1 %.not24422, label %5276, label %5277

5276:                                             ; preds = %5274
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5287

5277:                                             ; preds = %5274
  %5278 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5271)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5279 = tail call double @f64_reinterpret_i64(i64 noundef %5272)
  %5280 = fmul double %5278, %5279
  %5281 = tail call i64 @i64_reinterpret_f64(double noundef %5280)
  %5282 = fcmp uno double %5280, 0.000000e+00
  %5283 = select i1 %5282, i64 9221120237041090560, i64 %5281
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %5283)
  br label %5287

5284:                                             ; preds = %5253
  %5285 = trunc i64 %5255 to i32
  %5286 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5285) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 543, i32 noundef %5286, i32 noundef %5245) #5
  br label %5287

5287:                                             ; preds = %5284, %5277, %5276, %5273, %5252
  store i32 %5246, ptr %5, align 8, !tbaa !5
  %5288 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5289 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24423 = icmp eq i32 %5289, 0
  br i1 %.not24423, label %._crit_edge, label %5290

5290:                                             ; preds = %5287
  %5291 = zext i32 %5288 to i64
  %5292 = add nuw nsw i64 %5291, 1
  %5293 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5292)
  %5294 = shl i32 %5293, 3
  %5295 = add i32 %5294, %.923925
  %5296 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5297 = zext i32 %5295 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5297, i64 noundef %5296)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5298 = add i32 %5288, 4
  br label %.backedge.backedge

5299:                                             ; preds = %.backedge
  %5300 = add nuw nsw i64 %657, 2
  %5301 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5300)
  %5302 = shl i32 %5301, 3
  %5303 = add i32 %5302, %.923925
  %5304 = zext i32 %5303 to i64
  %5305 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5304)
  %5306 = icmp ugt i64 %5305, -1970324836974593
  %.pre26469 = add nuw nsw i64 %657, 3
  br i1 %5306, label %._crit_edge26430, label %5307

5307:                                             ; preds = %5299
  %5308 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26469)
  %5309 = shl i32 %5308, 3
  %5310 = add i32 %5309, %.923925
  %5311 = zext i32 %5310 to i64
  %5312 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5311)
  %5313 = icmp ugt i64 %5312, -1970324836974593
  br i1 %5313, label %._crit_edge26430, label %5314

5314:                                             ; preds = %._crit_edge26429, %5307
  %.pre-phi26474 = phi i64 [ %.pre26473, %._crit_edge26429 ], [ %.pre26469, %5307 ]
  %.pre-phi26472 = phi i64 [ %.pre26471, %._crit_edge26429 ], [ %5300, %5307 ]
  %5315 = add nuw nsw i64 %657, 1
  %5316 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5315)
  %5317 = shl i32 %5316, 3
  %5318 = add i32 %5317, %.923925
  %5319 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26472)
  %5320 = shl i32 %5319, 3
  %5321 = add i32 %5320, %.923925
  %5322 = zext i32 %5321 to i64
  %5323 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5322)
  %5324 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26474)
  %5325 = shl i32 %5324, 3
  %5326 = add i32 %5325, %.923925
  %5327 = zext i32 %5326 to i64
  %5328 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5327)
  %5329 = fdiv double %5323, %5328
  %5330 = zext i32 %5318 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5330, double noundef %5329)
  %5331 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26430:                                 ; preds = %5299, %5307
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5332 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5300)
  %5333 = shl i32 %5332, 3
  %5334 = add i32 %5333, %.923925
  %5335 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26469)
  %5336 = shl i32 %5335, 3
  %5337 = add i32 %5336, %.923925
  %5338 = load i32, ptr %5, align 8, !tbaa !5
  %5339 = add i32 %5338, -32
  store i32 %5339, ptr %5, align 8, !tbaa !5
  %5340 = add i32 %5338, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5340, i32 noundef %2, i32 noundef %5334, i32 noundef 2) #5
  %5341 = zext i32 %5339 to i64
  %5342 = add nuw nsw i64 %5341, 16
  %5343 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5342)
  %.not24412 = icmp eq i32 %5343, 0
  br i1 %.not24412, label %5344, label %5345

5344:                                             ; preds = %._crit_edge26430
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5379

5345:                                             ; preds = %._crit_edge26430
  %5346 = add nuw nsw i64 %5341, 24
  %5347 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5346)
  %.mask24414 = and i64 %5347, -281474976710656
  %.not24413 = icmp eq i64 %.mask24414, -562949953421312
  br i1 %.not24413, label %5376, label %5348

5348:                                             ; preds = %5345
  %5349 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5350 = zext i32 %5349 to i64
  %5351 = add nuw nsw i64 %5350, 164
  %5352 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5351)
  %5353 = add nuw nsw i64 %5350, 168
  %5354 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5353)
  %5355 = icmp ult i32 %5352, %5354
  br i1 %5355, label %5356, label %5359

5356:                                             ; preds = %5348
  %5357 = add i32 %5352, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5351, i32 noundef %5357)
  %5358 = zext i32 %5352 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5358, i64 noundef %5347)
  br label %5361

5359:                                             ; preds = %5348
  %5360 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5349, i64 noundef %5347) #5
  br label %5361

5361:                                             ; preds = %5359, %5356
  %.2423716 = phi i32 [ %5352, %5356 ], [ %5360, %5359 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5339, i32 noundef %2, i32 noundef %.2423716) #5
  %5362 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5341)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5342, i32 noundef %5362)
  %5363 = add nuw nsw i64 %5341, 8
  %5364 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5363)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5346, i64 noundef %5364)
  %.not24415 = icmp eq i32 %5362, 0
  br i1 %.not24415, label %5365, label %5366

5365:                                             ; preds = %5361
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5379

5366:                                             ; preds = %5361
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5339, i32 noundef %2, i32 noundef %5337) #5
  %5367 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5341)
  %.not24416 = icmp eq i32 %5367, 0
  br i1 %.not24416, label %5368, label %5369

5368:                                             ; preds = %5366
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5379

5369:                                             ; preds = %5366
  %5370 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5363)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5371 = tail call double @f64_reinterpret_i64(i64 noundef %5364)
  %5372 = fdiv double %5371, %5370
  %5373 = tail call i64 @i64_reinterpret_f64(double noundef %5372)
  %5374 = fcmp uno double %5372, 0.000000e+00
  %5375 = select i1 %5374, i64 9221120237041090560, i64 %5373
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %93, i64 noundef %5375)
  br label %5379

5376:                                             ; preds = %5345
  %5377 = trunc i64 %5347 to i32
  %5378 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5377) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 541, i32 noundef %5378, i32 noundef %5337) #5
  br label %5379

5379:                                             ; preds = %5376, %5369, %5368, %5365, %5344
  store i32 %5338, ptr %5, align 8, !tbaa !5
  %5380 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5381 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24417 = icmp eq i32 %5381, 0
  br i1 %.not24417, label %._crit_edge, label %5382

5382:                                             ; preds = %5379
  %5383 = zext i32 %5380 to i64
  %5384 = add nuw nsw i64 %5383, 1
  %5385 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5384)
  %5386 = shl i32 %5385, 3
  %5387 = add i32 %5386, %.923925
  %5388 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5389 = zext i32 %5387 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5389, i64 noundef %5388)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5390 = add i32 %5380, 4
  br label %.backedge.backedge

5391:                                             ; preds = %.backedge
  %5392 = add nuw nsw i64 %657, 2
  %5393 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5392)
  %5394 = shl i32 %5393, 3
  %5395 = add i32 %5394, %.923925
  %5396 = zext i32 %5395 to i64
  %5397 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5396)
  %5398 = icmp ugt i64 %5397, -1970324836974593
  %.pre26475 = add nuw nsw i64 %657, 3
  br i1 %5398, label %._crit_edge26428, label %5399

5399:                                             ; preds = %5391
  %5400 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26475)
  %5401 = shl i32 %5400, 3
  %5402 = add i32 %5401, %.923925
  %5403 = zext i32 %5402 to i64
  %5404 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5403)
  %5405 = icmp ugt i64 %5404, -1970324836974593
  br i1 %5405, label %._crit_edge26428, label %5406

5406:                                             ; preds = %5399
  %5407 = tail call double @f64_reinterpret_i64(i64 noundef %5397)
  %5408 = tail call double @wasm_fabs(double noundef %5407)
  %5409 = fcmp olt double %5408, 0x41E0000000000000
  br i1 %5409, label %5410, label %5419

5410:                                             ; preds = %5406
  %5411 = fcmp uno double %5407, 0.000000e+00
  br i1 %5411, label %5412, label %5413, !prof !18

5412:                                             ; preds = %5410
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5413:                                             ; preds = %5410
  %5414 = fcmp ule double %5407, 0xC1E0000000200000
  %5415 = fcmp uge double %5407, 0x41E0000000000000
  %.not24396 = or i1 %5414, %5415
  br i1 %.not24396, label %5416, label %5417, !prof !18

5416:                                             ; preds = %5413
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5417:                                             ; preds = %5413
  %5418 = fptosi double %5407 to i32
  br label %5419

5419:                                             ; preds = %5406, %5417
  %.3023786 = phi i32 [ %5418, %5417 ], [ -2147483648, %5406 ]
  %5420 = sitofp i32 %.3023786 to double
  %5421 = fcmp oeq double %5407, %5420
  br i1 %5421, label %5422, label %5424

5422:                                             ; preds = %5419
  %5423 = tail call double @f64_reinterpret_i64(i64 noundef %5404)
  br label %5431

5424:                                             ; preds = %5419
  %5425 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %5407) #5
  %5426 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26475)
  %5427 = shl i32 %5426, 3
  %5428 = add i32 %5427, %.923925
  %5429 = zext i32 %5428 to i64
  %5430 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5429)
  br label %5431

5431:                                             ; preds = %5424, %5422
  %.2423897 = phi i32 [ %.3023786, %5422 ], [ %5425, %5424 ]
  %.0 = phi double [ %5423, %5422 ], [ %5430, %5424 ]
  %5432 = tail call double @wasm_fabs(double noundef %.0)
  %5433 = fcmp olt double %5432, 0x41E0000000000000
  br i1 %5433, label %5434, label %5443

5434:                                             ; preds = %5431
  %5435 = fcmp uno double %.0, 0.000000e+00
  br i1 %5435, label %5436, label %5437, !prof !18

5436:                                             ; preds = %5434
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5437:                                             ; preds = %5434
  %5438 = fcmp ule double %.0, 0xC1E0000000200000
  %5439 = fcmp uge double %.0, 0x41E0000000000000
  %.not24399 = or i1 %5438, %5439
  br i1 %.not24399, label %5440, label %5441, !prof !18

5440:                                             ; preds = %5437
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5441:                                             ; preds = %5437
  %5442 = fptosi double %.0 to i32
  br label %5443

5443:                                             ; preds = %5431, %5441
  %.3123787 = phi i32 [ %5442, %5441 ], [ -2147483648, %5431 ]
  %5444 = sitofp i32 %.3123787 to double
  %5445 = fcmp une double %.0, %5444
  br i1 %5445, label %5446, label %5448

5446:                                             ; preds = %5443
  %5447 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %.0) #5
  br label %5448

5448:                                             ; preds = %5446, %5443
  %.2523717 = phi i32 [ %5447, %5446 ], [ %.3123787, %5443 ]
  %5449 = add nuw nsw i64 %657, 1
  %5450 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5449)
  %5451 = shl i32 %5450, 3
  %5452 = add i32 %5451, %.923925
  %5453 = and i32 %.2523717, %.2423897
  %5454 = sitofp i32 %5453 to double
  %5455 = zext i32 %5452 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5455, double noundef %5454)
  %5456 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26428:                                 ; preds = %5391, %5399
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5457 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5392)
  %5458 = shl i32 %5457, 3
  %5459 = add i32 %5458, %.923925
  %5460 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26475)
  %5461 = shl i32 %5460, 3
  %5462 = add i32 %5461, %.923925
  %5463 = load i32, ptr %5, align 8, !tbaa !5
  %5464 = add i32 %5463, -32
  store i32 %5464, ptr %5, align 8, !tbaa !5
  %5465 = add i32 %5463, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5465, i32 noundef %2, i32 noundef %5459, i32 noundef 2) #5
  %5466 = zext i32 %5464 to i64
  %5467 = add nuw nsw i64 %5466, 16
  %5468 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5467)
  %.not24400 = icmp eq i32 %5468, 0
  br i1 %.not24400, label %5469, label %5470

5469:                                             ; preds = %._crit_edge26428
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5526

5470:                                             ; preds = %._crit_edge26428
  %5471 = add nuw nsw i64 %5466, 24
  %5472 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5471)
  %.mask24402 = and i64 %5472, -281474976710656
  %.not24401 = icmp eq i64 %.mask24402, -562949953421312
  br i1 %.not24401, label %5523, label %5473

5473:                                             ; preds = %5470
  %5474 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5475 = zext i32 %5474 to i64
  %5476 = add nuw nsw i64 %5475, 164
  %5477 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5476)
  %5478 = add nuw nsw i64 %5475, 168
  %5479 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5478)
  %5480 = icmp ult i32 %5477, %5479
  br i1 %5480, label %5481, label %5484

5481:                                             ; preds = %5473
  %5482 = add i32 %5477, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5476, i32 noundef %5482)
  %5483 = zext i32 %5477 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5483, i64 noundef %5472)
  br label %5486

5484:                                             ; preds = %5473
  %5485 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5474, i64 noundef %5472) #5
  br label %5486

5486:                                             ; preds = %5484, %5481
  %.2623718 = phi i32 [ %5477, %5481 ], [ %5485, %5484 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5464, i32 noundef %2, i32 noundef %.2623718) #5
  %5487 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5466)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5467, i32 noundef %5487)
  %5488 = add nuw nsw i64 %5466, 8
  %5489 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5488)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5471, i64 noundef %5489)
  %.not24403 = icmp eq i32 %5487, 0
  br i1 %.not24403, label %5490, label %5491

5490:                                             ; preds = %5486
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5526

5491:                                             ; preds = %5486
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5464, i32 noundef %2, i32 noundef %5462) #5
  %5492 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5466)
  %.not24404 = icmp eq i32 %5492, 0
  br i1 %.not24404, label %5493, label %5494

5493:                                             ; preds = %5491
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5526

5494:                                             ; preds = %5491
  %5495 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5488)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5496 = tail call double @f64_reinterpret_i64(i64 noundef %5489)
  %5497 = tail call double @wasm_fabs(double noundef %5496)
  %5498 = fcmp olt double %5497, 0x41E0000000000000
  br i1 %5498, label %5499, label %5508

5499:                                             ; preds = %5494
  %5500 = fcmp uno double %5496, 0.000000e+00
  br i1 %5500, label %5501, label %5502, !prof !18

5501:                                             ; preds = %5499
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5502:                                             ; preds = %5499
  %5503 = fcmp ule double %5496, 0xC1E0000000200000
  %5504 = fcmp uge double %5496, 0x41E0000000000000
  %.not24407 = or i1 %5503, %5504
  br i1 %.not24407, label %5505, label %5506, !prof !18

5505:                                             ; preds = %5502
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5506:                                             ; preds = %5502
  %5507 = fptosi double %5496 to i32
  br label %5508

5508:                                             ; preds = %5494, %5506
  %.1623753 = phi i32 [ %5507, %5506 ], [ -2147483648, %5494 ]
  %5509 = tail call double @wasm_fabs(double noundef %5495)
  %5510 = fcmp olt double %5509, 0x41E0000000000000
  br i1 %5510, label %5511, label %5520

5511:                                             ; preds = %5508
  %5512 = fcmp uno double %5495, 0.000000e+00
  br i1 %5512, label %5513, label %5514, !prof !18

5513:                                             ; preds = %5511
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5514:                                             ; preds = %5511
  %5515 = fcmp ule double %5495, 0xC1E0000000200000
  %5516 = fcmp uge double %5495, 0x41E0000000000000
  %.not24410 = or i1 %5515, %5516
  br i1 %.not24410, label %5517, label %5518, !prof !18

5517:                                             ; preds = %5514
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5518:                                             ; preds = %5514
  %5519 = fptosi double %5495 to i32
  br label %5520

5520:                                             ; preds = %5508, %5518
  %.023731 = phi i32 [ %5519, %5518 ], [ -2147483648, %5508 ]
  %5521 = and i32 %.023731, %.1623753
  %5522 = sitofp i32 %5521 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %5522)
  br label %5526

5523:                                             ; preds = %5470
  %5524 = trunc i64 %5472 to i32
  %5525 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5524) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 545, i32 noundef %5525, i32 noundef %5462) #5
  br label %5526

5526:                                             ; preds = %5523, %5520, %5493, %5490, %5469
  store i32 %5463, ptr %5, align 8, !tbaa !5
  %5527 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5528 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24411 = icmp eq i32 %5528, 0
  br i1 %.not24411, label %._crit_edge, label %5529

5529:                                             ; preds = %5526
  %5530 = zext i32 %5527 to i64
  %5531 = add nuw nsw i64 %5530, 1
  %5532 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5531)
  %5533 = shl i32 %5532, 3
  %5534 = add i32 %5533, %.923925
  %5535 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5536 = zext i32 %5534 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5536, i64 noundef %5535)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5537 = add i32 %5527, 4
  br label %.backedge.backedge

5538:                                             ; preds = %.backedge
  %5539 = add nuw nsw i64 %657, 2
  %5540 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5539)
  %5541 = shl i32 %5540, 3
  %5542 = add i32 %5541, %.923925
  %5543 = zext i32 %5542 to i64
  %5544 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5543)
  %5545 = icmp ugt i64 %5544, -1970324836974593
  %.pre26477 = add nuw nsw i64 %657, 3
  br i1 %5545, label %._crit_edge26427, label %5546

5546:                                             ; preds = %5538
  %5547 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26477)
  %5548 = shl i32 %5547, 3
  %5549 = add i32 %5548, %.923925
  %5550 = zext i32 %5549 to i64
  %5551 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5550)
  %5552 = icmp ugt i64 %5551, -1970324836974593
  br i1 %5552, label %._crit_edge26427, label %5553

5553:                                             ; preds = %5546
  %5554 = tail call double @f64_reinterpret_i64(i64 noundef %5544)
  %5555 = tail call double @wasm_fabs(double noundef %5554)
  %5556 = fcmp olt double %5555, 0x41E0000000000000
  br i1 %5556, label %5557, label %5566

5557:                                             ; preds = %5553
  %5558 = fcmp uno double %5554, 0.000000e+00
  br i1 %5558, label %5559, label %5560, !prof !18

5559:                                             ; preds = %5557
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5560:                                             ; preds = %5557
  %5561 = fcmp ule double %5554, 0xC1E0000000200000
  %5562 = fcmp uge double %5554, 0x41E0000000000000
  %.not24378 = or i1 %5561, %5562
  br i1 %.not24378, label %5563, label %5564, !prof !18

5563:                                             ; preds = %5560
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5564:                                             ; preds = %5560
  %5565 = fptosi double %5554 to i32
  br label %5566

5566:                                             ; preds = %5553, %5564
  %.3223788 = phi i32 [ %5565, %5564 ], [ -2147483648, %5553 ]
  %5567 = sitofp i32 %.3223788 to double
  %5568 = fcmp oeq double %5554, %5567
  br i1 %5568, label %5569, label %5571

5569:                                             ; preds = %5566
  %5570 = tail call double @f64_reinterpret_i64(i64 noundef %5551)
  br label %5578

5571:                                             ; preds = %5566
  %5572 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %5554) #5
  %5573 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26477)
  %5574 = shl i32 %5573, 3
  %5575 = add i32 %5574, %.923925
  %5576 = zext i32 %5575 to i64
  %5577 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5576)
  br label %5578

5578:                                             ; preds = %5571, %5569
  %.2523898 = phi i32 [ %.3223788, %5569 ], [ %5572, %5571 ]
  %.1 = phi double [ %5570, %5569 ], [ %5577, %5571 ]
  %5579 = tail call double @wasm_fabs(double noundef %.1)
  %5580 = fcmp olt double %5579, 0x41E0000000000000
  br i1 %5580, label %5581, label %5590

5581:                                             ; preds = %5578
  %5582 = fcmp uno double %.1, 0.000000e+00
  br i1 %5582, label %5583, label %5584, !prof !18

5583:                                             ; preds = %5581
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5584:                                             ; preds = %5581
  %5585 = fcmp ule double %.1, 0xC1E0000000200000
  %5586 = fcmp uge double %.1, 0x41E0000000000000
  %.not24381 = or i1 %5585, %5586
  br i1 %.not24381, label %5587, label %5588, !prof !18

5587:                                             ; preds = %5584
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5588:                                             ; preds = %5584
  %5589 = fptosi double %.1 to i32
  br label %5590

5590:                                             ; preds = %5578, %5588
  %.3323789 = phi i32 [ %5589, %5588 ], [ -2147483648, %5578 ]
  %5591 = sitofp i32 %.3323789 to double
  %5592 = fcmp une double %.1, %5591
  br i1 %5592, label %5593, label %5595

5593:                                             ; preds = %5590
  %5594 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %.1) #5
  br label %5595

5595:                                             ; preds = %5593, %5590
  %.2723719 = phi i32 [ %5594, %5593 ], [ %.3323789, %5590 ]
  %5596 = add nuw nsw i64 %657, 1
  %5597 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5596)
  %5598 = shl i32 %5597, 3
  %5599 = add i32 %5598, %.923925
  %5600 = or i32 %.2723719, %.2523898
  %5601 = sitofp i32 %5600 to double
  %5602 = zext i32 %5599 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5602, double noundef %5601)
  %5603 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26427:                                 ; preds = %5538, %5546
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5604 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5539)
  %5605 = shl i32 %5604, 3
  %5606 = add i32 %5605, %.923925
  %5607 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26477)
  %5608 = shl i32 %5607, 3
  %5609 = add i32 %5608, %.923925
  %5610 = load i32, ptr %5, align 8, !tbaa !5
  %5611 = add i32 %5610, -32
  store i32 %5611, ptr %5, align 8, !tbaa !5
  %5612 = add i32 %5610, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5612, i32 noundef %2, i32 noundef %5606, i32 noundef 2) #5
  %5613 = zext i32 %5611 to i64
  %5614 = add nuw nsw i64 %5613, 16
  %5615 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5614)
  %.not24382 = icmp eq i32 %5615, 0
  br i1 %.not24382, label %5616, label %5617

5616:                                             ; preds = %._crit_edge26427
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5673

5617:                                             ; preds = %._crit_edge26427
  %5618 = add nuw nsw i64 %5613, 24
  %5619 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5618)
  %.mask24384 = and i64 %5619, -281474976710656
  %.not24383 = icmp eq i64 %.mask24384, -562949953421312
  br i1 %.not24383, label %5670, label %5620

5620:                                             ; preds = %5617
  %5621 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5622 = zext i32 %5621 to i64
  %5623 = add nuw nsw i64 %5622, 164
  %5624 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5623)
  %5625 = add nuw nsw i64 %5622, 168
  %5626 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5625)
  %5627 = icmp ult i32 %5624, %5626
  br i1 %5627, label %5628, label %5631

5628:                                             ; preds = %5620
  %5629 = add i32 %5624, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5623, i32 noundef %5629)
  %5630 = zext i32 %5624 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5630, i64 noundef %5619)
  br label %5633

5631:                                             ; preds = %5620
  %5632 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5621, i64 noundef %5619) #5
  br label %5633

5633:                                             ; preds = %5631, %5628
  %.2823720 = phi i32 [ %5624, %5628 ], [ %5632, %5631 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5611, i32 noundef %2, i32 noundef %.2823720) #5
  %5634 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5613)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5614, i32 noundef %5634)
  %5635 = add nuw nsw i64 %5613, 8
  %5636 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5635)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5618, i64 noundef %5636)
  %.not24385 = icmp eq i32 %5634, 0
  br i1 %.not24385, label %5637, label %5638

5637:                                             ; preds = %5633
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5673

5638:                                             ; preds = %5633
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5611, i32 noundef %2, i32 noundef %5609) #5
  %5639 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5613)
  %.not24386 = icmp eq i32 %5639, 0
  br i1 %.not24386, label %5640, label %5641

5640:                                             ; preds = %5638
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5673

5641:                                             ; preds = %5638
  %5642 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5635)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5643 = tail call double @f64_reinterpret_i64(i64 noundef %5636)
  %5644 = tail call double @wasm_fabs(double noundef %5643)
  %5645 = fcmp olt double %5644, 0x41E0000000000000
  br i1 %5645, label %5646, label %5655

5646:                                             ; preds = %5641
  %5647 = fcmp uno double %5643, 0.000000e+00
  br i1 %5647, label %5648, label %5649, !prof !18

5648:                                             ; preds = %5646
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5649:                                             ; preds = %5646
  %5650 = fcmp ule double %5643, 0xC1E0000000200000
  %5651 = fcmp uge double %5643, 0x41E0000000000000
  %.not24389 = or i1 %5650, %5651
  br i1 %.not24389, label %5652, label %5653, !prof !18

5652:                                             ; preds = %5649
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5653:                                             ; preds = %5649
  %5654 = fptosi double %5643 to i32
  br label %5655

5655:                                             ; preds = %5641, %5653
  %.1723754 = phi i32 [ %5654, %5653 ], [ -2147483648, %5641 ]
  %5656 = tail call double @wasm_fabs(double noundef %5642)
  %5657 = fcmp olt double %5656, 0x41E0000000000000
  br i1 %5657, label %5658, label %5667

5658:                                             ; preds = %5655
  %5659 = fcmp uno double %5642, 0.000000e+00
  br i1 %5659, label %5660, label %5661, !prof !18

5660:                                             ; preds = %5658
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5661:                                             ; preds = %5658
  %5662 = fcmp ule double %5642, 0xC1E0000000200000
  %5663 = fcmp uge double %5642, 0x41E0000000000000
  %.not24392 = or i1 %5662, %5663
  br i1 %.not24392, label %5664, label %5665, !prof !18

5664:                                             ; preds = %5661
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5665:                                             ; preds = %5661
  %5666 = fptosi double %5642 to i32
  br label %5667

5667:                                             ; preds = %5655, %5665
  %.123732 = phi i32 [ %5666, %5665 ], [ -2147483648, %5655 ]
  %5668 = or i32 %.123732, %.1723754
  %5669 = sitofp i32 %5668 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %5669)
  br label %5673

5670:                                             ; preds = %5617
  %5671 = trunc i64 %5619 to i32
  %5672 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5671) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 546, i32 noundef %5672, i32 noundef %5609) #5
  br label %5673

5673:                                             ; preds = %5670, %5667, %5640, %5637, %5616
  store i32 %5610, ptr %5, align 8, !tbaa !5
  %5674 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5675 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24393 = icmp eq i32 %5675, 0
  br i1 %.not24393, label %._crit_edge, label %5676

5676:                                             ; preds = %5673
  %5677 = zext i32 %5674 to i64
  %5678 = add nuw nsw i64 %5677, 1
  %5679 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5678)
  %5680 = shl i32 %5679, 3
  %5681 = add i32 %5680, %.923925
  %5682 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5683 = zext i32 %5681 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5683, i64 noundef %5682)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5684 = add i32 %5674, 4
  br label %.backedge.backedge

5685:                                             ; preds = %.backedge
  %5686 = add nuw nsw i64 %657, 2
  %5687 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5686)
  %5688 = shl i32 %5687, 3
  %5689 = add i32 %5688, %.923925
  %5690 = zext i32 %5689 to i64
  %5691 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5690)
  %5692 = icmp ugt i64 %5691, -1970324836974593
  %.pre26479 = add nuw nsw i64 %657, 3
  br i1 %5692, label %._crit_edge26426, label %5693

5693:                                             ; preds = %5685
  %5694 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26479)
  %5695 = shl i32 %5694, 3
  %5696 = add i32 %5695, %.923925
  %5697 = zext i32 %5696 to i64
  %5698 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5697)
  %5699 = icmp ugt i64 %5698, -1970324836974593
  br i1 %5699, label %._crit_edge26426, label %5700

5700:                                             ; preds = %5693
  %5701 = tail call double @f64_reinterpret_i64(i64 noundef %5691)
  %5702 = tail call double @wasm_fabs(double noundef %5701)
  %5703 = fcmp olt double %5702, 0x41E0000000000000
  br i1 %5703, label %5704, label %5713

5704:                                             ; preds = %5700
  %5705 = fcmp uno double %5701, 0.000000e+00
  br i1 %5705, label %5706, label %5707, !prof !18

5706:                                             ; preds = %5704
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5707:                                             ; preds = %5704
  %5708 = fcmp ule double %5701, 0xC1E0000000200000
  %5709 = fcmp uge double %5701, 0x41E0000000000000
  %.not24360 = or i1 %5708, %5709
  br i1 %.not24360, label %5710, label %5711, !prof !18

5710:                                             ; preds = %5707
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5711:                                             ; preds = %5707
  %5712 = fptosi double %5701 to i32
  br label %5713

5713:                                             ; preds = %5700, %5711
  %.3423790 = phi i32 [ %5712, %5711 ], [ -2147483648, %5700 ]
  %5714 = sitofp i32 %.3423790 to double
  %5715 = fcmp oeq double %5701, %5714
  br i1 %5715, label %5716, label %5718

5716:                                             ; preds = %5713
  %5717 = tail call double @f64_reinterpret_i64(i64 noundef %5698)
  br label %5725

5718:                                             ; preds = %5713
  %5719 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %5701) #5
  %5720 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26479)
  %5721 = shl i32 %5720, 3
  %5722 = add i32 %5721, %.923925
  %5723 = zext i32 %5722 to i64
  %5724 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5723)
  br label %5725

5725:                                             ; preds = %5718, %5716
  %.2623899 = phi i32 [ %.3423790, %5716 ], [ %5719, %5718 ]
  %.2 = phi double [ %5717, %5716 ], [ %5724, %5718 ]
  %5726 = tail call double @wasm_fabs(double noundef %.2)
  %5727 = fcmp olt double %5726, 0x41E0000000000000
  br i1 %5727, label %5728, label %5737

5728:                                             ; preds = %5725
  %5729 = fcmp uno double %.2, 0.000000e+00
  br i1 %5729, label %5730, label %5731, !prof !18

5730:                                             ; preds = %5728
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5731:                                             ; preds = %5728
  %5732 = fcmp ule double %.2, 0xC1E0000000200000
  %5733 = fcmp uge double %.2, 0x41E0000000000000
  %.not24363 = or i1 %5732, %5733
  br i1 %.not24363, label %5734, label %5735, !prof !18

5734:                                             ; preds = %5731
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5735:                                             ; preds = %5731
  %5736 = fptosi double %.2 to i32
  br label %5737

5737:                                             ; preds = %5725, %5735
  %.3523791 = phi i32 [ %5736, %5735 ], [ -2147483648, %5725 ]
  %5738 = sitofp i32 %.3523791 to double
  %5739 = fcmp une double %.2, %5738
  br i1 %5739, label %5740, label %5742

5740:                                             ; preds = %5737
  %5741 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %.2) #5
  br label %5742

5742:                                             ; preds = %5740, %5737
  %.2923721 = phi i32 [ %5741, %5740 ], [ %.3523791, %5737 ]
  %5743 = add nuw nsw i64 %657, 1
  %5744 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5743)
  %5745 = shl i32 %5744, 3
  %5746 = add i32 %5745, %.923925
  %5747 = xor i32 %.2923721, %.2623899
  %5748 = sitofp i32 %5747 to double
  %5749 = zext i32 %5746 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5749, double noundef %5748)
  %5750 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26426:                                 ; preds = %5685, %5693
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5751 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5686)
  %5752 = shl i32 %5751, 3
  %5753 = add i32 %5752, %.923925
  %5754 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26479)
  %5755 = shl i32 %5754, 3
  %5756 = add i32 %5755, %.923925
  %5757 = load i32, ptr %5, align 8, !tbaa !5
  %5758 = add i32 %5757, -32
  store i32 %5758, ptr %5, align 8, !tbaa !5
  %5759 = add i32 %5757, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5759, i32 noundef %2, i32 noundef %5753, i32 noundef 2) #5
  %5760 = zext i32 %5758 to i64
  %5761 = add nuw nsw i64 %5760, 16
  %5762 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5761)
  %.not24364 = icmp eq i32 %5762, 0
  br i1 %.not24364, label %5763, label %5764

5763:                                             ; preds = %._crit_edge26426
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5820

5764:                                             ; preds = %._crit_edge26426
  %5765 = add nuw nsw i64 %5760, 24
  %5766 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5765)
  %.mask24366 = and i64 %5766, -281474976710656
  %.not24365 = icmp eq i64 %.mask24366, -562949953421312
  br i1 %.not24365, label %5817, label %5767

5767:                                             ; preds = %5764
  %5768 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5769 = zext i32 %5768 to i64
  %5770 = add nuw nsw i64 %5769, 164
  %5771 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5770)
  %5772 = add nuw nsw i64 %5769, 168
  %5773 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5772)
  %5774 = icmp ult i32 %5771, %5773
  br i1 %5774, label %5775, label %5778

5775:                                             ; preds = %5767
  %5776 = add i32 %5771, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5770, i32 noundef %5776)
  %5777 = zext i32 %5771 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5777, i64 noundef %5766)
  br label %5780

5778:                                             ; preds = %5767
  %5779 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5768, i64 noundef %5766) #5
  br label %5780

5780:                                             ; preds = %5778, %5775
  %.3023722 = phi i32 [ %5771, %5775 ], [ %5779, %5778 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5758, i32 noundef %2, i32 noundef %.3023722) #5
  %5781 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5760)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5761, i32 noundef %5781)
  %5782 = add nuw nsw i64 %5760, 8
  %5783 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5782)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5765, i64 noundef %5783)
  %.not24367 = icmp eq i32 %5781, 0
  br i1 %.not24367, label %5784, label %5785

5784:                                             ; preds = %5780
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5820

5785:                                             ; preds = %5780
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5758, i32 noundef %2, i32 noundef %5756) #5
  %5786 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5760)
  %.not24368 = icmp eq i32 %5786, 0
  br i1 %.not24368, label %5787, label %5788

5787:                                             ; preds = %5785
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5820

5788:                                             ; preds = %5785
  %5789 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5782)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5790 = tail call double @f64_reinterpret_i64(i64 noundef %5783)
  %5791 = tail call double @wasm_fabs(double noundef %5790)
  %5792 = fcmp olt double %5791, 0x41E0000000000000
  br i1 %5792, label %5793, label %5802

5793:                                             ; preds = %5788
  %5794 = fcmp uno double %5790, 0.000000e+00
  br i1 %5794, label %5795, label %5796, !prof !18

5795:                                             ; preds = %5793
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5796:                                             ; preds = %5793
  %5797 = fcmp ule double %5790, 0xC1E0000000200000
  %5798 = fcmp uge double %5790, 0x41E0000000000000
  %.not24371 = or i1 %5797, %5798
  br i1 %.not24371, label %5799, label %5800, !prof !18

5799:                                             ; preds = %5796
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5800:                                             ; preds = %5796
  %5801 = fptosi double %5790 to i32
  br label %5802

5802:                                             ; preds = %5788, %5800
  %.1823755 = phi i32 [ %5801, %5800 ], [ -2147483648, %5788 ]
  %5803 = tail call double @wasm_fabs(double noundef %5789)
  %5804 = fcmp olt double %5803, 0x41E0000000000000
  br i1 %5804, label %5805, label %5814

5805:                                             ; preds = %5802
  %5806 = fcmp uno double %5789, 0.000000e+00
  br i1 %5806, label %5807, label %5808, !prof !18

5807:                                             ; preds = %5805
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5808:                                             ; preds = %5805
  %5809 = fcmp ule double %5789, 0xC1E0000000200000
  %5810 = fcmp uge double %5789, 0x41E0000000000000
  %.not24374 = or i1 %5809, %5810
  br i1 %.not24374, label %5811, label %5812, !prof !18

5811:                                             ; preds = %5808
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5812:                                             ; preds = %5808
  %5813 = fptosi double %5789 to i32
  br label %5814

5814:                                             ; preds = %5802, %5812
  %.223733 = phi i32 [ %5813, %5812 ], [ -2147483648, %5802 ]
  %5815 = xor i32 %.223733, %.1823755
  %5816 = sitofp i32 %5815 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %5816)
  br label %5820

5817:                                             ; preds = %5764
  %5818 = trunc i64 %5766 to i32
  %5819 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5818) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 547, i32 noundef %5819, i32 noundef %5756) #5
  br label %5820

5820:                                             ; preds = %5817, %5814, %5787, %5784, %5763
  store i32 %5757, ptr %5, align 8, !tbaa !5
  %5821 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5822 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24375 = icmp eq i32 %5822, 0
  br i1 %.not24375, label %._crit_edge, label %5823

5823:                                             ; preds = %5820
  %5824 = zext i32 %5821 to i64
  %5825 = add nuw nsw i64 %5824, 1
  %5826 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5825)
  %5827 = shl i32 %5826, 3
  %5828 = add i32 %5827, %.923925
  %5829 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5830 = zext i32 %5828 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5830, i64 noundef %5829)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5831 = add i32 %5821, 4
  br label %.backedge.backedge

5832:                                             ; preds = %.backedge
  %5833 = add nuw nsw i64 %657, 2
  %5834 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5833)
  %5835 = shl i32 %5834, 3
  %5836 = add i32 %5835, %.923925
  %5837 = zext i32 %5836 to i64
  %5838 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5837)
  %5839 = icmp ugt i64 %5838, -1970324836974593
  %.pre26481 = add nuw nsw i64 %657, 3
  br i1 %5839, label %._crit_edge26425, label %5840

5840:                                             ; preds = %5832
  %5841 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26481)
  %5842 = shl i32 %5841, 3
  %5843 = add i32 %5842, %.923925
  %5844 = zext i32 %5843 to i64
  %5845 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5844)
  %5846 = icmp ugt i64 %5845, -1970324836974593
  br i1 %5846, label %._crit_edge26425, label %5847

5847:                                             ; preds = %5840
  %5848 = tail call double @f64_reinterpret_i64(i64 noundef %5838)
  %5849 = tail call double @wasm_fabs(double noundef %5848)
  %5850 = fcmp olt double %5849, 0x41E0000000000000
  br i1 %5850, label %5851, label %5860

5851:                                             ; preds = %5847
  %5852 = fcmp uno double %5848, 0.000000e+00
  br i1 %5852, label %5853, label %5854, !prof !18

5853:                                             ; preds = %5851
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5854:                                             ; preds = %5851
  %5855 = fcmp ule double %5848, 0xC1E0000000200000
  %5856 = fcmp uge double %5848, 0x41E0000000000000
  %.not24345 = or i1 %5855, %5856
  br i1 %.not24345, label %5857, label %5858, !prof !18

5857:                                             ; preds = %5854
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5858:                                             ; preds = %5854
  %5859 = fptosi double %5848 to i32
  br label %5860

5860:                                             ; preds = %5847, %5858
  %.3623792 = phi i32 [ %5859, %5858 ], [ -2147483648, %5847 ]
  %5861 = sitofp i32 %.3623792 to double
  %5862 = fcmp oeq double %5848, %5861
  br i1 %5862, label %5863, label %5865

5863:                                             ; preds = %5860
  %5864 = tail call double @f64_reinterpret_i64(i64 noundef %5845)
  br label %5872

5865:                                             ; preds = %5860
  %5866 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %5848) #5
  %5867 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26481)
  %5868 = shl i32 %5867, 3
  %5869 = add i32 %5868, %.923925
  %5870 = zext i32 %5869 to i64
  %5871 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5870)
  br label %5872

5872:                                             ; preds = %5865, %5863
  %.2723900 = phi i32 [ %.3623792, %5863 ], [ %5866, %5865 ]
  %.3 = phi double [ %5864, %5863 ], [ %5871, %5865 ]
  %5873 = tail call double @wasm_fabs(double noundef %.3)
  %5874 = fcmp olt double %5873, 0x41E0000000000000
  br i1 %5874, label %5875, label %5884

5875:                                             ; preds = %5872
  %5876 = fcmp uno double %.3, 0.000000e+00
  br i1 %5876, label %5877, label %5878, !prof !18

5877:                                             ; preds = %5875
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5878:                                             ; preds = %5875
  %5879 = fcmp ule double %.3, 0xC1E0000000200000
  %5880 = fcmp uge double %.3, 0x41E0000000000000
  %.not24348 = or i1 %5879, %5880
  br i1 %.not24348, label %5881, label %5882, !prof !18

5881:                                             ; preds = %5878
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5882:                                             ; preds = %5878
  %5883 = fptosi double %.3 to i32
  br label %5884

5884:                                             ; preds = %5872, %5882
  %.3723793 = phi i32 [ %5883, %5882 ], [ -2147483648, %5872 ]
  %5885 = sitofp i32 %.3723793 to double
  %5886 = fcmp une double %.3, %5885
  br i1 %5886, label %5887, label %5889

5887:                                             ; preds = %5884
  %5888 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %.3) #5
  br label %5889

5889:                                             ; preds = %5887, %5884
  %.3123723 = phi i32 [ %5888, %5887 ], [ %.3723793, %5884 ]
  %5890 = add nuw nsw i64 %657, 1
  %5891 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5890)
  %5892 = shl i32 %5891, 3
  %5893 = add i32 %5892, %.923925
  %5894 = and i32 %.3123723, 31
  %5895 = shl i32 %.2723900, %5894
  %5896 = sitofp i32 %5895 to double
  %5897 = zext i32 %5893 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %5897, double noundef %5896)
  %5898 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26425:                                 ; preds = %5832, %5840
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %5899 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5833)
  %5900 = shl i32 %5899, 3
  %5901 = add i32 %5900, %.923925
  %5902 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26481)
  %5903 = shl i32 %5902, 3
  %5904 = add i32 %5903, %.923925
  %5905 = load i32, ptr %5, align 8, !tbaa !5
  %5906 = add i32 %5905, -32
  store i32 %5906, ptr %5, align 8, !tbaa !5
  %5907 = add i32 %5905, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %5907, i32 noundef %2, i32 noundef %5901, i32 noundef 2) #5
  %5908 = zext i32 %5906 to i64
  %5909 = add nuw nsw i64 %5908, 16
  %5910 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5909)
  %.not24349 = icmp eq i32 %5910, 0
  br i1 %.not24349, label %5911, label %5912

5911:                                             ; preds = %._crit_edge26425
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5974

5912:                                             ; preds = %._crit_edge26425
  %5913 = add nuw nsw i64 %5908, 24
  %5914 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5913)
  %.mask24351 = and i64 %5914, -281474976710656
  %.not24350 = icmp eq i64 %.mask24351, -562949953421312
  br i1 %.not24350, label %5971, label %5915

5915:                                             ; preds = %5912
  %5916 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %5917 = zext i32 %5916 to i64
  %5918 = add nuw nsw i64 %5917, 164
  %5919 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5918)
  %5920 = add nuw nsw i64 %5917, 168
  %5921 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5920)
  %5922 = icmp ult i32 %5919, %5921
  br i1 %5922, label %5923, label %5926

5923:                                             ; preds = %5915
  %5924 = add i32 %5919, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5918, i32 noundef %5924)
  %5925 = zext i32 %5919 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5925, i64 noundef %5914)
  br label %5928

5926:                                             ; preds = %5915
  %5927 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %5916, i64 noundef %5914) #5
  br label %5928

5928:                                             ; preds = %5926, %5923
  %.2823901 = phi i32 [ %5919, %5923 ], [ %5927, %5926 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5906, i32 noundef %2, i32 noundef %.2823901) #5
  %5929 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5908)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %5909, i32 noundef %5929)
  %5930 = add nuw nsw i64 %5908, 8
  %5931 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5930)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5913, i64 noundef %5931)
  %.not24352 = icmp eq i32 %5929, 0
  br i1 %.not24352, label %5932, label %5933

5932:                                             ; preds = %5928
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5974

5933:                                             ; preds = %5928
  %5934 = tail call double @f64_reinterpret_i64(i64 noundef %5931)
  %5935 = tail call double @wasm_fabs(double noundef %5934)
  %5936 = fcmp olt double %5935, 0x41E0000000000000
  br i1 %5936, label %5937, label %5946

5937:                                             ; preds = %5933
  %5938 = fcmp uno double %5934, 0.000000e+00
  br i1 %5938, label %5939, label %5940, !prof !18

5939:                                             ; preds = %5937
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5940:                                             ; preds = %5937
  %5941 = fcmp ule double %5934, 0xC1E0000000200000
  %5942 = fcmp uge double %5934, 0x41E0000000000000
  %.not24355 = or i1 %5941, %5942
  br i1 %.not24355, label %5943, label %5944, !prof !18

5943:                                             ; preds = %5940
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5944:                                             ; preds = %5940
  %5945 = fptosi double %5934 to i32
  br label %5946

5946:                                             ; preds = %5933, %5944
  %.3823794 = phi i32 [ %5945, %5944 ], [ -2147483648, %5933 ]
  %5947 = sitofp i32 %.3823794 to double
  %5948 = fcmp une double %5934, %5947
  br i1 %5948, label %5949, label %5951

5949:                                             ; preds = %5946
  %5950 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef nonnull %0, double noundef %5934) #5
  br label %5951

5951:                                             ; preds = %5949, %5946
  %.2923902 = phi i32 [ %5950, %5949 ], [ %.3823794, %5946 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %5906, i32 noundef %2, i32 noundef %5904) #5
  %5952 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %5908)
  %.not24356 = icmp eq i32 %5952, 0
  br i1 %.not24356, label %5953, label %5954

5953:                                             ; preds = %5951
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %5974

5954:                                             ; preds = %5951
  %5955 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %5930)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %5956 = fcmp olt double %5955, 0x41F0000000000000
  %5957 = fcmp oge double %5955, 0.000000e+00
  %5958 = and i1 %5956, %5957
  br i1 %5958, label %5959, label %5967

5959:                                             ; preds = %5954
  %5960 = fcmp uno double %5955, 0.000000e+00
  br i1 %5960, label %5961, label %5962, !prof !18

5961:                                             ; preds = %5959
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

5962:                                             ; preds = %5959
  %5963 = fcmp ogt double %5955, -1.000000e+00
  br i1 %5963, label %5965, label %5964, !prof !19

5964:                                             ; preds = %5962
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

5965:                                             ; preds = %5962
  %5966 = fptoui double %5955 to i32
  br label %5967

5967:                                             ; preds = %5954, %5965
  %.323734 = phi i32 [ %5966, %5965 ], [ 0, %5954 ]
  %5968 = and i32 %.323734, 31
  %5969 = shl i32 %.2923902, %5968
  %5970 = sitofp i32 %5969 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %5970)
  br label %5974

5971:                                             ; preds = %5912
  %5972 = trunc i64 %5914 to i32
  %5973 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %5972) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 548, i32 noundef %5973, i32 noundef %5904) #5
  br label %5974

5974:                                             ; preds = %5971, %5967, %5953, %5932, %5911
  store i32 %5905, ptr %5, align 8, !tbaa !5
  %5975 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %5976 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24357 = icmp eq i32 %5976, 0
  br i1 %.not24357, label %._crit_edge, label %5977

5977:                                             ; preds = %5974
  %5978 = zext i32 %5975 to i64
  %5979 = add nuw nsw i64 %5978, 1
  %5980 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5979)
  %5981 = shl i32 %5980, 3
  %5982 = add i32 %5981, %.923925
  %5983 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %5984 = zext i32 %5982 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %5984, i64 noundef %5983)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %5985 = add i32 %5975, 4
  br label %.backedge.backedge

5986:                                             ; preds = %.backedge
  %5987 = add nuw nsw i64 %657, 2
  %5988 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5987)
  %5989 = shl i32 %5988, 3
  %5990 = add i32 %5989, %.923925
  %5991 = zext i32 %5990 to i64
  %5992 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5991)
  %5993 = icmp ugt i64 %5992, -1970324836974593
  %.pre26483 = add nuw nsw i64 %657, 3
  br i1 %5993, label %._crit_edge26424, label %5994

5994:                                             ; preds = %5986
  %5995 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26483)
  %5996 = shl i32 %5995, 3
  %5997 = add i32 %5996, %.923925
  %5998 = zext i32 %5997 to i64
  %5999 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %5998)
  %6000 = icmp ugt i64 %5999, -1970324836974593
  br i1 %6000, label %._crit_edge26424, label %6001

6001:                                             ; preds = %5994
  %6002 = tail call double @f64_reinterpret_i64(i64 noundef %5992)
  %6003 = tail call double @wasm_fabs(double noundef %6002)
  %6004 = fcmp olt double %6003, 0x41E0000000000000
  br i1 %6004, label %6005, label %6014

6005:                                             ; preds = %6001
  %6006 = fcmp uno double %6002, 0.000000e+00
  br i1 %6006, label %6007, label %6008, !prof !18

6007:                                             ; preds = %6005
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6008:                                             ; preds = %6005
  %6009 = fcmp ule double %6002, 0xC1E0000000200000
  %6010 = fcmp uge double %6002, 0x41E0000000000000
  %.not24330 = or i1 %6009, %6010
  br i1 %.not24330, label %6011, label %6012, !prof !18

6011:                                             ; preds = %6008
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6012:                                             ; preds = %6008
  %6013 = fptosi double %6002 to i32
  br label %6014

6014:                                             ; preds = %6001, %6012
  %.3923795 = phi i32 [ %6013, %6012 ], [ -2147483648, %6001 ]
  %6015 = sitofp i32 %.3923795 to double
  %6016 = fcmp oeq double %6002, %6015
  br i1 %6016, label %6017, label %6019

6017:                                             ; preds = %6014
  %6018 = tail call double @f64_reinterpret_i64(i64 noundef %5999)
  br label %6026

6019:                                             ; preds = %6014
  %6020 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %6002) #5
  %6021 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26483)
  %6022 = shl i32 %6021, 3
  %6023 = add i32 %6022, %.923925
  %6024 = zext i32 %6023 to i64
  %6025 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6024)
  br label %6026

6026:                                             ; preds = %6019, %6017
  %.3023903 = phi i32 [ %.3923795, %6017 ], [ %6020, %6019 ]
  %.4 = phi double [ %6018, %6017 ], [ %6025, %6019 ]
  %6027 = tail call double @wasm_fabs(double noundef %.4)
  %6028 = fcmp olt double %6027, 0x41E0000000000000
  br i1 %6028, label %6029, label %6038

6029:                                             ; preds = %6026
  %6030 = fcmp uno double %.4, 0.000000e+00
  br i1 %6030, label %6031, label %6032, !prof !18

6031:                                             ; preds = %6029
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6032:                                             ; preds = %6029
  %6033 = fcmp ule double %.4, 0xC1E0000000200000
  %6034 = fcmp uge double %.4, 0x41E0000000000000
  %.not24333 = or i1 %6033, %6034
  br i1 %.not24333, label %6035, label %6036, !prof !18

6035:                                             ; preds = %6032
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6036:                                             ; preds = %6032
  %6037 = fptosi double %.4 to i32
  br label %6038

6038:                                             ; preds = %6026, %6036
  %.40 = phi i32 [ %6037, %6036 ], [ -2147483648, %6026 ]
  %6039 = sitofp i32 %.40 to double
  %6040 = fcmp une double %.4, %6039
  br i1 %6040, label %6041, label %6043

6041:                                             ; preds = %6038
  %6042 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %.4) #5
  br label %6043

6043:                                             ; preds = %6041, %6038
  %.3223724 = phi i32 [ %6042, %6041 ], [ %.40, %6038 ]
  %6044 = add nuw nsw i64 %657, 1
  %6045 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6044)
  %6046 = shl i32 %6045, 3
  %6047 = add i32 %6046, %.923925
  %6048 = and i32 %.3223724, 31
  %6049 = ashr i32 %.3023903, %6048
  %6050 = sitofp i32 %6049 to double
  %6051 = zext i32 %6047 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %6051, double noundef %6050)
  %6052 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26424:                                 ; preds = %5986, %5994
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6053 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %5987)
  %6054 = shl i32 %6053, 3
  %6055 = add i32 %6054, %.923925
  %6056 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26483)
  %6057 = shl i32 %6056, 3
  %6058 = add i32 %6057, %.923925
  %6059 = load i32, ptr %5, align 8, !tbaa !5
  %6060 = add i32 %6059, -32
  store i32 %6060, ptr %5, align 8, !tbaa !5
  %6061 = add i32 %6059, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %6061, i32 noundef %2, i32 noundef %6055, i32 noundef 2) #5
  %6062 = zext i32 %6060 to i64
  %6063 = add nuw nsw i64 %6062, 16
  %6064 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6063)
  %.not24334 = icmp eq i32 %6064, 0
  br i1 %.not24334, label %6065, label %6066

6065:                                             ; preds = %._crit_edge26424
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %6128

6066:                                             ; preds = %._crit_edge26424
  %6067 = add nuw nsw i64 %6062, 24
  %6068 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6067)
  %.mask24336 = and i64 %6068, -281474976710656
  %.not24335 = icmp eq i64 %.mask24336, -562949953421312
  br i1 %.not24335, label %6125, label %6069

6069:                                             ; preds = %6066
  %6070 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %6071 = zext i32 %6070 to i64
  %6072 = add nuw nsw i64 %6071, 164
  %6073 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6072)
  %6074 = add nuw nsw i64 %6071, 168
  %6075 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6074)
  %6076 = icmp ult i32 %6073, %6075
  br i1 %6076, label %6077, label %6080

6077:                                             ; preds = %6069
  %6078 = add i32 %6073, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %6072, i32 noundef %6078)
  %6079 = zext i32 %6073 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6079, i64 noundef %6068)
  br label %6082

6080:                                             ; preds = %6069
  %6081 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %6070, i64 noundef %6068) #5
  br label %6082

6082:                                             ; preds = %6080, %6077
  %.3123904 = phi i32 [ %6073, %6077 ], [ %6081, %6080 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %6060, i32 noundef %2, i32 noundef %.3123904) #5
  %6083 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6062)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %6063, i32 noundef %6083)
  %6084 = add nuw nsw i64 %6062, 8
  %6085 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6084)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6067, i64 noundef %6085)
  %.not24337 = icmp eq i32 %6083, 0
  br i1 %.not24337, label %6086, label %6087

6086:                                             ; preds = %6082
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %6128

6087:                                             ; preds = %6082
  %6088 = tail call double @f64_reinterpret_i64(i64 noundef %6085)
  %6089 = tail call double @wasm_fabs(double noundef %6088)
  %6090 = fcmp olt double %6089, 0x41E0000000000000
  br i1 %6090, label %6091, label %6100

6091:                                             ; preds = %6087
  %6092 = fcmp uno double %6088, 0.000000e+00
  br i1 %6092, label %6093, label %6094, !prof !18

6093:                                             ; preds = %6091
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6094:                                             ; preds = %6091
  %6095 = fcmp ule double %6088, 0xC1E0000000200000
  %6096 = fcmp uge double %6088, 0x41E0000000000000
  %.not24340 = or i1 %6095, %6096
  br i1 %.not24340, label %6097, label %6098, !prof !18

6097:                                             ; preds = %6094
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6098:                                             ; preds = %6094
  %6099 = fptosi double %6088 to i32
  br label %6100

6100:                                             ; preds = %6087, %6098
  %.41 = phi i32 [ %6099, %6098 ], [ -2147483648, %6087 ]
  %6101 = sitofp i32 %.41 to double
  %6102 = fcmp une double %6088, %6101
  br i1 %6102, label %6103, label %6105

6103:                                             ; preds = %6100
  %6104 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef nonnull %0, double noundef %6088) #5
  br label %6105

6105:                                             ; preds = %6103, %6100
  %.3223905 = phi i32 [ %6104, %6103 ], [ %.41, %6100 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %6060, i32 noundef %2, i32 noundef %6058) #5
  %6106 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6062)
  %.not24341 = icmp eq i32 %6106, 0
  br i1 %.not24341, label %6107, label %6108

6107:                                             ; preds = %6105
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %6128

6108:                                             ; preds = %6105
  %6109 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6084)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %6110 = fcmp olt double %6109, 0x41F0000000000000
  %6111 = fcmp oge double %6109, 0.000000e+00
  %6112 = and i1 %6110, %6111
  br i1 %6112, label %6113, label %6121

6113:                                             ; preds = %6108
  %6114 = fcmp uno double %6109, 0.000000e+00
  br i1 %6114, label %6115, label %6116, !prof !18

6115:                                             ; preds = %6113
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6116:                                             ; preds = %6113
  %6117 = fcmp ogt double %6109, -1.000000e+00
  br i1 %6117, label %6119, label %6118, !prof !19

6118:                                             ; preds = %6116
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6119:                                             ; preds = %6116
  %6120 = fptoui double %6109 to i32
  br label %6121

6121:                                             ; preds = %6108, %6119
  %.423735 = phi i32 [ %6120, %6119 ], [ 0, %6108 ]
  %6122 = and i32 %.423735, 31
  %6123 = ashr i32 %.3223905, %6122
  %6124 = sitofp i32 %6123 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %6124)
  br label %6128

6125:                                             ; preds = %6066
  %6126 = trunc i64 %6068 to i32
  %6127 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %6126) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 549, i32 noundef %6127, i32 noundef %6058) #5
  br label %6128

6128:                                             ; preds = %6125, %6121, %6107, %6086, %6065
  store i32 %6059, ptr %5, align 8, !tbaa !5
  %6129 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6130 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24342 = icmp eq i32 %6130, 0
  br i1 %.not24342, label %._crit_edge, label %6131

6131:                                             ; preds = %6128
  %6132 = zext i32 %6129 to i64
  %6133 = add nuw nsw i64 %6132, 1
  %6134 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6133)
  %6135 = shl i32 %6134, 3
  %6136 = add i32 %6135, %.923925
  %6137 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %6138 = zext i32 %6136 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6138, i64 noundef %6137)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6139 = add i32 %6129, 4
  br label %.backedge.backedge

6140:                                             ; preds = %.backedge
  %6141 = add nuw nsw i64 %657, 2
  %6142 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6141)
  %6143 = shl i32 %6142, 3
  %6144 = add i32 %6143, %.923925
  %6145 = zext i32 %6144 to i64
  %6146 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6145)
  %6147 = icmp ugt i64 %6146, -1970324836974593
  %.pre26485 = add nuw nsw i64 %657, 3
  br i1 %6147, label %._crit_edge26423, label %6148

6148:                                             ; preds = %6140
  %6149 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26485)
  %6150 = shl i32 %6149, 3
  %6151 = add i32 %6150, %.923925
  %6152 = zext i32 %6151 to i64
  %6153 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6152)
  %6154 = icmp ugt i64 %6153, -1970324836974593
  br i1 %6154, label %._crit_edge26423, label %6155

6155:                                             ; preds = %6148
  %6156 = tail call double @f64_reinterpret_i64(i64 noundef %6146)
  %6157 = tail call double @wasm_fabs(double noundef %6156)
  %6158 = fcmp olt double %6157, 0x41E0000000000000
  br i1 %6158, label %6159, label %6168

6159:                                             ; preds = %6155
  %6160 = fcmp uno double %6156, 0.000000e+00
  br i1 %6160, label %6161, label %6162, !prof !18

6161:                                             ; preds = %6159
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6162:                                             ; preds = %6159
  %6163 = fcmp ule double %6156, 0xC1E0000000200000
  %6164 = fcmp uge double %6156, 0x41E0000000000000
  %.not24315 = or i1 %6163, %6164
  br i1 %.not24315, label %6165, label %6166, !prof !18

6165:                                             ; preds = %6162
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6166:                                             ; preds = %6162
  %6167 = fptosi double %6156 to i32
  br label %6168

6168:                                             ; preds = %6155, %6166
  %.42 = phi i32 [ %6167, %6166 ], [ -2147483648, %6155 ]
  %6169 = sitofp i32 %.42 to double
  %6170 = fcmp oeq double %6156, %6169
  br i1 %6170, label %6171, label %6173

6171:                                             ; preds = %6168
  %6172 = tail call double @f64_reinterpret_i64(i64 noundef %6153)
  br label %6180

6173:                                             ; preds = %6168
  %6174 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %6156) #5
  %6175 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26485)
  %6176 = shl i32 %6175, 3
  %6177 = add i32 %6176, %.923925
  %6178 = zext i32 %6177 to i64
  %6179 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6178)
  br label %6180

6180:                                             ; preds = %6173, %6171
  %.3323906 = phi i32 [ %.42, %6171 ], [ %6174, %6173 ]
  %.5 = phi double [ %6172, %6171 ], [ %6179, %6173 ]
  %6181 = tail call double @wasm_fabs(double noundef %.5)
  %6182 = fcmp olt double %6181, 0x41E0000000000000
  br i1 %6182, label %6183, label %6192

6183:                                             ; preds = %6180
  %6184 = fcmp uno double %.5, 0.000000e+00
  br i1 %6184, label %6185, label %6186, !prof !18

6185:                                             ; preds = %6183
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6186:                                             ; preds = %6183
  %6187 = fcmp ule double %.5, 0xC1E0000000200000
  %6188 = fcmp uge double %.5, 0x41E0000000000000
  %.not24318 = or i1 %6187, %6188
  br i1 %.not24318, label %6189, label %6190, !prof !18

6189:                                             ; preds = %6186
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6190:                                             ; preds = %6186
  %6191 = fptosi double %.5 to i32
  br label %6192

6192:                                             ; preds = %6180, %6190
  %.43 = phi i32 [ %6191, %6190 ], [ -2147483648, %6180 ]
  %6193 = sitofp i32 %.43 to double
  %6194 = fcmp une double %.5, %6193
  br i1 %6194, label %6195, label %6197

6195:                                             ; preds = %6192
  %6196 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef %0, double noundef %.5) #5
  br label %6197

6197:                                             ; preds = %6195, %6192
  %.3323725 = phi i32 [ %6196, %6195 ], [ %.43, %6192 ]
  %6198 = add nuw nsw i64 %657, 1
  %6199 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6198)
  %6200 = shl i32 %6199, 3
  %6201 = add i32 %6200, %.923925
  %6202 = and i32 %.3323725, 31
  %6203 = lshr i32 %.3323906, %6202
  %6204 = uitofp i32 %6203 to double
  %6205 = zext i32 %6201 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %6205, double noundef %6204)
  %6206 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26423:                                 ; preds = %6140, %6148
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6207 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6141)
  %6208 = shl i32 %6207, 3
  %6209 = add i32 %6208, %.923925
  %6210 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26485)
  %6211 = shl i32 %6210, 3
  %6212 = add i32 %6211, %.923925
  %6213 = load i32, ptr %5, align 8, !tbaa !5
  %6214 = add i32 %6213, -32
  store i32 %6214, ptr %5, align 8, !tbaa !5
  %6215 = add i32 %6213, -16
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoPrimitive_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APreferredType0x29(ptr noundef %0, i32 noundef %6215, i32 noundef %2, i32 noundef %6209, i32 noundef 2) #5
  %6216 = zext i32 %6214 to i64
  %6217 = add nuw nsw i64 %6216, 16
  %6218 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6217)
  %.not24319 = icmp eq i32 %6218, 0
  br i1 %.not24319, label %6219, label %6220

6219:                                             ; preds = %._crit_edge26423
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %6282

6220:                                             ; preds = %._crit_edge26423
  %6221 = add nuw nsw i64 %6216, 24
  %6222 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6221)
  %.mask24321 = and i64 %6222, -281474976710656
  %.not24320 = icmp eq i64 %.mask24321, -562949953421312
  br i1 %.not24320, label %6279, label %6223

6223:                                             ; preds = %6220
  %6224 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %6225 = zext i32 %6224 to i64
  %6226 = add nuw nsw i64 %6225, 164
  %6227 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6226)
  %6228 = add nuw nsw i64 %6225, 168
  %6229 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6228)
  %6230 = icmp ult i32 %6227, %6229
  br i1 %6230, label %6231, label %6234

6231:                                             ; preds = %6223
  %6232 = add i32 %6227, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %6226, i32 noundef %6232)
  %6233 = zext i32 %6227 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6233, i64 noundef %6222)
  br label %6236

6234:                                             ; preds = %6223
  %6235 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %6224, i64 noundef %6222) #5
  br label %6236

6236:                                             ; preds = %6234, %6231
  %.3423907 = phi i32 [ %6227, %6231 ], [ %6235, %6234 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %6214, i32 noundef %2, i32 noundef %.3423907) #5
  %6237 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6216)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %6217, i32 noundef %6237)
  %6238 = add nuw nsw i64 %6216, 8
  %6239 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6238)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6221, i64 noundef %6239)
  %.not24322 = icmp eq i32 %6237, 0
  br i1 %.not24322, label %6240, label %6241

6240:                                             ; preds = %6236
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %6282

6241:                                             ; preds = %6236
  %6242 = tail call double @f64_reinterpret_i64(i64 noundef %6239)
  %6243 = tail call double @wasm_fabs(double noundef %6242)
  %6244 = fcmp olt double %6243, 0x41E0000000000000
  br i1 %6244, label %6245, label %6254

6245:                                             ; preds = %6241
  %6246 = fcmp uno double %6242, 0.000000e+00
  br i1 %6246, label %6247, label %6248, !prof !18

6247:                                             ; preds = %6245
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6248:                                             ; preds = %6245
  %6249 = fcmp ule double %6242, 0xC1E0000000200000
  %6250 = fcmp uge double %6242, 0x41E0000000000000
  %.not24325 = or i1 %6249, %6250
  br i1 %.not24325, label %6251, label %6252, !prof !18

6251:                                             ; preds = %6248
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6252:                                             ; preds = %6248
  %6253 = fptosi double %6242 to i32
  br label %6254

6254:                                             ; preds = %6241, %6252
  %.44 = phi i32 [ %6253, %6252 ], [ -2147483648, %6241 ]
  %6255 = sitofp i32 %.44 to double
  %6256 = fcmp une double %6242, %6255
  br i1 %6256, label %6257, label %6259

6257:                                             ; preds = %6254
  %6258 = tail call i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef nonnull %0, double noundef %6242) #5
  br label %6259

6259:                                             ; preds = %6257, %6254
  %.3523908 = phi i32 [ %6258, %6257 ], [ %.44, %6254 ]
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %6214, i32 noundef %2, i32 noundef %6212) #5
  %6260 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6216)
  %.not24326 = icmp eq i32 %6260, 0
  br i1 %.not24326, label %6261, label %6262

6261:                                             ; preds = %6259
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 0)
  br label %6282

6262:                                             ; preds = %6259
  %6263 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6238)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %92, i32 noundef 1)
  %6264 = fcmp olt double %6263, 0x41F0000000000000
  %6265 = fcmp oge double %6263, 0.000000e+00
  %6266 = and i1 %6264, %6265
  br i1 %6266, label %6267, label %6275

6267:                                             ; preds = %6262
  %6268 = fcmp uno double %6263, 0.000000e+00
  br i1 %6268, label %6269, label %6270, !prof !18

6269:                                             ; preds = %6267
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

6270:                                             ; preds = %6267
  %6271 = fcmp ogt double %6263, -1.000000e+00
  br i1 %6271, label %6273, label %6272, !prof !19

6272:                                             ; preds = %6270
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

6273:                                             ; preds = %6270
  %6274 = fptoui double %6263 to i32
  br label %6275

6275:                                             ; preds = %6262, %6273
  %.523736 = phi i32 [ %6274, %6273 ], [ 0, %6262 ]
  %6276 = and i32 %.523736, 31
  %6277 = lshr i32 %.3523908, %6276
  %6278 = uitofp i32 %6277 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %93, double noundef %6278)
  br label %6282

6279:                                             ; preds = %6220
  %6280 = trunc i64 %6222 to i32
  %6281 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %6280) #5
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %80, i32 noundef %2, i32 noundef 550, i32 noundef %6281, i32 noundef %6212) #5
  br label %6282

6282:                                             ; preds = %6279, %6275, %6261, %6240, %6219
  store i32 %6213, ptr %5, align 8, !tbaa !5
  %6283 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6284 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24327 = icmp eq i32 %6284, 0
  br i1 %.not24327, label %._crit_edge, label %6285

6285:                                             ; preds = %6282
  %6286 = zext i32 %6283 to i64
  %6287 = add nuw nsw i64 %6286, 1
  %6288 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6287)
  %6289 = shl i32 %6288, 3
  %6290 = add i32 %6289, %.923925
  %6291 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %6292 = zext i32 %6290 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6292, i64 noundef %6291)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6293 = add i32 %6283, 4
  br label %.backedge.backedge

6294:                                             ; preds = %.backedge
  %6295 = add nuw nsw i64 %657, 2
  %6296 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6295)
  %6297 = shl i32 %6296, 3
  %6298 = add i32 %6297, %.923925
  %6299 = zext i32 %6298 to i64
  %6300 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6299)
  %6301 = icmp ugt i64 %6300, -1970324836974593
  %.pre26487 = add nuw nsw i64 %657, 3
  br i1 %6301, label %._crit_edge26422, label %6302

6302:                                             ; preds = %6294
  %6303 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26487)
  %6304 = shl i32 %6303, 3
  %6305 = add i32 %6304, %.923925
  %6306 = zext i32 %6305 to i64
  %6307 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6306)
  %6308 = icmp ugt i64 %6307, -1970324836974593
  br i1 %6308, label %._crit_edge26422, label %6309

6309:                                             ; preds = %6302
  %6310 = add nuw nsw i64 %657, 1
  %6311 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6310)
  %6312 = shl i32 %6311, 3
  %6313 = add i32 %6312, %.923925
  %6314 = tail call double @f64_reinterpret_i64(i64 noundef %6300)
  %6315 = tail call double @f64_reinterpret_i64(i64 noundef %6307)
  %6316 = fcmp olt double %6314, %6315
  %6317 = zext i1 %6316 to i64
  %6318 = or disjoint i64 %6317, -1407374883553280
  %6319 = zext i32 %6313 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6319, i64 noundef %6318)
  %6320 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26422:                                 ; preds = %6294, %6302
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6321 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6295)
  %6322 = shl i32 %6321, 3
  %6323 = add i32 %6322, %.923925
  %6324 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26487)
  %6325 = shl i32 %6324, 3
  %6326 = add i32 %6325, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6323, i32 noundef %6326) #5
  %6327 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6328 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6329 = and i32 %6328, 255
  %.not24312 = icmp eq i32 %6329, 0
  br i1 %.not24312, label %._crit_edge, label %6330

6330:                                             ; preds = %._crit_edge26422
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6331 = zext i32 %6327 to i64
  %6332 = add nuw nsw i64 %6331, 1
  %6333 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6332)
  %6334 = shl i32 %6333, 3
  %6335 = add i32 %6334, %.923925
  %6336 = lshr i32 %6328, 8
  %6337 = and i32 %6336, 1
  %6338 = zext nneg i32 %6337 to i64
  %6339 = or disjoint i64 %6338, -1407374883553280
  %6340 = zext i32 %6335 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6340, i64 noundef %6339)
  %6341 = add i32 %6327, 4
  br label %.backedge.backedge

6342:                                             ; preds = %.backedge
  %6343 = add nuw nsw i64 %657, 2
  %6344 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6343)
  %6345 = shl i32 %6344, 3
  %6346 = add i32 %6345, %.923925
  %6347 = zext i32 %6346 to i64
  %6348 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6347)
  %6349 = icmp ugt i64 %6348, -1970324836974593
  %.pre26489 = add nuw nsw i64 %657, 3
  br i1 %6349, label %._crit_edge26421, label %6350

6350:                                             ; preds = %6342
  %6351 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26489)
  %6352 = shl i32 %6351, 3
  %6353 = add i32 %6352, %.923925
  %6354 = zext i32 %6353 to i64
  %6355 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6354)
  %6356 = icmp ugt i64 %6355, -1970324836974593
  br i1 %6356, label %._crit_edge26421, label %6357

6357:                                             ; preds = %6350
  %6358 = add nuw nsw i64 %657, 1
  %6359 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6358)
  %6360 = shl i32 %6359, 3
  %6361 = add i32 %6360, %.923925
  %6362 = tail call double @f64_reinterpret_i64(i64 noundef %6348)
  %6363 = tail call double @f64_reinterpret_i64(i64 noundef %6355)
  %6364 = fcmp ole double %6362, %6363
  %6365 = zext i1 %6364 to i64
  %6366 = or disjoint i64 %6365, -1407374883553280
  %6367 = zext i32 %6361 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6367, i64 noundef %6366)
  %6368 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26421:                                 ; preds = %6342, %6350
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6369 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6343)
  %6370 = shl i32 %6369, 3
  %6371 = add i32 %6370, %.923925
  %6372 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26489)
  %6373 = shl i32 %6372, 3
  %6374 = add i32 %6373, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6371, i32 noundef %6374) #5
  %6375 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6376 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6377 = and i32 %6376, 255
  %.not24311 = icmp eq i32 %6377, 0
  br i1 %.not24311, label %._crit_edge, label %6378

6378:                                             ; preds = %._crit_edge26421
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6379 = zext i32 %6375 to i64
  %6380 = add nuw nsw i64 %6379, 1
  %6381 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6380)
  %6382 = shl i32 %6381, 3
  %6383 = add i32 %6382, %.923925
  %6384 = lshr i32 %6376, 8
  %6385 = and i32 %6384, 1
  %6386 = zext nneg i32 %6385 to i64
  %6387 = or disjoint i64 %6386, -1407374883553280
  %6388 = zext i32 %6383 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6388, i64 noundef %6387)
  %6389 = add i32 %6375, 4
  br label %.backedge.backedge

6390:                                             ; preds = %.backedge
  %6391 = add nuw nsw i64 %657, 2
  %6392 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6391)
  %6393 = shl i32 %6392, 3
  %6394 = add i32 %6393, %.923925
  %6395 = zext i32 %6394 to i64
  %6396 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6395)
  %6397 = icmp ugt i64 %6396, -1970324836974593
  %.pre26491 = add nuw nsw i64 %657, 3
  br i1 %6397, label %._crit_edge26420, label %6398

6398:                                             ; preds = %6390
  %6399 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26491)
  %6400 = shl i32 %6399, 3
  %6401 = add i32 %6400, %.923925
  %6402 = zext i32 %6401 to i64
  %6403 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6402)
  %6404 = icmp ugt i64 %6403, -1970324836974593
  br i1 %6404, label %._crit_edge26420, label %6405

6405:                                             ; preds = %6398
  %6406 = add nuw nsw i64 %657, 1
  %6407 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6406)
  %6408 = shl i32 %6407, 3
  %6409 = add i32 %6408, %.923925
  %6410 = tail call double @f64_reinterpret_i64(i64 noundef %6396)
  %6411 = tail call double @f64_reinterpret_i64(i64 noundef %6403)
  %6412 = fcmp ogt double %6410, %6411
  %6413 = zext i1 %6412 to i64
  %6414 = or disjoint i64 %6413, -1407374883553280
  %6415 = zext i32 %6409 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6415, i64 noundef %6414)
  %6416 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26420:                                 ; preds = %6390, %6398
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6417 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6391)
  %6418 = shl i32 %6417, 3
  %6419 = add i32 %6418, %.923925
  %6420 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26491)
  %6421 = shl i32 %6420, 3
  %6422 = add i32 %6421, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6419, i32 noundef %6422) #5
  %6423 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6424 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6425 = and i32 %6424, 255
  %.not24310 = icmp eq i32 %6425, 0
  br i1 %.not24310, label %._crit_edge, label %6426

6426:                                             ; preds = %._crit_edge26420
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6427 = zext i32 %6423 to i64
  %6428 = add nuw nsw i64 %6427, 1
  %6429 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6428)
  %6430 = shl i32 %6429, 3
  %6431 = add i32 %6430, %.923925
  %6432 = lshr i32 %6424, 8
  %6433 = and i32 %6432, 1
  %6434 = zext nneg i32 %6433 to i64
  %6435 = or disjoint i64 %6434, -1407374883553280
  %6436 = zext i32 %6431 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6436, i64 noundef %6435)
  %6437 = add i32 %6423, 4
  br label %.backedge.backedge

6438:                                             ; preds = %.backedge
  %6439 = add nuw nsw i64 %657, 2
  %6440 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6439)
  %6441 = shl i32 %6440, 3
  %6442 = add i32 %6441, %.923925
  %6443 = zext i32 %6442 to i64
  %6444 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6443)
  %6445 = icmp ugt i64 %6444, -1970324836974593
  %.pre26493 = add nuw nsw i64 %657, 3
  br i1 %6445, label %._crit_edge26419, label %6446

6446:                                             ; preds = %6438
  %6447 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26493)
  %6448 = shl i32 %6447, 3
  %6449 = add i32 %6448, %.923925
  %6450 = zext i32 %6449 to i64
  %6451 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6450)
  %6452 = icmp ugt i64 %6451, -1970324836974593
  br i1 %6452, label %._crit_edge26419, label %6453

6453:                                             ; preds = %6446
  %6454 = add nuw nsw i64 %657, 1
  %6455 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6454)
  %6456 = shl i32 %6455, 3
  %6457 = add i32 %6456, %.923925
  %6458 = tail call double @f64_reinterpret_i64(i64 noundef %6444)
  %6459 = tail call double @f64_reinterpret_i64(i64 noundef %6451)
  %6460 = fcmp oge double %6458, %6459
  %6461 = zext i1 %6460 to i64
  %6462 = or disjoint i64 %6461, -1407374883553280
  %6463 = zext i32 %6457 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6463, i64 noundef %6462)
  %6464 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26419:                                 ; preds = %6438, %6446
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6465 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6439)
  %6466 = shl i32 %6465, 3
  %6467 = add i32 %6466, %.923925
  %6468 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26493)
  %6469 = shl i32 %6468, 3
  %6470 = add i32 %6469, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6467, i32 noundef %6470) #5
  %6471 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6472 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6473 = and i32 %6472, 255
  %.not24309 = icmp eq i32 %6473, 0
  br i1 %.not24309, label %._crit_edge, label %6474

6474:                                             ; preds = %._crit_edge26419
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6475 = zext i32 %6471 to i64
  %6476 = add nuw nsw i64 %6475, 1
  %6477 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6476)
  %6478 = shl i32 %6477, 3
  %6479 = add i32 %6478, %.923925
  %6480 = lshr i32 %6472, 8
  %6481 = and i32 %6480, 1
  %6482 = zext nneg i32 %6481 to i64
  %6483 = or disjoint i64 %6482, -1407374883553280
  %6484 = zext i32 %6479 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %6484, i64 noundef %6483)
  %6485 = add i32 %6471, 4
  br label %.backedge.backedge

6486:                                             ; preds = %.backedge
  %6487 = add nuw nsw i64 %657, 2
  %6488 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6487)
  %6489 = shl i32 %6488, 3
  %6490 = add i32 %6489, %.923925
  %6491 = zext i32 %6490 to i64
  %6492 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6491)
  %6493 = icmp ugt i64 %6492, -1970324836974593
  %.pre26495 = add nuw nsw i64 %657, 3
  br i1 %6493, label %._crit_edge26418, label %6494

6494:                                             ; preds = %6486
  %6495 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26495)
  %6496 = shl i32 %6495, 3
  %6497 = add i32 %6496, %.923925
  %6498 = zext i32 %6497 to i64
  %6499 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6498)
  %6500 = icmp ugt i64 %6499, -1970324836974593
  br i1 %6500, label %._crit_edge26418, label %6501

6501:                                             ; preds = %._crit_edge26417, %6494
  %.pre-phi26500 = phi i64 [ %.pre26499, %._crit_edge26417 ], [ %.pre26495, %6494 ]
  %.pre-phi26498 = phi i64 [ %.pre26497, %._crit_edge26417 ], [ %6487, %6494 ]
  %6502 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26498)
  %6503 = shl i32 %6502, 3
  %6504 = add i32 %6503, %.923925
  %6505 = zext i32 %6504 to i64
  %6506 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6505)
  %6507 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26500)
  %6508 = shl i32 %6507, 3
  %6509 = add i32 %6508, %.923925
  %6510 = zext i32 %6509 to i64
  %6511 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6510)
  %6512 = fcmp olt double %6506, %6511
  br i1 %6512, label %6513, label %6517

6513:                                             ; preds = %6501
  %6514 = add nuw nsw i64 %657, 1
  %6515 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6514)
  %6516 = add i32 %6515, %.323685
  br label %.backedge.backedge

6517:                                             ; preds = %6501
  %6518 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26418:                                 ; preds = %6486, %6494
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6519 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6487)
  %6520 = shl i32 %6519, 3
  %6521 = add i32 %6520, %.923925
  %6522 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26495)
  %6523 = shl i32 %6522, 3
  %6524 = add i32 %6523, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6521, i32 noundef %6524) #5
  %6525 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6526 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6527 = and i32 %6526, 255
  %.not24307 = icmp eq i32 %6527, 0
  br i1 %.not24307, label %._crit_edge, label %6528

6528:                                             ; preds = %._crit_edge26418
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6529 = and i32 %6526, 256
  %.not24308 = icmp eq i32 %6529, 0
  br i1 %.not24308, label %6535, label %6530

6530:                                             ; preds = %6528
  %6531 = zext i32 %6525 to i64
  %6532 = add nuw nsw i64 %6531, 1
  %6533 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6532)
  %6534 = add i32 %6533, %6525
  br label %.backedge.backedge

6535:                                             ; preds = %6528
  %6536 = add i32 %6525, 4
  br label %.backedge.backedge

6537:                                             ; preds = %.backedge
  %6538 = add nuw nsw i64 %657, 5
  %6539 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6538)
  %6540 = shl i32 %6539, 3
  %6541 = add i32 %6540, %.923925
  %6542 = zext i32 %6541 to i64
  %6543 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6542)
  %6544 = icmp ugt i64 %6543, -1970324836974593
  %.pre26501 = add nuw nsw i64 %657, 6
  br i1 %6544, label %._crit_edge26416, label %6545

6545:                                             ; preds = %6537
  %6546 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26501)
  %6547 = shl i32 %6546, 3
  %6548 = add i32 %6547, %.923925
  %6549 = zext i32 %6548 to i64
  %6550 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6549)
  %6551 = icmp ugt i64 %6550, -1970324836974593
  br i1 %6551, label %._crit_edge26416, label %6552

6552:                                             ; preds = %._crit_edge26415, %6545
  %.pre-phi26506 = phi i64 [ %.pre26505, %._crit_edge26415 ], [ %.pre26501, %6545 ]
  %.pre-phi26504 = phi i64 [ %.pre26503, %._crit_edge26415 ], [ %6538, %6545 ]
  %6553 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26504)
  %6554 = shl i32 %6553, 3
  %6555 = add i32 %6554, %.923925
  %6556 = zext i32 %6555 to i64
  %6557 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6556)
  %6558 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26506)
  %6559 = shl i32 %6558, 3
  %6560 = add i32 %6559, %.923925
  %6561 = zext i32 %6560 to i64
  %6562 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6561)
  %6563 = fcmp olt double %6557, %6562
  br i1 %6563, label %6564, label %6568

6564:                                             ; preds = %6552
  %6565 = add nuw nsw i64 %657, 1
  %6566 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6565)
  %6567 = add i32 %6566, %.323685
  br label %.backedge.backedge

6568:                                             ; preds = %6552
  %6569 = add i32 %.323685, 7
  br label %.backedge.backedge

._crit_edge26416:                                 ; preds = %6537, %6545
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6570 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6538)
  %6571 = shl i32 %6570, 3
  %6572 = add i32 %6571, %.923925
  %6573 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26501)
  %6574 = shl i32 %6573, 3
  %6575 = add i32 %6574, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6572, i32 noundef %6575) #5
  %6576 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6577 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6578 = and i32 %6577, 255
  %.not24305 = icmp eq i32 %6578, 0
  br i1 %.not24305, label %._crit_edge, label %6579

6579:                                             ; preds = %._crit_edge26416
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6580 = and i32 %6577, 256
  %.not24306 = icmp eq i32 %6580, 0
  br i1 %.not24306, label %6586, label %6581

6581:                                             ; preds = %6579
  %6582 = zext i32 %6576 to i64
  %6583 = add nuw nsw i64 %6582, 1
  %6584 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6583)
  %6585 = add i32 %6584, %6576
  br label %.backedge.backedge

6586:                                             ; preds = %6579
  %6587 = add i32 %6576, 7
  br label %.backedge.backedge

6588:                                             ; preds = %.backedge
  %6589 = add nuw nsw i64 %657, 2
  %6590 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6589)
  %6591 = shl i32 %6590, 3
  %6592 = add i32 %6591, %.923925
  %6593 = zext i32 %6592 to i64
  %6594 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6593)
  %6595 = icmp ugt i64 %6594, -1970324836974593
  %.pre26507 = add nuw nsw i64 %657, 3
  br i1 %6595, label %._crit_edge26414, label %6596

6596:                                             ; preds = %6588
  %6597 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26507)
  %6598 = shl i32 %6597, 3
  %6599 = add i32 %6598, %.923925
  %6600 = zext i32 %6599 to i64
  %6601 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6600)
  %6602 = icmp ugt i64 %6601, -1970324836974593
  br i1 %6602, label %._crit_edge26414, label %6603

6603:                                             ; preds = %._crit_edge26413, %6596
  %.pre-phi26512 = phi i64 [ %.pre26511, %._crit_edge26413 ], [ %.pre26507, %6596 ]
  %.pre-phi26510 = phi i64 [ %.pre26509, %._crit_edge26413 ], [ %6589, %6596 ]
  %6604 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26510)
  %6605 = shl i32 %6604, 3
  %6606 = add i32 %6605, %.923925
  %6607 = zext i32 %6606 to i64
  %6608 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6607)
  %6609 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26512)
  %6610 = shl i32 %6609, 3
  %6611 = add i32 %6610, %.923925
  %6612 = zext i32 %6611 to i64
  %6613 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6612)
  %6614 = fcmp olt double %6608, %6613
  br i1 %6614, label %6615, label %6617

6615:                                             ; preds = %6603
  %6616 = add i32 %.323685, 4
  br label %.backedge.backedge

6617:                                             ; preds = %6603
  %6618 = add nuw nsw i64 %657, 1
  %6619 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6618)
  %6620 = add i32 %6619, %.323685
  br label %.backedge.backedge

._crit_edge26414:                                 ; preds = %6588, %6596
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6621 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6589)
  %6622 = shl i32 %6621, 3
  %6623 = add i32 %6622, %.923925
  %6624 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26507)
  %6625 = shl i32 %6624, 3
  %6626 = add i32 %6625, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6623, i32 noundef %6626) #5
  %6627 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6628 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6629 = and i32 %6628, 255
  %.not24303 = icmp eq i32 %6629, 0
  br i1 %.not24303, label %._crit_edge, label %6630

6630:                                             ; preds = %._crit_edge26414
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6631 = and i32 %6628, 256
  %.not24304 = icmp eq i32 %6631, 0
  br i1 %.not24304, label %6634, label %6632

6632:                                             ; preds = %6630
  %6633 = add i32 %6627, 4
  br label %.backedge.backedge

6634:                                             ; preds = %6630
  %6635 = zext i32 %6627 to i64
  %6636 = add nuw nsw i64 %6635, 1
  %6637 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6636)
  %6638 = add i32 %6637, %6627
  br label %.backedge.backedge

6639:                                             ; preds = %.backedge
  %6640 = add nuw nsw i64 %657, 5
  %6641 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6640)
  %6642 = shl i32 %6641, 3
  %6643 = add i32 %6642, %.923925
  %6644 = zext i32 %6643 to i64
  %6645 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6644)
  %6646 = icmp ugt i64 %6645, -1970324836974593
  %.pre26513 = add nuw nsw i64 %657, 6
  br i1 %6646, label %._crit_edge26412, label %6647

6647:                                             ; preds = %6639
  %6648 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26513)
  %6649 = shl i32 %6648, 3
  %6650 = add i32 %6649, %.923925
  %6651 = zext i32 %6650 to i64
  %6652 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6651)
  %6653 = icmp ugt i64 %6652, -1970324836974593
  br i1 %6653, label %._crit_edge26412, label %6654

6654:                                             ; preds = %._crit_edge26411, %6647
  %.pre-phi26518 = phi i64 [ %.pre26517, %._crit_edge26411 ], [ %.pre26513, %6647 ]
  %.pre-phi26516 = phi i64 [ %.pre26515, %._crit_edge26411 ], [ %6640, %6647 ]
  %6655 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26516)
  %6656 = shl i32 %6655, 3
  %6657 = add i32 %6656, %.923925
  %6658 = zext i32 %6657 to i64
  %6659 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6658)
  %6660 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26518)
  %6661 = shl i32 %6660, 3
  %6662 = add i32 %6661, %.923925
  %6663 = zext i32 %6662 to i64
  %6664 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6663)
  %6665 = fcmp olt double %6659, %6664
  br i1 %6665, label %6666, label %6668

6666:                                             ; preds = %6654
  %6667 = add i32 %.323685, 7
  br label %.backedge.backedge

6668:                                             ; preds = %6654
  %6669 = add nuw nsw i64 %657, 1
  %6670 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6669)
  %6671 = add i32 %6670, %.323685
  br label %.backedge.backedge

._crit_edge26412:                                 ; preds = %6639, %6647
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6672 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6640)
  %6673 = shl i32 %6672, 3
  %6674 = add i32 %6673, %.923925
  %6675 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26513)
  %6676 = shl i32 %6675, 3
  %6677 = add i32 %6676, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6674, i32 noundef %6677) #5
  %6678 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6679 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6680 = and i32 %6679, 255
  %.not24301 = icmp eq i32 %6680, 0
  br i1 %.not24301, label %._crit_edge, label %6681

6681:                                             ; preds = %._crit_edge26412
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6682 = and i32 %6679, 256
  %.not24302 = icmp eq i32 %6682, 0
  br i1 %.not24302, label %6685, label %6683

6683:                                             ; preds = %6681
  %6684 = add i32 %6678, 7
  br label %.backedge.backedge

6685:                                             ; preds = %6681
  %6686 = zext i32 %6678 to i64
  %6687 = add nuw nsw i64 %6686, 1
  %6688 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6687)
  %6689 = add i32 %6688, %6678
  br label %.backedge.backedge

6690:                                             ; preds = %.backedge
  %6691 = add nuw nsw i64 %657, 2
  %6692 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6691)
  %6693 = shl i32 %6692, 3
  %6694 = add i32 %6693, %.923925
  %6695 = zext i32 %6694 to i64
  %6696 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6695)
  %6697 = icmp ugt i64 %6696, -1970324836974593
  %.pre26519 = add nuw nsw i64 %657, 3
  br i1 %6697, label %._crit_edge26410, label %6698

6698:                                             ; preds = %6690
  %6699 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26519)
  %6700 = shl i32 %6699, 3
  %6701 = add i32 %6700, %.923925
  %6702 = zext i32 %6701 to i64
  %6703 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6702)
  %6704 = icmp ugt i64 %6703, -1970324836974593
  br i1 %6704, label %._crit_edge26410, label %6705

6705:                                             ; preds = %._crit_edge26409, %6698
  %.pre-phi26524 = phi i64 [ %.pre26523, %._crit_edge26409 ], [ %.pre26519, %6698 ]
  %.pre-phi26522 = phi i64 [ %.pre26521, %._crit_edge26409 ], [ %6691, %6698 ]
  %6706 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26522)
  %6707 = shl i32 %6706, 3
  %6708 = add i32 %6707, %.923925
  %6709 = zext i32 %6708 to i64
  %6710 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6709)
  %6711 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26524)
  %6712 = shl i32 %6711, 3
  %6713 = add i32 %6712, %.923925
  %6714 = zext i32 %6713 to i64
  %6715 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6714)
  %6716 = fcmp ugt double %6710, %6715
  br i1 %6716, label %6721, label %6717

6717:                                             ; preds = %6705
  %6718 = add nuw nsw i64 %657, 1
  %6719 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6718)
  %6720 = add i32 %6719, %.323685
  br label %.backedge.backedge

6721:                                             ; preds = %6705
  %6722 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26410:                                 ; preds = %6690, %6698
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6723 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6691)
  %6724 = shl i32 %6723, 3
  %6725 = add i32 %6724, %.923925
  %6726 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26519)
  %6727 = shl i32 %6726, 3
  %6728 = add i32 %6727, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6725, i32 noundef %6728) #5
  %6729 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6730 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6731 = and i32 %6730, 255
  %.not24299 = icmp eq i32 %6731, 0
  br i1 %.not24299, label %._crit_edge, label %6732

6732:                                             ; preds = %._crit_edge26410
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6733 = and i32 %6730, 256
  %.not24300 = icmp eq i32 %6733, 0
  br i1 %.not24300, label %6739, label %6734

6734:                                             ; preds = %6732
  %6735 = zext i32 %6729 to i64
  %6736 = add nuw nsw i64 %6735, 1
  %6737 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6736)
  %6738 = add i32 %6737, %6729
  br label %.backedge.backedge

6739:                                             ; preds = %6732
  %6740 = add i32 %6729, 4
  br label %.backedge.backedge

6741:                                             ; preds = %.backedge
  %6742 = add nuw nsw i64 %657, 5
  %6743 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6742)
  %6744 = shl i32 %6743, 3
  %6745 = add i32 %6744, %.923925
  %6746 = zext i32 %6745 to i64
  %6747 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6746)
  %6748 = icmp ugt i64 %6747, -1970324836974593
  %.pre26525 = add nuw nsw i64 %657, 6
  br i1 %6748, label %._crit_edge26408, label %6749

6749:                                             ; preds = %6741
  %6750 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26525)
  %6751 = shl i32 %6750, 3
  %6752 = add i32 %6751, %.923925
  %6753 = zext i32 %6752 to i64
  %6754 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6753)
  %6755 = icmp ugt i64 %6754, -1970324836974593
  br i1 %6755, label %._crit_edge26408, label %6756

6756:                                             ; preds = %._crit_edge26407, %6749
  %.pre-phi26530 = phi i64 [ %.pre26529, %._crit_edge26407 ], [ %.pre26525, %6749 ]
  %.pre-phi26528 = phi i64 [ %.pre26527, %._crit_edge26407 ], [ %6742, %6749 ]
  %6757 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26528)
  %6758 = shl i32 %6757, 3
  %6759 = add i32 %6758, %.923925
  %6760 = zext i32 %6759 to i64
  %6761 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6760)
  %6762 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26530)
  %6763 = shl i32 %6762, 3
  %6764 = add i32 %6763, %.923925
  %6765 = zext i32 %6764 to i64
  %6766 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6765)
  %6767 = fcmp ugt double %6761, %6766
  br i1 %6767, label %6772, label %6768

6768:                                             ; preds = %6756
  %6769 = add nuw nsw i64 %657, 1
  %6770 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6769)
  %6771 = add i32 %6770, %.323685
  br label %.backedge.backedge

6772:                                             ; preds = %6756
  %6773 = add i32 %.323685, 7
  br label %.backedge.backedge

._crit_edge26408:                                 ; preds = %6741, %6749
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6774 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6742)
  %6775 = shl i32 %6774, 3
  %6776 = add i32 %6775, %.923925
  %6777 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26525)
  %6778 = shl i32 %6777, 3
  %6779 = add i32 %6778, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6776, i32 noundef %6779) #5
  %6780 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6781 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6782 = and i32 %6781, 255
  %.not24297 = icmp eq i32 %6782, 0
  br i1 %.not24297, label %._crit_edge, label %6783

6783:                                             ; preds = %._crit_edge26408
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6784 = and i32 %6781, 256
  %.not24298 = icmp eq i32 %6784, 0
  br i1 %.not24298, label %6790, label %6785

6785:                                             ; preds = %6783
  %6786 = zext i32 %6780 to i64
  %6787 = add nuw nsw i64 %6786, 1
  %6788 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6787)
  %6789 = add i32 %6788, %6780
  br label %.backedge.backedge

6790:                                             ; preds = %6783
  %6791 = add i32 %6780, 7
  br label %.backedge.backedge

6792:                                             ; preds = %.backedge
  %6793 = add nuw nsw i64 %657, 2
  %6794 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6793)
  %6795 = shl i32 %6794, 3
  %6796 = add i32 %6795, %.923925
  %6797 = zext i32 %6796 to i64
  %6798 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6797)
  %6799 = icmp ugt i64 %6798, -1970324836974593
  %.pre26531 = add nuw nsw i64 %657, 3
  br i1 %6799, label %._crit_edge26406, label %6800

6800:                                             ; preds = %6792
  %6801 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26531)
  %6802 = shl i32 %6801, 3
  %6803 = add i32 %6802, %.923925
  %6804 = zext i32 %6803 to i64
  %6805 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6804)
  %6806 = icmp ugt i64 %6805, -1970324836974593
  br i1 %6806, label %._crit_edge26406, label %6807

6807:                                             ; preds = %._crit_edge26405, %6800
  %.pre-phi26536 = phi i64 [ %.pre26535, %._crit_edge26405 ], [ %.pre26531, %6800 ]
  %.pre-phi26534 = phi i64 [ %.pre26533, %._crit_edge26405 ], [ %6793, %6800 ]
  %6808 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26534)
  %6809 = shl i32 %6808, 3
  %6810 = add i32 %6809, %.923925
  %6811 = zext i32 %6810 to i64
  %6812 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6811)
  %6813 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26536)
  %6814 = shl i32 %6813, 3
  %6815 = add i32 %6814, %.923925
  %6816 = zext i32 %6815 to i64
  %6817 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6816)
  %6818 = fcmp ugt double %6812, %6817
  br i1 %6818, label %6821, label %6819

6819:                                             ; preds = %6807
  %6820 = add i32 %.323685, 4
  br label %.backedge.backedge

6821:                                             ; preds = %6807
  %6822 = add nuw nsw i64 %657, 1
  %6823 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6822)
  %6824 = add i32 %6823, %.323685
  br label %.backedge.backedge

._crit_edge26406:                                 ; preds = %6792, %6800
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6825 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6793)
  %6826 = shl i32 %6825, 3
  %6827 = add i32 %6826, %.923925
  %6828 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26531)
  %6829 = shl i32 %6828, 3
  %6830 = add i32 %6829, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6827, i32 noundef %6830) #5
  %6831 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6832 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6833 = and i32 %6832, 255
  %.not24295 = icmp eq i32 %6833, 0
  br i1 %.not24295, label %._crit_edge, label %6834

6834:                                             ; preds = %._crit_edge26406
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6835 = and i32 %6832, 256
  %.not24296 = icmp eq i32 %6835, 0
  br i1 %.not24296, label %6838, label %6836

6836:                                             ; preds = %6834
  %6837 = add i32 %6831, 4
  br label %.backedge.backedge

6838:                                             ; preds = %6834
  %6839 = zext i32 %6831 to i64
  %6840 = add nuw nsw i64 %6839, 1
  %6841 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6840)
  %6842 = add i32 %6841, %6831
  br label %.backedge.backedge

6843:                                             ; preds = %.backedge
  %6844 = add nuw nsw i64 %657, 5
  %6845 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6844)
  %6846 = shl i32 %6845, 3
  %6847 = add i32 %6846, %.923925
  %6848 = zext i32 %6847 to i64
  %6849 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6848)
  %6850 = icmp ugt i64 %6849, -1970324836974593
  %.pre26537 = add nuw nsw i64 %657, 6
  br i1 %6850, label %._crit_edge26404, label %6851

6851:                                             ; preds = %6843
  %6852 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26537)
  %6853 = shl i32 %6852, 3
  %6854 = add i32 %6853, %.923925
  %6855 = zext i32 %6854 to i64
  %6856 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6855)
  %6857 = icmp ugt i64 %6856, -1970324836974593
  br i1 %6857, label %._crit_edge26404, label %6858

6858:                                             ; preds = %._crit_edge26403, %6851
  %.pre-phi26542 = phi i64 [ %.pre26541, %._crit_edge26403 ], [ %.pre26537, %6851 ]
  %.pre-phi26540 = phi i64 [ %.pre26539, %._crit_edge26403 ], [ %6844, %6851 ]
  %6859 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26540)
  %6860 = shl i32 %6859, 3
  %6861 = add i32 %6860, %.923925
  %6862 = zext i32 %6861 to i64
  %6863 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6862)
  %6864 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26542)
  %6865 = shl i32 %6864, 3
  %6866 = add i32 %6865, %.923925
  %6867 = zext i32 %6866 to i64
  %6868 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6867)
  %6869 = fcmp ugt double %6863, %6868
  br i1 %6869, label %6872, label %6870

6870:                                             ; preds = %6858
  %6871 = add i32 %.323685, 7
  br label %.backedge.backedge

6872:                                             ; preds = %6858
  %6873 = add nuw nsw i64 %657, 1
  %6874 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6873)
  %6875 = add i32 %6874, %.323685
  br label %.backedge.backedge

._crit_edge26404:                                 ; preds = %6843, %6851
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6876 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6844)
  %6877 = shl i32 %6876, 3
  %6878 = add i32 %6877, %.923925
  %6879 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26537)
  %6880 = shl i32 %6879, 3
  %6881 = add i32 %6880, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6878, i32 noundef %6881) #5
  %6882 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6883 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6884 = and i32 %6883, 255
  %.not24293 = icmp eq i32 %6884, 0
  br i1 %.not24293, label %._crit_edge, label %6885

6885:                                             ; preds = %._crit_edge26404
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6886 = and i32 %6883, 256
  %.not24294 = icmp eq i32 %6886, 0
  br i1 %.not24294, label %6889, label %6887

6887:                                             ; preds = %6885
  %6888 = add i32 %6882, 7
  br label %.backedge.backedge

6889:                                             ; preds = %6885
  %6890 = zext i32 %6882 to i64
  %6891 = add nuw nsw i64 %6890, 1
  %6892 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6891)
  %6893 = add i32 %6892, %6882
  br label %.backedge.backedge

6894:                                             ; preds = %.backedge
  %6895 = add nuw nsw i64 %657, 2
  %6896 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6895)
  %6897 = shl i32 %6896, 3
  %6898 = add i32 %6897, %.923925
  %6899 = zext i32 %6898 to i64
  %6900 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6899)
  %6901 = icmp ugt i64 %6900, -1970324836974593
  %.pre26543 = add nuw nsw i64 %657, 3
  br i1 %6901, label %._crit_edge26402, label %6902

6902:                                             ; preds = %6894
  %6903 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26543)
  %6904 = shl i32 %6903, 3
  %6905 = add i32 %6904, %.923925
  %6906 = zext i32 %6905 to i64
  %6907 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6906)
  %6908 = icmp ugt i64 %6907, -1970324836974593
  br i1 %6908, label %._crit_edge26402, label %6909

6909:                                             ; preds = %._crit_edge26401, %6902
  %.pre-phi26548 = phi i64 [ %.pre26547, %._crit_edge26401 ], [ %.pre26543, %6902 ]
  %.pre-phi26546 = phi i64 [ %.pre26545, %._crit_edge26401 ], [ %6895, %6902 ]
  %6910 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26546)
  %6911 = shl i32 %6910, 3
  %6912 = add i32 %6911, %.923925
  %6913 = zext i32 %6912 to i64
  %6914 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6913)
  %6915 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26548)
  %6916 = shl i32 %6915, 3
  %6917 = add i32 %6916, %.923925
  %6918 = zext i32 %6917 to i64
  %6919 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6918)
  %6920 = fcmp ogt double %6914, %6919
  br i1 %6920, label %6921, label %6925

6921:                                             ; preds = %6909
  %6922 = add nuw nsw i64 %657, 1
  %6923 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6922)
  %6924 = add i32 %6923, %.323685
  br label %.backedge.backedge

6925:                                             ; preds = %6909
  %6926 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26402:                                 ; preds = %6894, %6902
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6927 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6895)
  %6928 = shl i32 %6927, 3
  %6929 = add i32 %6928, %.923925
  %6930 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26543)
  %6931 = shl i32 %6930, 3
  %6932 = add i32 %6931, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6929, i32 noundef %6932) #5
  %6933 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6934 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6935 = and i32 %6934, 255
  %.not24291 = icmp eq i32 %6935, 0
  br i1 %.not24291, label %._crit_edge, label %6936

6936:                                             ; preds = %._crit_edge26402
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6937 = and i32 %6934, 256
  %.not24292 = icmp eq i32 %6937, 0
  br i1 %.not24292, label %6943, label %6938

6938:                                             ; preds = %6936
  %6939 = zext i32 %6933 to i64
  %6940 = add nuw nsw i64 %6939, 1
  %6941 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %6940)
  %6942 = add i32 %6941, %6933
  br label %.backedge.backedge

6943:                                             ; preds = %6936
  %6944 = add i32 %6933, 4
  br label %.backedge.backedge

6945:                                             ; preds = %.backedge
  %6946 = add nuw nsw i64 %657, 5
  %6947 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6946)
  %6948 = shl i32 %6947, 3
  %6949 = add i32 %6948, %.923925
  %6950 = zext i32 %6949 to i64
  %6951 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6950)
  %6952 = icmp ugt i64 %6951, -1970324836974593
  %.pre26549 = add nuw nsw i64 %657, 6
  br i1 %6952, label %._crit_edge26400, label %6953

6953:                                             ; preds = %6945
  %6954 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26549)
  %6955 = shl i32 %6954, 3
  %6956 = add i32 %6955, %.923925
  %6957 = zext i32 %6956 to i64
  %6958 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %6957)
  %6959 = icmp ugt i64 %6958, -1970324836974593
  br i1 %6959, label %._crit_edge26400, label %6960

6960:                                             ; preds = %._crit_edge26399, %6953
  %.pre-phi26554 = phi i64 [ %.pre26553, %._crit_edge26399 ], [ %.pre26549, %6953 ]
  %.pre-phi26552 = phi i64 [ %.pre26551, %._crit_edge26399 ], [ %6946, %6953 ]
  %6961 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26552)
  %6962 = shl i32 %6961, 3
  %6963 = add i32 %6962, %.923925
  %6964 = zext i32 %6963 to i64
  %6965 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6964)
  %6966 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26554)
  %6967 = shl i32 %6966, 3
  %6968 = add i32 %6967, %.923925
  %6969 = zext i32 %6968 to i64
  %6970 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %6969)
  %6971 = fcmp ogt double %6965, %6970
  br i1 %6971, label %6972, label %6976

6972:                                             ; preds = %6960
  %6973 = add nuw nsw i64 %657, 1
  %6974 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6973)
  %6975 = add i32 %6974, %.323685
  br label %.backedge.backedge

6976:                                             ; preds = %6960
  %6977 = add i32 %.323685, 7
  br label %.backedge.backedge

._crit_edge26400:                                 ; preds = %6945, %6953
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %6978 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6946)
  %6979 = shl i32 %6978, 3
  %6980 = add i32 %6979, %.923925
  %6981 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26549)
  %6982 = shl i32 %6981, 3
  %6983 = add i32 %6982, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %6980, i32 noundef %6983) #5
  %6984 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %6985 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %6986 = and i32 %6985, 255
  %.not24289 = icmp eq i32 %6986, 0
  br i1 %.not24289, label %._crit_edge, label %6987

6987:                                             ; preds = %._crit_edge26400
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %6988 = and i32 %6985, 256
  %.not24290 = icmp eq i32 %6988, 0
  br i1 %.not24290, label %6994, label %6989

6989:                                             ; preds = %6987
  %6990 = zext i32 %6984 to i64
  %6991 = add nuw nsw i64 %6990, 1
  %6992 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %6991)
  %6993 = add i32 %6992, %6984
  br label %.backedge.backedge

6994:                                             ; preds = %6987
  %6995 = add i32 %6984, 7
  br label %.backedge.backedge

6996:                                             ; preds = %.backedge
  %6997 = add nuw nsw i64 %657, 2
  %6998 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6997)
  %6999 = shl i32 %6998, 3
  %7000 = add i32 %6999, %.923925
  %7001 = zext i32 %7000 to i64
  %7002 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7001)
  %7003 = icmp ugt i64 %7002, -1970324836974593
  %.pre26555 = add nuw nsw i64 %657, 3
  br i1 %7003, label %._crit_edge26398, label %7004

7004:                                             ; preds = %6996
  %7005 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26555)
  %7006 = shl i32 %7005, 3
  %7007 = add i32 %7006, %.923925
  %7008 = zext i32 %7007 to i64
  %7009 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7008)
  %7010 = icmp ugt i64 %7009, -1970324836974593
  br i1 %7010, label %._crit_edge26398, label %7011

7011:                                             ; preds = %._crit_edge26397, %7004
  %.pre-phi26560 = phi i64 [ %.pre26559, %._crit_edge26397 ], [ %.pre26555, %7004 ]
  %.pre-phi26558 = phi i64 [ %.pre26557, %._crit_edge26397 ], [ %6997, %7004 ]
  %7012 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26558)
  %7013 = shl i32 %7012, 3
  %7014 = add i32 %7013, %.923925
  %7015 = zext i32 %7014 to i64
  %7016 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7015)
  %7017 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26560)
  %7018 = shl i32 %7017, 3
  %7019 = add i32 %7018, %.923925
  %7020 = zext i32 %7019 to i64
  %7021 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7020)
  %7022 = fcmp ogt double %7016, %7021
  br i1 %7022, label %7023, label %7025

7023:                                             ; preds = %7011
  %7024 = add i32 %.323685, 4
  br label %.backedge.backedge

7025:                                             ; preds = %7011
  %7026 = add nuw nsw i64 %657, 1
  %7027 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7026)
  %7028 = add i32 %7027, %.323685
  br label %.backedge.backedge

._crit_edge26398:                                 ; preds = %6996, %7004
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7029 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %6997)
  %7030 = shl i32 %7029, 3
  %7031 = add i32 %7030, %.923925
  %7032 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26555)
  %7033 = shl i32 %7032, 3
  %7034 = add i32 %7033, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %7031, i32 noundef %7034) #5
  %7035 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7036 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %7037 = and i32 %7036, 255
  %.not24287 = icmp eq i32 %7037, 0
  br i1 %.not24287, label %._crit_edge, label %7038

7038:                                             ; preds = %._crit_edge26398
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7039 = and i32 %7036, 256
  %.not24288 = icmp eq i32 %7039, 0
  br i1 %.not24288, label %7042, label %7040

7040:                                             ; preds = %7038
  %7041 = add i32 %7035, 4
  br label %.backedge.backedge

7042:                                             ; preds = %7038
  %7043 = zext i32 %7035 to i64
  %7044 = add nuw nsw i64 %7043, 1
  %7045 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7044)
  %7046 = add i32 %7045, %7035
  br label %.backedge.backedge

7047:                                             ; preds = %.backedge
  %7048 = add nuw nsw i64 %657, 5
  %7049 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7048)
  %7050 = shl i32 %7049, 3
  %7051 = add i32 %7050, %.923925
  %7052 = zext i32 %7051 to i64
  %7053 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7052)
  %7054 = icmp ugt i64 %7053, -1970324836974593
  %.pre26561 = add nuw nsw i64 %657, 6
  br i1 %7054, label %._crit_edge26396, label %7055

7055:                                             ; preds = %7047
  %7056 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26561)
  %7057 = shl i32 %7056, 3
  %7058 = add i32 %7057, %.923925
  %7059 = zext i32 %7058 to i64
  %7060 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7059)
  %7061 = icmp ugt i64 %7060, -1970324836974593
  br i1 %7061, label %._crit_edge26396, label %7062

7062:                                             ; preds = %._crit_edge26395, %7055
  %.pre-phi26566 = phi i64 [ %.pre26565, %._crit_edge26395 ], [ %.pre26561, %7055 ]
  %.pre-phi26564 = phi i64 [ %.pre26563, %._crit_edge26395 ], [ %7048, %7055 ]
  %7063 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26564)
  %7064 = shl i32 %7063, 3
  %7065 = add i32 %7064, %.923925
  %7066 = zext i32 %7065 to i64
  %7067 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7066)
  %7068 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26566)
  %7069 = shl i32 %7068, 3
  %7070 = add i32 %7069, %.923925
  %7071 = zext i32 %7070 to i64
  %7072 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7071)
  %7073 = fcmp ogt double %7067, %7072
  br i1 %7073, label %7074, label %7076

7074:                                             ; preds = %7062
  %7075 = add i32 %.323685, 7
  br label %.backedge.backedge

7076:                                             ; preds = %7062
  %7077 = add nuw nsw i64 %657, 1
  %7078 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7077)
  %7079 = add i32 %7078, %.323685
  br label %.backedge.backedge

._crit_edge26396:                                 ; preds = %7047, %7055
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7080 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7048)
  %7081 = shl i32 %7080, 3
  %7082 = add i32 %7081, %.923925
  %7083 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26561)
  %7084 = shl i32 %7083, 3
  %7085 = add i32 %7084, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %7082, i32 noundef %7085) #5
  %7086 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7087 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %7088 = and i32 %7087, 255
  %.not24285 = icmp eq i32 %7088, 0
  br i1 %.not24285, label %._crit_edge, label %7089

7089:                                             ; preds = %._crit_edge26396
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7090 = and i32 %7087, 256
  %.not24286 = icmp eq i32 %7090, 0
  br i1 %.not24286, label %7093, label %7091

7091:                                             ; preds = %7089
  %7092 = add i32 %7086, 7
  br label %.backedge.backedge

7093:                                             ; preds = %7089
  %7094 = zext i32 %7086 to i64
  %7095 = add nuw nsw i64 %7094, 1
  %7096 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7095)
  %7097 = add i32 %7096, %7086
  br label %.backedge.backedge

7098:                                             ; preds = %.backedge
  %7099 = add nuw nsw i64 %657, 2
  %7100 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7099)
  %7101 = shl i32 %7100, 3
  %7102 = add i32 %7101, %.923925
  %7103 = zext i32 %7102 to i64
  %7104 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7103)
  %7105 = icmp ugt i64 %7104, -1970324836974593
  %.pre26567 = add nuw nsw i64 %657, 3
  br i1 %7105, label %._crit_edge26394, label %7106

7106:                                             ; preds = %7098
  %7107 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26567)
  %7108 = shl i32 %7107, 3
  %7109 = add i32 %7108, %.923925
  %7110 = zext i32 %7109 to i64
  %7111 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7110)
  %7112 = icmp ugt i64 %7111, -1970324836974593
  br i1 %7112, label %._crit_edge26394, label %7113

7113:                                             ; preds = %._crit_edge26393, %7106
  %.pre-phi26572 = phi i64 [ %.pre26571, %._crit_edge26393 ], [ %.pre26567, %7106 ]
  %.pre-phi26570 = phi i64 [ %.pre26569, %._crit_edge26393 ], [ %7099, %7106 ]
  %7114 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26570)
  %7115 = shl i32 %7114, 3
  %7116 = add i32 %7115, %.923925
  %7117 = zext i32 %7116 to i64
  %7118 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7117)
  %7119 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26572)
  %7120 = shl i32 %7119, 3
  %7121 = add i32 %7120, %.923925
  %7122 = zext i32 %7121 to i64
  %7123 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7122)
  %7124 = fcmp ult double %7118, %7123
  br i1 %7124, label %7129, label %7125

7125:                                             ; preds = %7113
  %7126 = add nuw nsw i64 %657, 1
  %7127 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7126)
  %7128 = add i32 %7127, %.323685
  br label %.backedge.backedge

7129:                                             ; preds = %7113
  %7130 = add i32 %.323685, 4
  br label %.backedge.backedge

._crit_edge26394:                                 ; preds = %7098, %7106
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7131 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7099)
  %7132 = shl i32 %7131, 3
  %7133 = add i32 %7132, %.923925
  %7134 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26567)
  %7135 = shl i32 %7134, 3
  %7136 = add i32 %7135, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %7133, i32 noundef %7136) #5
  %7137 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7138 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %7139 = and i32 %7138, 255
  %.not24283 = icmp eq i32 %7139, 0
  br i1 %.not24283, label %._crit_edge, label %7140

7140:                                             ; preds = %._crit_edge26394
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7141 = and i32 %7138, 256
  %.not24284 = icmp eq i32 %7141, 0
  br i1 %.not24284, label %7147, label %7142

7142:                                             ; preds = %7140
  %7143 = zext i32 %7137 to i64
  %7144 = add nuw nsw i64 %7143, 1
  %7145 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7144)
  %7146 = add i32 %7145, %7137
  br label %.backedge.backedge

7147:                                             ; preds = %7140
  %7148 = add i32 %7137, 4
  br label %.backedge.backedge

7149:                                             ; preds = %.backedge
  %7150 = add nuw nsw i64 %657, 5
  %7151 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7150)
  %7152 = shl i32 %7151, 3
  %7153 = add i32 %7152, %.923925
  %7154 = zext i32 %7153 to i64
  %7155 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7154)
  %7156 = icmp ugt i64 %7155, -1970324836974593
  %.pre26573 = add nuw nsw i64 %657, 6
  br i1 %7156, label %._crit_edge26392, label %7157

7157:                                             ; preds = %7149
  %7158 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26573)
  %7159 = shl i32 %7158, 3
  %7160 = add i32 %7159, %.923925
  %7161 = zext i32 %7160 to i64
  %7162 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7161)
  %7163 = icmp ugt i64 %7162, -1970324836974593
  br i1 %7163, label %._crit_edge26392, label %7164

7164:                                             ; preds = %._crit_edge26391, %7157
  %.pre-phi26578 = phi i64 [ %.pre26577, %._crit_edge26391 ], [ %.pre26573, %7157 ]
  %.pre-phi26576 = phi i64 [ %.pre26575, %._crit_edge26391 ], [ %7150, %7157 ]
  %7165 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26576)
  %7166 = shl i32 %7165, 3
  %7167 = add i32 %7166, %.923925
  %7168 = zext i32 %7167 to i64
  %7169 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7168)
  %7170 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26578)
  %7171 = shl i32 %7170, 3
  %7172 = add i32 %7171, %.923925
  %7173 = zext i32 %7172 to i64
  %7174 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7173)
  %7175 = fcmp ult double %7169, %7174
  br i1 %7175, label %7180, label %7176

7176:                                             ; preds = %7164
  %7177 = add nuw nsw i64 %657, 1
  %7178 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7177)
  %7179 = add i32 %7178, %.323685
  br label %.backedge.backedge

7180:                                             ; preds = %7164
  %7181 = add i32 %.323685, 7
  br label %.backedge.backedge

._crit_edge26392:                                 ; preds = %7149, %7157
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7182 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7150)
  %7183 = shl i32 %7182, 3
  %7184 = add i32 %7183, %.923925
  %7185 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26573)
  %7186 = shl i32 %7185, 3
  %7187 = add i32 %7186, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %7184, i32 noundef %7187) #5
  %7188 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7189 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %7190 = and i32 %7189, 255
  %.not24281 = icmp eq i32 %7190, 0
  br i1 %.not24281, label %._crit_edge, label %7191

7191:                                             ; preds = %._crit_edge26392
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7192 = and i32 %7189, 256
  %.not24282 = icmp eq i32 %7192, 0
  br i1 %.not24282, label %7198, label %7193

7193:                                             ; preds = %7191
  %7194 = zext i32 %7188 to i64
  %7195 = add nuw nsw i64 %7194, 1
  %7196 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7195)
  %7197 = add i32 %7196, %7188
  br label %.backedge.backedge

7198:                                             ; preds = %7191
  %7199 = add i32 %7188, 7
  br label %.backedge.backedge

7200:                                             ; preds = %.backedge
  %7201 = add nuw nsw i64 %657, 2
  %7202 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7201)
  %7203 = shl i32 %7202, 3
  %7204 = add i32 %7203, %.923925
  %7205 = zext i32 %7204 to i64
  %7206 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7205)
  %7207 = icmp ugt i64 %7206, -1970324836974593
  %.pre26579 = add nuw nsw i64 %657, 3
  br i1 %7207, label %._crit_edge26390, label %7208

7208:                                             ; preds = %7200
  %7209 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26579)
  %7210 = shl i32 %7209, 3
  %7211 = add i32 %7210, %.923925
  %7212 = zext i32 %7211 to i64
  %7213 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7212)
  %7214 = icmp ugt i64 %7213, -1970324836974593
  br i1 %7214, label %._crit_edge26390, label %7215

7215:                                             ; preds = %._crit_edge26389, %7208
  %.pre-phi26584 = phi i64 [ %.pre26583, %._crit_edge26389 ], [ %.pre26579, %7208 ]
  %.pre-phi26582 = phi i64 [ %.pre26581, %._crit_edge26389 ], [ %7201, %7208 ]
  %7216 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26582)
  %7217 = shl i32 %7216, 3
  %7218 = add i32 %7217, %.923925
  %7219 = zext i32 %7218 to i64
  %7220 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7219)
  %7221 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26584)
  %7222 = shl i32 %7221, 3
  %7223 = add i32 %7222, %.923925
  %7224 = zext i32 %7223 to i64
  %7225 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7224)
  %7226 = fcmp ult double %7220, %7225
  br i1 %7226, label %7229, label %7227

7227:                                             ; preds = %7215
  %7228 = add i32 %.323685, 4
  br label %.backedge.backedge

7229:                                             ; preds = %7215
  %7230 = add nuw nsw i64 %657, 1
  %7231 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7230)
  %7232 = add i32 %7231, %.323685
  br label %.backedge.backedge

._crit_edge26390:                                 ; preds = %7200, %7208
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7233 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7201)
  %7234 = shl i32 %7233, 3
  %7235 = add i32 %7234, %.923925
  %7236 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26579)
  %7237 = shl i32 %7236, 3
  %7238 = add i32 %7237, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %7235, i32 noundef %7238) #5
  %7239 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7240 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %7241 = and i32 %7240, 255
  %.not24279 = icmp eq i32 %7241, 0
  br i1 %.not24279, label %._crit_edge, label %7242

7242:                                             ; preds = %._crit_edge26390
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7243 = and i32 %7240, 256
  %.not24280 = icmp eq i32 %7243, 0
  br i1 %.not24280, label %7246, label %7244

7244:                                             ; preds = %7242
  %7245 = add i32 %7239, 4
  br label %.backedge.backedge

7246:                                             ; preds = %7242
  %7247 = zext i32 %7239 to i64
  %7248 = add nuw nsw i64 %7247, 1
  %7249 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7248)
  %7250 = add i32 %7249, %7239
  br label %.backedge.backedge

7251:                                             ; preds = %.backedge
  %7252 = add nuw nsw i64 %657, 5
  %7253 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7252)
  %7254 = shl i32 %7253, 3
  %7255 = add i32 %7254, %.923925
  %7256 = zext i32 %7255 to i64
  %7257 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7256)
  %7258 = icmp ugt i64 %7257, -1970324836974593
  %.pre26585 = add nuw nsw i64 %657, 6
  br i1 %7258, label %._crit_edge26388, label %7259

7259:                                             ; preds = %7251
  %7260 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26585)
  %7261 = shl i32 %7260, 3
  %7262 = add i32 %7261, %.923925
  %7263 = zext i32 %7262 to i64
  %7264 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7263)
  %7265 = icmp ugt i64 %7264, -1970324836974593
  br i1 %7265, label %._crit_edge26388, label %7266

7266:                                             ; preds = %._crit_edge26387, %7259
  %.pre-phi26590 = phi i64 [ %.pre26589, %._crit_edge26387 ], [ %.pre26585, %7259 ]
  %.pre-phi26588 = phi i64 [ %.pre26587, %._crit_edge26387 ], [ %7252, %7259 ]
  %7267 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26588)
  %7268 = shl i32 %7267, 3
  %7269 = add i32 %7268, %.923925
  %7270 = zext i32 %7269 to i64
  %7271 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7270)
  %7272 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26590)
  %7273 = shl i32 %7272, 3
  %7274 = add i32 %7273, %.923925
  %7275 = zext i32 %7274 to i64
  %7276 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7275)
  %7277 = fcmp ult double %7271, %7276
  br i1 %7277, label %7280, label %7278

7278:                                             ; preds = %7266
  %7279 = add i32 %.323685, 7
  br label %.backedge.backedge

7280:                                             ; preds = %7266
  %7281 = add nuw nsw i64 %657, 1
  %7282 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7281)
  %7283 = add i32 %7282, %.323685
  br label %.backedge.backedge

._crit_edge26388:                                 ; preds = %7251, %7259
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7284 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7252)
  %7285 = shl i32 %7284, 3
  %7286 = add i32 %7285, %.923925
  %7287 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre26585)
  %7288 = shl i32 %7287, 3
  %7289 = add i32 %7288, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %7286, i32 noundef %7289) #5
  %7290 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7291 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %7292 = and i32 %7291, 255
  %.not24277 = icmp eq i32 %7292, 0
  br i1 %.not24277, label %._crit_edge, label %7293

7293:                                             ; preds = %._crit_edge26388
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7294 = and i32 %7291, 256
  %.not24278 = icmp eq i32 %7294, 0
  br i1 %.not24278, label %7297, label %7295

7295:                                             ; preds = %7293
  %7296 = add i32 %7290, 7
  br label %.backedge.backedge

7297:                                             ; preds = %7293
  %7298 = zext i32 %7290 to i64
  %7299 = add nuw nsw i64 %7298, 1
  %7300 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7299)
  %7301 = add i32 %7300, %7290
  br label %.backedge.backedge

7302:                                             ; preds = %.backedge
  %7303 = add nuw nsw i64 %657, 2
  %7304 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7303)
  %7305 = shl i32 %7304, 3
  %7306 = add i32 %7305, %.923925
  %7307 = zext i32 %7306 to i64
  %7308 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7307)
  %7309 = add nuw nsw i64 %657, 3
  %7310 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7309)
  %7311 = shl i32 %7310, 3
  %7312 = add i32 %7311, %.923925
  %7313 = zext i32 %7312 to i64
  %7314 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7313)
  %7315 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %7308, i64 noundef %7314) #5
  %.not24276 = icmp eq i32 %7315, 0
  br i1 %.not24276, label %7320, label %7316

7316:                                             ; preds = %7302
  %7317 = add nuw nsw i64 %657, 1
  %7318 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7317)
  %7319 = add i32 %7318, %.323685
  br label %.backedge.backedge

7320:                                             ; preds = %7302
  %7321 = add i32 %.323685, 4
  br label %.backedge.backedge

7322:                                             ; preds = %.backedge
  %7323 = add nuw nsw i64 %657, 5
  %7324 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7323)
  %7325 = shl i32 %7324, 3
  %7326 = add i32 %7325, %.923925
  %7327 = zext i32 %7326 to i64
  %7328 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7327)
  %7329 = add nuw nsw i64 %657, 6
  %7330 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7329)
  %7331 = shl i32 %7330, 3
  %7332 = add i32 %7331, %.923925
  %7333 = zext i32 %7332 to i64
  %7334 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7333)
  %7335 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %7328, i64 noundef %7334) #5
  %.not24275 = icmp eq i32 %7335, 0
  br i1 %.not24275, label %7340, label %7336

7336:                                             ; preds = %7322
  %7337 = add nuw nsw i64 %657, 1
  %7338 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7337)
  %7339 = add i32 %7338, %.323685
  br label %.backedge.backedge

7340:                                             ; preds = %7322
  %7341 = add i32 %.323685, 7
  br label %.backedge.backedge

7342:                                             ; preds = %.backedge
  %7343 = add nuw nsw i64 %657, 2
  %7344 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7343)
  %7345 = shl i32 %7344, 3
  %7346 = add i32 %7345, %.923925
  %7347 = zext i32 %7346 to i64
  %7348 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7347)
  %7349 = add nuw nsw i64 %657, 3
  %7350 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7349)
  %7351 = shl i32 %7350, 3
  %7352 = add i32 %7351, %.923925
  %7353 = zext i32 %7352 to i64
  %7354 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7353)
  %7355 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %7348, i64 noundef %7354) #5
  %.not24274 = icmp eq i32 %7355, 0
  br i1 %.not24274, label %7358, label %7356

7356:                                             ; preds = %7342
  %7357 = add i32 %.323685, 4
  br label %.backedge.backedge

7358:                                             ; preds = %7342
  %7359 = add nuw nsw i64 %657, 1
  %7360 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7359)
  %7361 = add i32 %7360, %.323685
  br label %.backedge.backedge

7362:                                             ; preds = %.backedge
  %7363 = add nuw nsw i64 %657, 5
  %7364 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7363)
  %7365 = shl i32 %7364, 3
  %7366 = add i32 %7365, %.923925
  %7367 = zext i32 %7366 to i64
  %7368 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7367)
  %7369 = add nuw nsw i64 %657, 6
  %7370 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7369)
  %7371 = shl i32 %7370, 3
  %7372 = add i32 %7371, %.923925
  %7373 = zext i32 %7372 to i64
  %7374 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7373)
  %7375 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i64 noundef %7368, i64 noundef %7374) #5
  %.not24273 = icmp eq i32 %7375, 0
  br i1 %.not24273, label %7378, label %7376

7376:                                             ; preds = %7362
  %7377 = add i32 %.323685, 7
  br label %.backedge.backedge

7378:                                             ; preds = %7362
  %7379 = add nuw nsw i64 %657, 1
  %7380 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7379)
  %7381 = add i32 %7380, %.323685
  br label %.backedge.backedge

7382:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7383 = add nuw nsw i64 %657, 2
  %7384 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7383)
  %7385 = shl i32 %7384, 3
  %7386 = add i32 %7385, %.923925
  %7387 = add nuw nsw i64 %657, 3
  %7388 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7387)
  %7389 = shl i32 %7388, 3
  %7390 = add i32 %7389, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %90, i32 noundef %2, i32 noundef %7386, i32 noundef %7390)
  %7391 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7392 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %91)
  %7393 = and i32 %7392, 255
  %.not24271 = icmp eq i32 %7393, 0
  br i1 %.not24271, label %._crit_edge, label %7394

7394:                                             ; preds = %7382
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7395 = and i32 %7392, 256
  %.not24272 = icmp eq i32 %7395, 0
  br i1 %.not24272, label %7401, label %7396

7396:                                             ; preds = %7394
  %7397 = zext i32 %7391 to i64
  %7398 = add nuw nsw i64 %7397, 1
  %7399 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7398)
  %7400 = add i32 %7399, %7391
  br label %.backedge.backedge

7401:                                             ; preds = %7394
  %7402 = add i32 %7391, 4
  br label %.backedge.backedge

7403:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7404 = add nuw nsw i64 %657, 5
  %7405 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7404)
  %7406 = shl i32 %7405, 3
  %7407 = add i32 %7406, %.923925
  %7408 = add nuw nsw i64 %657, 6
  %7409 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7408)
  %7410 = shl i32 %7409, 3
  %7411 = add i32 %7410, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %88, i32 noundef %2, i32 noundef %7407, i32 noundef %7411)
  %7412 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7413 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %89)
  %7414 = and i32 %7413, 255
  %.not24269 = icmp eq i32 %7414, 0
  br i1 %.not24269, label %._crit_edge, label %7415

7415:                                             ; preds = %7403
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7416 = and i32 %7413, 256
  %.not24270 = icmp eq i32 %7416, 0
  br i1 %.not24270, label %7422, label %7417

7417:                                             ; preds = %7415
  %7418 = zext i32 %7412 to i64
  %7419 = add nuw nsw i64 %7418, 1
  %7420 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7419)
  %7421 = add i32 %7420, %7412
  br label %.backedge.backedge

7422:                                             ; preds = %7415
  %7423 = add i32 %7412, 7
  br label %.backedge.backedge

7424:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7425 = add nuw nsw i64 %657, 2
  %7426 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7425)
  %7427 = shl i32 %7426, 3
  %7428 = add i32 %7427, %.923925
  %7429 = add nuw nsw i64 %657, 3
  %7430 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7429)
  %7431 = shl i32 %7430, 3
  %7432 = add i32 %7431, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %86, i32 noundef %2, i32 noundef %7428, i32 noundef %7432)
  %7433 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7434 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %87)
  %7435 = and i32 %7434, 255
  %.not24267 = icmp eq i32 %7435, 0
  br i1 %.not24267, label %._crit_edge, label %7436

7436:                                             ; preds = %7424
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7437 = and i32 %7434, 256
  %.not24268 = icmp eq i32 %7437, 0
  br i1 %.not24268, label %7440, label %7438

7438:                                             ; preds = %7436
  %7439 = add i32 %7433, 4
  br label %.backedge.backedge

7440:                                             ; preds = %7436
  %7441 = zext i32 %7433 to i64
  %7442 = add nuw nsw i64 %7441, 1
  %7443 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7442)
  %7444 = add i32 %7443, %7433
  br label %.backedge.backedge

7445:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7446 = add nuw nsw i64 %657, 5
  %7447 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7446)
  %7448 = shl i32 %7447, 3
  %7449 = add i32 %7448, %.923925
  %7450 = add nuw nsw i64 %657, 6
  %7451 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7450)
  %7452 = shl i32 %7451, 3
  %7453 = add i32 %7452, %.923925
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AabstractEqualityTest_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %84, i32 noundef %2, i32 noundef %7449, i32 noundef %7453)
  %7454 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %7455 = tail call i32 @i32_load16_u(ptr noundef nonnull %8, i64 noundef %85)
  %7456 = and i32 %7455, 255
  %.not24265 = icmp eq i32 %7456, 0
  br i1 %.not24265, label %._crit_edge, label %7457

7457:                                             ; preds = %7445
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7458 = and i32 %7455, 256
  %.not24266 = icmp eq i32 %7458, 0
  br i1 %.not24266, label %7461, label %7459

7459:                                             ; preds = %7457
  %7460 = add i32 %7454, 7
  br label %.backedge.backedge

7461:                                             ; preds = %7457
  %7462 = zext i32 %7454 to i64
  %7463 = add nuw nsw i64 %7462, 1
  %7464 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7463)
  %7465 = add i32 %7464, %7454
  br label %.backedge.backedge

7466:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7467 = load i32, ptr %5, align 8, !tbaa !5
  %7468 = add i32 %7467, -32
  store i32 %7468, ptr %5, align 8, !tbaa !5
  %7469 = add nuw nsw i64 %657, 1
  %7470 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7469)
  %7471 = add nuw nsw i64 %657, 3
  %7472 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7471)
  %7473 = add nuw nsw i64 %657, 4
  %7474 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7473)
  %.not24263 = icmp eq i32 %7474, 0
  %7475 = select i1 %.not24263, i32 318, i32 319
  %7476 = zext i32 %7468 to i64
  %7477 = add nuw nsw i64 %7476, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7477, i32 noundef %7475)
  %7478 = add nuw nsw i64 %657, 2
  %7479 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7478)
  %7480 = add nuw nsw i64 %7476, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7480, i32 noundef 0)
  %7481 = add nuw nsw i64 %7476, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7481, i32 noundef %7475)
  %7482 = add nuw nsw i64 %7476, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7482, i32 noundef 0)
  %7483 = add i32 %7467, -4
  %7484 = shl i32 %7470, 3
  %7485 = add i32 %7484, %.923925
  %7486 = shl i32 %7472, 3
  %7487 = add i32 %7486, %.923925
  %7488 = add i32 %7467, -16
  %7489 = shl i32 %7479, 3
  %7490 = add i32 %7489, %.923925
  %7491 = add i32 %7467, -20
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef %0, i32 noundef %7483, i32 noundef %7485, i32 noundef %2, i32 noundef %7487, i32 noundef %7488, i32 noundef %7490, i32 noundef %7491) #5
  %7492 = add nuw nsw i64 %7476, 28
  %7493 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7492)
  store i32 %7467, ptr %5, align 8, !tbaa !5
  %7494 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24264 = icmp eq i32 %7493, 0
  br i1 %.not24264, label %._crit_edge, label %7495

7495:                                             ; preds = %7466
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7496 = add i32 %7494, 5
  br label %.backedge.backedge

7497:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7498 = load i32, ptr %5, align 8, !tbaa !5
  %7499 = add i32 %7498, -32
  store i32 %7499, ptr %5, align 8, !tbaa !5
  %7500 = add nuw nsw i64 %657, 5
  %7501 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7500)
  %7502 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7503 = zext i32 %7502 to i64
  %7504 = add nuw nsw i64 %7503, 164
  %7505 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7504)
  %7506 = add nuw nsw i64 %7503, 168
  %7507 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7506)
  %7508 = icmp ult i32 %7505, %7507
  br i1 %7508, label %7509, label %7512

7509:                                             ; preds = %7497
  %7510 = add i32 %7505, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7504, i32 noundef %7510)
  %7511 = zext i32 %7505 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7511, i64 noundef -281474976710656)
  br label %7514

7512:                                             ; preds = %7497
  %7513 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %7502, i64 noundef -281474976710656) #5
  br label %7514

7514:                                             ; preds = %7512, %7509
  %.3623909 = phi i32 [ %7505, %7509 ], [ %7513, %7512 ]
  %7515 = and i32 %7501, 1
  %7516 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7517 = zext i32 %7516 to i64
  %7518 = add nuw nsw i64 %7517, 164
  %7519 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7518)
  %7520 = add nuw nsw i64 %7517, 168
  %7521 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7520)
  %7522 = icmp ult i32 %7519, %7521
  br i1 %7522, label %7523, label %7526

7523:                                             ; preds = %7514
  %7524 = add i32 %7519, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7518, i32 noundef %7524)
  %7525 = zext i32 %7519 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7525, i64 noundef -281474976710656)
  br label %7528

7526:                                             ; preds = %7514
  %7527 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %7516, i64 noundef -281474976710656) #5
  br label %7528

7528:                                             ; preds = %7526, %7523
  %.1923863 = phi i32 [ %7519, %7523 ], [ %7527, %7526 ]
  %7529 = or disjoint i32 %7515, 44
  %7530 = add nuw nsw i64 %657, 3
  %7531 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7530)
  %7532 = shl i32 %7531, 3
  %7533 = add i32 %7532, %.923925
  %7534 = zext i32 %7533 to i64
  %7535 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7534)
  %.mask24259 = and i64 %7535, -140737488355328
  %.not24258 = icmp eq i64 %.mask24259, -1688849860263936
  br i1 %.not24258, label %7541, label %7536

7536:                                             ; preds = %7528
  %7537 = and i64 %7535, 4294967295
  %7538 = or disjoint i64 %7537, -281474976710656
  %7539 = zext i32 %.3623909 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7539, i64 noundef %7538)
  %7540 = or disjoint i32 %7515, 108
  br label %7541

7541:                                             ; preds = %7536, %7528
  %.3523964 = phi i32 [ %7540, %7536 ], [ %7529, %7528 ]
  %7542 = add nuw nsw i64 %657, 4
  %7543 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7542)
  %7544 = shl i32 %7543, 3
  %7545 = add i32 %7544, %.923925
  %7546 = zext i32 %7545 to i64
  %7547 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7546)
  %.mask24261 = and i64 %7547, -140737488355328
  %.not24260 = icmp eq i64 %.mask24261, -1688849860263936
  br i1 %.not24260, label %7553, label %7548

7548:                                             ; preds = %7541
  %7549 = and i64 %7547, 4294967295
  %7550 = or disjoint i64 %7549, -281474976710656
  %7551 = zext i32 %.1923863 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7551, i64 noundef %7550)
  %7552 = or i32 %.3523964, 128
  br label %7553

7553:                                             ; preds = %7548, %7541
  %.3623965 = phi i32 [ %7552, %7548 ], [ %.3523964, %7541 ]
  %7554 = tail call i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3APropertyAccessor0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %.3623909, i32 noundef %.1923863)
  %7555 = and i64 %7554, 4294967295
  %7556 = or disjoint i64 %7555, -281474976710656
  %7557 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7558 = zext i32 %7557 to i64
  %7559 = add nuw nsw i64 %7558, 164
  %7560 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7559)
  %7561 = add nuw nsw i64 %7558, 168
  %7562 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7561)
  %7563 = icmp ult i32 %7560, %7562
  br i1 %7563, label %7564, label %7567

7564:                                             ; preds = %7553
  %7565 = add i32 %7560, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7559, i32 noundef %7565)
  %7566 = zext i32 %7560 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7566, i64 noundef %7556)
  br label %7569

7567:                                             ; preds = %7553
  %7568 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %7557, i64 noundef %7556) #5
  br label %7569

7569:                                             ; preds = %7567, %7564
  %.3723910 = phi i32 [ %7560, %7564 ], [ %7568, %7567 ]
  %7570 = add nuw nsw i64 %657, 1
  %7571 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7570)
  %7572 = add nuw nsw i64 %657, 2
  %7573 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7572)
  %7574 = zext i32 %7499 to i64
  %7575 = add nuw nsw i64 %7574, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7575, i32 noundef 0)
  %7576 = add nuw nsw i64 %7574, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7576, i32 noundef %.3623965)
  %7577 = add nuw nsw i64 %7574, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7577, i32 noundef %.3623965)
  %7578 = add nuw nsw i64 %7574, 12
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7578, i32 noundef 0)
  %7579 = add i32 %7498, -4
  %7580 = shl i32 %7571, 3
  %7581 = add i32 %7580, %.923925
  %7582 = shl i32 %7573, 3
  %7583 = add i32 %7582, %.923925
  %7584 = add i32 %7498, -16
  %7585 = add i32 %7498, -20
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef nonnull %0, i32 noundef %7579, i32 noundef %7581, i32 noundef %2, i32 noundef %7583, i32 noundef %7584, i32 noundef %.3723910, i32 noundef %7585) #5
  %7586 = add nuw nsw i64 %7574, 28
  %7587 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %7586)
  store i32 %7498, ptr %5, align 8, !tbaa !5
  %7588 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24262 = icmp eq i32 %7587, 0
  br i1 %.not24262, label %._crit_edge, label %7589

7589:                                             ; preds = %7569
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7590 = add i32 %7588, 6
  br label %.backedge.backedge

7591:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7592 = load i32, ptr %5, align 8, !tbaa !5
  %7593 = add i32 %7592, -64
  store i32 %7593, ptr %5, align 8, !tbaa !5
  %7594 = add nuw nsw i64 %657, 3
  %7595 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7594)
  %7596 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7597 = zext i32 %7596 to i64
  %7598 = add nuw nsw i64 %7597, 172
  %7599 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7598)
  %7600 = add nuw nsw i64 %7597, 164
  %7601 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7600)
  %7602 = add nuw nsw i64 %657, 1
  %7603 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7602)
  %7604 = add nuw nsw i64 %657, 2
  %7605 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7604)
  %7606 = zext i32 %7593 to i64
  %7607 = add nuw nsw i64 %7606, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7607, i32 noundef 0)
  %7608 = add nuw nsw i64 %7606, 32
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7608, i32 noundef 0)
  %7609 = add i32 %7592, -16
  %7610 = add i32 %7592, -56
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef %0, i32 noundef %7609, i32 noundef %83, i32 noundef %2, i32 noundef 44, i32 noundef %83, i32 noundef %7610, i32 noundef 0) #5
  %7611 = add nuw nsw i64 %7606, 48
  %7612 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7611)
  %.not24243 = icmp eq i32 %7612, 0
  br i1 %.not24243, label %7750, label %7613

7613:                                             ; preds = %7591
  %7614 = add nuw nsw i64 %7606, 56
  %7615 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7614)
  %7616 = icmp ult i64 %7615, -844424930131968
  br i1 %7616, label %7649, label %7617

7617:                                             ; preds = %7613
  %7618 = shl i32 %7605, 3
  %7619 = add i32 %7618, %.923925
  %7620 = shl i32 %7603, 3
  %7621 = add i32 %7620, %.923925
  %7622 = trunc i64 %7615 to i32
  %7623 = and i64 %7615, 4294967295
  %7624 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7623)
  %7625 = add i32 %7624, -1157627904
  %7626 = icmp ult i32 %7625, 67108864
  br i1 %7626, label %7627, label %7636

7627:                                             ; preds = %7617
  %7628 = add nuw nsw i64 %7623, 28
  %7629 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7628)
  %.not24244 = icmp eq i32 %7629, 551
  br i1 %.not24244, label %7630, label %7639

7630:                                             ; preds = %7627
  %7631 = zext i32 %7619 to i64
  %7632 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7631)
  %.mask24245 = and i64 %7632, -281474976710656
  %7633 = icmp eq i64 %.mask24245, -844424930131968
  br i1 %7633, label %7667, label %7634

7634:                                             ; preds = %7630
  %7635 = zext i32 %7621 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7635, i64 noundef %7632)
  br label %7750

7636:                                             ; preds = %7617
  %7637 = add i32 %7624, -1291845632
  %7638 = icmp ult i32 %7637, -150994944
  br i1 %7638, label %7649, label %7639

7639:                                             ; preds = %7636, %7627
  %7640 = add i32 %7592, -32
  %7641 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x28hermes0x3A0x3Avm0x3A0x3ACallable0x2A0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %7622) #5
  %7642 = zext i32 %7619 to i64
  %7643 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7642)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall10x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef %7640, i32 noundef %7641, i32 noundef %2, i32 noundef 67208, i64 noundef %7643, i32 noundef 0) #5
  %7644 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7608)
  %.not24256 = icmp eq i32 %7644, 0
  br i1 %.not24256, label %7750, label %7645

7645:                                             ; preds = %7639
  %7646 = add nuw nsw i64 %7606, 40
  %7647 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7646)
  %7648 = zext i32 %7621 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7648, i64 noundef %7647)
  br label %7750

7649:                                             ; preds = %7636, %7613
  %7650 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7651 = zext i32 %7650 to i64
  %7652 = add nuw nsw i64 %7651, 164
  %7653 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7652)
  %7654 = add nuw nsw i64 %7651, 168
  %7655 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7654)
  %7656 = icmp ult i32 %7653, %7655
  br i1 %7656, label %7657, label %7660

7657:                                             ; preds = %7649
  %7658 = add i32 %7653, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7652, i32 noundef %7658)
  %7659 = zext i32 %7653 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7659, i64 noundef %7615)
  br label %7662

7660:                                             ; preds = %7649
  %7661 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i32 noundef %7650, i64 noundef %7615) #5
  br label %7662

7662:                                             ; preds = %7660, %7657
  %.28 = phi i32 [ %7653, %7657 ], [ %7661, %7660 ]
  %7663 = add nuw nsw i64 %7606, 28
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7663, i32 noundef 18)
  %7664 = add nuw nsw i64 %7606, 24
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7664, i32 noundef 41218)
  %7665 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7664)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7606, i64 noundef %7665)
  %7666 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AStringRef0x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %.28, i32 noundef %7593)
  br label %7750

7667:                                             ; preds = %7630
  %7668 = add nuw nsw i64 %7606, 20
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7668, i32 noundef 0)
  %7669 = add nuw nsw i64 %7606, 12
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7669, i64 noundef 0)
  %7670 = add i32 %7592, -52
  %7671 = zext i32 %7670 to i64
  %7672 = add nuw nsw i64 %7671, 4
  %7673 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7672)
  %7674 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7671)
  %7675 = sub i32 %7673, %7674
  %7676 = sdiv i32 %7675, 12
  %7677 = add nsw i32 %7676, 1
  %7678 = icmp ult i32 %7677, 357913942
  br i1 %7678, label %7679, label %7722

7679:                                             ; preds = %7667
  %7680 = add nuw nsw i64 %7671, 8
  %7681 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7680)
  %7682 = sub i32 %7681, %7674
  %7683 = sdiv i32 %7682, 12
  %7684 = shl nsw i32 %7683, 1
  %7685 = tail call i32 @llvm.umax.i32(i32 %7684, i32 %7677)
  %7686 = icmp ugt i32 %7683, 178956969
  %7687 = select i1 %7686, i32 357913941, i32 %7685
  %.not24246 = icmp eq i32 %7687, 0
  br i1 %.not24246, label %._crit_edge26386, label %7688

7688:                                             ; preds = %7679
  %7689 = icmp ugt i32 %7687, 357913941
  br i1 %7689, label %7723, label %7690

7690:                                             ; preds = %7688
  %7691 = mul nuw i32 %7687, 12
  %7692 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %7691) #5
  br label %._crit_edge26386

._crit_edge26386:                                 ; preds = %7679, %7690
  %.pre-phi26592 = phi i32 [ %7691, %7690 ], [ 0, %7679 ]
  %.29 = phi i32 [ %7692, %7690 ], [ 0, %7679 ]
  %7693 = mul nsw i32 %7676, 12
  %7694 = add i32 %.29, %7693
  %7695 = zext i32 %7694 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7695, i64 noundef 0)
  %7696 = add nuw nsw i64 %7695, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7696, i32 noundef 0)
  %7697 = add i32 %.29, %.pre-phi26592
  %7698 = add i32 %7694, 12
  %7699 = icmp eq i32 %7673, %7674
  br i1 %7699, label %7724, label %.preheader24747

.preheader24747:                                  ; preds = %._crit_edge26386, %.preheader24747
  %.3823911 = phi i32 [ %7700, %.preheader24747 ], [ %7694, %._crit_edge26386 ]
  %.523829 = phi i32 [ %7701, %.preheader24747 ], [ %7673, %._crit_edge26386 ]
  %7700 = add i32 %.3823911, -12
  %7701 = add i32 %.523829, -12
  %7702 = zext i32 %7701 to i64
  %7703 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7702)
  %7704 = zext i32 %7700 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7704, i32 noundef %7703)
  %7705 = add nuw nsw i64 %7702, 4
  %7706 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7705)
  %7707 = add nuw nsw i64 %7704, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7707, i32 noundef %7706)
  %7708 = add nuw nsw i64 %7702, 8
  %7709 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7708)
  %7710 = add nuw nsw i64 %7704, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7710, i32 noundef %7709)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7708, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7702, i64 noundef 0)
  %.not24247 = icmp eq i32 %7701, %7674
  br i1 %.not24247, label %7711, label %.preheader24747

7711:                                             ; preds = %.preheader24747
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7680, i32 noundef %7697)
  %7712 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7672)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7672, i32 noundef %7698)
  %7713 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7671)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7671, i32 noundef %7700)
  %7714 = icmp eq i32 %7712, %7713
  br i1 %7714, label %.loopexit24746, label %.preheader24745

.preheader24745:                                  ; preds = %7711, %7721
  %.30 = phi i32 [ %7715, %7721 ], [ %7712, %7711 ]
  %7715 = add i32 %.30, -12
  %7716 = zext i32 %7715 to i64
  %7717 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7716)
  %.not24248 = icmp eq i32 %7717, 0
  br i1 %.not24248, label %7721, label %7718

7718:                                             ; preds = %.preheader24745
  %7719 = add i32 %.30, -8
  %7720 = zext i32 %7719 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7720, i32 noundef %7717)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %7717) #5
  br label %7721

7721:                                             ; preds = %7718, %.preheader24745
  %.not24249 = icmp eq i32 %7715, %7713
  br i1 %.not24249, label %.loopexit24746, label %.preheader24745

7722:                                             ; preds = %7667
  tail call void @w2c_hermes_abort(ptr noundef nonnull %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

7723:                                             ; preds = %7688
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_out_of_range0x5Babi0x3Av150070x5D0x28char0x20const0x2A0x29(ptr noundef nonnull %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

7724:                                             ; preds = %._crit_edge26386
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7680, i32 noundef %7697)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7672, i32 noundef %7698)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7671, i32 noundef %7694)
  br label %.loopexit24746

.loopexit24746:                                   ; preds = %7721, %7711, %7724
  %.623830 = phi i32 [ %7673, %7724 ], [ %7712, %7711 ], [ %7713, %7721 ]
  %.not24250 = icmp eq i32 %.623830, 0
  br i1 %.not24250, label %7726, label %7725

7725:                                             ; preds = %.loopexit24746
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.623830) #5
  br label %7726

7726:                                             ; preds = %7725, %.loopexit24746
  %7727 = add i32 %7592, -32
  %7728 = icmp ne i32 %7595, 0
  %7729 = zext i1 %7728 to i32
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdirectEval0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3AScopeChain0x20const0x260x2C0x20bool0x2C0x20bool0x29(ptr noundef %0, i32 noundef %7727, i32 noundef %2, i32 noundef %7619, i32 noundef %7670, i32 noundef %7729, i32 noundef 0) #5
  %7730 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7608)
  %.not24251 = icmp eq i32 %7730, 0
  br i1 %.not24251, label %7735, label %7731

7731:                                             ; preds = %7726
  %7732 = add nuw nsw i64 %7606, 40
  %7733 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7732)
  %7734 = zext i32 %7621 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7734, i64 noundef %7733)
  br label %7735

7735:                                             ; preds = %7731, %7726
  %.2023864 = phi i32 [ 1, %7731 ], [ 0, %7726 ]
  %7736 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7669)
  %.not24252 = icmp eq i32 %7736, 0
  br i1 %.not24252, label %7750, label %7737

7737:                                             ; preds = %7735
  %7738 = add nuw nsw i64 %7606, 16
  %7739 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7738)
  %.not24253 = icmp eq i32 %7739, %7736
  br i1 %.not24253, label %7749, label %.preheader24744

.preheader24744:                                  ; preds = %7737, %7746
  %.31 = phi i32 [ %7740, %7746 ], [ %7739, %7737 ]
  %7740 = add i32 %.31, -12
  %7741 = zext i32 %7740 to i64
  %7742 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7741)
  %.not24254 = icmp eq i32 %7742, 0
  br i1 %.not24254, label %7746, label %7743

7743:                                             ; preds = %.preheader24744
  %7744 = add i32 %.31, -8
  %7745 = zext i32 %7744 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7745, i32 noundef %7742)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %7742) #5
  br label %7746

7746:                                             ; preds = %7743, %.preheader24744
  %.not24255 = icmp eq i32 %7740, %7736
  br i1 %.not24255, label %7747, label %.preheader24744

7747:                                             ; preds = %7746
  %7748 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7669)
  br label %7749

7749:                                             ; preds = %7747, %7737
  %.3423726 = phi i32 [ %7748, %7747 ], [ %7736, %7737 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7738, i32 noundef %7736)
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.3423726) #5
  br label %7750

7750:                                             ; preds = %7735, %7639, %7591, %7749, %7662, %7645, %7634
  %.2123865 = phi i32 [ 0, %7591 ], [ %7666, %7662 ], [ 0, %7639 ], [ 1, %7645 ], [ %.2023864, %7735 ], [ %.2023864, %7749 ], [ 1, %7634 ]
  %7751 = add nuw nsw i64 %7597, 136
  %7752 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7751)
  %7753 = shl i32 %7599, 2
  %7754 = add i32 %7752, %7753
  %7755 = zext i32 %7754 to i64
  %7756 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7755)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7598, i32 noundef %7599)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7600, i32 noundef %7601)
  %7757 = add i32 %7756, 128
  %7758 = add nuw nsw i64 %7597, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7758, i32 noundef %7757)
  store i32 %7592, ptr %5, align 8, !tbaa !5
  %7759 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24257 = icmp eq i32 %.2123865, 0
  br i1 %.not24257, label %._crit_edge, label %7760

7760:                                             ; preds = %7750
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7761 = add i32 %7759, 4
  br label %.backedge.backedge

7762:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7763 = load i32, ptr %5, align 8, !tbaa !5
  %7764 = add i32 %7763, -64
  store i32 %7764, ptr %5, align 8, !tbaa !5
  %7765 = add nuw nsw i64 %657, 2
  %7766 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7765)
  %7767 = shl i32 %7766, 3
  %7768 = add i32 %7767, %.923925
  %7769 = zext i32 %7768 to i64
  %7770 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7769)
  %7771 = icmp ult i64 %7770, -844424930131968
  br i1 %7771, label %7803, label %7772

7772:                                             ; preds = %7762
  %7773 = and i64 %7770, 4294967295
  %7774 = add nuw nsw i64 %7773, 3
  %7775 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7774)
  %.mask24237 = and i32 %7775, 255
  %.not24236 = icmp eq i32 %.mask24237, 32
  br i1 %.not24236, label %7776, label %7803

7776:                                             ; preds = %7772
  %7777 = zext i32 %7764 to i64
  %7778 = add nuw nsw i64 %7777, 56
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7778, i64 noundef -4294967296)
  %7779 = add nuw nsw i64 %7777, 22
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %7779, i32 noundef 1)
  %7780 = add nuw nsw i64 %7777, 40
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %7780, i32 noundef 1)
  %7781 = add i32 %7763, -42
  %7782 = add i32 %7763, -8
  %7783 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedDescriptorUnsafe0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef nonnull %0, i32 noundef %7768, i32 noundef %2, i32 noundef 268436017, i32 noundef %7781, i32 noundef %7782) #5
  %.not24238 = icmp eq i32 %7783, 0
  br i1 %.not24238, label %7801, label %7784

7784:                                             ; preds = %7776
  %7785 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7778)
  %7786 = add nuw nsw i64 %7777, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7786, i64 noundef %7785)
  %7787 = add nuw nsw i64 %7777, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7787, i64 noundef %7785)
  %7788 = add i32 %7763, -24
  %7789 = add i32 %7763, -56
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedSlotValue0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x29(ptr noundef nonnull %0, i32 noundef %7788, i32 noundef %7783, i32 noundef %2, i32 noundef %7789) #5
  %7790 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7780)
  %.not24239 = icmp eq i32 %7790, 0
  br i1 %.not24239, label %.thread24705, label %7791

.thread24705:                                     ; preds = %7784
  store i32 %7763, ptr %5, align 8, !tbaa !5
  br label %._crit_edge.sink.split

7791:                                             ; preds = %7784
  %7792 = add nuw nsw i64 %7777, 48
  %7793 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7792)
  %7794 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %82)
  %.not24240 = icmp eq i64 %7793, %7794
  br i1 %.not24240, label %.thread24708, label %7801

.thread24708:                                     ; preds = %7791
  %7795 = add nuw nsw i64 %657, 1
  %7796 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7795)
  %7797 = shl i32 %7796, 3
  %7798 = add i32 %7797, %.923925
  %7799 = zext i32 %7798 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7799, i64 noundef 0)
  store i32 %7763, ptr %5, align 8, !tbaa !5
  %7800 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  br label %7845

7801:                                             ; preds = %7791, %7776
  %7802 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7765)
  %.pre26379 = shl i32 %7802, 3
  %.pre26381 = add i32 %.pre26379, %.923925
  br label %7803

7803:                                             ; preds = %7772, %7762, %7801
  %.pre-phi26382 = phi i32 [ %7768, %7772 ], [ %7768, %7762 ], [ %.pre26381, %7801 ]
  %7804 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7805 = zext i32 %7804 to i64
  %7806 = add nuw nsw i64 %7805, 172
  %7807 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7806)
  %7808 = add nuw nsw i64 %7805, 164
  %7809 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7808)
  %7810 = zext i32 %7764 to i64
  %7811 = add nuw nsw i64 %7810, 28
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %7811, i32 noundef 0)
  %7812 = add nuw nsw i64 %7810, 24
  %7813 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7812)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7810, i64 noundef %7813)
  %7814 = add i32 %7763, -24
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetIterator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AOptional0x3Chermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %7814, i32 noundef %2, i32 noundef %.pre-phi26382, i32 noundef %7764) #5
  %7815 = add nuw nsw i64 %7810, 48
  %7816 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7815)
  %.not24241 = icmp eq i32 %7816, 0
  br i1 %.not24241, label %7835, label %7817

7817:                                             ; preds = %7803
  %7818 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7765)
  %7819 = shl i32 %7818, 3
  %7820 = add i32 %7819, %.923925
  %7821 = add nuw nsw i64 %7810, 44
  %7822 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7821)
  %7823 = zext i32 %7822 to i64
  %7824 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7823)
  %7825 = zext i32 %7820 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7825, i64 noundef %7824)
  %7826 = add nuw nsw i64 %657, 1
  %7827 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7826)
  %7828 = shl i32 %7827, 3
  %7829 = add i32 %7828, %.923925
  %7830 = add nuw nsw i64 %7810, 40
  %7831 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7830)
  %7832 = zext i32 %7831 to i64
  %7833 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7832)
  %7834 = zext i32 %7829 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7834, i64 noundef %7833)
  br label %7835

7835:                                             ; preds = %7803, %7817
  %7836 = add nuw nsw i64 %7805, 136
  %7837 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7836)
  %7838 = shl i32 %7807, 2
  %7839 = add i32 %7837, %7838
  %7840 = zext i32 %7839 to i64
  %7841 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7840)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7806, i32 noundef %7807)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7808, i32 noundef %7809)
  %7842 = add i32 %7841, 128
  %7843 = add nuw nsw i64 %7805, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7843, i32 noundef %7842)
  store i32 %7763, ptr %5, align 8, !tbaa !5
  %7844 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  br i1 %.not24241, label %._crit_edge, label %7845

7845:                                             ; preds = %.thread24708, %7835
  %7846 = phi i32 [ %7800, %.thread24708 ], [ %7844, %7835 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %7847 = add i32 %7846, 3
  br label %.backedge.backedge

7848:                                             ; preds = %.backedge
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %7849 = load i32, ptr %5, align 8, !tbaa !5
  %7850 = add i32 %7849, -80
  store i32 %7850, ptr %5, align 8, !tbaa !5
  %7851 = add nuw nsw i64 %657, 2
  %7852 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7851)
  %7853 = shl i32 %7852, 3
  %7854 = add i32 %7853, %.923925
  %7855 = zext i32 %7854 to i64
  %7856 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7855)
  %7857 = icmp ult i64 %7856, -1970324836974592
  br i1 %7857, label %7858, label %8001

7858:                                             ; preds = %7848
  %7859 = add nuw nsw i64 %657, 3
  %7860 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7859)
  %7861 = shl i32 %7860, 3
  %7862 = add i32 %7861, %.923925
  %7863 = zext i32 %7862 to i64
  %7864 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7863)
  %7865 = zext i32 %7864 to i64
  %7866 = add nuw nsw i64 %7865, 32
  %7867 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7866)
  %7868 = and i32 %7867, 7
  %.not24231 = icmp eq i32 %7868, 4
  %7869 = tail call double @f64_reinterpret_i64(i64 noundef %7856)
  %7870 = fcmp olt double %7869, 0x41F0000000000000
  %7871 = fcmp oge double %7869, 0.000000e+00
  %7872 = and i1 %7870, %7871
  br i1 %7872, label %7873, label %7881

7873:                                             ; preds = %7858
  %7874 = fcmp uno double %7869, 0.000000e+00
  br i1 %7874, label %7875, label %7876, !prof !18

7875:                                             ; preds = %7873
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

7876:                                             ; preds = %7873
  %7877 = fcmp ogt double %7869, -1.000000e+00
  br i1 %7877, label %7879, label %7878, !prof !19

7878:                                             ; preds = %7876
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

7879:                                             ; preds = %7876
  %7880 = fptoui double %7869 to i32
  br label %7881

7881:                                             ; preds = %7858, %7879
  %.45 = phi i32 [ %7880, %7879 ], [ 0, %7858 ]
  br i1 %.not24231, label %7887, label %7882

7882:                                             ; preds = %7881
  %7883 = and i32 %7867, -8
  %7884 = zext i32 %7883 to i64
  %7885 = add nuw nsw i64 %7884, 8
  %7886 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7885)
  br label %7890

7887:                                             ; preds = %7881
  %7888 = ashr i32 %7867, 3
  %7889 = sitofp i32 %7888 to double
  br label %7890

7890:                                             ; preds = %7887, %7882
  %.6 = phi double [ %7886, %7882 ], [ %7889, %7887 ]
  %7891 = fcmp olt double %.6, 0x41F0000000000000
  %7892 = fcmp oge double %.6, 0.000000e+00
  %7893 = and i1 %7891, %7892
  br i1 %7893, label %7894, label %.thread24711

7894:                                             ; preds = %7890
  %7895 = fcmp uno double %.6, 0.000000e+00
  br i1 %7895, label %7896, label %7897, !prof !18

7896:                                             ; preds = %7894
  tail call void @wasm_rt_trap(i32 noundef 4) #6
  unreachable

7897:                                             ; preds = %7894
  %7898 = fcmp ogt double %.6, -1.000000e+00
  br i1 %7898, label %7900, label %7899, !prof !19

7899:                                             ; preds = %7897
  tail call void @wasm_rt_trap(i32 noundef 2) #6
  unreachable

7900:                                             ; preds = %7897
  %7901 = fptoui double %.6 to i32
  %.not24232 = icmp ult i32 %.45, %7901
  br i1 %.not24232, label %7902, label %.thread24711

.thread24711:                                     ; preds = %7890, %7900
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7855, i64 noundef -1688849860263936)
  br label %.thread24715

7902:                                             ; preds = %7900
  %7903 = add nuw nsw i64 %7865, 20
  %7904 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7903)
  %7905 = icmp ugt i32 %7904, %.45
  br i1 %7905, label %7969, label %7906

7906:                                             ; preds = %7902
  %7907 = add nuw nsw i64 %7865, 24
  %7908 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7907)
  %.not24233 = icmp ugt i32 %7908, %.45
  br i1 %.not24233, label %7909, label %7969

7909:                                             ; preds = %7906
  %7910 = add nuw nsw i64 %7865, 28
  %7911 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7910)
  %7912 = sub i32 %.45, %7904
  %7913 = icmp ult i32 %7912, 4096
  br i1 %7913, label %7914, label %7917

7914:                                             ; preds = %7909
  %7915 = shl nuw nsw i32 %7912, 2
  %7916 = add i32 %7911, %7915
  br label %7928

7917:                                             ; preds = %7909
  %7918 = add i32 %7912, -4096
  %7919 = lshr i32 %7918, 8
  %7920 = and i32 %7919, 16777212
  %7921 = add nuw nsw i32 %7920, 16392
  %7922 = add i32 %7921, %7911
  %7923 = zext i32 %7922 to i64
  %7924 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7923)
  %7925 = shl i32 %7912, 2
  %7926 = and i32 %7925, 4092
  %7927 = add i32 %7924, %7926
  br label %7928

7928:                                             ; preds = %7917, %7914
  %.47.in = phi i32 [ %7916, %7914 ], [ %7927, %7917 ]
  %.47 = add i32 %.47.in, 8
  %7929 = zext i32 %.47 to i64
  %7930 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7929)
  %7931 = icmp eq i32 %7930, 7
  br i1 %7931, label %7969, label %7932

7932:                                             ; preds = %7928
  %7933 = add nuw i32 %.45, 1
  %7934 = uitofp i32 %7933 to double
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %7855, double noundef %7934)
  %7935 = and i32 %7930, 15
  switch i32 %7935, label %7936 [
    i32 1, label %7939
    i32 2, label %7943
    i32 3, label %7947
    i32 4, label %7955
    i32 5, label %7959
    i32 6, label %7963
    i32 7, label %7967
    i32 15, label %7968
    i32 9, label %7939
    i32 10, label %7943
    i32 11, label %7947
    i32 12, label %7955
    i32 13, label %7959
    i32 14, label %.thread24715
  ]

7936:                                             ; preds = %7932
  %7937 = zext i32 %7930 to i64
  %7938 = or disjoint i64 %7937, -281474976710656
  br label %.thread24715

7939:                                             ; preds = %7932, %7932
  %7940 = and i32 %7930, -8
  %7941 = zext i32 %7940 to i64
  %7942 = or disjoint i64 %7941, -562949953421312
  br label %.thread24715

7943:                                             ; preds = %7932, %7932
  %7944 = and i32 %7930, -8
  %7945 = zext i32 %7944 to i64
  %7946 = or disjoint i64 %7945, -844424930131968
  br label %.thread24715

7947:                                             ; preds = %7932, %7932
  %7948 = and i32 %7930, -8
  %7949 = zext i32 %7948 to i64
  %7950 = add nuw nsw i64 %7949, 8
  %7951 = tail call double @f64_load(ptr noundef nonnull %8, i64 noundef %7950)
  %7952 = tail call i64 @i64_reinterpret_f64(double noundef %7951)
  %7953 = fcmp uno double %7951, 0.000000e+00
  %7954 = select i1 %7953, i64 9221120237041090560, i64 %7952
  br label %.thread24715

7955:                                             ; preds = %7932, %7932
  %7956 = ashr i32 %7930, 3
  %7957 = sitofp i32 %7956 to double
  %7958 = tail call i64 @i64_reinterpret_f64(double noundef %7957)
  br label %.thread24715

7959:                                             ; preds = %7932, %7932
  %7960 = lshr i32 %7930, 3
  %7961 = zext nneg i32 %7960 to i64
  %7962 = or disjoint i64 %7961, -1266637395197952
  br label %.thread24715

7963:                                             ; preds = %7932
  %7964 = icmp ugt i32 %7930, 15
  %7965 = zext i1 %7964 to i64
  %7966 = or disjoint i64 %7965, -1407374883553280
  br label %.thread24715

7967:                                             ; preds = %7932
  br label %.thread24715

7968:                                             ; preds = %7932
  br label %.thread24715

7969:                                             ; preds = %7928, %7906, %7902
  %7970 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %7971 = zext i32 %7970 to i64
  %7972 = add nuw nsw i64 %7971, 172
  %7973 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7972)
  %7974 = add nuw nsw i64 %7971, 164
  %7975 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7974)
  %7976 = add i32 %7849, -24
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef nonnull %0, i32 noundef %7976, i32 noundef %7862, i32 noundef %2, i32 noundef %7854, i32 noundef %7862) #5
  %7977 = zext i32 %7850 to i64
  %7978 = add nuw nsw i64 %7977, 56
  %7979 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7978)
  %.not24234 = icmp eq i32 %7979, 0
  br i1 %.not24234, label %7994, label %7980

7980:                                             ; preds = %7969
  %7981 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7851)
  %7982 = shl i32 %7981, 3
  %7983 = add i32 %7982, %.923925
  %7984 = add nuw i32 %.45, 1
  %7985 = uitofp i32 %7984 to double
  %7986 = zext i32 %7983 to i64
  tail call void @f64_store(ptr noundef nonnull %8, i64 noundef %7986, double noundef %7985)
  %7987 = add nuw nsw i64 %657, 1
  %7988 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7987)
  %7989 = shl i32 %7988, 3
  %7990 = add i32 %7989, %.923925
  %7991 = add nuw nsw i64 %7977, 64
  %7992 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %7991)
  %7993 = zext i32 %7990 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %7993, i64 noundef %7992)
  br label %7994

7994:                                             ; preds = %7969, %7980
  %.48 = phi i32 [ 1, %7980 ], [ 0, %7969 ]
  %7995 = add nuw nsw i64 %7971, 136
  %7996 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7995)
  %7997 = shl i32 %7973, 2
  %7998 = add i32 %7996, %7997
  %7999 = zext i32 %7998 to i64
  %8000 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %7999)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7972, i32 noundef %7973)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %7974, i32 noundef %7975)
  br label %8109

8001:                                             ; preds = %7848
  %.mask24223 = and i64 %7856, -140737488355328
  %8002 = icmp eq i64 %.mask24223, -1688849860263936
  br i1 %8002, label %.thread24715, label %8003

8003:                                             ; preds = %8001
  %8004 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %8005 = zext i32 %8004 to i64
  %8006 = add nuw nsw i64 %8005, 172
  %8007 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8006)
  %8008 = add nuw nsw i64 %8005, 164
  %8009 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8008)
  %8010 = add nuw nsw i64 %657, 3
  %8011 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8010)
  %8012 = zext i32 %7850 to i64
  %8013 = add nuw nsw i64 %8012, 40
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %8013, i32 noundef 0)
  %8014 = add nuw nsw i64 %8012, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8014, i32 noundef %7854)
  %8015 = shl i32 %8011, 3
  %8016 = add i32 %8015, %.923925
  %8017 = add nuw nsw i64 %8012, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8017, i32 noundef %8016)
  %8018 = add nuw nsw i64 %8012, 36
  %8019 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8018)
  %8020 = add nuw nsw i64 %8012, 8
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8020, i64 noundef %8019)
  %8021 = load i32, ptr %5, align 8, !tbaa !5
  %8022 = add i32 %8021, -64
  store i32 %8022, ptr %5, align 8, !tbaa !5
  %8023 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %8024 = zext i32 %8023 to i64
  %8025 = add nuw nsw i64 %8024, 172
  %8026 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8025)
  %8027 = add nuw nsw i64 %8024, 164
  %8028 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8027)
  %8029 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8014)
  %8030 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8017)
  %8031 = add nuw nsw i64 %8012, 12
  %8032 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8031)
  %.not24224 = icmp eq i32 %8032, 0
  %8033 = add i32 %8021, -16
  br i1 %.not24224, label %8038, label %8034

8034:                                             ; preds = %8003
  %8035 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8020)
  %8036 = zext i32 %8035 to i64
  %8037 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8036)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall10x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef %8033, i32 noundef %8030, i32 noundef %2, i32 noundef %8029, i64 noundef %8037, i32 noundef 0) #5
  br label %8039

8038:                                             ; preds = %8003
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall00x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef nonnull %0, i32 noundef %8033, i32 noundef %8030, i32 noundef %2, i32 noundef %8029, i32 noundef 0) #5
  br label %8039

8039:                                             ; preds = %8038, %8034
  %8040 = zext i32 %8022 to i64
  %8041 = add nuw nsw i64 %8040, 48
  %8042 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8041)
  %.not24225 = icmp eq i32 %8042, 0
  br i1 %.not24225, label %8055, label %8043

8043:                                             ; preds = %8039
  %8044 = add nuw nsw i64 %8040, 56
  %8045 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8044)
  %.not24226 = icmp ugt i64 %8045, -281474976710657
  br i1 %.not24226, label %8053, label %8046

8046:                                             ; preds = %8043
  %8047 = add nuw nsw i64 %8040, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8047, i32 noundef 0)
  %8048 = add nuw nsw i64 %8040, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8048, i64 noundef 171798691841)
  %8049 = add nuw nsw i64 %8040, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8049, i32 noundef 3)
  %8050 = add nuw nsw i64 %8040, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8050, i32 noundef 31418)
  %8051 = add i32 %8021, -56
  %8052 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeError0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %8051)
  br label %8055

8053:                                             ; preds = %8043
  %8054 = trunc i64 %8045 to i32
  br label %8055

8055:                                             ; preds = %8039, %8053, %8046
  %.723831 = phi i32 [ -1, %8046 ], [ %8054, %8053 ], [ -1, %8039 ]
  %8056 = add nuw nsw i64 %8024, 136
  %8057 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8056)
  %8058 = shl i32 %8026, 2
  %8059 = add i32 %8057, %8058
  %8060 = zext i32 %8059 to i64
  %8061 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8060)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8025, i32 noundef %8026)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8027, i32 noundef %8028)
  %8062 = add i32 %8061, 128
  %8063 = add nuw nsw i64 %8024, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8063, i32 noundef %8062)
  store i32 %8021, ptr %5, align 8, !tbaa !5
  %8064 = add nuw nsw i64 %8012, 44
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8064, i32 noundef %.723831)
  %8065 = icmp eq i32 %.723831, -1
  br i1 %8065, label %8096, label %8066

8066:                                             ; preds = %8055
  %8067 = add i32 %7849, -36
  %8068 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x260x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %8067) #5
  %8069 = add nuw nsw i64 %8012, 4
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8069, i32 noundef 0)
  %8070 = add nuw nsw i64 %8012, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8070, i32 noundef 0)
  %8071 = add i32 %7849, -24
  %8072 = add i32 %7849, -76
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef nonnull %0, i32 noundef %8071, i32 noundef %8068, i32 noundef %2, i32 noundef 260, i32 noundef %8068, i32 noundef %8072, i32 noundef 0) #5
  %8073 = add nuw nsw i64 %8012, 56
  %8074 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8073)
  %.not24228 = icmp eq i32 %8074, 0
  br i1 %.not24228, label %8096, label %8075

8075:                                             ; preds = %8066
  %8076 = add nuw nsw i64 %8012, 64
  %8077 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8076)
  %8078 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef nonnull %0, i64 noundef %8077) #5
  %.not24229 = icmp eq i32 %8078, 0
  br i1 %.not24229, label %8086, label %8079

8079:                                             ; preds = %8075
  %8080 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %7851)
  %8081 = shl i32 %8080, 3
  %8082 = add i32 %8081, %.923925
  %8083 = zext i32 %8082 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8083, i64 noundef -1688849860263936)
  %8084 = add nuw nsw i64 %657, 1
  %8085 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8084)
  br label %.sink.split

8086:                                             ; preds = %8075
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8012, i32 noundef 0)
  %8087 = add nuw nsw i64 %8012, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8087, i32 noundef 0)
  %8088 = add i32 %7849, -64
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetNamedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyCacheEntry0x2A0x29(ptr noundef nonnull %0, i32 noundef %8088, i32 noundef %8068, i32 noundef %2, i32 noundef 61, i32 noundef %8068, i32 noundef %7850, i32 noundef 0) #5
  %8089 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8070)
  %.not24230 = icmp eq i32 %8089, 0
  br i1 %.not24230, label %8096, label %8090

8090:                                             ; preds = %8086
  %8091 = add nuw nsw i64 %657, 1
  %8092 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8091)
  %8093 = add nuw nsw i64 %8012, 24
  %8094 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8093)
  br label %.sink.split

.sink.split:                                      ; preds = %8090, %8079
  %.pn.in = phi i32 [ %8085, %8079 ], [ %8092, %8090 ]
  %.sink27213 = phi i64 [ -1688849860263936, %8079 ], [ %8094, %8090 ]
  %.pn = shl i32 %.pn.in, 3
  %.sink27214 = add i32 %.pn, %.923925
  %8095 = zext i32 %.sink27214 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8095, i64 noundef %.sink27213)
  br label %8096

8096:                                             ; preds = %.sink.split, %8086, %8066, %8055
  %.49 = phi i32 [ 0, %8055 ], [ 0, %8066 ], [ 0, %8086 ], [ 1, %.sink.split ]
  %8097 = add nuw nsw i64 %8005, 136
  %8098 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8097)
  %8099 = shl i32 %8007, 2
  %8100 = add i32 %8098, %8099
  %8101 = zext i32 %8100 to i64
  %8102 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8101)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8006, i32 noundef %8007)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8008, i32 noundef %8009)
  br label %8109

.thread24715:                                     ; preds = %8001, %7936, %7939, %7943, %7947, %7955, %7959, %7963, %7967, %7968, %7932, %.thread24711
  %.sink27216 = phi i64 [ -1688849860263936, %.thread24711 ], [ %7938, %7936 ], [ -1688849860263936, %7932 ], [ -1548112371908608, %7968 ], [ -1970324836974592, %7967 ], [ %7966, %7963 ], [ %7962, %7959 ], [ %7958, %7955 ], [ %7954, %7947 ], [ %7946, %7943 ], [ %7942, %7939 ], [ -1688849860263936, %8001 ]
  %8103 = add nuw nsw i64 %657, 1
  %8104 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8103)
  %8105 = shl i32 %8104, 3
  %8106 = add i32 %8105, %.923925
  %8107 = zext i32 %8106 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8107, i64 noundef %.sink27216)
  store i32 %7849, ptr %5, align 8, !tbaa !5
  %8108 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  br label %8113

8109:                                             ; preds = %8096, %7994
  %.sink27224 = phi i32 [ %8102, %8096 ], [ %8000, %7994 ]
  %.sink27223 = phi i64 [ %8005, %8096 ], [ %7971, %7994 ]
  %.2323867 = phi i32 [ %.49, %8096 ], [ %.48, %7994 ]
  %8110 = add i32 %.sink27224, 128
  %8111 = add nuw nsw i64 %.sink27223, 168
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8111, i32 noundef %8110)
  store i32 %7849, ptr %5, align 8, !tbaa !5
  %8112 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24235 = icmp eq i32 %.2323867, 0
  br i1 %.not24235, label %._crit_edge, label %8113

8113:                                             ; preds = %.thread24715, %8109
  %8114 = phi i32 [ %8108, %.thread24715 ], [ %8112, %8109 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %8115 = add i32 %8114, 4
  br label %.backedge.backedge

8116:                                             ; preds = %.backedge
  %8117 = add nuw nsw i64 %657, 1
  %8118 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8117)
  %8119 = shl i32 %8118, 3
  %8120 = add i32 %8119, %.923925
  %8121 = zext i32 %8120 to i64
  %8122 = add nuw nsw i64 %8121, 6
  %8123 = tail call i32 @i32_load16_s(ptr noundef nonnull %8, i64 noundef %8122)
  %.not24217 = icmp eq i32 %8123, -1
  br i1 %.not24217, label %8126, label %8124

8124:                                             ; preds = %8116
  %8125 = add i32 %.323685, 3
  br label %.backedge.backedge

8126:                                             ; preds = %8116
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  %8127 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8117)
  %8128 = shl i32 %8127, 3
  %8129 = add i32 %8128, %.923925
  %8130 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AiteratorClose0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %2, i32 noundef %8129, i32 noundef 67224) #5
  %8131 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24218 = icmp eq i32 %8130, 0
  br i1 %.not24218, label %8132, label %8146

8132:                                             ; preds = %8126
  %8133 = zext i32 %8131 to i64
  %8134 = add nuw nsw i64 %8133, 2
  %8135 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8134)
  %.not24219 = icmp eq i32 %8135, 0
  br i1 %.not24219, label %._crit_edge, label %8136

8136:                                             ; preds = %8132
  %8137 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %81)
  %8138 = icmp ult i64 %8137, -844424930131968
  br i1 %8138, label %.thread24719, label %8139

8139:                                             ; preds = %8136
  %8140 = and i64 %8137, 4294967295
  %8141 = add nuw nsw i64 %8140, 3
  %8142 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8141)
  %.mask = and i32 %8142, 255
  %.not24220 = icmp eq i32 %.mask, 29
  br i1 %.not24220, label %8143, label %.thread24719

8143:                                             ; preds = %8139
  %8144 = add nuw nsw i64 %8140, 36
  %8145 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8144)
  %.not24221.not = icmp eq i32 %8145, 0
  br i1 %.not24221.not, label %._crit_edge, label %.thread24719

.thread24719:                                     ; preds = %8139, %8136, %8143
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef -1970324836974592)
  br label %8146

8146:                                             ; preds = %.thread24719, %8126
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  %8147 = add i32 %8131, 3
  br label %.backedge.backedge

8148:                                             ; preds = %.backedge
  tail call void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef %0, i32 noundef 20768) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

8149:                                             ; preds = %.backedge
  %8150 = add nuw nsw i64 %657, 1
  %8151 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8150)
  %8152 = shl i32 %8151, 3
  %8153 = add i32 %8152, %.923925
  %8154 = add nuw nsw i64 %657, 2
  %8155 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8154)
  %8156 = shl i32 %8155, 3
  %8157 = add i32 %8156, %.923925
  %8158 = zext i32 %8157 to i64
  %8159 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8158)
  %8160 = zext i32 %8153 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8160, i64 noundef %8159)
  %8161 = add i32 %.323685, 3
  br label %.backedge.backedge

8162:                                             ; preds = %747, %729
  %.sink27226 = phi i64 [ %724, %729 ], [ %742, %747 ]
  %.sink27225 = phi i32 [ 3, %729 ], [ 2, %747 ]
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef %.sink27226)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.323685)
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef %0, i32 noundef %80, i32 noundef %2, i32 noundef %57) #5
  %8163 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %8164 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %.pre-phi26444)
  %.not24678 = icmp eq i32 %8164, 0
  br i1 %.not24678, label %._crit_edge, label %8165

8165:                                             ; preds = %8162
  %8166 = add i32 %.323685, %.sink27225
  %8167 = zext i32 %8163 to i64
  %8168 = add nuw nsw i64 %8167, 1
  %8169 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8168)
  %8170 = shl i32 %8169, 3
  %8171 = add i32 %8170, %.923925
  %8172 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %79)
  %8173 = zext i32 %8171 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8173, i64 noundef %8172)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  br label %.backedge.backedge

8174:                                             ; preds = %939, %925
  %8175 = load i32, ptr %5, align 8, !tbaa !5
  %8176 = add i32 %8175, -160
  store i32 %8176, ptr %5, align 8, !tbaa !5
  %8177 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %75)
  %8178 = add i32 %8177, -48
  %8179 = zext i32 %8178 to i64
  %8180 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8179)
  %8181 = icmp ugt i64 %8180, -281474976710657
  br i1 %8181, label %8182, label %8192

8182:                                             ; preds = %8174
  %8183 = and i64 %8180, 4294967295
  %8184 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8183)
  %8185 = add i32 %8184, -1291845632
  %8186 = icmp ult i32 %8185, -67108864
  br i1 %8186, label %8458, label %8187

8187:                                             ; preds = %8182
  %8188 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %200)
  %8189 = add nuw nsw i64 %8183, 24
  %8190 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8189)
  %8191 = xor i32 %8190, %8188
  br label %8194

8192:                                             ; preds = %8174
  %8193 = trunc i64 %8180 to i32
  br label %8194

8194:                                             ; preds = %8192, %8187
  %.51 = phi i32 [ %8191, %8187 ], [ %8193, %8192 ]
  %.not24660 = icmp eq i32 %.51, 0
  br i1 %.not24660, label %8458, label %8195

8195:                                             ; preds = %8194
  %8196 = zext i32 %.51 to i64
  %8197 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8196)
  %8198 = zext i32 %8197 to i64
  %8199 = add nuw nsw i64 %8198, 40
  %8200 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8199)
  %8201 = add nuw nsw i64 %8196, 12
  %8202 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8201)
  %8203 = zext i32 %8200 to i64
  %8204 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8203)
  %8205 = zext i32 %8204 to i64
  %8206 = add nuw nsw i64 %8205, 28
  %8207 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8206)
  %8208 = load i32, ptr %142, align 4, !tbaa !20
  %8209 = icmp ult i32 %8207, %8208
  br i1 %8209, label %8210, label %.critedge24687, !prof !19

8210:                                             ; preds = %8195
  %8211 = load ptr, ptr %141, align 8, !tbaa !21
  %8212 = zext i32 %8207 to i64
  %8213 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %8211, i64 %8212
  %8214 = getelementptr inbounds i8, ptr %8213, i64 8
  %8215 = load ptr, ptr %8214, align 8, !tbaa !22
  %.not24661 = icmp eq ptr %8215, null
  br i1 %.not24661, label %.critedge24687, label %8216, !prof !18

8216:                                             ; preds = %8210
  %8217 = load ptr, ptr %8213, align 8, !tbaa !24
  %8218 = tail call zeroext i1 @func_types_eq(ptr noundef %206, ptr noundef %8217)
  br i1 %8218, label %8219, label %.critedge24687, !prof !19

.critedge24687:                                   ; preds = %8210, %8195, %8216
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

8219:                                             ; preds = %8216
  %8220 = load ptr, ptr %141, align 8, !tbaa !21
  %8221 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %8220, i64 %8212
  %8222 = getelementptr inbounds i8, ptr %8221, i64 8
  %8223 = load ptr, ptr %8222, align 8, !tbaa !22
  %8224 = getelementptr inbounds i8, ptr %8221, i64 16
  %8225 = load ptr, ptr %8224, align 8, !tbaa !25
  %8226 = tail call i32 %8223(ptr noundef %8225, i32 noundef %8200, i32 noundef %8202) #5
  %.not24662 = icmp eq i32 %8226, 0
  br i1 %.not24662, label %8232, label %8227

8227:                                             ; preds = %8219
  %8228 = zext i32 %8226 to i64
  %8229 = add nuw nsw i64 %8228, 8
  %8230 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8229)
  %8231 = icmp eq i32 %8230, -1
  br i1 %8231, label %8232, label %8233

8232:                                             ; preds = %8227, %8219
  br label %8233

8233:                                             ; preds = %8227, %8232
  %.sink27231 = phi i32 [ 0, %8232 ], [ 1, %8227 ]
  %.sink27228 = phi i32 [ 0, %8232 ], [ %8230, %8227 ]
  %8234 = zext i32 %8176 to i64
  %8235 = add nuw nsw i64 %8234, 116
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %8235, i32 noundef %.sink27231)
  %8236 = add nuw nsw i64 %8234, 112
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8236, i32 noundef %.sink27228)
  %8237 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8235)
  %.not24663 = icmp eq i32 %8237, 0
  br i1 %.not24663, label %8458, label %8238

8238:                                             ; preds = %8233
  %8239 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8196)
  %8240 = zext i32 %8239 to i64
  %8241 = add nuw nsw i64 %8240, 40
  %8242 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8241)
  %8243 = zext i32 %8242 to i64
  %8244 = add nuw nsw i64 %8243, 128
  %8245 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8244)
  %.not24664 = icmp eq i32 %8245, 0
  br i1 %.not24664, label %8246, label %8269

8246:                                             ; preds = %8238
  %8247 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8243)
  %8248 = zext i32 %8247 to i64
  %8249 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8248)
  %8250 = load i32, ptr %142, align 4, !tbaa !20
  %8251 = icmp ult i32 %8249, %8250
  br i1 %8251, label %8252, label %.critedge24689, !prof !19

8252:                                             ; preds = %8246
  %8253 = load ptr, ptr %141, align 8, !tbaa !21
  %8254 = zext i32 %8249 to i64
  %8255 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %8253, i64 %8254
  %8256 = getelementptr inbounds i8, ptr %8255, i64 8
  %8257 = load ptr, ptr %8256, align 8, !tbaa !22
  %.not24665 = icmp eq ptr %8257, null
  br i1 %.not24665, label %.critedge24689, label %8258, !prof !18

8258:                                             ; preds = %8252
  %8259 = load ptr, ptr %8255, align 8, !tbaa !24
  %8260 = tail call zeroext i1 @func_types_eq(ptr noundef %207, ptr noundef %8259)
  br i1 %8260, label %8261, label %.critedge24689, !prof !19

.critedge24689:                                   ; preds = %8252, %8246, %8258
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

8261:                                             ; preds = %8258
  %8262 = load ptr, ptr %141, align 8, !tbaa !21
  %8263 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %8262, i64 %8254
  %8264 = getelementptr inbounds i8, ptr %8263, i64 8
  %8265 = load ptr, ptr %8264, align 8, !tbaa !22
  %8266 = getelementptr inbounds i8, ptr %8263, i64 16
  %8267 = load ptr, ptr %8266, align 8, !tbaa !25
  tail call void %8265(ptr noundef %8267, i32 noundef %8242) #5
  %8268 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8244)
  br label %8269

8269:                                             ; preds = %8261, %8238
  %.32 = phi i32 [ %8268, %8261 ], [ %8245, %8238 ]
  %8270 = add nuw nsw i64 %8234, 112
  %8271 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8270)
  %8272 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %8273 = add nuw nsw i64 %8196, 8
  %8274 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8273)
  %8275 = load i32, ptr %5, align 8, !tbaa !5
  %8276 = add i32 %8275, -96
  store i32 %8276, ptr %5, align 8, !tbaa !5
  %8277 = zext i32 %.32 to i64
  %8278 = add nuw nsw i64 %8277, 72
  %8279 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8278)
  %8280 = add nuw nsw i64 %8277, 56
  %8281 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8280)
  %8282 = add nuw nsw i64 %8277, 52
  %8283 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8282)
  %8284 = sub i32 %8281, %8283
  %8285 = zext i32 %8276 to i64
  %8286 = add nuw nsw i64 %8285, 52
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8286, i32 noundef %8284)
  %8287 = add i32 %8283, %8279
  %8288 = add nuw nsw i64 %8285, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8288, i32 noundef %8287)
  %8289 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8288)
  %8290 = add nuw nsw i64 %8285, 24
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8290, i64 noundef %8289)
  %8291 = add i32 %8275, -72
  %8292 = add i32 %8275, -40
  %8293 = tail call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef nonnull %0, i32 noundef %8291, i32 noundef %8271, i32 noundef %8292) #5
  %8294 = add nuw nsw i64 %8285, 56
  %8295 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8294)
  %8296 = add i64 %8295, -1
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8294, i64 noundef %8296)
  %.not24666 = icmp eq i64 %8295, 0
  br i1 %.not24666, label %.loopexit24730, label %8297

8297:                                             ; preds = %8269
  %8298 = sub i32 %8272, %8274
  %8299 = add i32 %8293, %8271
  %8300 = zext i32 %8287 to i64
  %8301 = zext i32 %8284 to i64
  %8302 = shl nuw i64 %8301, 32
  %8303 = or disjoint i64 %8302, %8300
  %8304 = zext i32 %8298 to i64
  %8305 = add nuw nsw i64 %8285, 36
  %8306 = add nuw nsw i64 %8285, 32
  %8307 = add nuw nsw i64 %8285, 16
  %8308 = add i32 %8275, -80
  %8309 = add i32 %8275, -56
  %8310 = add nuw nsw i64 %8285, 8
  %8311 = add nuw nsw i64 %8285, 64
  %8312 = add i32 %8275, -88
  %8313 = add i32 %8275, -24
  %8314 = add nuw nsw i64 %8285, 72
  %8315 = add nuw nsw i64 %8277, 76
  %8316 = add nuw nsw i64 %8285, 80
  %8317 = add i32 %8275, -8
  %8318 = add nuw nsw i64 %8285, 40
  br label %8319

8319:                                             ; preds = %8347, %8297
  %.2423868 = phi i32 [ %8299, %8297 ], [ %8348, %8347 ]
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8305, i32 noundef %8284)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8306, i32 noundef %8287)
  %8320 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8306)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8307, i64 noundef %8320)
  %8321 = tail call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %0, i32 noundef %8308, i32 noundef %.2423868, i32 noundef %8309) #5
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8310, i64 noundef %8303)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8311, i64 noundef %8303)
  %8322 = add i32 %8321, %.2423868
  %8323 = tail call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %0, i32 noundef %8312, i32 noundef %8322, i32 noundef %8313) #5
  %8324 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8314)
  %8325 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8315)
  %8326 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8280)
  %8327 = sub i32 %8325, %8326
  %8328 = zext i32 %8327 to i64
  %8329 = shl nuw i64 %8328, 32
  %8330 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8278)
  %8331 = add i32 %8330, %8326
  %8332 = zext i32 %8331 to i64
  %8333 = or disjoint i64 %8329, %8332
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8316, i64 noundef %8333)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8285, i64 noundef %8333)
  %8334 = tail call i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef %0, i32 noundef %8276, i32 noundef %8324, i32 noundef %8317) #5
  %8335 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8318)
  %8336 = icmp eq i64 %8335, %8304
  br i1 %8336, label %8337, label %8345

8337:                                             ; preds = %8319
  %8338 = add nuw nsw i64 %8285, 88
  %8339 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8338)
  %8340 = add nuw nsw i64 %8234, 104
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %8340, i32 noundef 1)
  %8341 = add nuw nsw i64 %8234, 100
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %8341, i64 noundef %8339)
  %8342 = add i32 %8331, %8324
  %8343 = add i32 %8342, %8334
  %8344 = add nuw nsw i64 %8234, 96
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8344, i32 noundef %8343)
  br label %8353

8345:                                             ; preds = %8319
  %8346 = icmp sgt i64 %8335, %8304
  br i1 %8346, label %.loopexit24730, label %8347

8347:                                             ; preds = %8345
  %8348 = add i32 %8323, %8322
  %8349 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8294)
  %8350 = add i64 %8349, -1
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8294, i64 noundef %8350)
  %.not24667 = icmp eq i64 %8349, 0
  br i1 %.not24667, label %.loopexit24730, label %8319

.loopexit24730:                                   ; preds = %8347, %8345, %8269
  %8351 = add nuw nsw i64 %8234, 96
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8351, i64 noundef 0)
  %8352 = add nuw nsw i64 %8234, 104
  tail call void @i32_store8(ptr noundef nonnull %8, i64 noundef %8352, i32 noundef 0)
  br label %8353

8353:                                             ; preds = %.loopexit24730, %8337
  %.pre-phi26365 = phi i64 [ %8352, %.loopexit24730 ], [ %8340, %8337 ]
  store i32 %8275, ptr %5, align 8, !tbaa !5
  %8354 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %.pre-phi26365)
  %.not24668 = icmp eq i32 %8354, 0
  br i1 %.not24668, label %8458, label %8355

8355:                                             ; preds = %8353
  %8356 = add nuw nsw i64 %8234, 96
  %8357 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8356)
  %8358 = add nuw nsw i64 %8234, 100
  %8359 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8358)
  %8360 = add i32 %8359, %8357
  %8361 = tail call i32 @w2c_hermes_hermes0x3A0x3AisAllASCII0x28unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef nonnull %0, i32 noundef %8357, i32 noundef %8360) #5
  %.not24669 = icmp eq i32 %8361, 0
  br i1 %.not24669, label %8385, label %8362

8362:                                             ; preds = %8355
  %8363 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %8356)
  %.not24672 = icmp ult i64 %8363, 4294967296
  br i1 %.not24672, label %8364, label %8368

8364:                                             ; preds = %8362
  %8365 = add nuw nsw i64 %8234, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8365, i32 noundef 0)
  %8366 = add nuw nsw i64 %8234, 72
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8366, i64 noundef 111669149697)
  %8367 = add nuw nsw i64 %8234, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8367, i32 noundef 3)
  br label %8376

8368:                                             ; preds = %8362
  %8369 = lshr i64 %8363, 32
  %8370 = trunc nuw i64 %8369 to i32
  %8371 = add nuw nsw i64 %8234, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8371, i32 noundef 26)
  %8372 = add nuw nsw i64 %8234, 76
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8372, i32 noundef %8370)
  %8373 = add nuw nsw i64 %8234, 72
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8373, i32 noundef 3)
  %8374 = add nuw nsw i64 %8234, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8374, i32 noundef 3)
  %8375 = add nuw nsw i64 %8234, 48
  tail call void @i64_store32(ptr noundef nonnull %8, i64 noundef %8375, i64 noundef %8363)
  br label %8376

8376:                                             ; preds = %8368, %8364
  %.sink27234 = phi i64 [ 64, %8368 ], [ 48, %8364 ]
  %8377 = add nuw nsw i64 %.sink27234, %8234
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8377, i32 noundef 62061)
  %8378 = add nuw nsw i64 %8234, 152
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8378, i32 noundef 0)
  %8379 = add nuw nsw i64 %8234, 144
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8379, i64 noundef 4294967297)
  %8380 = add nuw nsw i64 %8234, 128
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8380, i32 noundef 3)
  %8381 = add nuw nsw i64 %8234, 120
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8381, i32 noundef 59537)
  %8382 = add i32 %8175, -112
  %8383 = add i32 %8175, -40
  %8384 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %8382, i32 noundef %928, i32 noundef %8383)
  br label %8470

8385:                                             ; preds = %8355
  %8386 = add nuw nsw i64 %8234, 52
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8386, i64 noundef 68719476736)
  %8387 = add i32 %8175, -100
  %8388 = add nuw nsw i64 %8234, 48
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8388, i32 noundef %8387)
  %8389 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8358)
  %8390 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8356)
  %8391 = add nuw nsw i64 %8234, 120
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8391, i32 noundef %8390)
  %8392 = icmp sgt i32 %8389, 0
  br i1 %8392, label %8393, label %._crit_edge26439

._crit_edge26439:                                 ; preds = %8385
  %.pre26445 = add i32 %8175, -40
  br label %8443

8393:                                             ; preds = %8385
  %8394 = add i32 %8390, %8389
  %8395 = add i32 %8175, -40
  %8396 = add nuw nsw i64 %8234, 56
  %8397 = add i32 %8175, -112
  br label %8398

8398:                                             ; preds = %8432, %8393
  %.2523869 = phi i32 [ %8390, %8393 ], [ %8439, %8432 ]
  %8399 = zext i32 %.2523869 to i64
  %8400 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %8399)
  %8401 = icmp sgt i32 %8400, -1
  br i1 %8401, label %8402, label %8405

8402:                                             ; preds = %8398
  %8403 = add i32 %.2523869, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8391, i32 noundef %8403)
  %8404 = tail call i32 @i32_load8_s(ptr noundef nonnull %8, i64 noundef %8399)
  br label %8407

8405:                                             ; preds = %8398
  %8406 = tail call i32 @w2c_hermes_unsigned0x20int0x20hermes0x3A0x3A_decodeUTF8SlowPath0x3Ctrue0x2C0x20char16_t0x2A0x20hermes0x3A0x3AconvertUTF8WithSurrogatesToUTF160x3Cchar16_t0x2A0x3E0x28char16_t0x2A0x2C0x20char0x20const0x2A0x2C0x20char0x20const0x2A0x290x3A0x3A0x27lambda0x270x28llvh0x3A0x3ATwine0x20const0x260x290x3E0x28char0x20const0x2A0x260x2C0x20char16_t0x2A0x20hermes0x3A0x3AconvertUTF8WithSurrogatesToUTF160x3Cchar16_t0x2A0x3E0x28char16_t0x2A0x2C0x20char0x20const0x2A0x2C0x20char0x20const0x2A0x290x3A0x3A0x27lambda0x270x28llvh0x3A0x3ATwine0x20const0x260x290x29(ptr noundef %0, i32 noundef %8395) #5
  br label %8407

8407:                                             ; preds = %8405, %8402
  %.52 = phi i32 [ %8404, %8402 ], [ %8406, %8405 ]
  %8408 = icmp ult i32 %.52, 65536
  %8409 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8386)
  %8410 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8396)
  %.not24671 = icmp ult i32 %8409, %8410
  br i1 %8408, label %8411, label %8412

8411:                                             ; preds = %8407
  br i1 %.not24671, label %8432, label %8430

8412:                                             ; preds = %8407
  br i1 %.not24671, label %8415, label %8413

8413:                                             ; preds = %8412
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %8397, i32 noundef %8387, i32 noundef 0, i32 noundef 2) #5
  %8414 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8386)
  br label %8415

8415:                                             ; preds = %8413, %8412
  %.823832 = phi i32 [ %8414, %8413 ], [ %8409, %8412 ]
  %8416 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8388)
  %8417 = shl i32 %.823832, 1
  %8418 = add i32 %8416, %8417
  %8419 = add i32 %.52, 983040
  %8420 = lshr i32 %8419, 10
  %8421 = and i32 %8420, 1023
  %8422 = or disjoint i32 %8421, -10240
  %8423 = zext i32 %8418 to i64
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %8423, i32 noundef %8422)
  %8424 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8386)
  %8425 = add i32 %8424, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8386, i32 noundef %8425)
  %8426 = and i32 %.52, 1023
  %8427 = or disjoint i32 %8426, -9216
  %8428 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8396)
  %8429 = icmp ult i32 %8425, %8428
  br i1 %8429, label %8432, label %8430

8430:                                             ; preds = %8415, %8411
  %.2623870 = phi i32 [ %.52, %8411 ], [ %8427, %8415 ]
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %8397, i32 noundef %8387, i32 noundef 0, i32 noundef 2) #5
  %8431 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8386)
  br label %8432

8432:                                             ; preds = %8415, %8411, %8430
  %.2723871 = phi i32 [ %.2623870, %8430 ], [ %.52, %8411 ], [ %8427, %8415 ]
  %.923833 = phi i32 [ %8431, %8430 ], [ %8409, %8411 ], [ %8425, %8415 ]
  %8433 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8388)
  %8434 = shl i32 %.923833, 1
  %8435 = add i32 %8433, %8434
  %8436 = zext i32 %8435 to i64
  tail call void @i32_store16(ptr noundef nonnull %8, i64 noundef %8436, i32 noundef %.2723871)
  %8437 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8386)
  %8438 = add i32 %8437, 1
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8386, i32 noundef %8438)
  %8439 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8391)
  %8440 = icmp ult i32 %8439, %8394
  br i1 %8440, label %8398, label %8441

8441:                                             ; preds = %8432
  %8442 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8388)
  br label %8443

8443:                                             ; preds = %._crit_edge26439, %8441
  %.pre-phi26446 = phi i32 [ %.pre26445, %._crit_edge26439 ], [ %8395, %8441 ]
  %.1023834 = phi i32 [ 0, %._crit_edge26439 ], [ %8438, %8441 ]
  %.3523727 = phi i32 [ %8387, %._crit_edge26439 ], [ %8442, %8441 ]
  %8444 = add nuw nsw i64 %8234, 152
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8444, i32 noundef 26)
  %8445 = add nuw nsw i64 %8234, 148
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8445, i32 noundef %.1023834)
  %8446 = add nuw nsw i64 %8234, 144
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8446, i32 noundef 3)
  %8447 = add nuw nsw i64 %8234, 136
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8447, i32 noundef 62061)
  %8448 = add nuw nsw i64 %8234, 128
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8448, i32 noundef 4)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8391, i32 noundef %.3523727)
  %8449 = add nuw nsw i64 %8234, 40
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8449, i32 noundef 0)
  %8450 = add nuw nsw i64 %8234, 32
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8450, i64 noundef 4294967297)
  %8451 = add nuw nsw i64 %8234, 16
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8451, i32 noundef 3)
  %8452 = add nuw nsw i64 %8234, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8452, i32 noundef 59537)
  %8453 = add i32 %8175, -152
  %8454 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef %0, i32 noundef %2, i32 noundef %.pre-phi26446, i32 noundef %928, i32 noundef %8453)
  %8455 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8388)
  %8456 = icmp eq i32 %8387, %8455
  br i1 %8456, label %8470, label %8457

8457:                                             ; preds = %8443
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %8455) #5
  br label %8470

8458:                                             ; preds = %8353, %8233, %8194, %8182
  %8459 = zext i32 %8176 to i64
  %8460 = add nuw nsw i64 %8459, 80
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8460, i32 noundef 0)
  %8461 = add nuw nsw i64 %8459, 72
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8461, i64 noundef 1)
  %8462 = add nuw nsw i64 %8459, 56
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8462, i32 noundef 1)
  %8463 = add nuw nsw i64 %8459, 152
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8463, i32 noundef 0)
  %8464 = add nuw nsw i64 %8459, 144
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8464, i64 noundef 77309411329)
  %8465 = add nuw nsw i64 %8459, 128
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8465, i32 noundef 3)
  %8466 = add nuw nsw i64 %8459, 120
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8466, i32 noundef 41218)
  %8467 = add i32 %8175, -112
  %8468 = add i32 %8175, -40
  %8469 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ARuntime0x3A0x3AraiseTypeErrorForValue0x28hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ATwineChar160x20const0x260x29(ptr noundef nonnull %0, i32 noundef %2, i32 noundef %8467, i32 noundef %928, i32 noundef %8468)
  br label %8470

8470:                                             ; preds = %8443, %8458, %8457, %8376
  %.2823872 = phi i32 [ %8469, %8458 ], [ %8384, %8376 ], [ %8454, %8443 ], [ %8454, %8457 ]
  store i32 %8175, ptr %5, align 8, !tbaa !5
  br label %8471

8471:                                             ; preds = %8470, %942
  %.1023806 = phi i64 [ -1688849860263936, %8470 ], [ %943, %942 ]
  %.53 = phi i32 [ %.2823872, %8470 ], [ %944, %942 ]
  %8472 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %.not24673 = icmp eq i32 %.53, 0
  br i1 %.not24673, label %._crit_edge, label %8473

8473:                                             ; preds = %8471
  %8474 = zext i32 %8472 to i64
  %8475 = add nuw nsw i64 %8474, 1
  %8476 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8475)
  %8477 = shl i32 %8476, 3
  %8478 = add i32 %8477, %.923925
  %8479 = zext i32 %8478 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8479, i64 noundef %.1023806)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  br label %.backedge.backedge

.loopexit24733:                                   ; preds = %.preheader24732, %1677
  %.4023913 = phi i32 [ %1674, %1677 ], [ %1682, %.preheader24732 ]
  %.3623728 = phi i32 [ %1676, %1677 ], [ %1679, %.preheader24732 ]
  %8480 = icmp ult i32 %1676, 8
  br i1 %8480, label %.loopexit24731, label %.preheader

.preheader:                                       ; preds = %.loopexit24733, %.preheader
  %.4123914 = phi i32 [ %8504, %.preheader ], [ %.4023913, %.loopexit24733 ]
  %.3723729 = phi i32 [ %8505, %.preheader ], [ %.3623728, %.loopexit24733 ]
  %8481 = zext i32 %.4123914 to i64
  %8482 = add nuw nsw i64 %8481, 4
  %8483 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8482)
  %8484 = zext i32 %8483 to i64
  %8485 = add nuw nsw i64 %8484, 4
  %8486 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8485)
  %8487 = zext i32 %8486 to i64
  %8488 = add nuw nsw i64 %8487, 4
  %8489 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8488)
  %8490 = zext i32 %8489 to i64
  %8491 = add nuw nsw i64 %8490, 4
  %8492 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8491)
  %8493 = zext i32 %8492 to i64
  %8494 = add nuw nsw i64 %8493, 4
  %8495 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8494)
  %8496 = zext i32 %8495 to i64
  %8497 = add nuw nsw i64 %8496, 4
  %8498 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8497)
  %8499 = zext i32 %8498 to i64
  %8500 = add nuw nsw i64 %8499, 4
  %8501 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8500)
  %8502 = zext i32 %8501 to i64
  %8503 = add nuw nsw i64 %8502, 4
  %8504 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8503)
  %8505 = add i32 %.3723729, -8
  %.not24617 = icmp eq i32 %8505, 0
  br i1 %.not24617, label %.loopexit24731, label %.preheader

.loopexit24731:                                   ; preds = %.preheader, %.loopexit24733, %1668
  %.4223915 = phi i32 [ %1674, %1668 ], [ %.4023913, %.loopexit24733 ], [ %8504, %.preheader ]
  %8506 = add nuw nsw i64 %657, 1
  %8507 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8506)
  %8508 = shl i32 %8507, 3
  %8509 = add i32 %8508, %.923925
  %8510 = zext i32 %.4223915 to i64
  %8511 = or disjoint i64 %8510, -281474976710656
  %8512 = zext i32 %8509 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8512, i64 noundef %8511)
  %8513 = add i32 %.323685, 3
  br label %.backedge.backedge

8514:                                             ; preds = %.loopexit27240, %._crit_edge
  %.1023926 = phi i32 [ %.923925, %.loopexit27240 ], [ %.823924.lcssa, %._crit_edge ]
  %.323838 = phi i32 [ %.223837, %.loopexit27240 ], [ %.123836.lcssa, %._crit_edge ]
  %.1123807 = phi i64 [ %1212, %.loopexit27240 ], [ %656, %._crit_edge ]
  %.34 = phi i32 [ %.323685, %.loopexit27240 ], [ %.223684.lcssa, %._crit_edge ]
  %8515 = icmp ult i64 %.1123807, -844424930131968
  br i1 %8515, label %8562, label %8516

8516:                                             ; preds = %8514
  %8517 = and i64 %.1123807, 4294967295
  %8518 = add nuw nsw i64 %8517, 3
  %8519 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8518)
  %.mask24641 = and i32 %8519, 255
  %.not24640 = icmp eq i32 %.mask24641, 29
  br i1 %.not24640, label %8520, label %8562

8520:                                             ; preds = %8516
  %8521 = add nuw nsw i64 %8517, 36
  %8522 = tail call i32 @i32_load8_u(ptr noundef nonnull %8, i64 noundef %8521)
  %8523 = add nuw nsw i64 %8517, 20
  %8524 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8523)
  %.not24642 = icmp eq i32 %8524, 0
  br i1 %.not24642, label %8525, label %8544

8525:                                             ; preds = %8520
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %.34)
  %8526 = or disjoint i64 %8517, -281474976710656
  %8527 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %54)
  %8528 = zext i32 %8527 to i64
  %8529 = add nuw nsw i64 %8528, 164
  %8530 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8529)
  %8531 = add nuw nsw i64 %8528, 168
  %8532 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8531)
  %8533 = icmp ult i32 %8530, %8532
  br i1 %8533, label %8534, label %8537

8534:                                             ; preds = %8525
  %8535 = add i32 %8530, 8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8529, i32 noundef %8535)
  %8536 = zext i32 %8530 to i64
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %8536, i64 noundef %8526)
  br label %8539

8537:                                             ; preds = %8525
  %8538 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A_newChunkAndPHV0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef %0, i32 noundef %8527, i64 noundef %8526) #5
  %.pre = zext i32 %8538 to i64
  br label %8539

8539:                                             ; preds = %8537, %8534
  %.pre-phi = phi i64 [ %.pre, %8537 ], [ %8536, %8534 ]
  %.35 = phi i32 [ %8538, %8537 ], [ %8530, %8534 ]
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef -1970324836974592)
  %8540 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  %8541 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x3A0x3ArecordStackTrace0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20bool0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef %0, i32 noundef %.35, i32 noundef %2, i32 noundef 0, i32 noundef %.323838, i32 noundef %8540) #5
  %8542 = tail call i64 @i64_load(ptr noundef nonnull %8, i64 noundef %.pre-phi)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %81, i64 noundef %8542)
  %8543 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %24)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %.not24644 = icmp eq i32 %8522, 0
  br i1 %.not24644, label %.preheader27817, label %.preheader27818

8544:                                             ; preds = %8520
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  %.not24643 = icmp eq i32 %8522, 0
  br i1 %.not24643, label %.preheader27817, label %.preheader27818

.preheader27817:                                  ; preds = %8544, %8539
  %.37.ph = phi i32 [ %8543, %8539 ], [ %.34, %8544 ]
  br label %8545

8545:                                             ; preds = %.preheader27817, %8545
  %.1123927 = phi i32 [ %8561, %8545 ], [ %.1023926, %.preheader27817 ]
  %.423839 = phi i32 [ %8556, %8545 ], [ %.323838, %.preheader27817 ]
  %.37 = phi i32 [ %8553, %8545 ], [ %.37.ph, %.preheader27817 ]
  %8546 = zext i32 %.423839 to i64
  %8547 = add nuw nsw i64 %8546, 8
  %8548 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8547)
  %8549 = sub i32 %.37, %8548
  %8550 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AfindCatchTargetOffset0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %.423839, i32 noundef %8549) #5
  %8551 = add i32 %.1123927, -24
  %8552 = zext i32 %8551 to i64
  %8553 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8552)
  %8554 = add i32 %.1123927, -32
  %8555 = zext i32 %8554 to i64
  %8556 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8555)
  %8557 = add i32 %.1123927, -8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %74, i32 noundef %8557)
  %8558 = add i32 %.1123927, -16
  %8559 = zext i32 %8558 to i64
  %8560 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8559)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %75, i32 noundef %8560)
  %8561 = add i32 %8560, 8
  %.not24645 = icmp eq i32 %8556, 0
  br i1 %.not24645, label %.loopexit, label %8545

8562:                                             ; preds = %8516, %8514
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %62, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %64, i32 noundef %63)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %68, i32 noundef %67)
  tail call void @i64_store(ptr noundef nonnull %8, i64 noundef %66, i64 noundef -1688849860263936)
  br label %.preheader27818

.preheader27818:                                  ; preds = %8544, %8539, %8562
  %.39.ph = phi i32 [ %.34, %8562 ], [ %8543, %8539 ], [ %.34, %8544 ]
  br label %8563

8563:                                             ; preds = %.preheader27818, %8569
  %.1223928 = phi i32 [ %8580, %8569 ], [ %.1023926, %.preheader27818 ]
  %.523840 = phi i32 [ %8575, %8569 ], [ %.323838, %.preheader27818 ]
  %.39 = phi i32 [ %8572, %8569 ], [ %.39.ph, %.preheader27818 ]
  %8564 = zext i32 %.523840 to i64
  %8565 = add nuw nsw i64 %8564, 8
  %8566 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8565)
  %8567 = sub i32 %.39, %8566
  %8568 = tail call i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AfindCatchTargetOffset0x28unsigned0x20int0x29(ptr noundef %0, i32 noundef %.523840, i32 noundef %8567) #5
  %.not24646 = icmp eq i32 %8568, -1
  br i1 %.not24646, label %8569, label %8582

8569:                                             ; preds = %8563
  %8570 = add i32 %.1223928, -24
  %8571 = zext i32 %8570 to i64
  %8572 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8571)
  %8573 = add i32 %.1223928, -32
  %8574 = zext i32 %8573 to i64
  %8575 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8574)
  %8576 = add i32 %.1223928, -8
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %74, i32 noundef %8576)
  %8577 = add i32 %.1223928, -16
  %8578 = zext i32 %8577 to i64
  %8579 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8578)
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %75, i32 noundef %8579)
  %8580 = add i32 %8579, 8
  %.not24647 = icmp eq i32 %8575, 0
  br i1 %.not24647, label %.loopexit, label %8563

.loopexit:                                        ; preds = %8569, %8545
  %8581 = zext i32 %1 to i64
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %8581, i32 noundef 0)
  br label %8588

8582:                                             ; preds = %8563
  %8583 = add nuw nsw i64 %8564, 4
  %8584 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8583)
  %8585 = and i32 %8584, 1
  %.not24648 = icmp eq i32 %8585, 0
  %.54.v = select i1 %.not24648, i32 15, i32 29
  %.54 = add i32 %.54.v, %8584
  %8586 = tail call i32 @i32_load(ptr noundef nonnull %8, i64 noundef %8565)
  %8587 = add i32 %8586, %8568
  br label %.outer

8588:                                             ; preds = %.loopexit, %1171, %648
  tail call void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AGCScope0x3A0x3A0x7EGCScope0x280x29(ptr noundef %0, i32 noundef %65) #5
  br label %8589

8589:                                             ; preds = %8588, %49
  tail call void @i32_store(ptr noundef nonnull %8, i64 noundef %24, i32 noundef %25)
  br label %8590

8590:                                             ; preds = %8589, %14
  store i32 %6, ptr %5, align 8, !tbaa !5
  ret void
}

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AlazyCompileImpl0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2A0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x2A0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x2A0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x3E0x3A0x3AInsertIntoBucket0x3Chermes0x3A0x3AInstruction0x2A0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x260x3E0x28llvh0x3A0x3Adetail0x3A0x3ADenseSetPair0x3Chermes0x3A0x3AInstruction0x2A0x3E0x2A0x2C0x20hermes0x3A0x3AInstruction0x2A0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseSetEmpty0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABoundFunction0x3A0x3A_boundCall0x28hermes0x3A0x3Avm0x3A0x3ABoundFunction0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AimplCallBuiltin0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AsaveGenerator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Ainst0x3A0x3AInst0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue320x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

declare i32 @w2c_hermes__import_test_timeout(ptr noundef) local_unnamed_addr #2

declare i32 @w2c_hermes__import_test_and_clear_timeout(ptr noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSError0x2A0x20hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AmakeA0x3Chermes0x3A0x3Avm0x3A0x3AJSError0x2C0x20true0x2C0x200x28hermes0x3A0x3Avm0x3A0x3AHasFinalizer0x2910x2C0x200x28hermes0x3A0x3Avm0x3A0x3ALongLived0x2900x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x2C0x20bool0x260x3E0x28unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x260x260x2C0x20bool0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSFunction0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ADomain0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateGenerator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntimeModule0x2A0x2C0x20unsigned0x20int0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AEnvironment0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ANativeArgs0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHadesGC0x3A0x3AsnapshotWriteBarrierInternal0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i32 noundef, i64 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetOwnNamedDescriptor0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3ANamedPropertyDescriptor0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AputByIdTransient_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoObject0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AputComputedWithReceiver_RJS0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AvalueToSymbolID0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputedPrimitive0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetForInPropertyNames0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20unsigned0x20int0x260x2C0x20unsigned0x20int0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AgetComputedPrimitiveDescriptor0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AMutableHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AMutableHandle0x3Chermes0x3A0x3Avm0x3A0x3ASymbolID0x3E0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AComputedPropertyDescriptor0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoString_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumber_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoNumeric_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoBoolean0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i64 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x28hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3AaddSignedResultSize0x28hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20long0x20long0x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Aadd0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AraiseOnError0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Abigint0x3A0x3AOperationStatus0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Abigint0x3A0x3Asubtract0x28hermes0x3A0x3Abigint0x3A0x3AMutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x2C0x20hermes0x3A0x3Abigint0x3A0x3AImmutableBigIntRef0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

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

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

declare i32 @w2c_hermes_hermes0x3A0x3AtruncateToInt32SlowPath0x28double0x29(ptr noundef, double noundef) local_unnamed_addr #2

declare void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcComplement0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AgetArgumentsPropByValSlowPath_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3APinnedHermesValue0x2A0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AreifyArgumentsSlowPath0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateObjectFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSArray0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AInterpreter0x3A0x3AcreateArrayFromBuffer0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACodeBlock0x2A0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AstrictEqualityTest0x28hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x29(ptr noundef, i64 noundef, i64 noundef) local_unnamed_addr #2

declare void @w2c_hermes_llvh0x3A0x3AAPInt0x3A0x3AtcNegate0x28unsigned0x20long0x20long0x2A0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i64 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtypeOf0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdoBigIntBinOp0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ACallResult0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x200x28hermes0x3A0x3Avm0x3A0x3Adetail0x3A0x3ACallResultSpecialize0x2920x3E0x200x280x2A0x290x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x290x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AinstanceOfOperator_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AhasComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineNewOwnProperty0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteNamed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3ASymbolID0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdeleteComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSRegExp0x3A0x3Acreate0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AcheckedMalloc0x28unsigned0x20long0x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ABigIntPrimitive0x3A0x3AfromBytes0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AtoUInt32_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AlessEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgreaterEqualOp_RJS0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AJSObject0x3A0x3AdefineOwnComputed0x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ADefinePropertyFlags0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3APropOpFlags0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x28hermes0x3A0x3Avm0x3A0x3ACallable0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall10x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHermesValue0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i64 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AdirectEval0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AStringPrimitive0x3E0x2C0x20hermes0x3A0x3AScopeChain0x20const0x260x2C0x20bool0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AgetIterator0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20llvh0x3A0x3AOptional0x3Chermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare void @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACallable0x3A0x3AexecuteCall00x28hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3ACallable0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x20hermes0x3A0x3Avm0x3A0x3AHandleRootOwner0x3A0x3AmakeHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x28hermes0x3A0x3Avm0x3A0x3APseudoHandle0x3Chermes0x3A0x3Avm0x3A0x3AHiddenClass0x3E0x260x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3AiteratorClose0x28hermes0x3A0x3Avm0x3A0x3ARuntime0x260x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AJSObject0x3E0x2C0x20hermes0x3A0x3Avm0x3A0x3AHandle0x3Chermes0x3A0x3Avm0x3A0x3AHermesValue0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AreadSignedLEB1280x28llvh0x3A0x3AArrayRef0x3Cunsigned0x20char0x3E0x2C0x20unsigned0x20int0x2C0x20long0x20long0x2A0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3AisAllASCII0x28unsigned0x20char0x20const0x2A0x2C0x20unsigned0x20char0x20const0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_unsigned0x20int0x20hermes0x3A0x3A_decodeUTF8SlowPath0x3Ctrue0x2C0x20char16_t0x2A0x20hermes0x3A0x3AconvertUTF8WithSurrogatesToUTF160x3Cchar16_t0x2A0x3E0x28char16_t0x2A0x2C0x20char0x20const0x2A0x2C0x20char0x20const0x2A0x290x3A0x3A0x27lambda0x270x28llvh0x3A0x3ATwine0x20const0x260x290x3E0x28char0x20const0x2A0x260x2C0x20char16_t0x2A0x20hermes0x3A0x3AconvertUTF8WithSurrogatesToUTF160x3Cchar16_t0x2A0x3E0x28char16_t0x2A0x2C0x20char0x20const0x2A0x2C0x20char0x20const0x2A0x290x3A0x3A0x27lambda0x270x28llvh0x3A0x3ATwine0x20const0x260x290x29(ptr noundef, i32 noundef) local_unnamed_addr #2

declare i32 @w2c_hermes_hermes0x3A0x3Avm0x3A0x3ACodeBlock0x3A0x3AfindCatchTargetOffset0x28unsigned0x20int0x29(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) #4

attributes #0 = { nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { inlinehint nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { noreturn "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #5 = { nounwind }
attributes #6 = { noreturn nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !10, i64 24}
!6 = !{!"w2c_hermes", !7, i64 0, !7, i64 8, !7, i64 16, !10, i64 24, !10, i64 28, !10, i64 32, !11, i64 40, !14, i64 80}
!7 = !{!"any pointer", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C/C++ TBAA"}
!10 = !{!"int", !8, i64 0}
!11 = !{!"", !7, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !13, i64 32}
!12 = !{!"long", !8, i64 0}
!13 = !{!"_Bool", !8, i64 0}
!14 = !{!"", !7, i64 0, !10, i64 8, !10, i64 12}
!15 = !{!6, !10, i64 32}
!16 = !{!6, !10, i64 28}
!17 = !{!6, !7, i64 8}
!18 = !{!"branch_weights", !"expected", i32 1, i32 2000}
!19 = !{!"branch_weights", !"expected", i32 2000, i32 1}
!20 = !{!6, !10, i64 92}
!21 = !{!6, !7, i64 80}
!22 = !{!23, !7, i64 8}
!23 = !{!"", !7, i64 0, !7, i64 8, !7, i64 16}
!24 = !{!23, !7, i64 0}
!25 = !{!23, !7, i64 16}


; Effective O3 passes: ADCEPass,BDCEPass,CorrelatedValuePropagationPass,DSEPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopInstSimplifyPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,LowerExpectIntrinsicPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass