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

; 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_t3 = external constant ptr, align 8
@w2c_hermes_t0 = external constant ptr, align 8
@w2c_hermes_t2 = external constant ptr, align 8
@w2c_hermes_t5 = external constant ptr, align 8
@w2c_hermes_t1 = external constant ptr, align 8

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

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

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

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

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

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

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

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

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

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

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

declare void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef, i32 noundef) #4

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

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

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

declare void @w2c_hermes_0x5F_assert_fail(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #4

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

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

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

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

declare void @w2c_hermes_abort(ptr noundef) #4

declare void @w2c_hermes_std0x3A0x3A_0x5Fthrow_bad_array_new_length0x5Babi0x3Av150070x5D0x280x29(ptr noundef) #4

declare i32 @w2c_hermes_0x5F_memcpy(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AStringTable0x3A0x3AgetString0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #4

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

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef, i32 noundef) #4

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

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_bad_function_call0x5Babi0x3Av150070x5D0x280x29(ptr noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetContext0x280x290x20const(ptr noundef, i32 noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetOperand0x28unsigned0x20int0x290x20const(ptr noundef, i32 noundef, i32 noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetNumOperands0x280x290x20const(ptr noundef, i32 noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3APostOrderAnalysis0x3A0x3APostOrderAnalysis0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #4

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

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

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

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

declare void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetSourceRepresentationStr0x280x290x20const(ptr noundef, i32 noundef, i32 noundef) #4

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

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

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

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

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

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef, i32 noundef, i32 noundef) #4

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

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

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

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

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

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

declare i32 @w2c_hermes_llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x3A0x3AFindAndConstruct0x28hermes0x3A0x3AInstruction0x20const0x2A0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef) #4

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

declare i32 @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3A0x7ERegisterAllocator0x280x29(ptr noundef, i32 noundef) #4

; Function Attrs: nounwind uwtable
define dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AgenerateBytecodeModule0x28hermes0x3A0x3AModule0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3ABytecodeGenerationOptions0x20const0x260x2C0x20hermes0x3A0x3AOptValue0x3Cunsigned0x20int0x3E0x2C0x20hermes0x3A0x3ASourceMapGenerator0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3Ahbc0x3A0x3ABCProviderBase0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABCProviderBase0x3E0x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3, i32 noundef %4, i32 noundef %5, i32 noundef %6, i32 noundef %7) #2 {
  %9 = alloca ptr, align 8
  %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 i64, align 8
  %36 = alloca i32, align 4
  %37 = alloca i32, align 4
  %38 = alloca i32, align 4
  %39 = alloca i32, align 4
  %40 = alloca i32, align 4
  %41 = alloca i32, align 4
  %42 = alloca i64, align 8
  %43 = alloca i64, align 8
  %44 = alloca i64, align 8
  store ptr %0, ptr %9, align 8, !tbaa !5
  store i32 %1, ptr %10, align 4, !tbaa !9
  store i32 %2, ptr %11, align 4, !tbaa !9
  store i32 %3, ptr %12, align 4, !tbaa !9
  store i32 %4, ptr %13, align 4, !tbaa !9
  store i32 %5, ptr %14, align 4, !tbaa !9
  store i32 %6, ptr %15, align 4, !tbaa !9
  store i32 %7, 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 8, ptr %35) #6
  store i64 0, ptr %35, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %38) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %39) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #6
  call void @llvm.lifetime.start.p0(i64 4, ptr %41) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #6
  call void @llvm.lifetime.start.p0(i64 8, ptr %44) #6
  %45 = load ptr, ptr %9, align 8, !tbaa !5
  %46 = getelementptr inbounds %struct.w2c_hermes, ptr %45, i32 0, i32 3
  %47 = load i32, ptr %46, align 8, !tbaa !13
  store i32 %47, ptr %36, align 4, !tbaa !9
  store i32 2768, ptr %37, align 4, !tbaa !9
  %48 = load i32, ptr %37, align 4, !tbaa !9
  %49 = load i32, ptr %36, align 4, !tbaa !9
  %50 = sub i32 %49, %48
  store i32 %50, ptr %36, align 4, !tbaa !9
  %51 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %51, ptr %17, align 4, !tbaa !9
  %52 = load i32, ptr %36, align 4, !tbaa !9
  %53 = load ptr, ptr %9, align 8, !tbaa !5
  %54 = getelementptr inbounds %struct.w2c_hermes, ptr %53, i32 0, i32 3
  store i32 %52, ptr %54, align 8, !tbaa !13
  %55 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %55, ptr %36, align 4, !tbaa !9
  %56 = load ptr, ptr %9, align 8, !tbaa !5
  %57 = getelementptr inbounds %struct.w2c_hermes, ptr %56, i32 0, i32 6
  %58 = load i32, ptr %36, align 4, !tbaa !9
  %59 = zext i32 %58 to i64
  %60 = add i64 %59, 596
  %61 = call i32 @i32_load8_u(ptr noundef %57, i64 noundef %60)
  store i32 %61, ptr %36, align 4, !tbaa !9
  %62 = load i32, ptr %36, align 4, !tbaa !9
  %63 = icmp ne i32 %62, 0
  %64 = xor i1 %63, true
  %65 = zext i1 %64 to i32
  store i32 %65, ptr %36, align 4, !tbaa !9
  %66 = load i32, ptr %36, align 4, !tbaa !9
  %67 = icmp ne i32 %66, 0
  br i1 %67, label %68, label %795

68:                                               ; preds = %8
  %69 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %69, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %70 = load i32, ptr %37, align 4, !tbaa !9
  %71 = load i32, ptr %36, align 4, !tbaa !9
  %72 = add i32 %71, %70
  store i32 %72, ptr %36, align 4, !tbaa !9
  %73 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %73, ptr %37, align 4, !tbaa !9
  %74 = load ptr, ptr %9, align 8, !tbaa !5
  %75 = getelementptr inbounds %struct.w2c_hermes, ptr %74, i32 0, i32 6
  %76 = load i32, ptr %37, align 4, !tbaa !9
  %77 = zext i32 %76 to i64
  %78 = add i64 %77, 28
  %79 = call i32 @i32_load(ptr noundef %75, i64 noundef %78)
  store i32 %79, ptr %37, align 4, !tbaa !9
  store i32 128, ptr %38, align 4, !tbaa !9
  %80 = load i32, ptr %38, align 4, !tbaa !9
  %81 = load i32, ptr %37, align 4, !tbaa !9
  %82 = add i32 %81, %80
  store i32 %82, ptr %37, align 4, !tbaa !9
  %83 = load ptr, ptr %9, align 8, !tbaa !5
  %84 = load i32, ptr %36, align 4, !tbaa !9
  %85 = load i32, ptr %37, align 4, !tbaa !9
  %86 = call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3APassManager0x28hermes0x3A0x3ACodeGenerationSettings0x20const0x260x29(ptr noundef %83, i32 noundef %84, i32 noundef %85)
  store i32 %86, ptr %36, align 4, !tbaa !9
  %87 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %87, ptr %18, align 4, !tbaa !9
  store i32 16, ptr %36, align 4, !tbaa !9
  %88 = load ptr, ptr %9, align 8, !tbaa !5
  %89 = load i32, ptr %36, align 4, !tbaa !9
  %90 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %88, i32 noundef %89)
  store i32 %90, ptr %36, align 4, !tbaa !9
  %91 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %91, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 23598, ptr %38, align 4, !tbaa !9
  %92 = load i32, ptr %38, align 4, !tbaa !9
  %93 = load i32, ptr %37, align 4, !tbaa !9
  %94 = add i32 %93, %92
  store i32 %94, ptr %37, align 4, !tbaa !9
  %95 = load ptr, ptr %9, align 8, !tbaa !5
  %96 = getelementptr inbounds %struct.w2c_hermes, ptr %95, i32 0, i32 6
  %97 = load i32, ptr %36, align 4, !tbaa !9
  %98 = zext i32 %97 to i64
  %99 = add i64 %98, 8
  %100 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %96, i64 noundef %99, i32 noundef %100)
  %101 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %101, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %102 = load ptr, ptr %9, align 8, !tbaa !5
  %103 = getelementptr inbounds %struct.w2c_hermes, ptr %102, i32 0, i32 6
  %104 = load i32, ptr %36, align 4, !tbaa !9
  %105 = zext i32 %104 to i64
  %106 = add i64 %105, 4
  %107 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %103, i64 noundef %106, i32 noundef %107)
  %108 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %108, ptr %36, align 4, !tbaa !9
  store i32 270324, ptr %37, align 4, !tbaa !9
  %109 = load ptr, ptr %9, align 8, !tbaa !5
  %110 = getelementptr inbounds %struct.w2c_hermes, ptr %109, i32 0, i32 6
  %111 = load i32, ptr %36, align 4, !tbaa !9
  %112 = zext i32 %111 to i64
  %113 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %110, i64 noundef %112, i32 noundef %113)
  %114 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %114, ptr %36, align 4, !tbaa !9
  store i32 23, ptr %37, align 4, !tbaa !9
  %115 = load ptr, ptr %9, align 8, !tbaa !5
  %116 = getelementptr inbounds %struct.w2c_hermes, ptr %115, i32 0, i32 6
  %117 = load i32, ptr %36, align 4, !tbaa !9
  %118 = zext i32 %117 to i64
  %119 = add i64 %118, 12
  %120 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %116, i64 noundef %119, i32 noundef %120)
  %121 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %121, ptr %36, align 4, !tbaa !9
  %122 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %122, ptr %37, align 4, !tbaa !9
  %123 = load ptr, ptr %9, align 8, !tbaa !5
  %124 = load i32, ptr %36, align 4, !tbaa !9
  %125 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %123, i32 noundef %124, i32 noundef %125)
  %126 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %126, ptr %36, align 4, !tbaa !9
  %127 = load ptr, ptr %9, align 8, !tbaa !5
  %128 = getelementptr inbounds %struct.w2c_hermes, ptr %127, i32 0, i32 6
  %129 = load i32, ptr %36, align 4, !tbaa !9
  %130 = zext i32 %129 to i64
  %131 = add i64 %130, 4
  %132 = call i32 @i32_load8_u(ptr noundef %128, i64 noundef %131)
  store i32 %132, ptr %36, align 4, !tbaa !9
  %133 = load i32, ptr %36, align 4, !tbaa !9
  %134 = icmp ne i32 %133, 0
  br i1 %134, label %135, label %174

135:                                              ; preds = %68
  store i32 16, ptr %36, align 4, !tbaa !9
  %136 = load ptr, ptr %9, align 8, !tbaa !5
  %137 = load i32, ptr %36, align 4, !tbaa !9
  %138 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %136, i32 noundef %137)
  store i32 %138, ptr %36, align 4, !tbaa !9
  %139 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %139, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 28129, ptr %38, align 4, !tbaa !9
  %140 = load i32, ptr %38, align 4, !tbaa !9
  %141 = load i32, ptr %37, align 4, !tbaa !9
  %142 = add i32 %141, %140
  store i32 %142, ptr %37, align 4, !tbaa !9
  %143 = load ptr, ptr %9, align 8, !tbaa !5
  %144 = getelementptr inbounds %struct.w2c_hermes, ptr %143, i32 0, i32 6
  %145 = load i32, ptr %36, align 4, !tbaa !9
  %146 = zext i32 %145 to i64
  %147 = add i64 %146, 8
  %148 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %144, i64 noundef %147, i32 noundef %148)
  %149 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %149, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %150 = load ptr, ptr %9, align 8, !tbaa !5
  %151 = getelementptr inbounds %struct.w2c_hermes, ptr %150, i32 0, i32 6
  %152 = load i32, ptr %36, align 4, !tbaa !9
  %153 = zext i32 %152 to i64
  %154 = add i64 %153, 4
  %155 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %151, i64 noundef %154, i32 noundef %155)
  %156 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %156, ptr %36, align 4, !tbaa !9
  store i32 270504, ptr %37, align 4, !tbaa !9
  %157 = load ptr, ptr %9, align 8, !tbaa !5
  %158 = getelementptr inbounds %struct.w2c_hermes, ptr %157, i32 0, i32 6
  %159 = load i32, ptr %36, align 4, !tbaa !9
  %160 = zext i32 %159 to i64
  %161 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %158, i64 noundef %160, i32 noundef %161)
  %162 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %162, ptr %36, align 4, !tbaa !9
  store i32 18, ptr %37, align 4, !tbaa !9
  %163 = load ptr, ptr %9, align 8, !tbaa !5
  %164 = getelementptr inbounds %struct.w2c_hermes, ptr %163, i32 0, i32 6
  %165 = load i32, ptr %36, align 4, !tbaa !9
  %166 = zext i32 %165 to i64
  %167 = add i64 %166, 12
  %168 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %164, i64 noundef %167, i32 noundef %168)
  %169 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %169, ptr %36, align 4, !tbaa !9
  %170 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %170, ptr %37, align 4, !tbaa !9
  %171 = load ptr, ptr %9, align 8, !tbaa !5
  %172 = load i32, ptr %36, align 4, !tbaa !9
  %173 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %171, i32 noundef %172, i32 noundef %173)
  br label %174

174:                                              ; preds = %135, %68
  store i32 16, ptr %36, align 4, !tbaa !9
  %175 = load ptr, ptr %9, align 8, !tbaa !5
  %176 = load i32, ptr %36, align 4, !tbaa !9
  %177 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %175, i32 noundef %176)
  store i32 %177, ptr %36, align 4, !tbaa !9
  %178 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %178, ptr %20, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %179 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %179, ptr %19, align 4, !tbaa !9
  store i32 48420, ptr %38, align 4, !tbaa !9
  %180 = load i32, ptr %38, align 4, !tbaa !9
  %181 = load i32, ptr %37, align 4, !tbaa !9
  %182 = add i32 %181, %180
  store i32 %182, ptr %37, align 4, !tbaa !9
  %183 = load ptr, ptr %9, align 8, !tbaa !5
  %184 = getelementptr inbounds %struct.w2c_hermes, ptr %183, i32 0, i32 6
  %185 = load i32, ptr %36, align 4, !tbaa !9
  %186 = zext i32 %185 to i64
  %187 = add i64 %186, 8
  %188 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %184, i64 noundef %187, i32 noundef %188)
  %189 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %189, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %190 = load ptr, ptr %9, align 8, !tbaa !5
  %191 = getelementptr inbounds %struct.w2c_hermes, ptr %190, i32 0, i32 6
  %192 = load i32, ptr %36, align 4, !tbaa !9
  %193 = zext i32 %192 to i64
  %194 = add i64 %193, 4
  %195 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %191, i64 noundef %194, i32 noundef %195)
  %196 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %196, ptr %36, align 4, !tbaa !9
  store i32 270664, ptr %37, align 4, !tbaa !9
  %197 = load ptr, ptr %9, align 8, !tbaa !5
  %198 = getelementptr inbounds %struct.w2c_hermes, ptr %197, i32 0, i32 6
  %199 = load i32, ptr %36, align 4, !tbaa !9
  %200 = zext i32 %199 to i64
  %201 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %198, i64 noundef %200, i32 noundef %201)
  %202 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %202, ptr %36, align 4, !tbaa !9
  store i32 27, ptr %37, align 4, !tbaa !9
  %203 = load ptr, ptr %9, align 8, !tbaa !5
  %204 = getelementptr inbounds %struct.w2c_hermes, ptr %203, i32 0, i32 6
  %205 = load i32, ptr %36, align 4, !tbaa !9
  %206 = zext i32 %205 to i64
  %207 = add i64 %206, 12
  %208 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %204, i64 noundef %207, i32 noundef %208)
  %209 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %209, ptr %36, align 4, !tbaa !9
  %210 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %210, ptr %37, align 4, !tbaa !9
  %211 = load ptr, ptr %9, align 8, !tbaa !5
  %212 = load i32, ptr %36, align 4, !tbaa !9
  %213 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %211, i32 noundef %212, i32 noundef %213)
  store i32 16, ptr %36, align 4, !tbaa !9
  %214 = load ptr, ptr %9, align 8, !tbaa !5
  %215 = load i32, ptr %36, align 4, !tbaa !9
  %216 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %214, i32 noundef %215)
  store i32 %216, ptr %36, align 4, !tbaa !9
  %217 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %217, ptr %20, align 4, !tbaa !9
  %218 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %218, ptr %37, align 4, !tbaa !9
  store i32 43317, ptr %38, align 4, !tbaa !9
  %219 = load i32, ptr %38, align 4, !tbaa !9
  %220 = load i32, ptr %37, align 4, !tbaa !9
  %221 = add i32 %220, %219
  store i32 %221, ptr %37, align 4, !tbaa !9
  %222 = load ptr, ptr %9, align 8, !tbaa !5
  %223 = getelementptr inbounds %struct.w2c_hermes, ptr %222, i32 0, i32 6
  %224 = load i32, ptr %36, align 4, !tbaa !9
  %225 = zext i32 %224 to i64
  %226 = add i64 %225, 8
  %227 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %223, i64 noundef %226, i32 noundef %227)
  %228 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %228, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %229 = load ptr, ptr %9, align 8, !tbaa !5
  %230 = getelementptr inbounds %struct.w2c_hermes, ptr %229, i32 0, i32 6
  %231 = load i32, ptr %36, align 4, !tbaa !9
  %232 = zext i32 %231 to i64
  %233 = add i64 %232, 4
  %234 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %230, i64 noundef %233, i32 noundef %234)
  %235 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %235, ptr %36, align 4, !tbaa !9
  store i32 270712, ptr %37, align 4, !tbaa !9
  %236 = load ptr, ptr %9, align 8, !tbaa !5
  %237 = getelementptr inbounds %struct.w2c_hermes, ptr %236, i32 0, i32 6
  %238 = load i32, ptr %36, align 4, !tbaa !9
  %239 = zext i32 %238 to i64
  %240 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %237, i64 noundef %239, i32 noundef %240)
  %241 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %241, ptr %36, align 4, !tbaa !9
  store i32 17, ptr %37, align 4, !tbaa !9
  %242 = load ptr, ptr %9, align 8, !tbaa !5
  %243 = getelementptr inbounds %struct.w2c_hermes, ptr %242, i32 0, i32 6
  %244 = load i32, ptr %36, align 4, !tbaa !9
  %245 = zext i32 %244 to i64
  %246 = add i64 %245, 12
  %247 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %243, i64 noundef %246, i32 noundef %247)
  %248 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %248, ptr %36, align 4, !tbaa !9
  %249 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %249, ptr %37, align 4, !tbaa !9
  %250 = load ptr, ptr %9, align 8, !tbaa !5
  %251 = load i32, ptr %36, align 4, !tbaa !9
  %252 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %250, i32 noundef %251, i32 noundef %252)
  store i32 16, ptr %36, align 4, !tbaa !9
  %253 = load ptr, ptr %9, align 8, !tbaa !5
  %254 = load i32, ptr %36, align 4, !tbaa !9
  %255 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %253, i32 noundef %254)
  store i32 %255, ptr %36, align 4, !tbaa !9
  %256 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %256, ptr %20, align 4, !tbaa !9
  %257 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %257, ptr %37, align 4, !tbaa !9
  store i32 45052, ptr %38, align 4, !tbaa !9
  %258 = load i32, ptr %38, align 4, !tbaa !9
  %259 = load i32, ptr %37, align 4, !tbaa !9
  %260 = add i32 %259, %258
  store i32 %260, ptr %37, align 4, !tbaa !9
  %261 = load ptr, ptr %9, align 8, !tbaa !5
  %262 = getelementptr inbounds %struct.w2c_hermes, ptr %261, i32 0, i32 6
  %263 = load i32, ptr %36, align 4, !tbaa !9
  %264 = zext i32 %263 to i64
  %265 = add i64 %264, 8
  %266 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %262, i64 noundef %265, i32 noundef %266)
  %267 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %267, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %268 = load ptr, ptr %9, align 8, !tbaa !5
  %269 = getelementptr inbounds %struct.w2c_hermes, ptr %268, i32 0, i32 6
  %270 = load i32, ptr %36, align 4, !tbaa !9
  %271 = zext i32 %270 to i64
  %272 = add i64 %271, 4
  %273 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %269, i64 noundef %272, i32 noundef %273)
  %274 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %274, ptr %36, align 4, !tbaa !9
  store i32 270604, ptr %37, align 4, !tbaa !9
  %275 = load ptr, ptr %9, align 8, !tbaa !5
  %276 = getelementptr inbounds %struct.w2c_hermes, ptr %275, i32 0, i32 6
  %277 = load i32, ptr %36, align 4, !tbaa !9
  %278 = zext i32 %277 to i64
  %279 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %276, i64 noundef %278, i32 noundef %279)
  %280 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %280, ptr %36, align 4, !tbaa !9
  store i32 22, ptr %37, align 4, !tbaa !9
  %281 = load ptr, ptr %9, align 8, !tbaa !5
  %282 = getelementptr inbounds %struct.w2c_hermes, ptr %281, i32 0, i32 6
  %283 = load i32, ptr %36, align 4, !tbaa !9
  %284 = zext i32 %283 to i64
  %285 = add i64 %284, 12
  %286 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %282, i64 noundef %285, i32 noundef %286)
  %287 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %287, ptr %36, align 4, !tbaa !9
  %288 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %288, ptr %37, align 4, !tbaa !9
  %289 = load ptr, ptr %9, align 8, !tbaa !5
  %290 = load i32, ptr %36, align 4, !tbaa !9
  %291 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %289, i32 noundef %290, i32 noundef %291)
  store i32 16, ptr %36, align 4, !tbaa !9
  %292 = load ptr, ptr %9, align 8, !tbaa !5
  %293 = load i32, ptr %36, align 4, !tbaa !9
  %294 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %292, i32 noundef %293)
  store i32 %294, ptr %36, align 4, !tbaa !9
  %295 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %295, ptr %20, align 4, !tbaa !9
  %296 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %296, ptr %37, align 4, !tbaa !9
  store i32 65252, ptr %38, align 4, !tbaa !9
  %297 = load i32, ptr %38, align 4, !tbaa !9
  %298 = load i32, ptr %37, align 4, !tbaa !9
  %299 = add i32 %298, %297
  store i32 %299, ptr %37, align 4, !tbaa !9
  %300 = load ptr, ptr %9, align 8, !tbaa !5
  %301 = getelementptr inbounds %struct.w2c_hermes, ptr %300, i32 0, i32 6
  %302 = load i32, ptr %36, align 4, !tbaa !9
  %303 = zext i32 %302 to i64
  %304 = add i64 %303, 8
  %305 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %301, i64 noundef %304, i32 noundef %305)
  %306 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %306, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %307 = load ptr, ptr %9, align 8, !tbaa !5
  %308 = getelementptr inbounds %struct.w2c_hermes, ptr %307, i32 0, i32 6
  %309 = load i32, ptr %36, align 4, !tbaa !9
  %310 = zext i32 %309 to i64
  %311 = add i64 %310, 4
  %312 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %308, i64 noundef %311, i32 noundef %312)
  %313 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %313, ptr %36, align 4, !tbaa !9
  store i32 270384, ptr %37, align 4, !tbaa !9
  %314 = load ptr, ptr %9, align 8, !tbaa !5
  %315 = getelementptr inbounds %struct.w2c_hermes, ptr %314, i32 0, i32 6
  %316 = load i32, ptr %36, align 4, !tbaa !9
  %317 = zext i32 %316 to i64
  %318 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %315, i64 noundef %317, i32 noundef %318)
  %319 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %319, ptr %36, align 4, !tbaa !9
  store i32 17, ptr %37, align 4, !tbaa !9
  %320 = load ptr, ptr %9, align 8, !tbaa !5
  %321 = getelementptr inbounds %struct.w2c_hermes, ptr %320, i32 0, i32 6
  %322 = load i32, ptr %36, align 4, !tbaa !9
  %323 = zext i32 %322 to i64
  %324 = add i64 %323, 12
  %325 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %321, i64 noundef %324, i32 noundef %325)
  %326 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %326, ptr %36, align 4, !tbaa !9
  %327 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %327, ptr %37, align 4, !tbaa !9
  %328 = load ptr, ptr %9, align 8, !tbaa !5
  %329 = load i32, ptr %36, align 4, !tbaa !9
  %330 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %328, i32 noundef %329, i32 noundef %330)
  store i32 16, ptr %36, align 4, !tbaa !9
  %331 = load ptr, ptr %9, align 8, !tbaa !5
  %332 = load i32, ptr %36, align 4, !tbaa !9
  %333 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %331, i32 noundef %332)
  store i32 %333, ptr %36, align 4, !tbaa !9
  %334 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %334, ptr %20, align 4, !tbaa !9
  %335 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %335, ptr %37, align 4, !tbaa !9
  store i32 18649, ptr %38, align 4, !tbaa !9
  %336 = load i32, ptr %38, align 4, !tbaa !9
  %337 = load i32, ptr %37, align 4, !tbaa !9
  %338 = add i32 %337, %336
  store i32 %338, ptr %37, align 4, !tbaa !9
  %339 = load ptr, ptr %9, align 8, !tbaa !5
  %340 = getelementptr inbounds %struct.w2c_hermes, ptr %339, i32 0, i32 6
  %341 = load i32, ptr %36, align 4, !tbaa !9
  %342 = zext i32 %341 to i64
  %343 = add i64 %342, 8
  %344 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %340, i64 noundef %343, i32 noundef %344)
  %345 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %345, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %346 = load ptr, ptr %9, align 8, !tbaa !5
  %347 = getelementptr inbounds %struct.w2c_hermes, ptr %346, i32 0, i32 6
  %348 = load i32, ptr %36, align 4, !tbaa !9
  %349 = zext i32 %348 to i64
  %350 = add i64 %349, 4
  %351 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %347, i64 noundef %350, i32 noundef %351)
  %352 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %352, ptr %36, align 4, !tbaa !9
  store i32 270344, ptr %37, align 4, !tbaa !9
  %353 = load ptr, ptr %9, align 8, !tbaa !5
  %354 = getelementptr inbounds %struct.w2c_hermes, ptr %353, i32 0, i32 6
  %355 = load i32, ptr %36, align 4, !tbaa !9
  %356 = zext i32 %355 to i64
  %357 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %354, i64 noundef %356, i32 noundef %357)
  %358 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %358, ptr %36, align 4, !tbaa !9
  store i32 19, ptr %37, align 4, !tbaa !9
  %359 = load ptr, ptr %9, align 8, !tbaa !5
  %360 = getelementptr inbounds %struct.w2c_hermes, ptr %359, i32 0, i32 6
  %361 = load i32, ptr %36, align 4, !tbaa !9
  %362 = zext i32 %361 to i64
  %363 = add i64 %362, 12
  %364 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %360, i64 noundef %363, i32 noundef %364)
  %365 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %365, ptr %36, align 4, !tbaa !9
  %366 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %366, ptr %37, align 4, !tbaa !9
  %367 = load ptr, ptr %9, align 8, !tbaa !5
  %368 = load i32, ptr %36, align 4, !tbaa !9
  %369 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %367, i32 noundef %368, i32 noundef %369)
  store i32 20, ptr %36, align 4, !tbaa !9
  %370 = load ptr, ptr %9, align 8, !tbaa !5
  %371 = load i32, ptr %36, align 4, !tbaa !9
  %372 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %370, i32 noundef %371)
  store i32 %372, ptr %36, align 4, !tbaa !9
  %373 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %373, ptr %20, align 4, !tbaa !9
  %374 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %374, ptr %37, align 4, !tbaa !9
  store i32 19480, ptr %38, align 4, !tbaa !9
  %375 = load i32, ptr %38, align 4, !tbaa !9
  %376 = load i32, ptr %37, align 4, !tbaa !9
  %377 = add i32 %376, %375
  store i32 %377, ptr %37, align 4, !tbaa !9
  %378 = load ptr, ptr %9, align 8, !tbaa !5
  %379 = getelementptr inbounds %struct.w2c_hermes, ptr %378, i32 0, i32 6
  %380 = load i32, ptr %36, align 4, !tbaa !9
  %381 = zext i32 %380 to i64
  %382 = add i64 %381, 8
  %383 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %379, i64 noundef %382, i32 noundef %383)
  %384 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %384, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %385 = load ptr, ptr %9, align 8, !tbaa !5
  %386 = getelementptr inbounds %struct.w2c_hermes, ptr %385, i32 0, i32 6
  %387 = load i32, ptr %36, align 4, !tbaa !9
  %388 = zext i32 %387 to i64
  %389 = add i64 %388, 4
  %390 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %386, i64 noundef %389, i32 noundef %390)
  %391 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %391, ptr %36, align 4, !tbaa !9
  store i32 270624, ptr %37, align 4, !tbaa !9
  %392 = load ptr, ptr %9, align 8, !tbaa !5
  %393 = getelementptr inbounds %struct.w2c_hermes, ptr %392, i32 0, i32 6
  %394 = load i32, ptr %36, align 4, !tbaa !9
  %395 = zext i32 %394 to i64
  %396 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %393, i64 noundef %395, i32 noundef %396)
  %397 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %397, ptr %36, align 4, !tbaa !9
  store i64 281470681743375, ptr %43, align 8, !tbaa !11
  %398 = load ptr, ptr %9, align 8, !tbaa !5
  %399 = getelementptr inbounds %struct.w2c_hermes, ptr %398, i32 0, i32 6
  %400 = load i32, ptr %36, align 4, !tbaa !9
  %401 = zext i32 %400 to i64
  %402 = add i64 %401, 12
  %403 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %399, i64 noundef %402, i64 noundef %403)
  %404 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %404, ptr %36, align 4, !tbaa !9
  %405 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %405, ptr %37, align 4, !tbaa !9
  %406 = load ptr, ptr %9, align 8, !tbaa !5
  %407 = load i32, ptr %36, align 4, !tbaa !9
  %408 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %406, i32 noundef %407, i32 noundef %408)
  store i32 16, ptr %36, align 4, !tbaa !9
  %409 = load ptr, ptr %9, align 8, !tbaa !5
  %410 = load i32, ptr %36, align 4, !tbaa !9
  %411 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %409, i32 noundef %410)
  store i32 %411, ptr %36, align 4, !tbaa !9
  %412 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %412, ptr %20, align 4, !tbaa !9
  %413 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %413, ptr %37, align 4, !tbaa !9
  store i32 40222, ptr %38, align 4, !tbaa !9
  %414 = load i32, ptr %38, align 4, !tbaa !9
  %415 = load i32, ptr %37, align 4, !tbaa !9
  %416 = add i32 %415, %414
  store i32 %416, ptr %37, align 4, !tbaa !9
  %417 = load ptr, ptr %9, align 8, !tbaa !5
  %418 = getelementptr inbounds %struct.w2c_hermes, ptr %417, i32 0, i32 6
  %419 = load i32, ptr %36, align 4, !tbaa !9
  %420 = zext i32 %419 to i64
  %421 = add i64 %420, 8
  %422 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %418, i64 noundef %421, i32 noundef %422)
  %423 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %423, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %424 = load ptr, ptr %9, align 8, !tbaa !5
  %425 = getelementptr inbounds %struct.w2c_hermes, ptr %424, i32 0, i32 6
  %426 = load i32, ptr %36, align 4, !tbaa !9
  %427 = zext i32 %426 to i64
  %428 = add i64 %427, 4
  %429 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %425, i64 noundef %428, i32 noundef %429)
  %430 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %430, ptr %36, align 4, !tbaa !9
  store i32 270364, ptr %37, align 4, !tbaa !9
  %431 = load ptr, ptr %9, align 8, !tbaa !5
  %432 = getelementptr inbounds %struct.w2c_hermes, ptr %431, i32 0, i32 6
  %433 = load i32, ptr %36, align 4, !tbaa !9
  %434 = zext i32 %433 to i64
  %435 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %432, i64 noundef %434, i32 noundef %435)
  %436 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %436, ptr %36, align 4, !tbaa !9
  store i32 19, ptr %37, align 4, !tbaa !9
  %437 = load ptr, ptr %9, align 8, !tbaa !5
  %438 = getelementptr inbounds %struct.w2c_hermes, ptr %437, i32 0, i32 6
  %439 = load i32, ptr %36, align 4, !tbaa !9
  %440 = zext i32 %439 to i64
  %441 = add i64 %440, 12
  %442 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %438, i64 noundef %441, i32 noundef %442)
  %443 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %443, ptr %36, align 4, !tbaa !9
  %444 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %444, ptr %37, align 4, !tbaa !9
  %445 = load ptr, ptr %9, align 8, !tbaa !5
  %446 = load i32, ptr %36, align 4, !tbaa !9
  %447 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %445, i32 noundef %446, i32 noundef %447)
  store i32 16, ptr %36, align 4, !tbaa !9
  %448 = load ptr, ptr %9, align 8, !tbaa !5
  %449 = load i32, ptr %36, align 4, !tbaa !9
  %450 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %448, i32 noundef %449)
  store i32 %450, ptr %36, align 4, !tbaa !9
  %451 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %451, ptr %20, align 4, !tbaa !9
  %452 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %452, ptr %37, align 4, !tbaa !9
  store i32 44936, ptr %38, align 4, !tbaa !9
  %453 = load i32, ptr %38, align 4, !tbaa !9
  %454 = load i32, ptr %37, align 4, !tbaa !9
  %455 = add i32 %454, %453
  store i32 %455, ptr %37, align 4, !tbaa !9
  %456 = load ptr, ptr %9, align 8, !tbaa !5
  %457 = getelementptr inbounds %struct.w2c_hermes, ptr %456, i32 0, i32 6
  %458 = load i32, ptr %36, align 4, !tbaa !9
  %459 = zext i32 %458 to i64
  %460 = add i64 %459, 8
  %461 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %457, i64 noundef %460, i32 noundef %461)
  %462 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %462, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %463 = load ptr, ptr %9, align 8, !tbaa !5
  %464 = getelementptr inbounds %struct.w2c_hermes, ptr %463, i32 0, i32 6
  %465 = load i32, ptr %36, align 4, !tbaa !9
  %466 = zext i32 %465 to i64
  %467 = add i64 %466, 4
  %468 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %464, i64 noundef %467, i32 noundef %468)
  %469 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %469, ptr %36, align 4, !tbaa !9
  store i32 270484, ptr %37, align 4, !tbaa !9
  %470 = load ptr, ptr %9, align 8, !tbaa !5
  %471 = getelementptr inbounds %struct.w2c_hermes, ptr %470, i32 0, i32 6
  %472 = load i32, ptr %36, align 4, !tbaa !9
  %473 = zext i32 %472 to i64
  %474 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %471, i64 noundef %473, i32 noundef %474)
  %475 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %475, ptr %36, align 4, !tbaa !9
  store i32 25, ptr %37, align 4, !tbaa !9
  %476 = load ptr, ptr %9, align 8, !tbaa !5
  %477 = getelementptr inbounds %struct.w2c_hermes, ptr %476, i32 0, i32 6
  %478 = load i32, ptr %36, align 4, !tbaa !9
  %479 = zext i32 %478 to i64
  %480 = add i64 %479, 12
  %481 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %477, i64 noundef %480, i32 noundef %481)
  %482 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %482, ptr %36, align 4, !tbaa !9
  %483 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %483, ptr %37, align 4, !tbaa !9
  %484 = load ptr, ptr %9, align 8, !tbaa !5
  %485 = load i32, ptr %36, align 4, !tbaa !9
  %486 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %484, i32 noundef %485, i32 noundef %486)
  store i32 16, ptr %36, align 4, !tbaa !9
  %487 = load ptr, ptr %9, align 8, !tbaa !5
  %488 = load i32, ptr %36, align 4, !tbaa !9
  %489 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %487, i32 noundef %488)
  store i32 %489, ptr %36, align 4, !tbaa !9
  %490 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %490, ptr %20, align 4, !tbaa !9
  %491 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %491, ptr %37, align 4, !tbaa !9
  store i32 87335, ptr %38, align 4, !tbaa !9
  %492 = load i32, ptr %38, align 4, !tbaa !9
  %493 = load i32, ptr %37, align 4, !tbaa !9
  %494 = add i32 %493, %492
  store i32 %494, ptr %37, align 4, !tbaa !9
  %495 = load ptr, ptr %9, align 8, !tbaa !5
  %496 = getelementptr inbounds %struct.w2c_hermes, ptr %495, i32 0, i32 6
  %497 = load i32, ptr %36, align 4, !tbaa !9
  %498 = zext i32 %497 to i64
  %499 = add i64 %498, 8
  %500 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %496, i64 noundef %499, i32 noundef %500)
  %501 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %501, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %502 = load ptr, ptr %9, align 8, !tbaa !5
  %503 = getelementptr inbounds %struct.w2c_hermes, ptr %502, i32 0, i32 6
  %504 = load i32, ptr %36, align 4, !tbaa !9
  %505 = zext i32 %504 to i64
  %506 = add i64 %505, 4
  %507 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %503, i64 noundef %506, i32 noundef %507)
  %508 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %508, ptr %36, align 4, !tbaa !9
  store i32 270544, ptr %37, align 4, !tbaa !9
  %509 = load ptr, ptr %9, align 8, !tbaa !5
  %510 = getelementptr inbounds %struct.w2c_hermes, ptr %509, i32 0, i32 6
  %511 = load i32, ptr %36, align 4, !tbaa !9
  %512 = zext i32 %511 to i64
  %513 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %510, i64 noundef %512, i32 noundef %513)
  %514 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %514, ptr %36, align 4, !tbaa !9
  store i32 14, ptr %37, align 4, !tbaa !9
  %515 = load ptr, ptr %9, align 8, !tbaa !5
  %516 = getelementptr inbounds %struct.w2c_hermes, ptr %515, i32 0, i32 6
  %517 = load i32, ptr %36, align 4, !tbaa !9
  %518 = zext i32 %517 to i64
  %519 = add i64 %518, 12
  %520 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %516, i64 noundef %519, i32 noundef %520)
  %521 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %521, ptr %36, align 4, !tbaa !9
  %522 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %522, ptr %37, align 4, !tbaa !9
  %523 = load ptr, ptr %9, align 8, !tbaa !5
  %524 = load i32, ptr %36, align 4, !tbaa !9
  %525 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %523, i32 noundef %524, i32 noundef %525)
  store i32 16, ptr %36, align 4, !tbaa !9
  %526 = load ptr, ptr %9, align 8, !tbaa !5
  %527 = load i32, ptr %36, align 4, !tbaa !9
  %528 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %526, i32 noundef %527)
  store i32 %528, ptr %36, align 4, !tbaa !9
  %529 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %529, ptr %20, align 4, !tbaa !9
  %530 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %530, ptr %37, align 4, !tbaa !9
  store i32 40569, ptr %38, align 4, !tbaa !9
  %531 = load i32, ptr %38, align 4, !tbaa !9
  %532 = load i32, ptr %37, align 4, !tbaa !9
  %533 = add i32 %532, %531
  store i32 %533, ptr %37, align 4, !tbaa !9
  %534 = load ptr, ptr %9, align 8, !tbaa !5
  %535 = getelementptr inbounds %struct.w2c_hermes, ptr %534, i32 0, i32 6
  %536 = load i32, ptr %36, align 4, !tbaa !9
  %537 = zext i32 %536 to i64
  %538 = add i64 %537, 8
  %539 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %535, i64 noundef %538, i32 noundef %539)
  %540 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %540, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %541 = load ptr, ptr %9, align 8, !tbaa !5
  %542 = getelementptr inbounds %struct.w2c_hermes, ptr %541, i32 0, i32 6
  %543 = load i32, ptr %36, align 4, !tbaa !9
  %544 = zext i32 %543 to i64
  %545 = add i64 %544, 4
  %546 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %542, i64 noundef %545, i32 noundef %546)
  %547 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %547, ptr %36, align 4, !tbaa !9
  store i32 270284, ptr %37, align 4, !tbaa !9
  %548 = load ptr, ptr %9, align 8, !tbaa !5
  %549 = getelementptr inbounds %struct.w2c_hermes, ptr %548, i32 0, i32 6
  %550 = load i32, ptr %36, align 4, !tbaa !9
  %551 = zext i32 %550 to i64
  %552 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %549, i64 noundef %551, i32 noundef %552)
  %553 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %553, ptr %36, align 4, !tbaa !9
  store i32 13, ptr %37, align 4, !tbaa !9
  %554 = load ptr, ptr %9, align 8, !tbaa !5
  %555 = getelementptr inbounds %struct.w2c_hermes, ptr %554, i32 0, i32 6
  %556 = load i32, ptr %36, align 4, !tbaa !9
  %557 = zext i32 %556 to i64
  %558 = add i64 %557, 12
  %559 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %555, i64 noundef %558, i32 noundef %559)
  %560 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %560, ptr %36, align 4, !tbaa !9
  %561 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %561, ptr %37, align 4, !tbaa !9
  %562 = load ptr, ptr %9, align 8, !tbaa !5
  %563 = load i32, ptr %36, align 4, !tbaa !9
  %564 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %562, i32 noundef %563, i32 noundef %564)
  store i32 16, ptr %36, align 4, !tbaa !9
  %565 = load ptr, ptr %9, align 8, !tbaa !5
  %566 = load i32, ptr %36, align 4, !tbaa !9
  %567 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %565, i32 noundef %566)
  store i32 %567, ptr %36, align 4, !tbaa !9
  %568 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %568, ptr %20, align 4, !tbaa !9
  %569 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %569, ptr %37, align 4, !tbaa !9
  store i32 41980, ptr %38, align 4, !tbaa !9
  %570 = load i32, ptr %38, align 4, !tbaa !9
  %571 = load i32, ptr %37, align 4, !tbaa !9
  %572 = add i32 %571, %570
  store i32 %572, ptr %37, align 4, !tbaa !9
  %573 = load ptr, ptr %9, align 8, !tbaa !5
  %574 = getelementptr inbounds %struct.w2c_hermes, ptr %573, i32 0, i32 6
  %575 = load i32, ptr %36, align 4, !tbaa !9
  %576 = zext i32 %575 to i64
  %577 = add i64 %576, 8
  %578 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %574, i64 noundef %577, i32 noundef %578)
  %579 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %579, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %580 = load ptr, ptr %9, align 8, !tbaa !5
  %581 = getelementptr inbounds %struct.w2c_hermes, ptr %580, i32 0, i32 6
  %582 = load i32, ptr %36, align 4, !tbaa !9
  %583 = zext i32 %582 to i64
  %584 = add i64 %583, 4
  %585 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %581, i64 noundef %584, i32 noundef %585)
  %586 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %586, ptr %36, align 4, !tbaa !9
  store i32 270304, ptr %37, align 4, !tbaa !9
  %587 = load ptr, ptr %9, align 8, !tbaa !5
  %588 = getelementptr inbounds %struct.w2c_hermes, ptr %587, i32 0, i32 6
  %589 = load i32, ptr %36, align 4, !tbaa !9
  %590 = zext i32 %589 to i64
  %591 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %588, i64 noundef %590, i32 noundef %591)
  %592 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %592, ptr %36, align 4, !tbaa !9
  store i32 14, ptr %37, align 4, !tbaa !9
  %593 = load ptr, ptr %9, align 8, !tbaa !5
  %594 = getelementptr inbounds %struct.w2c_hermes, ptr %593, i32 0, i32 6
  %595 = load i32, ptr %36, align 4, !tbaa !9
  %596 = zext i32 %595 to i64
  %597 = add i64 %596, 12
  %598 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %594, i64 noundef %597, i32 noundef %598)
  %599 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %599, ptr %36, align 4, !tbaa !9
  %600 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %600, ptr %37, align 4, !tbaa !9
  %601 = load ptr, ptr %9, align 8, !tbaa !5
  %602 = load i32, ptr %36, align 4, !tbaa !9
  %603 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %601, i32 noundef %602, i32 noundef %603)
  %604 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %604, ptr %36, align 4, !tbaa !9
  %605 = load ptr, ptr %9, align 8, !tbaa !5
  %606 = getelementptr inbounds %struct.w2c_hermes, ptr %605, i32 0, i32 6
  %607 = load i32, ptr %36, align 4, !tbaa !9
  %608 = zext i32 %607 to i64
  %609 = add i64 %608, 4
  %610 = call i32 @i32_load8_u(ptr noundef %606, i64 noundef %609)
  store i32 %610, ptr %36, align 4, !tbaa !9
  %611 = load i32, ptr %36, align 4, !tbaa !9
  %612 = icmp ne i32 %611, 0
  br i1 %612, label %613, label %749

613:                                              ; preds = %174
  store i32 16, ptr %36, align 4, !tbaa !9
  %614 = load ptr, ptr %9, align 8, !tbaa !5
  %615 = load i32, ptr %36, align 4, !tbaa !9
  %616 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %614, i32 noundef %615)
  store i32 %616, ptr %36, align 4, !tbaa !9
  %617 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %617, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %618 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %618, ptr %20, align 4, !tbaa !9
  store i32 39079, ptr %38, align 4, !tbaa !9
  %619 = load i32, ptr %38, align 4, !tbaa !9
  %620 = load i32, ptr %37, align 4, !tbaa !9
  %621 = add i32 %620, %619
  store i32 %621, ptr %37, align 4, !tbaa !9
  %622 = load ptr, ptr %9, align 8, !tbaa !5
  %623 = getelementptr inbounds %struct.w2c_hermes, ptr %622, i32 0, i32 6
  %624 = load i32, ptr %36, align 4, !tbaa !9
  %625 = zext i32 %624 to i64
  %626 = add i64 %625, 8
  %627 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %623, i64 noundef %626, i32 noundef %627)
  %628 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %628, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %629 = load ptr, ptr %9, align 8, !tbaa !5
  %630 = getelementptr inbounds %struct.w2c_hermes, ptr %629, i32 0, i32 6
  %631 = load i32, ptr %36, align 4, !tbaa !9
  %632 = zext i32 %631 to i64
  %633 = add i64 %632, 4
  %634 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %630, i64 noundef %633, i32 noundef %634)
  %635 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %635, ptr %36, align 4, !tbaa !9
  store i32 270564, ptr %37, align 4, !tbaa !9
  %636 = load ptr, ptr %9, align 8, !tbaa !5
  %637 = getelementptr inbounds %struct.w2c_hermes, ptr %636, i32 0, i32 6
  %638 = load i32, ptr %36, align 4, !tbaa !9
  %639 = zext i32 %638 to i64
  %640 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %637, i64 noundef %639, i32 noundef %640)
  %641 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %641, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %642 = load ptr, ptr %9, align 8, !tbaa !5
  %643 = getelementptr inbounds %struct.w2c_hermes, ptr %642, i32 0, i32 6
  %644 = load i32, ptr %36, align 4, !tbaa !9
  %645 = zext i32 %644 to i64
  %646 = add i64 %645, 12
  %647 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %643, i64 noundef %646, i32 noundef %647)
  %648 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %648, ptr %36, align 4, !tbaa !9
  %649 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %649, ptr %37, align 4, !tbaa !9
  %650 = load ptr, ptr %9, align 8, !tbaa !5
  %651 = load i32, ptr %36, align 4, !tbaa !9
  %652 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %650, i32 noundef %651, i32 noundef %652)
  store i32 16, ptr %36, align 4, !tbaa !9
  %653 = load ptr, ptr %9, align 8, !tbaa !5
  %654 = load i32, ptr %36, align 4, !tbaa !9
  %655 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %653, i32 noundef %654)
  store i32 %655, ptr %36, align 4, !tbaa !9
  %656 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %656, ptr %19, align 4, !tbaa !9
  %657 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %657, ptr %37, align 4, !tbaa !9
  store i32 76171, ptr %38, align 4, !tbaa !9
  %658 = load i32, ptr %38, align 4, !tbaa !9
  %659 = load i32, ptr %37, align 4, !tbaa !9
  %660 = add i32 %659, %658
  store i32 %660, ptr %37, align 4, !tbaa !9
  %661 = load ptr, ptr %9, align 8, !tbaa !5
  %662 = getelementptr inbounds %struct.w2c_hermes, ptr %661, i32 0, i32 6
  %663 = load i32, ptr %36, align 4, !tbaa !9
  %664 = zext i32 %663 to i64
  %665 = add i64 %664, 8
  %666 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %662, i64 noundef %665, i32 noundef %666)
  %667 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %667, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %668 = load ptr, ptr %9, align 8, !tbaa !5
  %669 = getelementptr inbounds %struct.w2c_hermes, ptr %668, i32 0, i32 6
  %670 = load i32, ptr %36, align 4, !tbaa !9
  %671 = zext i32 %670 to i64
  %672 = add i64 %671, 4
  %673 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %669, i64 noundef %672, i32 noundef %673)
  %674 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %674, ptr %36, align 4, !tbaa !9
  store i32 270644, ptr %37, align 4, !tbaa !9
  %675 = load ptr, ptr %9, align 8, !tbaa !5
  %676 = getelementptr inbounds %struct.w2c_hermes, ptr %675, i32 0, i32 6
  %677 = load i32, ptr %36, align 4, !tbaa !9
  %678 = zext i32 %677 to i64
  %679 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %676, i64 noundef %678, i32 noundef %679)
  %680 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %680, ptr %36, align 4, !tbaa !9
  store i32 15, ptr %37, align 4, !tbaa !9
  %681 = load ptr, ptr %9, align 8, !tbaa !5
  %682 = getelementptr inbounds %struct.w2c_hermes, ptr %681, i32 0, i32 6
  %683 = load i32, ptr %36, align 4, !tbaa !9
  %684 = zext i32 %683 to i64
  %685 = add i64 %684, 12
  %686 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %682, i64 noundef %685, i32 noundef %686)
  %687 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %687, ptr %36, align 4, !tbaa !9
  %688 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %688, ptr %37, align 4, !tbaa !9
  %689 = load ptr, ptr %9, align 8, !tbaa !5
  %690 = load i32, ptr %36, align 4, !tbaa !9
  %691 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %689, i32 noundef %690, i32 noundef %691)
  store i32 16, ptr %36, align 4, !tbaa !9
  %692 = load ptr, ptr %9, align 8, !tbaa !5
  %693 = load i32, ptr %36, align 4, !tbaa !9
  %694 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %692, i32 noundef %693)
  store i32 %694, ptr %36, align 4, !tbaa !9
  %695 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %695, ptr %19, align 4, !tbaa !9
  %696 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %696, ptr %37, align 4, !tbaa !9
  store i32 40043, ptr %38, align 4, !tbaa !9
  %697 = load i32, ptr %38, align 4, !tbaa !9
  %698 = load i32, ptr %37, align 4, !tbaa !9
  %699 = add i32 %698, %697
  store i32 %699, ptr %37, align 4, !tbaa !9
  %700 = load ptr, ptr %9, align 8, !tbaa !5
  %701 = getelementptr inbounds %struct.w2c_hermes, ptr %700, i32 0, i32 6
  %702 = load i32, ptr %36, align 4, !tbaa !9
  %703 = zext i32 %702 to i64
  %704 = add i64 %703, 8
  %705 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %701, i64 noundef %704, i32 noundef %705)
  %706 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %706, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %707 = load ptr, ptr %9, align 8, !tbaa !5
  %708 = getelementptr inbounds %struct.w2c_hermes, ptr %707, i32 0, i32 6
  %709 = load i32, ptr %36, align 4, !tbaa !9
  %710 = zext i32 %709 to i64
  %711 = add i64 %710, 4
  %712 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %708, i64 noundef %711, i32 noundef %712)
  %713 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %713, ptr %36, align 4, !tbaa !9
  store i32 270780, ptr %37, align 4, !tbaa !9
  %714 = load ptr, ptr %9, align 8, !tbaa !5
  %715 = getelementptr inbounds %struct.w2c_hermes, ptr %714, i32 0, i32 6
  %716 = load i32, ptr %36, align 4, !tbaa !9
  %717 = zext i32 %716 to i64
  %718 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %715, i64 noundef %717, i32 noundef %718)
  %719 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %719, ptr %36, align 4, !tbaa !9
  store i32 13, ptr %37, align 4, !tbaa !9
  %720 = load ptr, ptr %9, align 8, !tbaa !5
  %721 = getelementptr inbounds %struct.w2c_hermes, ptr %720, i32 0, i32 6
  %722 = load i32, ptr %36, align 4, !tbaa !9
  %723 = zext i32 %722 to i64
  %724 = add i64 %723, 12
  %725 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %721, i64 noundef %724, i32 noundef %725)
  %726 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %726, ptr %36, align 4, !tbaa !9
  %727 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %727, ptr %37, align 4, !tbaa !9
  %728 = load ptr, ptr %9, align 8, !tbaa !5
  %729 = load i32, ptr %36, align 4, !tbaa !9
  %730 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %728, i32 noundef %729, i32 noundef %730)
  %731 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %731, ptr %36, align 4, !tbaa !9
  %732 = load ptr, ptr %9, align 8, !tbaa !5
  %733 = call i32 @w2c_hermes_hermes0x3A0x3AcreateCodeMotion0x280x29(ptr noundef %732)
  store i32 %733, ptr %37, align 4, !tbaa !9
  %734 = load ptr, ptr %9, align 8, !tbaa !5
  %735 = load i32, ptr %36, align 4, !tbaa !9
  %736 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %734, i32 noundef %735, i32 noundef %736)
  %737 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %737, ptr %36, align 4, !tbaa !9
  %738 = load ptr, ptr %9, align 8, !tbaa !5
  %739 = call i32 @w2c_hermes_hermes0x3A0x3AcreateCSE0x280x29(ptr noundef %738)
  store i32 %739, ptr %37, align 4, !tbaa !9
  %740 = load ptr, ptr %9, align 8, !tbaa !5
  %741 = load i32, ptr %36, align 4, !tbaa !9
  %742 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %740, i32 noundef %741, i32 noundef %742)
  %743 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %743, ptr %36, align 4, !tbaa !9
  %744 = load ptr, ptr %9, align 8, !tbaa !5
  %745 = call i32 @w2c_hermes_hermes0x3A0x3AcreateDCE0x280x29(ptr noundef %744)
  store i32 %745, ptr %37, align 4, !tbaa !9
  %746 = load ptr, ptr %9, align 8, !tbaa !5
  %747 = load i32, ptr %36, align 4, !tbaa !9
  %748 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %746, i32 noundef %747, i32 noundef %748)
  br label %749

749:                                              ; preds = %613, %174
  %750 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %750, ptr %36, align 4, !tbaa !9
  %751 = load ptr, ptr %9, align 8, !tbaa !5
  %752 = call i32 @w2c_hermes_hermes0x3A0x3AcreateHoistStartGenerator0x280x29(ptr noundef %751)
  store i32 %752, ptr %37, align 4, !tbaa !9
  %753 = load ptr, ptr %9, align 8, !tbaa !5
  %754 = load i32, ptr %36, align 4, !tbaa !9
  %755 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %753, i32 noundef %754, i32 noundef %755)
  %756 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %756, ptr %36, align 4, !tbaa !9
  %757 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %757, ptr %37, align 4, !tbaa !9
  %758 = load ptr, ptr %9, align 8, !tbaa !5
  %759 = load i32, ptr %36, align 4, !tbaa !9
  %760 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AModule0x2A0x29(ptr noundef %758, i32 noundef %759, i32 noundef %760)
  %761 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %761, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %762 = load ptr, ptr %9, align 8, !tbaa !5
  %763 = getelementptr inbounds %struct.w2c_hermes, ptr %762, i32 0, i32 6
  %764 = load i32, ptr %36, align 4, !tbaa !9
  %765 = zext i32 %764 to i64
  %766 = add i64 %765, 596
  %767 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %763, i64 noundef %766, i32 noundef %767)
  %768 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %768, ptr %36, align 4, !tbaa !9
  %769 = load ptr, ptr %9, align 8, !tbaa !5
  %770 = getelementptr inbounds %struct.w2c_hermes, ptr %769, i32 0, i32 6
  %771 = load i32, ptr %36, align 4, !tbaa !9
  %772 = zext i32 %771 to i64
  %773 = add i64 %772, 9
  %774 = call i32 @i32_load8_u(ptr noundef %770, i64 noundef %773)
  store i32 %774, ptr %36, align 4, !tbaa !9
  %775 = load i32, ptr %36, align 4, !tbaa !9
  %776 = icmp ne i32 %775, 0
  br i1 %776, label %777, label %790

777:                                              ; preds = %749
  %778 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %778, ptr %36, align 4, !tbaa !9
  %779 = load ptr, ptr %9, align 8, !tbaa !5
  %780 = call i32 @w2c_hermes_llvh0x3A0x3Aerrs0x280x29(ptr noundef %779)
  store i32 %780, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  %781 = load ptr, ptr %9, align 8, !tbaa !5
  %782 = load i32, ptr %36, align 4, !tbaa !9
  %783 = load i32, ptr %37, align 4, !tbaa !9
  %784 = load i32, ptr %38, align 4, !tbaa !9
  %785 = call i32 @w2c_hermes_hermes0x3A0x3AverifyModule0x28hermes0x3A0x3AModule0x20const0x260x2C0x20llvh0x3A0x3Araw_ostream0x2A0x2C0x20hermes0x3A0x3AVerificationMode0x29(ptr noundef %781, i32 noundef %782, i32 noundef %783, i32 noundef %784)
  store i32 %785, ptr %36, align 4, !tbaa !9
  %786 = load i32, ptr %36, align 4, !tbaa !9
  %787 = icmp ne i32 %786, 0
  br i1 %787, label %788, label %789

788:                                              ; preds = %777
  br label %2160

789:                                              ; preds = %777
  br label %790

790:                                              ; preds = %789, %749
  %791 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %791, ptr %36, align 4, !tbaa !9
  %792 = load ptr, ptr %9, align 8, !tbaa !5
  %793 = load i32, ptr %36, align 4, !tbaa !9
  %794 = call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3A0x7EPassManager0x280x29(ptr noundef %792, i32 noundef %793)
  store i32 %794, ptr %36, align 4, !tbaa !9
  br label %795

795:                                              ; preds = %790, %8
  %796 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %796, ptr %36, align 4, !tbaa !9
  %797 = load ptr, ptr %9, align 8, !tbaa !5
  %798 = getelementptr inbounds %struct.w2c_hermes, ptr %797, i32 0, i32 6
  %799 = load i32, ptr %36, align 4, !tbaa !9
  %800 = zext i32 %799 to i64
  %801 = call i32 @i32_load(ptr noundef %798, i64 noundef %800)
  store i32 %801, ptr %36, align 4, !tbaa !9
  store i32 6, ptr %37, align 4, !tbaa !9
  %802 = load i32, ptr %36, align 4, !tbaa !9
  %803 = load i32, ptr %37, align 4, !tbaa !9
  %804 = icmp eq i32 %802, %803
  %805 = zext i1 %804 to i32
  store i32 %805, ptr %36, align 4, !tbaa !9
  %806 = load i32, ptr %36, align 4, !tbaa !9
  %807 = icmp ne i32 %806, 0
  br i1 %807, label %808, label %815

808:                                              ; preds = %795
  %809 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %809, ptr %36, align 4, !tbaa !9
  %810 = load ptr, ptr %9, align 8, !tbaa !5
  %811 = call i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef %810)
  store i32 %811, ptr %37, align 4, !tbaa !9
  %812 = load ptr, ptr %9, align 8, !tbaa !5
  %813 = load i32, ptr %36, align 4, !tbaa !9
  %814 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef %812, i32 noundef %813, i32 noundef %814)
  br label %815

815:                                              ; preds = %808, %795
  %816 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %816, ptr %36, align 4, !tbaa !9
  store i32 2256, ptr %37, align 4, !tbaa !9
  %817 = load i32, ptr %37, align 4, !tbaa !9
  %818 = load i32, ptr %36, align 4, !tbaa !9
  %819 = add i32 %818, %817
  store i32 %819, ptr %36, align 4, !tbaa !9
  %820 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %820, ptr %18, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %821 = load ptr, ptr %9, align 8, !tbaa !5
  %822 = getelementptr inbounds %struct.w2c_hermes, ptr %821, i32 0, i32 6
  %823 = load i32, ptr %36, align 4, !tbaa !9
  %824 = zext i32 %823 to i64
  %825 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %822, i64 noundef %824, i64 noundef %825)
  %826 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %826, ptr %36, align 4, !tbaa !9
  store i32 2248, ptr %37, align 4, !tbaa !9
  %827 = load i32, ptr %37, align 4, !tbaa !9
  %828 = load i32, ptr %36, align 4, !tbaa !9
  %829 = add i32 %828, %827
  store i32 %829, ptr %36, align 4, !tbaa !9
  %830 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %830, ptr %19, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %831 = load ptr, ptr %9, align 8, !tbaa !5
  %832 = getelementptr inbounds %struct.w2c_hermes, ptr %831, i32 0, i32 6
  %833 = load i32, ptr %36, align 4, !tbaa !9
  %834 = zext i32 %833 to i64
  %835 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %832, i64 noundef %834, i64 noundef %835)
  %836 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %836, ptr %36, align 4, !tbaa !9
  store i32 2308, ptr %37, align 4, !tbaa !9
  %837 = load i32, ptr %37, align 4, !tbaa !9
  %838 = load i32, ptr %36, align 4, !tbaa !9
  %839 = add i32 %838, %837
  store i32 %839, ptr %36, align 4, !tbaa !9
  %840 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %840, ptr %20, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %841 = load ptr, ptr %9, align 8, !tbaa !5
  %842 = getelementptr inbounds %struct.w2c_hermes, ptr %841, i32 0, i32 6
  %843 = load i32, ptr %36, align 4, !tbaa !9
  %844 = zext i32 %843 to i64
  %845 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %842, i64 noundef %844, i64 noundef %845)
  %846 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %846, ptr %36, align 4, !tbaa !9
  store i32 2316, ptr %37, align 4, !tbaa !9
  %847 = load i32, ptr %37, align 4, !tbaa !9
  %848 = load i32, ptr %36, align 4, !tbaa !9
  %849 = add i32 %848, %847
  store i32 %849, ptr %36, align 4, !tbaa !9
  %850 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %850, ptr %21, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %851 = load ptr, ptr %9, align 8, !tbaa !5
  %852 = getelementptr inbounds %struct.w2c_hermes, ptr %851, i32 0, i32 6
  %853 = load i32, ptr %36, align 4, !tbaa !9
  %854 = zext i32 %853 to i64
  %855 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %852, i64 noundef %854, i64 noundef %855)
  %856 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %856, ptr %36, align 4, !tbaa !9
  store i32 2288, ptr %37, align 4, !tbaa !9
  %857 = load i32, ptr %37, align 4, !tbaa !9
  %858 = load i32, ptr %36, align 4, !tbaa !9
  %859 = add i32 %858, %857
  store i32 %859, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %860 = load ptr, ptr %9, align 8, !tbaa !5
  %861 = getelementptr inbounds %struct.w2c_hermes, ptr %860, i32 0, i32 6
  %862 = load i32, ptr %36, align 4, !tbaa !9
  %863 = zext i32 %862 to i64
  %864 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %861, i64 noundef %863, i32 noundef %864)
  %865 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %865, ptr %36, align 4, !tbaa !9
  store i32 2280, ptr %37, align 4, !tbaa !9
  %866 = load i32, ptr %37, align 4, !tbaa !9
  %867 = load i32, ptr %36, align 4, !tbaa !9
  %868 = add i32 %867, %866
  store i32 %868, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %869 = load ptr, ptr %9, align 8, !tbaa !5
  %870 = getelementptr inbounds %struct.w2c_hermes, ptr %869, i32 0, i32 6
  %871 = load i32, ptr %36, align 4, !tbaa !9
  %872 = zext i32 %871 to i64
  %873 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %870, i64 noundef %872, i64 noundef %873)
  %874 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %874, ptr %36, align 4, !tbaa !9
  store i32 2272, ptr %37, align 4, !tbaa !9
  %875 = load i32, ptr %37, align 4, !tbaa !9
  %876 = load i32, ptr %36, align 4, !tbaa !9
  %877 = add i32 %876, %875
  store i32 %877, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %878 = load ptr, ptr %9, align 8, !tbaa !5
  %879 = getelementptr inbounds %struct.w2c_hermes, ptr %878, i32 0, i32 6
  %880 = load i32, ptr %36, align 4, !tbaa !9
  %881 = zext i32 %880 to i64
  %882 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %879, i64 noundef %881, i64 noundef %882)
  %883 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %883, ptr %36, align 4, !tbaa !9
  store i32 2264, ptr %37, align 4, !tbaa !9
  %884 = load i32, ptr %37, align 4, !tbaa !9
  %885 = load i32, ptr %36, align 4, !tbaa !9
  %886 = add i32 %885, %884
  store i32 %886, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %887 = load ptr, ptr %9, align 8, !tbaa !5
  %888 = getelementptr inbounds %struct.w2c_hermes, ptr %887, i32 0, i32 6
  %889 = load i32, ptr %36, align 4, !tbaa !9
  %890 = zext i32 %889 to i64
  %891 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %888, i64 noundef %890, i64 noundef %891)
  %892 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %892, ptr %36, align 4, !tbaa !9
  store i32 2240, ptr %37, align 4, !tbaa !9
  %893 = load i32, ptr %37, align 4, !tbaa !9
  %894 = load i32, ptr %36, align 4, !tbaa !9
  %895 = add i32 %894, %893
  store i32 %895, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %896 = load ptr, ptr %9, align 8, !tbaa !5
  %897 = getelementptr inbounds %struct.w2c_hermes, ptr %896, i32 0, i32 6
  %898 = load i32, ptr %36, align 4, !tbaa !9
  %899 = zext i32 %898 to i64
  %900 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %897, i64 noundef %899, i64 noundef %900)
  %901 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %901, ptr %36, align 4, !tbaa !9
  store i32 2300, ptr %37, align 4, !tbaa !9
  %902 = load i32, ptr %37, align 4, !tbaa !9
  %903 = load i32, ptr %36, align 4, !tbaa !9
  %904 = add i32 %903, %902
  store i32 %904, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %905 = load ptr, ptr %9, align 8, !tbaa !5
  %906 = getelementptr inbounds %struct.w2c_hermes, ptr %905, i32 0, i32 6
  %907 = load i32, ptr %36, align 4, !tbaa !9
  %908 = zext i32 %907 to i64
  %909 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %906, i64 noundef %908, i64 noundef %909)
  %910 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %910, ptr %36, align 4, !tbaa !9
  store i32 2324, ptr %37, align 4, !tbaa !9
  %911 = load i32, ptr %37, align 4, !tbaa !9
  %912 = load i32, ptr %36, align 4, !tbaa !9
  %913 = add i32 %912, %911
  store i32 %913, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %914 = load ptr, ptr %9, align 8, !tbaa !5
  %915 = getelementptr inbounds %struct.w2c_hermes, ptr %914, i32 0, i32 6
  %916 = load i32, ptr %36, align 4, !tbaa !9
  %917 = zext i32 %916 to i64
  %918 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %915, i64 noundef %917, i64 noundef %918)
  %919 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %919, ptr %36, align 4, !tbaa !9
  store i32 2332, ptr %37, align 4, !tbaa !9
  %920 = load i32, ptr %37, align 4, !tbaa !9
  %921 = load i32, ptr %36, align 4, !tbaa !9
  %922 = add i32 %921, %920
  store i32 %922, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %923 = load ptr, ptr %9, align 8, !tbaa !5
  %924 = getelementptr inbounds %struct.w2c_hermes, ptr %923, i32 0, i32 6
  %925 = load i32, ptr %36, align 4, !tbaa !9
  %926 = zext i32 %925 to i64
  %927 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %924, i64 noundef %926, i64 noundef %927)
  %928 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %928, ptr %36, align 4, !tbaa !9
  store i32 2340, ptr %37, align 4, !tbaa !9
  %929 = load i32, ptr %37, align 4, !tbaa !9
  %930 = load i32, ptr %36, align 4, !tbaa !9
  %931 = add i32 %930, %929
  store i32 %931, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %932 = load ptr, ptr %9, align 8, !tbaa !5
  %933 = getelementptr inbounds %struct.w2c_hermes, ptr %932, i32 0, i32 6
  %934 = load i32, ptr %36, align 4, !tbaa !9
  %935 = zext i32 %934 to i64
  %936 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %933, i64 noundef %935, i64 noundef %936)
  %937 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %937, ptr %36, align 4, !tbaa !9
  store i32 2348, ptr %37, align 4, !tbaa !9
  %938 = load i32, ptr %37, align 4, !tbaa !9
  %939 = load i32, ptr %36, align 4, !tbaa !9
  %940 = add i32 %939, %938
  store i32 %940, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %941 = load ptr, ptr %9, align 8, !tbaa !5
  %942 = getelementptr inbounds %struct.w2c_hermes, ptr %941, i32 0, i32 6
  %943 = load i32, ptr %36, align 4, !tbaa !9
  %944 = zext i32 %943 to i64
  %945 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %942, i64 noundef %944, i32 noundef %945)
  %946 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %946, ptr %36, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %947 = load ptr, ptr %9, align 8, !tbaa !5
  %948 = getelementptr inbounds %struct.w2c_hermes, ptr %947, i32 0, i32 6
  %949 = load i32, ptr %36, align 4, !tbaa !9
  %950 = zext i32 %949 to i64
  %951 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %948, i64 noundef %950, i32 noundef %951)
  %952 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %952, ptr %36, align 4, !tbaa !9
  %953 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %953, ptr %37, align 4, !tbaa !9
  store i32 2260, ptr %38, align 4, !tbaa !9
  %954 = load i32, ptr %38, align 4, !tbaa !9
  %955 = load i32, ptr %37, align 4, !tbaa !9
  %956 = add i32 %955, %954
  store i32 %956, ptr %37, align 4, !tbaa !9
  %957 = load ptr, ptr %9, align 8, !tbaa !5
  %958 = getelementptr inbounds %struct.w2c_hermes, ptr %957, i32 0, i32 6
  %959 = load i32, ptr %36, align 4, !tbaa !9
  %960 = zext i32 %959 to i64
  %961 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %958, i64 noundef %960, i32 noundef %961)
  %962 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %962, ptr %36, align 4, !tbaa !9
  %963 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %963, ptr %37, align 4, !tbaa !9
  store i32 2320, ptr %38, align 4, !tbaa !9
  %964 = load i32, ptr %38, align 4, !tbaa !9
  %965 = load i32, ptr %37, align 4, !tbaa !9
  %966 = add i32 %965, %964
  store i32 %966, ptr %37, align 4, !tbaa !9
  %967 = load ptr, ptr %9, align 8, !tbaa !5
  %968 = getelementptr inbounds %struct.w2c_hermes, ptr %967, i32 0, i32 6
  %969 = load i32, ptr %36, align 4, !tbaa !9
  %970 = zext i32 %969 to i64
  %971 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %968, i64 noundef %970, i32 noundef %971)
  %972 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %972, ptr %36, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %973 = load ptr, ptr %9, align 8, !tbaa !5
  %974 = getelementptr inbounds %struct.w2c_hermes, ptr %973, i32 0, i32 6
  %975 = load i32, ptr %36, align 4, !tbaa !9
  %976 = zext i32 %975 to i64
  %977 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %974, i64 noundef %976, i32 noundef %977)
  %978 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %978, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %979 = load ptr, ptr %9, align 8, !tbaa !5
  %980 = getelementptr inbounds %struct.w2c_hermes, ptr %979, i32 0, i32 6
  %981 = load i32, ptr %36, align 4, !tbaa !9
  %982 = zext i32 %981 to i64
  %983 = add i64 %982, 2232
  %984 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %980, i64 noundef %983, i64 noundef %984)
  %985 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %985, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %986 = load ptr, ptr %9, align 8, !tbaa !5
  %987 = getelementptr inbounds %struct.w2c_hermes, ptr %986, i32 0, i32 6
  %988 = load i32, ptr %36, align 4, !tbaa !9
  %989 = zext i32 %988 to i64
  %990 = add i64 %989, 2292
  %991 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %987, i64 noundef %990, i64 noundef %991)
  %992 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %992, ptr %36, align 4, !tbaa !9
  store i32 2352, ptr %37, align 4, !tbaa !9
  %993 = load i32, ptr %37, align 4, !tbaa !9
  %994 = load i32, ptr %36, align 4, !tbaa !9
  %995 = add i32 %994, %993
  store i32 %995, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 88, ptr %38, align 4, !tbaa !9
  %996 = load ptr, ptr %9, align 8, !tbaa !5
  %997 = load i32, ptr %36, align 4, !tbaa !9
  %998 = load i32, ptr %37, align 4, !tbaa !9
  %999 = load i32, ptr %38, align 4, !tbaa !9
  %1000 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %996, i32 noundef %997, i32 noundef %998, i32 noundef %999)
  store i32 %1000, ptr %36, align 4, !tbaa !9
  %1001 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1001, ptr %36, align 4, !tbaa !9
  store i32 2436, ptr %37, align 4, !tbaa !9
  %1002 = load i32, ptr %37, align 4, !tbaa !9
  %1003 = load i32, ptr %36, align 4, !tbaa !9
  %1004 = add i32 %1003, %1002
  store i32 %1004, ptr %36, align 4, !tbaa !9
  store i32 257, ptr %37, align 4, !tbaa !9
  %1005 = load ptr, ptr %9, align 8, !tbaa !5
  %1006 = getelementptr inbounds %struct.w2c_hermes, ptr %1005, i32 0, i32 6
  %1007 = load i32, ptr %36, align 4, !tbaa !9
  %1008 = zext i32 %1007 to i64
  %1009 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %1006, i64 noundef %1008, i32 noundef %1009)
  %1010 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1010, ptr %36, align 4, !tbaa !9
  store i32 2440, ptr %37, align 4, !tbaa !9
  %1011 = load i32, ptr %37, align 4, !tbaa !9
  %1012 = load i32, ptr %36, align 4, !tbaa !9
  %1013 = add i32 %1012, %1011
  store i32 %1013, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 252, ptr %38, align 4, !tbaa !9
  %1014 = load ptr, ptr %9, align 8, !tbaa !5
  %1015 = load i32, ptr %36, align 4, !tbaa !9
  %1016 = load i32, ptr %37, align 4, !tbaa !9
  %1017 = load i32, ptr %38, align 4, !tbaa !9
  %1018 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %1014, i32 noundef %1015, i32 noundef %1016, i32 noundef %1017)
  store i32 %1018, ptr %36, align 4, !tbaa !9
  %1019 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1019, ptr %36, align 4, !tbaa !9
  store i32 2708, ptr %37, align 4, !tbaa !9
  %1020 = load i32, ptr %37, align 4, !tbaa !9
  %1021 = load i32, ptr %36, align 4, !tbaa !9
  %1022 = add i32 %1021, %1020
  store i32 %1022, ptr %36, align 4, !tbaa !9
  %1023 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1023, ptr %37, align 4, !tbaa !9
  %1024 = load ptr, ptr %9, align 8, !tbaa !5
  %1025 = getelementptr inbounds %struct.w2c_hermes, ptr %1024, i32 0, i32 6
  %1026 = load i32, ptr %37, align 4, !tbaa !9
  %1027 = zext i32 %1026 to i64
  %1028 = add i64 %1027, 16
  %1029 = call i32 @i32_load(ptr noundef %1025, i64 noundef %1028)
  store i32 %1029, ptr %37, align 4, !tbaa !9
  %1030 = load ptr, ptr %9, align 8, !tbaa !5
  %1031 = getelementptr inbounds %struct.w2c_hermes, ptr %1030, i32 0, i32 6
  %1032 = load i32, ptr %36, align 4, !tbaa !9
  %1033 = zext i32 %1032 to i64
  %1034 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1031, i64 noundef %1033, i32 noundef %1034)
  %1035 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1035, ptr %36, align 4, !tbaa !9
  store i32 2700, ptr %37, align 4, !tbaa !9
  %1036 = load i32, ptr %37, align 4, !tbaa !9
  %1037 = load i32, ptr %36, align 4, !tbaa !9
  %1038 = add i32 %1037, %1036
  store i32 %1038, ptr %36, align 4, !tbaa !9
  %1039 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1039, ptr %37, align 4, !tbaa !9
  %1040 = load ptr, ptr %9, align 8, !tbaa !5
  %1041 = getelementptr inbounds %struct.w2c_hermes, ptr %1040, i32 0, i32 6
  %1042 = load i32, ptr %37, align 4, !tbaa !9
  %1043 = zext i32 %1042 to i64
  %1044 = add i64 %1043, 8
  %1045 = call i64 @i64_load(ptr noundef %1041, i64 noundef %1044)
  store i64 %1045, ptr %43, align 8, !tbaa !11
  %1046 = load ptr, ptr %9, align 8, !tbaa !5
  %1047 = getelementptr inbounds %struct.w2c_hermes, ptr %1046, i32 0, i32 6
  %1048 = load i32, ptr %36, align 4, !tbaa !9
  %1049 = zext i32 %1048 to i64
  %1050 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1047, i64 noundef %1049, i64 noundef %1050)
  %1051 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1051, ptr %36, align 4, !tbaa !9
  %1052 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %1052, ptr %37, align 4, !tbaa !9
  %1053 = load ptr, ptr %9, align 8, !tbaa !5
  %1054 = getelementptr inbounds %struct.w2c_hermes, ptr %1053, i32 0, i32 6
  %1055 = load i32, ptr %37, align 4, !tbaa !9
  %1056 = zext i32 %1055 to i64
  %1057 = call i64 @i64_load(ptr noundef %1054, i64 noundef %1056)
  store i64 %1057, ptr %43, align 8, !tbaa !11
  %1058 = load ptr, ptr %9, align 8, !tbaa !5
  %1059 = getelementptr inbounds %struct.w2c_hermes, ptr %1058, i32 0, i32 6
  %1060 = load i32, ptr %36, align 4, !tbaa !9
  %1061 = zext i32 %1060 to i64
  %1062 = add i64 %1061, 2692
  %1063 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1059, i64 noundef %1062, i64 noundef %1063)
  %1064 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1064, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %1065 = load ptr, ptr %9, align 8, !tbaa !5
  %1066 = getelementptr inbounds %struct.w2c_hermes, ptr %1065, i32 0, i32 6
  %1067 = load i32, ptr %36, align 4, !tbaa !9
  %1068 = zext i32 %1067 to i64
  %1069 = add i64 %1068, 2716
  %1070 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1066, i64 noundef %1069, i32 noundef %1070)
  %1071 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1071, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %1072 = load ptr, ptr %9, align 8, !tbaa !5
  %1073 = getelementptr inbounds %struct.w2c_hermes, ptr %1072, i32 0, i32 6
  %1074 = load i32, ptr %36, align 4, !tbaa !9
  %1075 = zext i32 %1074 to i64
  %1076 = add i64 %1075, 2714
  %1077 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %1073, i64 noundef %1076, i32 noundef %1077)
  %1078 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1078, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %1079 = load ptr, ptr %9, align 8, !tbaa !5
  %1080 = getelementptr inbounds %struct.w2c_hermes, ptr %1079, i32 0, i32 6
  %1081 = load i32, ptr %36, align 4, !tbaa !9
  %1082 = zext i32 %1081 to i64
  %1083 = add i64 %1082, 2712
  %1084 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %1080, i64 noundef %1083, i32 noundef %1084)
  %1085 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1085, ptr %36, align 4, !tbaa !9
  %1086 = load ptr, ptr %9, align 8, !tbaa !5
  %1087 = getelementptr inbounds %struct.w2c_hermes, ptr %1086, i32 0, i32 6
  %1088 = load i32, ptr %36, align 4, !tbaa !9
  %1089 = zext i32 %1088 to i64
  %1090 = add i64 %1089, 4
  %1091 = call i32 @i32_load8_u(ptr noundef %1087, i64 noundef %1090)
  store i32 %1091, ptr %36, align 4, !tbaa !9
  %1092 = load i32, ptr %36, align 4, !tbaa !9
  %1093 = icmp ne i32 %1092, 0
  br i1 %1093, label %1094, label %1297

1094:                                             ; preds = %815
  %1095 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1095, ptr %36, align 4, !tbaa !9
  %1096 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1096, ptr %37, align 4, !tbaa !9
  %1097 = load ptr, ptr %9, align 8, !tbaa !5
  %1098 = getelementptr inbounds %struct.w2c_hermes, ptr %1097, i32 0, i32 6
  %1099 = load i32, ptr %37, align 4, !tbaa !9
  %1100 = zext i32 %1099 to i64
  %1101 = call i32 @i32_load(ptr noundef %1098, i64 noundef %1100)
  store i32 %1101, ptr %37, align 4, !tbaa !9
  %1102 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %1102, ptr %18, align 4, !tbaa !9
  %1103 = load ptr, ptr %9, align 8, !tbaa !5
  %1104 = getelementptr inbounds %struct.w2c_hermes, ptr %1103, i32 0, i32 6
  %1105 = load i32, ptr %36, align 4, !tbaa !9
  %1106 = zext i32 %1105 to i64
  %1107 = add i64 %1106, 2600
  %1108 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1104, i64 noundef %1107, i32 noundef %1108)
  %1109 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1109, ptr %36, align 4, !tbaa !9
  store i32 2216, ptr %37, align 4, !tbaa !9
  %1110 = load i32, ptr %37, align 4, !tbaa !9
  %1111 = load i32, ptr %36, align 4, !tbaa !9
  %1112 = add i32 %1111, %1110
  store i32 %1112, ptr %36, align 4, !tbaa !9
  %1113 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %1113, ptr %37, align 4, !tbaa !9
  %1114 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1114, ptr %38, align 4, !tbaa !9
  %1115 = load ptr, ptr %9, align 8, !tbaa !5
  %1116 = load i32, ptr %36, align 4, !tbaa !9
  %1117 = load i32, ptr %37, align 4, !tbaa !9
  %1118 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetFunctionsInSegment0x28unsigned0x20int0x29(ptr noundef %1115, i32 noundef %1116, i32 noundef %1117, i32 noundef %1118)
  %1119 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1119, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %1120 = load ptr, ptr %9, align 8, !tbaa !5
  %1121 = getelementptr inbounds %struct.w2c_hermes, ptr %1120, i32 0, i32 6
  %1122 = load i32, ptr %36, align 4, !tbaa !9
  %1123 = zext i32 %1122 to i64
  %1124 = add i64 %1123, 2208
  %1125 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1121, i64 noundef %1124, i32 noundef %1125)
  %1126 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1126, ptr %36, align 4, !tbaa !9
  %1127 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1127, ptr %37, align 4, !tbaa !9
  store i32 2216, ptr %38, align 4, !tbaa !9
  %1128 = load i32, ptr %38, align 4, !tbaa !9
  %1129 = load i32, ptr %37, align 4, !tbaa !9
  %1130 = add i32 %1129, %1128
  store i32 %1130, ptr %37, align 4, !tbaa !9
  %1131 = load ptr, ptr %9, align 8, !tbaa !5
  %1132 = getelementptr inbounds %struct.w2c_hermes, ptr %1131, i32 0, i32 6
  %1133 = load i32, ptr %36, align 4, !tbaa !9
  %1134 = zext i32 %1133 to i64
  %1135 = add i64 %1134, 528
  %1136 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1132, i64 noundef %1135, i32 noundef %1136)
  %1137 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1137, ptr %36, align 4, !tbaa !9
  %1138 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %1138, ptr %37, align 4, !tbaa !9
  %1139 = load ptr, ptr %9, align 8, !tbaa !5
  %1140 = getelementptr inbounds %struct.w2c_hermes, ptr %1139, i32 0, i32 6
  %1141 = load i32, ptr %36, align 4, !tbaa !9
  %1142 = zext i32 %1141 to i64
  %1143 = add i64 %1142, 524
  %1144 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1140, i64 noundef %1143, i32 noundef %1144)
  %1145 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1145, ptr %36, align 4, !tbaa !9
  store i32 271196, ptr %37, align 4, !tbaa !9
  %1146 = load ptr, ptr %9, align 8, !tbaa !5
  %1147 = getelementptr inbounds %struct.w2c_hermes, ptr %1146, i32 0, i32 6
  %1148 = load i32, ptr %36, align 4, !tbaa !9
  %1149 = zext i32 %1148 to i64
  %1150 = add i64 %1149, 520
  %1151 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1147, i64 noundef %1150, i32 noundef %1151)
  %1152 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1152, ptr %36, align 4, !tbaa !9
  %1153 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1153, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %1154 = load i32, ptr %38, align 4, !tbaa !9
  %1155 = load i32, ptr %37, align 4, !tbaa !9
  %1156 = add i32 %1155, %1154
  store i32 %1156, ptr %37, align 4, !tbaa !9
  %1157 = load ptr, ptr %9, align 8, !tbaa !5
  %1158 = getelementptr inbounds %struct.w2c_hermes, ptr %1157, i32 0, i32 6
  %1159 = load i32, ptr %36, align 4, !tbaa !9
  %1160 = zext i32 %1159 to i64
  %1161 = add i64 %1160, 536
  %1162 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1158, i64 noundef %1161, i32 noundef %1162)
  %1163 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1163, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %1164 = load i32, ptr %37, align 4, !tbaa !9
  %1165 = load i32, ptr %36, align 4, !tbaa !9
  %1166 = add i32 %1165, %1164
  store i32 %1166, ptr %36, align 4, !tbaa !9
  %1167 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1167, ptr %37, align 4, !tbaa !9
  store i32 2192, ptr %38, align 4, !tbaa !9
  %1168 = load i32, ptr %38, align 4, !tbaa !9
  %1169 = load i32, ptr %37, align 4, !tbaa !9
  %1170 = add i32 %1169, %1168
  store i32 %1170, ptr %37, align 4, !tbaa !9
  %1171 = load ptr, ptr %9, align 8, !tbaa !5
  %1172 = load i32, ptr %36, align 4, !tbaa !9
  %1173 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x3A0x3Aswap0x5Babi0x3Av150070x5D0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x260x29(ptr noundef %1171, i32 noundef %1172, i32 noundef %1173)
  %1174 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1174, ptr %36, align 4, !tbaa !9
  %1175 = load ptr, ptr %9, align 8, !tbaa !5
  %1176 = getelementptr inbounds %struct.w2c_hermes, ptr %1175, i32 0, i32 6
  %1177 = load i32, ptr %36, align 4, !tbaa !9
  %1178 = zext i32 %1177 to i64
  %1179 = add i64 %1178, 536
  %1180 = call i32 @i32_load(ptr noundef %1176, i64 noundef %1179)
  store i32 %1180, ptr %36, align 4, !tbaa !9
  %1181 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1181, ptr %18, align 4, !tbaa !9
  %1182 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1182, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %1183 = load i32, ptr %38, align 4, !tbaa !9
  %1184 = load i32, ptr %37, align 4, !tbaa !9
  %1185 = add i32 %1184, %1183
  store i32 %1185, ptr %37, align 4, !tbaa !9
  %1186 = load i32, ptr %36, align 4, !tbaa !9
  %1187 = load i32, ptr %37, align 4, !tbaa !9
  %1188 = icmp eq i32 %1186, %1187
  %1189 = zext i1 %1188 to i32
  store i32 %1189, ptr %36, align 4, !tbaa !9
  %1190 = load i32, ptr %36, align 4, !tbaa !9
  %1191 = icmp ne i32 %1190, 0
  br i1 %1191, label %1192, label %1208

1192:                                             ; preds = %1094
  %1193 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1193, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %1194 = load i32, ptr %37, align 4, !tbaa !9
  %1195 = load i32, ptr %36, align 4, !tbaa !9
  %1196 = add i32 %1195, %1194
  store i32 %1196, ptr %36, align 4, !tbaa !9
  %1197 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1197, ptr %18, align 4, !tbaa !9
  %1198 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1198, ptr %36, align 4, !tbaa !9
  %1199 = load ptr, ptr %9, align 8, !tbaa !5
  %1200 = getelementptr inbounds %struct.w2c_hermes, ptr %1199, i32 0, i32 6
  %1201 = load i32, ptr %36, align 4, !tbaa !9
  %1202 = zext i32 %1201 to i64
  %1203 = add i64 %1202, 520
  %1204 = call i32 @i32_load(ptr noundef %1200, i64 noundef %1203)
  store i32 %1204, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %1205 = load i32, ptr %37, align 4, !tbaa !9
  %1206 = load i32, ptr %36, align 4, !tbaa !9
  %1207 = add i32 %1206, %1205
  store i32 %1207, ptr %36, align 4, !tbaa !9
  br label %1227

1208:                                             ; preds = %1094
  %1209 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1209, ptr %36, align 4, !tbaa !9
  %1210 = load i32, ptr %36, align 4, !tbaa !9
  %1211 = icmp ne i32 %1210, 0
  %1212 = xor i1 %1211, true
  %1213 = zext i1 %1212 to i32
  store i32 %1213, ptr %36, align 4, !tbaa !9
  %1214 = load i32, ptr %36, align 4, !tbaa !9
  %1215 = icmp ne i32 %1214, 0
  br i1 %1215, label %1216, label %1217

1216:                                             ; preds = %1208
  br label %1473

1217:                                             ; preds = %1208
  %1218 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1218, ptr %36, align 4, !tbaa !9
  %1219 = load ptr, ptr %9, align 8, !tbaa !5
  %1220 = getelementptr inbounds %struct.w2c_hermes, ptr %1219, i32 0, i32 6
  %1221 = load i32, ptr %36, align 4, !tbaa !9
  %1222 = zext i32 %1221 to i64
  %1223 = call i32 @i32_load(ptr noundef %1220, i64 noundef %1222)
  store i32 %1223, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %1224 = load i32, ptr %37, align 4, !tbaa !9
  %1225 = load i32, ptr %36, align 4, !tbaa !9
  %1226 = add i32 %1225, %1224
  store i32 %1226, ptr %36, align 4, !tbaa !9
  br label %1227

1227:                                             ; preds = %1217, %1192
  %1228 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1228, ptr %19, align 4, !tbaa !9
  %1229 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1229, ptr %36, align 4, !tbaa !9
  %1230 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1230, ptr %37, align 4, !tbaa !9
  %1231 = load ptr, ptr %9, align 8, !tbaa !5
  %1232 = getelementptr inbounds %struct.w2c_hermes, ptr %1231, i32 0, i32 6
  %1233 = load i32, ptr %37, align 4, !tbaa !9
  %1234 = zext i32 %1233 to i64
  %1235 = call i32 @i32_load(ptr noundef %1232, i64 noundef %1234)
  store i32 %1235, ptr %37, align 4, !tbaa !9
  %1236 = load i32, ptr %37, align 4, !tbaa !9
  %1237 = load ptr, ptr %9, align 8, !tbaa !5
  %1238 = getelementptr inbounds %struct.w2c_hermes, ptr %1237, i32 0, i32 7
  %1239 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1238, i32 0, i32 2
  %1240 = load i32, ptr %1239, align 4, !tbaa !18
  %1241 = icmp ult i32 %1236, %1240
  br i1 %1241, label %1242, label %1265

1242:                                             ; preds = %1227
  %1243 = load ptr, ptr %9, align 8, !tbaa !5
  %1244 = getelementptr inbounds %struct.w2c_hermes, ptr %1243, i32 0, i32 7
  %1245 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1244, i32 0, i32 0
  %1246 = load ptr, ptr %1245, align 8, !tbaa !19
  %1247 = load i32, ptr %37, align 4, !tbaa !9
  %1248 = zext i32 %1247 to i64
  %1249 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1246, i64 %1248
  %1250 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1249, i32 0, i32 1
  %1251 = load ptr, ptr %1250, align 8, !tbaa !20
  %1252 = icmp ne ptr %1251, null
  br i1 %1252, label %1253, label %1265

1253:                                             ; preds = %1242
  %1254 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %1255 = load ptr, ptr %9, align 8, !tbaa !5
  %1256 = getelementptr inbounds %struct.w2c_hermes, ptr %1255, i32 0, i32 7
  %1257 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1256, i32 0, i32 0
  %1258 = load ptr, ptr %1257, align 8, !tbaa !19
  %1259 = load i32, ptr %37, align 4, !tbaa !9
  %1260 = zext i32 %1259 to i64
  %1261 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1258, i64 %1260
  %1262 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1261, i32 0, i32 0
  %1263 = load ptr, ptr %1262, align 8, !tbaa !22
  %1264 = call zeroext i1 @func_types_eq(ptr noundef %1254, ptr noundef %1263)
  br label %1265

1265:                                             ; preds = %1253, %1242, %1227
  %1266 = phi i1 [ false, %1242 ], [ false, %1227 ], [ %1264, %1253 ]
  %1267 = xor i1 %1266, true
  %1268 = xor i1 %1267, true
  %1269 = zext i1 %1268 to i32
  %1270 = sext i32 %1269 to i64
  %1271 = call i64 @llvm.expect.i64(i64 %1270, i64 1)
  %1272 = icmp ne i64 %1271, 0
  br i1 %1272, label %1275, label %1273

1273:                                             ; preds = %1265
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

1274:                                             ; No predecessors!
  br label %1275

1275:                                             ; preds = %1274, %1265
  %1276 = phi i1 [ true, %1265 ], [ false, %1274 ]
  %1277 = zext i1 %1276 to i32
  %1278 = load ptr, ptr %9, align 8, !tbaa !5
  %1279 = getelementptr inbounds %struct.w2c_hermes, ptr %1278, i32 0, i32 7
  %1280 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1279, i32 0, i32 0
  %1281 = load ptr, ptr %1280, align 8, !tbaa !19
  %1282 = load i32, ptr %37, align 4, !tbaa !9
  %1283 = zext i32 %1282 to i64
  %1284 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1281, i64 %1283
  %1285 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1284, i32 0, i32 1
  %1286 = load ptr, ptr %1285, align 8, !tbaa !20
  %1287 = load ptr, ptr %9, align 8, !tbaa !5
  %1288 = getelementptr inbounds %struct.w2c_hermes, ptr %1287, i32 0, i32 7
  %1289 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1288, i32 0, i32 0
  %1290 = load ptr, ptr %1289, align 8, !tbaa !19
  %1291 = load i32, ptr %37, align 4, !tbaa !9
  %1292 = zext i32 %1291 to i64
  %1293 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1290, i64 %1292
  %1294 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1293, i32 0, i32 2
  %1295 = load ptr, ptr %1294, align 8, !tbaa !23
  %1296 = load i32, ptr %36, align 4, !tbaa !9
  call void %1286(ptr noundef %1295, i32 noundef %1296)
  br label %1473

1297:                                             ; preds = %815
  %1298 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1298, ptr %36, align 4, !tbaa !9
  store i32 2224, ptr %37, align 4, !tbaa !9
  %1299 = load i32, ptr %37, align 4, !tbaa !9
  %1300 = load i32, ptr %36, align 4, !tbaa !9
  %1301 = add i32 %1300, %1299
  store i32 %1301, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %1302 = load ptr, ptr %9, align 8, !tbaa !5
  %1303 = getelementptr inbounds %struct.w2c_hermes, ptr %1302, i32 0, i32 6
  %1304 = load i32, ptr %36, align 4, !tbaa !9
  %1305 = zext i32 %1304 to i64
  %1306 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1303, i64 noundef %1305, i64 noundef %1306)
  %1307 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1307, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %1308 = load ptr, ptr %9, align 8, !tbaa !5
  %1309 = getelementptr inbounds %struct.w2c_hermes, ptr %1308, i32 0, i32 6
  %1310 = load i32, ptr %36, align 4, !tbaa !9
  %1311 = zext i32 %1310 to i64
  %1312 = add i64 %1311, 2216
  %1313 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1309, i64 noundef %1312, i64 noundef %1313)
  %1314 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1314, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %1315 = load ptr, ptr %9, align 8, !tbaa !5
  %1316 = getelementptr inbounds %struct.w2c_hermes, ptr %1315, i32 0, i32 6
  %1317 = load i32, ptr %36, align 4, !tbaa !9
  %1318 = zext i32 %1317 to i64
  %1319 = add i64 %1318, 2208
  %1320 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1316, i64 noundef %1319, i32 noundef %1320)
  %1321 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1321, ptr %36, align 4, !tbaa !9
  store i32 271232, ptr %37, align 4, !tbaa !9
  %1322 = load ptr, ptr %9, align 8, !tbaa !5
  %1323 = getelementptr inbounds %struct.w2c_hermes, ptr %1322, i32 0, i32 6
  %1324 = load i32, ptr %36, align 4, !tbaa !9
  %1325 = zext i32 %1324 to i64
  %1326 = add i64 %1325, 520
  %1327 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1323, i64 noundef %1326, i32 noundef %1327)
  %1328 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1328, ptr %36, align 4, !tbaa !9
  %1329 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1329, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %1330 = load i32, ptr %38, align 4, !tbaa !9
  %1331 = load i32, ptr %37, align 4, !tbaa !9
  %1332 = add i32 %1331, %1330
  store i32 %1332, ptr %37, align 4, !tbaa !9
  %1333 = load ptr, ptr %9, align 8, !tbaa !5
  %1334 = getelementptr inbounds %struct.w2c_hermes, ptr %1333, i32 0, i32 6
  %1335 = load i32, ptr %36, align 4, !tbaa !9
  %1336 = zext i32 %1335 to i64
  %1337 = add i64 %1336, 536
  %1338 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1334, i64 noundef %1337, i32 noundef %1338)
  %1339 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1339, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %1340 = load i32, ptr %37, align 4, !tbaa !9
  %1341 = load i32, ptr %36, align 4, !tbaa !9
  %1342 = add i32 %1341, %1340
  store i32 %1342, ptr %36, align 4, !tbaa !9
  %1343 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1343, ptr %37, align 4, !tbaa !9
  store i32 2192, ptr %38, align 4, !tbaa !9
  %1344 = load i32, ptr %38, align 4, !tbaa !9
  %1345 = load i32, ptr %37, align 4, !tbaa !9
  %1346 = add i32 %1345, %1344
  store i32 %1346, ptr %37, align 4, !tbaa !9
  %1347 = load ptr, ptr %9, align 8, !tbaa !5
  %1348 = load i32, ptr %36, align 4, !tbaa !9
  %1349 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x3A0x3Aswap0x5Babi0x3Av150070x5D0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x260x29(ptr noundef %1347, i32 noundef %1348, i32 noundef %1349)
  %1350 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1350, ptr %36, align 4, !tbaa !9
  %1351 = load ptr, ptr %9, align 8, !tbaa !5
  %1352 = getelementptr inbounds %struct.w2c_hermes, ptr %1351, i32 0, i32 6
  %1353 = load i32, ptr %36, align 4, !tbaa !9
  %1354 = zext i32 %1353 to i64
  %1355 = add i64 %1354, 536
  %1356 = call i32 @i32_load(ptr noundef %1352, i64 noundef %1355)
  store i32 %1356, ptr %36, align 4, !tbaa !9
  %1357 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1357, ptr %18, align 4, !tbaa !9
  %1358 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1358, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %1359 = load i32, ptr %38, align 4, !tbaa !9
  %1360 = load i32, ptr %37, align 4, !tbaa !9
  %1361 = add i32 %1360, %1359
  store i32 %1361, ptr %37, align 4, !tbaa !9
  %1362 = load i32, ptr %36, align 4, !tbaa !9
  %1363 = load i32, ptr %37, align 4, !tbaa !9
  %1364 = icmp eq i32 %1362, %1363
  %1365 = zext i1 %1364 to i32
  store i32 %1365, ptr %36, align 4, !tbaa !9
  %1366 = load i32, ptr %36, align 4, !tbaa !9
  %1367 = icmp ne i32 %1366, 0
  br i1 %1367, label %1368, label %1384

1368:                                             ; preds = %1297
  %1369 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1369, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %1370 = load i32, ptr %37, align 4, !tbaa !9
  %1371 = load i32, ptr %36, align 4, !tbaa !9
  %1372 = add i32 %1371, %1370
  store i32 %1372, ptr %36, align 4, !tbaa !9
  %1373 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1373, ptr %18, align 4, !tbaa !9
  %1374 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1374, ptr %36, align 4, !tbaa !9
  %1375 = load ptr, ptr %9, align 8, !tbaa !5
  %1376 = getelementptr inbounds %struct.w2c_hermes, ptr %1375, i32 0, i32 6
  %1377 = load i32, ptr %36, align 4, !tbaa !9
  %1378 = zext i32 %1377 to i64
  %1379 = add i64 %1378, 520
  %1380 = call i32 @i32_load(ptr noundef %1376, i64 noundef %1379)
  store i32 %1380, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %1381 = load i32, ptr %37, align 4, !tbaa !9
  %1382 = load i32, ptr %36, align 4, !tbaa !9
  %1383 = add i32 %1382, %1381
  store i32 %1383, ptr %36, align 4, !tbaa !9
  br label %1403

1384:                                             ; preds = %1297
  %1385 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1385, ptr %36, align 4, !tbaa !9
  %1386 = load i32, ptr %36, align 4, !tbaa !9
  %1387 = icmp ne i32 %1386, 0
  %1388 = xor i1 %1387, true
  %1389 = zext i1 %1388 to i32
  store i32 %1389, ptr %36, align 4, !tbaa !9
  %1390 = load i32, ptr %36, align 4, !tbaa !9
  %1391 = icmp ne i32 %1390, 0
  br i1 %1391, label %1392, label %1393

1392:                                             ; preds = %1384
  br label %1473

1393:                                             ; preds = %1384
  %1394 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1394, ptr %36, align 4, !tbaa !9
  %1395 = load ptr, ptr %9, align 8, !tbaa !5
  %1396 = getelementptr inbounds %struct.w2c_hermes, ptr %1395, i32 0, i32 6
  %1397 = load i32, ptr %36, align 4, !tbaa !9
  %1398 = zext i32 %1397 to i64
  %1399 = call i32 @i32_load(ptr noundef %1396, i64 noundef %1398)
  store i32 %1399, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %1400 = load i32, ptr %37, align 4, !tbaa !9
  %1401 = load i32, ptr %36, align 4, !tbaa !9
  %1402 = add i32 %1401, %1400
  store i32 %1402, ptr %36, align 4, !tbaa !9
  br label %1403

1403:                                             ; preds = %1393, %1368
  %1404 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1404, ptr %19, align 4, !tbaa !9
  %1405 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1405, ptr %36, align 4, !tbaa !9
  %1406 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1406, ptr %37, align 4, !tbaa !9
  %1407 = load ptr, ptr %9, align 8, !tbaa !5
  %1408 = getelementptr inbounds %struct.w2c_hermes, ptr %1407, i32 0, i32 6
  %1409 = load i32, ptr %37, align 4, !tbaa !9
  %1410 = zext i32 %1409 to i64
  %1411 = call i32 @i32_load(ptr noundef %1408, i64 noundef %1410)
  store i32 %1411, ptr %37, align 4, !tbaa !9
  %1412 = load i32, ptr %37, align 4, !tbaa !9
  %1413 = load ptr, ptr %9, align 8, !tbaa !5
  %1414 = getelementptr inbounds %struct.w2c_hermes, ptr %1413, i32 0, i32 7
  %1415 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1414, i32 0, i32 2
  %1416 = load i32, ptr %1415, align 4, !tbaa !18
  %1417 = icmp ult i32 %1412, %1416
  br i1 %1417, label %1418, label %1441

1418:                                             ; preds = %1403
  %1419 = load ptr, ptr %9, align 8, !tbaa !5
  %1420 = getelementptr inbounds %struct.w2c_hermes, ptr %1419, i32 0, i32 7
  %1421 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1420, i32 0, i32 0
  %1422 = load ptr, ptr %1421, align 8, !tbaa !19
  %1423 = load i32, ptr %37, align 4, !tbaa !9
  %1424 = zext i32 %1423 to i64
  %1425 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1422, i64 %1424
  %1426 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1425, i32 0, i32 1
  %1427 = load ptr, ptr %1426, align 8, !tbaa !20
  %1428 = icmp ne ptr %1427, null
  br i1 %1428, label %1429, label %1441

1429:                                             ; preds = %1418
  %1430 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %1431 = load ptr, ptr %9, align 8, !tbaa !5
  %1432 = getelementptr inbounds %struct.w2c_hermes, ptr %1431, i32 0, i32 7
  %1433 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1432, i32 0, i32 0
  %1434 = load ptr, ptr %1433, align 8, !tbaa !19
  %1435 = load i32, ptr %37, align 4, !tbaa !9
  %1436 = zext i32 %1435 to i64
  %1437 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1434, i64 %1436
  %1438 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1437, i32 0, i32 0
  %1439 = load ptr, ptr %1438, align 8, !tbaa !22
  %1440 = call zeroext i1 @func_types_eq(ptr noundef %1430, ptr noundef %1439)
  br label %1441

1441:                                             ; preds = %1429, %1418, %1403
  %1442 = phi i1 [ false, %1418 ], [ false, %1403 ], [ %1440, %1429 ]
  %1443 = xor i1 %1442, true
  %1444 = xor i1 %1443, true
  %1445 = zext i1 %1444 to i32
  %1446 = sext i32 %1445 to i64
  %1447 = call i64 @llvm.expect.i64(i64 %1446, i64 1)
  %1448 = icmp ne i64 %1447, 0
  br i1 %1448, label %1451, label %1449

1449:                                             ; preds = %1441
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

1450:                                             ; No predecessors!
  br label %1451

1451:                                             ; preds = %1450, %1441
  %1452 = phi i1 [ true, %1441 ], [ false, %1450 ]
  %1453 = zext i1 %1452 to i32
  %1454 = load ptr, ptr %9, align 8, !tbaa !5
  %1455 = getelementptr inbounds %struct.w2c_hermes, ptr %1454, i32 0, i32 7
  %1456 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1455, i32 0, i32 0
  %1457 = load ptr, ptr %1456, align 8, !tbaa !19
  %1458 = load i32, ptr %37, align 4, !tbaa !9
  %1459 = zext i32 %1458 to i64
  %1460 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1457, i64 %1459
  %1461 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1460, i32 0, i32 1
  %1462 = load ptr, ptr %1461, align 8, !tbaa !20
  %1463 = load ptr, ptr %9, align 8, !tbaa !5
  %1464 = getelementptr inbounds %struct.w2c_hermes, ptr %1463, i32 0, i32 7
  %1465 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1464, i32 0, i32 0
  %1466 = load ptr, ptr %1465, align 8, !tbaa !19
  %1467 = load i32, ptr %37, align 4, !tbaa !9
  %1468 = zext i32 %1467 to i64
  %1469 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1466, i64 %1468
  %1470 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1469, i32 0, i32 2
  %1471 = load ptr, ptr %1470, align 8, !tbaa !23
  %1472 = load i32, ptr %36, align 4, !tbaa !9
  call void %1462(ptr noundef %1471, i32 noundef %1472)
  br label %1473

1473:                                             ; preds = %1451, %1392, %1275, %1216
  %1474 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1474, ptr %36, align 4, !tbaa !9
  store i32 2184, ptr %37, align 4, !tbaa !9
  %1475 = load i32, ptr %37, align 4, !tbaa !9
  %1476 = load i32, ptr %36, align 4, !tbaa !9
  %1477 = add i32 %1476, %1475
  store i32 %1477, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %1478 = load ptr, ptr %9, align 8, !tbaa !5
  %1479 = getelementptr inbounds %struct.w2c_hermes, ptr %1478, i32 0, i32 6
  %1480 = load i32, ptr %36, align 4, !tbaa !9
  %1481 = zext i32 %1480 to i64
  %1482 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1479, i64 noundef %1481, i64 noundef %1482)
  %1483 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1483, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %1484 = load ptr, ptr %9, align 8, !tbaa !5
  %1485 = getelementptr inbounds %struct.w2c_hermes, ptr %1484, i32 0, i32 6
  %1486 = load i32, ptr %36, align 4, !tbaa !9
  %1487 = zext i32 %1486 to i64
  %1488 = add i64 %1487, 2176
  %1489 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1485, i64 noundef %1488, i64 noundef %1489)
  %1490 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1490, ptr %36, align 4, !tbaa !9
  %1491 = load i32, ptr %36, align 4, !tbaa !9
  %1492 = icmp ne i32 %1491, 0
  br i1 %1492, label %1493, label %2066

1493:                                             ; preds = %1473
  %1494 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1494, ptr %36, align 4, !tbaa !9
  %1495 = load ptr, ptr %9, align 8, !tbaa !5
  %1496 = getelementptr inbounds %struct.w2c_hermes, ptr %1495, i32 0, i32 6
  %1497 = load i32, ptr %36, align 4, !tbaa !9
  %1498 = zext i32 %1497 to i64
  %1499 = add i64 %1498, 16
  %1500 = call i32 @i32_load(ptr noundef %1496, i64 noundef %1499)
  store i32 %1500, ptr %36, align 4, !tbaa !9
  %1501 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1501, ptr %26, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %1502 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1502, ptr %14, align 4, !tbaa !9
  %1503 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1503, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %1504 = load ptr, ptr %9, align 8, !tbaa !5
  %1505 = getelementptr inbounds %struct.w2c_hermes, ptr %1504, i32 0, i32 6
  %1506 = load i32, ptr %36, align 4, !tbaa !9
  %1507 = zext i32 %1506 to i64
  %1508 = add i64 %1507, 412
  %1509 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1505, i64 noundef %1508, i32 noundef %1509)
  %1510 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1510, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %1511 = load ptr, ptr %9, align 8, !tbaa !5
  %1512 = getelementptr inbounds %struct.w2c_hermes, ptr %1511, i32 0, i32 6
  %1513 = load i32, ptr %36, align 4, !tbaa !9
  %1514 = zext i32 %1513 to i64
  %1515 = add i64 %1514, 404
  %1516 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1512, i64 noundef %1515, i64 noundef %1516)
  store i32 0, ptr %36, align 4, !tbaa !9
  %1517 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1517, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %1518 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1518, ptr %21, align 4, !tbaa !9
  %1519 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1519, ptr %36, align 4, !tbaa !9
  %1520 = load i32, ptr %36, align 4, !tbaa !9
  %1521 = icmp ne i32 %1520, 0
  br i1 %1521, label %1522, label %1547

1522:                                             ; preds = %1493
  %1523 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1523, ptr %36, align 4, !tbaa !9
  store i32 536870912, ptr %37, align 4, !tbaa !9
  %1524 = load i32, ptr %36, align 4, !tbaa !9
  %1525 = load i32, ptr %37, align 4, !tbaa !9
  %1526 = icmp uge i32 %1524, %1525
  %1527 = zext i1 %1526 to i32
  store i32 %1527, ptr %36, align 4, !tbaa !9
  %1528 = load i32, ptr %36, align 4, !tbaa !9
  %1529 = icmp ne i32 %1528, 0
  br i1 %1529, label %1530, label %1531

1530:                                             ; preds = %1522
  br label %7450

1531:                                             ; preds = %1522
  %1532 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1532, ptr %36, align 4, !tbaa !9
  store i32 3, ptr %37, align 4, !tbaa !9
  %1533 = load i32, ptr %37, align 4, !tbaa !9
  %1534 = and i32 %1533, 31
  %1535 = load i32, ptr %36, align 4, !tbaa !9
  %1536 = shl i32 %1535, %1534
  store i32 %1536, ptr %36, align 4, !tbaa !9
  %1537 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1537, ptr %18, align 4, !tbaa !9
  %1538 = load ptr, ptr %9, align 8, !tbaa !5
  %1539 = load i32, ptr %36, align 4, !tbaa !9
  %1540 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %1538, i32 noundef %1539)
  store i32 %1540, ptr %36, align 4, !tbaa !9
  %1541 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1541, ptr %19, align 4, !tbaa !9
  %1542 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1542, ptr %37, align 4, !tbaa !9
  %1543 = load i32, ptr %37, align 4, !tbaa !9
  %1544 = load i32, ptr %36, align 4, !tbaa !9
  %1545 = add i32 %1544, %1543
  store i32 %1545, ptr %36, align 4, !tbaa !9
  %1546 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1546, ptr %21, align 4, !tbaa !9
  br label %1547

1547:                                             ; preds = %1531, %1493
  %1548 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1548, ptr %36, align 4, !tbaa !9
  store i32 404, ptr %37, align 4, !tbaa !9
  %1549 = load i32, ptr %37, align 4, !tbaa !9
  %1550 = load i32, ptr %36, align 4, !tbaa !9
  %1551 = add i32 %1550, %1549
  store i32 %1551, ptr %36, align 4, !tbaa !9
  %1552 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %1552, ptr %37, align 4, !tbaa !9
  %1553 = load ptr, ptr %9, align 8, !tbaa !5
  %1554 = load i32, ptr %36, align 4, !tbaa !9
  %1555 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x3A0x3Areserve0x28unsigned0x20long0x29(ptr noundef %1553, i32 noundef %1554, i32 noundef %1555)
  %1556 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1556, ptr %36, align 4, !tbaa !9
  %1557 = load ptr, ptr %9, align 8, !tbaa !5
  %1558 = getelementptr inbounds %struct.w2c_hermes, ptr %1557, i32 0, i32 6
  %1559 = load i32, ptr %36, align 4, !tbaa !9
  %1560 = zext i32 %1559 to i64
  %1561 = add i64 %1560, 24
  %1562 = call i32 @i32_load(ptr noundef %1558, i64 noundef %1561)
  store i32 %1562, ptr %36, align 4, !tbaa !9
  %1563 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1563, ptr %18, align 4, !tbaa !9
  %1564 = load i32, ptr %36, align 4, !tbaa !9
  %1565 = icmp ne i32 %1564, 0
  %1566 = xor i1 %1565, true
  %1567 = zext i1 %1566 to i32
  store i32 %1567, ptr %36, align 4, !tbaa !9
  %1568 = load i32, ptr %36, align 4, !tbaa !9
  %1569 = icmp ne i32 %1568, 0
  br i1 %1569, label %1570, label %1573

1570:                                             ; preds = %1547
  %1571 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1571, ptr %36, align 4, !tbaa !9
  %1572 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1572, ptr %20, align 4, !tbaa !9
  br label %2169

1573:                                             ; preds = %1547
  %1574 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1574, ptr %36, align 4, !tbaa !9
  %1575 = load ptr, ptr %9, align 8, !tbaa !5
  %1576 = getelementptr inbounds %struct.w2c_hermes, ptr %1575, i32 0, i32 6
  %1577 = load i32, ptr %36, align 4, !tbaa !9
  %1578 = zext i32 %1577 to i64
  %1579 = add i64 %1578, 20
  %1580 = call i32 @i32_load(ptr noundef %1576, i64 noundef %1579)
  store i32 %1580, ptr %36, align 4, !tbaa !9
  %1581 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1581, ptr %24, align 4, !tbaa !9
  %1582 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1582, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %1583 = load i32, ptr %38, align 4, !tbaa !9
  %1584 = and i32 %1583, 31
  %1585 = load i32, ptr %37, align 4, !tbaa !9
  %1586 = shl i32 %1585, %1584
  store i32 %1586, ptr %37, align 4, !tbaa !9
  %1587 = load i32, ptr %37, align 4, !tbaa !9
  %1588 = load i32, ptr %36, align 4, !tbaa !9
  %1589 = add i32 %1588, %1587
  store i32 %1589, ptr %36, align 4, !tbaa !9
  %1590 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1590, ptr %28, align 4, !tbaa !9
  %1591 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1591, ptr %36, align 4, !tbaa !9
  %1592 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1592, ptr %20, align 4, !tbaa !9
  br label %1593

1593:                                             ; preds = %2064, %1573
  %1594 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %1594, ptr %36, align 4, !tbaa !9
  %1595 = load ptr, ptr %9, align 8, !tbaa !5
  %1596 = getelementptr inbounds %struct.w2c_hermes, ptr %1595, i32 0, i32 6
  %1597 = load i32, ptr %36, align 4, !tbaa !9
  %1598 = zext i32 %1597 to i64
  %1599 = call i32 @i32_load(ptr noundef %1596, i64 noundef %1598)
  store i32 %1599, ptr %36, align 4, !tbaa !9
  %1600 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1600, ptr %27, align 4, !tbaa !9
  store i32 2147483647, ptr %37, align 4, !tbaa !9
  %1601 = load i32, ptr %37, align 4, !tbaa !9
  %1602 = load i32, ptr %36, align 4, !tbaa !9
  %1603 = and i32 %1602, %1601
  store i32 %1603, ptr %36, align 4, !tbaa !9
  %1604 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1604, ptr %18, align 4, !tbaa !9
  %1605 = load i32, ptr %36, align 4, !tbaa !9
  %1606 = icmp ne i32 %1605, 0
  br i1 %1606, label %1607, label %2051

1607:                                             ; preds = %1593
  %1608 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1608, ptr %36, align 4, !tbaa !9
  %1609 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1609, ptr %37, align 4, !tbaa !9
  %1610 = load i32, ptr %37, align 4, !tbaa !9
  %1611 = load i32, ptr %36, align 4, !tbaa !9
  %1612 = add i32 %1611, %1610
  store i32 %1612, ptr %36, align 4, !tbaa !9
  %1613 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1613, ptr %25, align 4, !tbaa !9
  br label %1614

1614:                                             ; preds = %2047, %1607
  %1615 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1615, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %1616 = load i32, ptr %37, align 4, !tbaa !9
  %1617 = load i32, ptr %36, align 4, !tbaa !9
  %1618 = add i32 %1617, %1616
  store i32 %1618, ptr %36, align 4, !tbaa !9
  %1619 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1619, ptr %37, align 4, !tbaa !9
  %1620 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %1620, ptr %38, align 4, !tbaa !9
  %1621 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %1621, ptr %39, align 4, !tbaa !9
  %1622 = load ptr, ptr %9, align 8, !tbaa !5
  %1623 = getelementptr inbounds %struct.w2c_hermes, ptr %1622, i32 0, i32 6
  %1624 = load i32, ptr %39, align 4, !tbaa !9
  %1625 = zext i32 %1624 to i64
  %1626 = call i32 @i32_load(ptr noundef %1623, i64 noundef %1625)
  store i32 %1626, ptr %39, align 4, !tbaa !9
  %1627 = load ptr, ptr %9, align 8, !tbaa !5
  %1628 = getelementptr inbounds %struct.w2c_hermes, ptr %1627, i32 0, i32 6
  %1629 = load i32, ptr %39, align 4, !tbaa !9
  %1630 = zext i32 %1629 to i64
  %1631 = add i64 %1630, 4
  %1632 = call i32 @i32_load(ptr noundef %1628, i64 noundef %1631)
  store i32 %1632, ptr %39, align 4, !tbaa !9
  %1633 = load i32, ptr %39, align 4, !tbaa !9
  %1634 = load ptr, ptr %9, align 8, !tbaa !5
  %1635 = getelementptr inbounds %struct.w2c_hermes, ptr %1634, i32 0, i32 7
  %1636 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1635, i32 0, i32 2
  %1637 = load i32, ptr %1636, align 4, !tbaa !18
  %1638 = icmp ult i32 %1633, %1637
  br i1 %1638, label %1639, label %1662

1639:                                             ; preds = %1614
  %1640 = load ptr, ptr %9, align 8, !tbaa !5
  %1641 = getelementptr inbounds %struct.w2c_hermes, ptr %1640, i32 0, i32 7
  %1642 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1641, i32 0, i32 0
  %1643 = load ptr, ptr %1642, align 8, !tbaa !19
  %1644 = load i32, ptr %39, align 4, !tbaa !9
  %1645 = zext i32 %1644 to i64
  %1646 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1643, i64 %1645
  %1647 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1646, i32 0, i32 1
  %1648 = load ptr, ptr %1647, align 8, !tbaa !20
  %1649 = icmp ne ptr %1648, null
  br i1 %1649, label %1650, label %1662

1650:                                             ; preds = %1639
  %1651 = load ptr, ptr @w2c_hermes_t1, align 8, !tbaa !5
  %1652 = load ptr, ptr %9, align 8, !tbaa !5
  %1653 = getelementptr inbounds %struct.w2c_hermes, ptr %1652, i32 0, i32 7
  %1654 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1653, i32 0, i32 0
  %1655 = load ptr, ptr %1654, align 8, !tbaa !19
  %1656 = load i32, ptr %39, align 4, !tbaa !9
  %1657 = zext i32 %1656 to i64
  %1658 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1655, i64 %1657
  %1659 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1658, i32 0, i32 0
  %1660 = load ptr, ptr %1659, align 8, !tbaa !22
  %1661 = call zeroext i1 @func_types_eq(ptr noundef %1651, ptr noundef %1660)
  br label %1662

1662:                                             ; preds = %1650, %1639, %1614
  %1663 = phi i1 [ false, %1639 ], [ false, %1614 ], [ %1661, %1650 ]
  %1664 = xor i1 %1663, true
  %1665 = xor i1 %1664, true
  %1666 = zext i1 %1665 to i32
  %1667 = sext i32 %1666 to i64
  %1668 = call i64 @llvm.expect.i64(i64 %1667, i64 1)
  %1669 = icmp ne i64 %1668, 0
  br i1 %1669, label %1672, label %1670

1670:                                             ; preds = %1662
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

1671:                                             ; No predecessors!
  br label %1672

1672:                                             ; preds = %1671, %1662
  %1673 = phi i1 [ true, %1662 ], [ false, %1671 ]
  %1674 = zext i1 %1673 to i32
  %1675 = load ptr, ptr %9, align 8, !tbaa !5
  %1676 = getelementptr inbounds %struct.w2c_hermes, ptr %1675, i32 0, i32 7
  %1677 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1676, i32 0, i32 0
  %1678 = load ptr, ptr %1677, align 8, !tbaa !19
  %1679 = load i32, ptr %39, align 4, !tbaa !9
  %1680 = zext i32 %1679 to i64
  %1681 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1678, i64 %1680
  %1682 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1681, i32 0, i32 1
  %1683 = load ptr, ptr %1682, align 8, !tbaa !20
  %1684 = load ptr, ptr %9, align 8, !tbaa !5
  %1685 = getelementptr inbounds %struct.w2c_hermes, ptr %1684, i32 0, i32 7
  %1686 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %1685, i32 0, i32 0
  %1687 = load ptr, ptr %1686, align 8, !tbaa !19
  %1688 = load i32, ptr %39, align 4, !tbaa !9
  %1689 = zext i32 %1688 to i64
  %1690 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1687, i64 %1689
  %1691 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1690, i32 0, i32 2
  %1692 = load ptr, ptr %1691, align 8, !tbaa !23
  %1693 = load i32, ptr %36, align 4, !tbaa !9
  %1694 = load i32, ptr %37, align 4, !tbaa !9
  %1695 = load i32, ptr %38, align 4, !tbaa !9
  call void %1683(ptr noundef %1692, i32 noundef %1693, i32 noundef %1694, i32 noundef %1695)
  %1696 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1696, ptr %36, align 4, !tbaa !9
  %1697 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1697, ptr %37, align 4, !tbaa !9
  %1698 = load i32, ptr %36, align 4, !tbaa !9
  %1699 = load i32, ptr %37, align 4, !tbaa !9
  %1700 = icmp ult i32 %1698, %1699
  %1701 = zext i1 %1700 to i32
  store i32 %1701, ptr %36, align 4, !tbaa !9
  %1702 = load i32, ptr %36, align 4, !tbaa !9
  %1703 = icmp ne i32 %1702, 0
  br i1 %1703, label %1704, label %1723

1704:                                             ; preds = %1672
  %1705 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1705, ptr %36, align 4, !tbaa !9
  %1706 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1706, ptr %37, align 4, !tbaa !9
  %1707 = load ptr, ptr %9, align 8, !tbaa !5
  %1708 = getelementptr inbounds %struct.w2c_hermes, ptr %1707, i32 0, i32 6
  %1709 = load i32, ptr %37, align 4, !tbaa !9
  %1710 = zext i32 %1709 to i64
  %1711 = add i64 %1710, 520
  %1712 = call i64 @i64_load(ptr noundef %1708, i64 noundef %1711)
  store i64 %1712, ptr %43, align 8, !tbaa !11
  %1713 = load ptr, ptr %9, align 8, !tbaa !5
  %1714 = getelementptr inbounds %struct.w2c_hermes, ptr %1713, i32 0, i32 6
  %1715 = load i32, ptr %36, align 4, !tbaa !9
  %1716 = zext i32 %1715 to i64
  %1717 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1714, i64 noundef %1716, i64 noundef %1717)
  %1718 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1718, ptr %36, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %1719 = load i32, ptr %37, align 4, !tbaa !9
  %1720 = load i32, ptr %36, align 4, !tbaa !9
  %1721 = add i32 %1720, %1719
  store i32 %1721, ptr %36, align 4, !tbaa !9
  %1722 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1722, ptr %19, align 4, !tbaa !9
  br label %1864

1723:                                             ; preds = %1672
  %1724 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1724, ptr %36, align 4, !tbaa !9
  %1725 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1725, ptr %37, align 4, !tbaa !9
  %1726 = load i32, ptr %37, align 4, !tbaa !9
  %1727 = load i32, ptr %36, align 4, !tbaa !9
  %1728 = sub i32 %1727, %1726
  store i32 %1728, ptr %36, align 4, !tbaa !9
  %1729 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1729, ptr %22, align 4, !tbaa !9
  store i32 3, ptr %37, align 4, !tbaa !9
  %1730 = load i32, ptr %36, align 4, !tbaa !9
  %1731 = load i32, ptr %37, align 4, !tbaa !9
  %1732 = and i32 %1731, 31
  %1733 = ashr i32 %1730, %1732
  store i32 %1733, ptr %36, align 4, !tbaa !9
  %1734 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1734, ptr %23, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %1735 = load i32, ptr %37, align 4, !tbaa !9
  %1736 = load i32, ptr %36, align 4, !tbaa !9
  %1737 = add i32 %1736, %1735
  store i32 %1737, ptr %36, align 4, !tbaa !9
  %1738 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1738, ptr %18, align 4, !tbaa !9
  store i32 536870912, ptr %37, align 4, !tbaa !9
  %1739 = load i32, ptr %36, align 4, !tbaa !9
  %1740 = load i32, ptr %37, align 4, !tbaa !9
  %1741 = icmp uge i32 %1739, %1740
  %1742 = zext i1 %1741 to i32
  store i32 %1742, ptr %36, align 4, !tbaa !9
  %1743 = load i32, ptr %36, align 4, !tbaa !9
  %1744 = icmp ne i32 %1743, 0
  br i1 %1744, label %1745, label %1746

1745:                                             ; preds = %1723
  br label %7450

1746:                                             ; preds = %1723
  store i32 536870911, ptr %36, align 4, !tbaa !9
  %1747 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1747, ptr %37, align 4, !tbaa !9
  %1748 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1748, ptr %38, align 4, !tbaa !9
  %1749 = load i32, ptr %38, align 4, !tbaa !9
  %1750 = load i32, ptr %37, align 4, !tbaa !9
  %1751 = sub i32 %1750, %1749
  store i32 %1751, ptr %37, align 4, !tbaa !9
  %1752 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %1752, ptr %19, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %1753 = load i32, ptr %37, align 4, !tbaa !9
  %1754 = load i32, ptr %38, align 4, !tbaa !9
  %1755 = and i32 %1754, 31
  %1756 = ashr i32 %1753, %1755
  store i32 %1756, ptr %37, align 4, !tbaa !9
  %1757 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %1757, ptr %21, align 4, !tbaa !9
  %1758 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1758, ptr %38, align 4, !tbaa !9
  %1759 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1759, ptr %39, align 4, !tbaa !9
  %1760 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %1760, ptr %40, align 4, !tbaa !9
  %1761 = load i32, ptr %39, align 4, !tbaa !9
  %1762 = load i32, ptr %40, align 4, !tbaa !9
  %1763 = icmp ult i32 %1761, %1762
  %1764 = zext i1 %1763 to i32
  store i32 %1764, ptr %39, align 4, !tbaa !9
  %1765 = load i32, ptr %39, align 4, !tbaa !9
  %1766 = icmp ne i32 %1765, 0
  br i1 %1766, label %1767, label %1769

1767:                                             ; preds = %1746
  %1768 = load i32, ptr %37, align 4, !tbaa !9
  br label %1771

1769:                                             ; preds = %1746
  %1770 = load i32, ptr %38, align 4, !tbaa !9
  br label %1771

1771:                                             ; preds = %1769, %1767
  %1772 = phi i32 [ %1768, %1767 ], [ %1770, %1769 ]
  store i32 %1772, ptr %37, align 4, !tbaa !9
  %1773 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1773, ptr %38, align 4, !tbaa !9
  store i32 2147483640, ptr %39, align 4, !tbaa !9
  %1774 = load i32, ptr %38, align 4, !tbaa !9
  %1775 = load i32, ptr %39, align 4, !tbaa !9
  %1776 = icmp uge i32 %1774, %1775
  %1777 = zext i1 %1776 to i32
  store i32 %1777, ptr %38, align 4, !tbaa !9
  %1778 = load i32, ptr %38, align 4, !tbaa !9
  %1779 = icmp ne i32 %1778, 0
  br i1 %1779, label %1780, label %1782

1780:                                             ; preds = %1771
  %1781 = load i32, ptr %36, align 4, !tbaa !9
  br label %1784

1782:                                             ; preds = %1771
  %1783 = load i32, ptr %37, align 4, !tbaa !9
  br label %1784

1784:                                             ; preds = %1782, %1780
  %1785 = phi i32 [ %1781, %1780 ], [ %1783, %1782 ]
  store i32 %1785, ptr %36, align 4, !tbaa !9
  %1786 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1786, ptr %18, align 4, !tbaa !9
  %1787 = load i32, ptr %36, align 4, !tbaa !9
  %1788 = icmp ne i32 %1787, 0
  br i1 %1788, label %1789, label %1807

1789:                                             ; preds = %1784
  %1790 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1790, ptr %36, align 4, !tbaa !9
  store i32 536870912, ptr %37, align 4, !tbaa !9
  %1791 = load i32, ptr %36, align 4, !tbaa !9
  %1792 = load i32, ptr %37, align 4, !tbaa !9
  %1793 = icmp uge i32 %1791, %1792
  %1794 = zext i1 %1793 to i32
  store i32 %1794, ptr %36, align 4, !tbaa !9
  %1795 = load i32, ptr %36, align 4, !tbaa !9
  %1796 = icmp ne i32 %1795, 0
  br i1 %1796, label %1797, label %1798

1797:                                             ; preds = %1789
  br label %7448

1798:                                             ; preds = %1789
  %1799 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1799, ptr %36, align 4, !tbaa !9
  store i32 3, ptr %37, align 4, !tbaa !9
  %1800 = load i32, ptr %37, align 4, !tbaa !9
  %1801 = and i32 %1800, 31
  %1802 = load i32, ptr %36, align 4, !tbaa !9
  %1803 = shl i32 %1802, %1801
  store i32 %1803, ptr %36, align 4, !tbaa !9
  %1804 = load ptr, ptr %9, align 8, !tbaa !5
  %1805 = load i32, ptr %36, align 4, !tbaa !9
  %1806 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %1804, i32 noundef %1805)
  store i32 %1806, ptr %36, align 4, !tbaa !9
  br label %1808

1807:                                             ; preds = %1784
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %1808

1808:                                             ; preds = %1807, %1798
  %1809 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1809, ptr %19, align 4, !tbaa !9
  %1810 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1810, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %1811 = load i32, ptr %38, align 4, !tbaa !9
  %1812 = and i32 %1811, 31
  %1813 = load i32, ptr %37, align 4, !tbaa !9
  %1814 = shl i32 %1813, %1812
  store i32 %1814, ptr %37, align 4, !tbaa !9
  %1815 = load i32, ptr %37, align 4, !tbaa !9
  %1816 = load i32, ptr %36, align 4, !tbaa !9
  %1817 = add i32 %1816, %1815
  store i32 %1817, ptr %36, align 4, !tbaa !9
  %1818 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1818, ptr %23, align 4, !tbaa !9
  %1819 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1819, ptr %37, align 4, !tbaa !9
  %1820 = load ptr, ptr %9, align 8, !tbaa !5
  %1821 = getelementptr inbounds %struct.w2c_hermes, ptr %1820, i32 0, i32 6
  %1822 = load i32, ptr %37, align 4, !tbaa !9
  %1823 = zext i32 %1822 to i64
  %1824 = add i64 %1823, 520
  %1825 = call i64 @i64_load(ptr noundef %1821, i64 noundef %1824)
  store i64 %1825, ptr %43, align 8, !tbaa !11
  %1826 = load ptr, ptr %9, align 8, !tbaa !5
  %1827 = getelementptr inbounds %struct.w2c_hermes, ptr %1826, i32 0, i32 6
  %1828 = load i32, ptr %36, align 4, !tbaa !9
  %1829 = zext i32 %1828 to i64
  %1830 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %1827, i64 noundef %1829, i64 noundef %1830)
  %1831 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %1831, ptr %36, align 4, !tbaa !9
  %1832 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1832, ptr %37, align 4, !tbaa !9
  %1833 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %1833, ptr %38, align 4, !tbaa !9
  %1834 = load ptr, ptr %9, align 8, !tbaa !5
  %1835 = load i32, ptr %36, align 4, !tbaa !9
  %1836 = load i32, ptr %37, align 4, !tbaa !9
  %1837 = load i32, ptr %38, align 4, !tbaa !9
  %1838 = call i32 @w2c_hermes_memmove(ptr noundef %1834, i32 noundef %1835, i32 noundef %1836, i32 noundef %1837)
  store i32 %1838, ptr %36, align 4, !tbaa !9
  %1839 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1839, ptr %22, align 4, !tbaa !9
  %1840 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1840, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %1841 = load i32, ptr %38, align 4, !tbaa !9
  %1842 = and i32 %1841, 31
  %1843 = load i32, ptr %37, align 4, !tbaa !9
  %1844 = shl i32 %1843, %1842
  store i32 %1844, ptr %37, align 4, !tbaa !9
  %1845 = load i32, ptr %37, align 4, !tbaa !9
  %1846 = load i32, ptr %36, align 4, !tbaa !9
  %1847 = add i32 %1846, %1845
  store i32 %1847, ptr %36, align 4, !tbaa !9
  %1848 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1848, ptr %21, align 4, !tbaa !9
  %1849 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1849, ptr %36, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %1850 = load i32, ptr %37, align 4, !tbaa !9
  %1851 = load i32, ptr %36, align 4, !tbaa !9
  %1852 = add i32 %1851, %1850
  store i32 %1852, ptr %36, align 4, !tbaa !9
  %1853 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1853, ptr %19, align 4, !tbaa !9
  %1854 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1854, ptr %36, align 4, !tbaa !9
  %1855 = load i32, ptr %36, align 4, !tbaa !9
  %1856 = icmp ne i32 %1855, 0
  br i1 %1856, label %1857, label %1861

1857:                                             ; preds = %1808
  %1858 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %1858, ptr %36, align 4, !tbaa !9
  %1859 = load ptr, ptr %9, align 8, !tbaa !5
  %1860 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %1859, i32 noundef %1860)
  br label %1861

1861:                                             ; preds = %1857, %1808
  %1862 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %1862, ptr %36, align 4, !tbaa !9
  %1863 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1863, ptr %20, align 4, !tbaa !9
  br label %1864

1864:                                             ; preds = %1861, %1704
  %1865 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1865, ptr %36, align 4, !tbaa !9
  %1866 = load ptr, ptr %9, align 8, !tbaa !5
  %1867 = getelementptr inbounds %struct.w2c_hermes, ptr %1866, i32 0, i32 6
  %1868 = load i32, ptr %36, align 4, !tbaa !9
  %1869 = zext i32 %1868 to i64
  %1870 = add i64 %1869, 408
  %1871 = call i32 @i32_load(ptr noundef %1867, i64 noundef %1870)
  store i32 %1871, ptr %36, align 4, !tbaa !9
  %1872 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1872, ptr %18, align 4, !tbaa !9
  %1873 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1873, ptr %37, align 4, !tbaa !9
  %1874 = load ptr, ptr %9, align 8, !tbaa !5
  %1875 = getelementptr inbounds %struct.w2c_hermes, ptr %1874, i32 0, i32 6
  %1876 = load i32, ptr %37, align 4, !tbaa !9
  %1877 = zext i32 %1876 to i64
  %1878 = add i64 %1877, 412
  %1879 = call i32 @i32_load(ptr noundef %1875, i64 noundef %1878)
  store i32 %1879, ptr %37, align 4, !tbaa !9
  %1880 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %1880, ptr %22, align 4, !tbaa !9
  store i32 5, ptr %38, align 4, !tbaa !9
  %1881 = load i32, ptr %38, align 4, !tbaa !9
  %1882 = and i32 %1881, 31
  %1883 = load i32, ptr %37, align 4, !tbaa !9
  %1884 = shl i32 %1883, %1882
  store i32 %1884, ptr %37, align 4, !tbaa !9
  %1885 = load i32, ptr %36, align 4, !tbaa !9
  %1886 = load i32, ptr %37, align 4, !tbaa !9
  %1887 = icmp eq i32 %1885, %1886
  %1888 = zext i1 %1887 to i32
  store i32 %1888, ptr %36, align 4, !tbaa !9
  %1889 = load i32, ptr %36, align 4, !tbaa !9
  %1890 = icmp ne i32 %1889, 0
  br i1 %1890, label %1891, label %1959

1891:                                             ; preds = %1864
  %1892 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1892, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %1893 = load i32, ptr %37, align 4, !tbaa !9
  %1894 = load i32, ptr %36, align 4, !tbaa !9
  %1895 = add i32 %1894, %1893
  store i32 %1895, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %1896 = load i32, ptr %36, align 4, !tbaa !9
  %1897 = load i32, ptr %37, align 4, !tbaa !9
  %1898 = icmp slt i32 %1896, %1897
  %1899 = zext i1 %1898 to i32
  store i32 %1899, ptr %36, align 4, !tbaa !9
  %1900 = load i32, ptr %36, align 4, !tbaa !9
  %1901 = icmp ne i32 %1900, 0
  br i1 %1901, label %1902, label %1903

1902:                                             ; preds = %1891
  br label %7450

1903:                                             ; preds = %1891
  store i32 2147483647, ptr %36, align 4, !tbaa !9
  %1904 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1904, ptr %23, align 4, !tbaa !9
  %1905 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1905, ptr %36, align 4, !tbaa !9
  store i32 1073741822, ptr %37, align 4, !tbaa !9
  %1906 = load i32, ptr %36, align 4, !tbaa !9
  %1907 = load i32, ptr %37, align 4, !tbaa !9
  %1908 = icmp ule i32 %1906, %1907
  %1909 = zext i1 %1908 to i32
  store i32 %1909, ptr %36, align 4, !tbaa !9
  %1910 = load i32, ptr %36, align 4, !tbaa !9
  %1911 = icmp ne i32 %1910, 0
  br i1 %1911, label %1912, label %1942

1912:                                             ; preds = %1903
  %1913 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %1913, ptr %36, align 4, !tbaa !9
  store i32 6, ptr %37, align 4, !tbaa !9
  %1914 = load i32, ptr %37, align 4, !tbaa !9
  %1915 = and i32 %1914, 31
  %1916 = load i32, ptr %36, align 4, !tbaa !9
  %1917 = shl i32 %1916, %1915
  store i32 %1917, ptr %36, align 4, !tbaa !9
  %1918 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1918, ptr %22, align 4, !tbaa !9
  %1919 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1919, ptr %37, align 4, !tbaa !9
  store i32 -32, ptr %38, align 4, !tbaa !9
  %1920 = load i32, ptr %38, align 4, !tbaa !9
  %1921 = load i32, ptr %37, align 4, !tbaa !9
  %1922 = and i32 %1921, %1920
  store i32 %1922, ptr %37, align 4, !tbaa !9
  store i32 32, ptr %38, align 4, !tbaa !9
  %1923 = load i32, ptr %38, align 4, !tbaa !9
  %1924 = load i32, ptr %37, align 4, !tbaa !9
  %1925 = add i32 %1924, %1923
  store i32 %1925, ptr %37, align 4, !tbaa !9
  %1926 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %1926, ptr %18, align 4, !tbaa !9
  %1927 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1927, ptr %38, align 4, !tbaa !9
  %1928 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %1928, ptr %39, align 4, !tbaa !9
  %1929 = load i32, ptr %38, align 4, !tbaa !9
  %1930 = load i32, ptr %39, align 4, !tbaa !9
  %1931 = icmp ult i32 %1929, %1930
  %1932 = zext i1 %1931 to i32
  store i32 %1932, ptr %38, align 4, !tbaa !9
  %1933 = load i32, ptr %38, align 4, !tbaa !9
  %1934 = icmp ne i32 %1933, 0
  br i1 %1934, label %1935, label %1937

1935:                                             ; preds = %1912
  %1936 = load i32, ptr %36, align 4, !tbaa !9
  br label %1939

1937:                                             ; preds = %1912
  %1938 = load i32, ptr %37, align 4, !tbaa !9
  br label %1939

1939:                                             ; preds = %1937, %1935
  %1940 = phi i32 [ %1936, %1935 ], [ %1938, %1937 ]
  store i32 %1940, ptr %36, align 4, !tbaa !9
  %1941 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1941, ptr %23, align 4, !tbaa !9
  br label %1942

1942:                                             ; preds = %1939, %1903
  %1943 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1943, ptr %36, align 4, !tbaa !9
  store i32 404, ptr %37, align 4, !tbaa !9
  %1944 = load i32, ptr %37, align 4, !tbaa !9
  %1945 = load i32, ptr %36, align 4, !tbaa !9
  %1946 = add i32 %1945, %1944
  store i32 %1946, ptr %36, align 4, !tbaa !9
  %1947 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %1947, ptr %37, align 4, !tbaa !9
  %1948 = load ptr, ptr %9, align 8, !tbaa !5
  %1949 = load i32, ptr %36, align 4, !tbaa !9
  %1950 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x3A0x3Areserve0x28unsigned0x20long0x29(ptr noundef %1948, i32 noundef %1949, i32 noundef %1950)
  %1951 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1951, ptr %36, align 4, !tbaa !9
  %1952 = load ptr, ptr %9, align 8, !tbaa !5
  %1953 = getelementptr inbounds %struct.w2c_hermes, ptr %1952, i32 0, i32 6
  %1954 = load i32, ptr %36, align 4, !tbaa !9
  %1955 = zext i32 %1954 to i64
  %1956 = add i64 %1955, 408
  %1957 = call i32 @i32_load(ptr noundef %1953, i64 noundef %1956)
  store i32 %1957, ptr %36, align 4, !tbaa !9
  %1958 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1958, ptr %18, align 4, !tbaa !9
  br label %1959

1959:                                             ; preds = %1942, %1864
  %1960 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1960, ptr %36, align 4, !tbaa !9
  %1961 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1961, ptr %37, align 4, !tbaa !9
  store i32 1, ptr %38, align 4, !tbaa !9
  %1962 = load i32, ptr %38, align 4, !tbaa !9
  %1963 = load i32, ptr %37, align 4, !tbaa !9
  %1964 = add i32 %1963, %1962
  store i32 %1964, ptr %37, align 4, !tbaa !9
  %1965 = load ptr, ptr %9, align 8, !tbaa !5
  %1966 = getelementptr inbounds %struct.w2c_hermes, ptr %1965, i32 0, i32 6
  %1967 = load i32, ptr %36, align 4, !tbaa !9
  %1968 = zext i32 %1967 to i64
  %1969 = add i64 %1968, 408
  %1970 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %1966, i64 noundef %1969, i32 noundef %1970)
  store i32 1, ptr %36, align 4, !tbaa !9
  %1971 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1971, ptr %37, align 4, !tbaa !9
  %1972 = load i32, ptr %37, align 4, !tbaa !9
  %1973 = and i32 %1972, 31
  %1974 = load i32, ptr %36, align 4, !tbaa !9
  %1975 = shl i32 %1974, %1973
  store i32 %1975, ptr %36, align 4, !tbaa !9
  %1976 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1976, ptr %22, align 4, !tbaa !9
  %1977 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %1977, ptr %36, align 4, !tbaa !9
  %1978 = load ptr, ptr %9, align 8, !tbaa !5
  %1979 = getelementptr inbounds %struct.w2c_hermes, ptr %1978, i32 0, i32 6
  %1980 = load i32, ptr %36, align 4, !tbaa !9
  %1981 = zext i32 %1980 to i64
  %1982 = add i64 %1981, 404
  %1983 = call i32 @i32_load(ptr noundef %1979, i64 noundef %1982)
  store i32 %1983, ptr %36, align 4, !tbaa !9
  %1984 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %1984, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %1985 = load i32, ptr %38, align 4, !tbaa !9
  %1986 = and i32 %1985, 31
  %1987 = load i32, ptr %37, align 4, !tbaa !9
  %1988 = lshr i32 %1987, %1986
  store i32 %1988, ptr %37, align 4, !tbaa !9
  store i32 536870908, ptr %38, align 4, !tbaa !9
  %1989 = load i32, ptr %38, align 4, !tbaa !9
  %1990 = load i32, ptr %37, align 4, !tbaa !9
  %1991 = and i32 %1990, %1989
  store i32 %1991, ptr %37, align 4, !tbaa !9
  %1992 = load i32, ptr %37, align 4, !tbaa !9
  %1993 = load i32, ptr %36, align 4, !tbaa !9
  %1994 = add i32 %1993, %1992
  store i32 %1994, ptr %36, align 4, !tbaa !9
  %1995 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %1995, ptr %18, align 4, !tbaa !9
  %1996 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %1996, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  %1997 = load i32, ptr %37, align 4, !tbaa !9
  %1998 = load i32, ptr %38, align 4, !tbaa !9
  %1999 = icmp slt i32 %1997, %1998
  %2000 = zext i1 %1999 to i32
  store i32 %2000, ptr %37, align 4, !tbaa !9
  %2001 = load i32, ptr %37, align 4, !tbaa !9
  %2002 = icmp ne i32 %2001, 0
  br i1 %2002, label %2003, label %2014

2003:                                             ; preds = %1959
  %2004 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2004, ptr %37, align 4, !tbaa !9
  %2005 = load ptr, ptr %9, align 8, !tbaa !5
  %2006 = getelementptr inbounds %struct.w2c_hermes, ptr %2005, i32 0, i32 6
  %2007 = load i32, ptr %37, align 4, !tbaa !9
  %2008 = zext i32 %2007 to i64
  %2009 = call i32 @i32_load(ptr noundef %2006, i64 noundef %2008)
  store i32 %2009, ptr %37, align 4, !tbaa !9
  %2010 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2010, ptr %38, align 4, !tbaa !9
  %2011 = load i32, ptr %38, align 4, !tbaa !9
  %2012 = load i32, ptr %37, align 4, !tbaa !9
  %2013 = or i32 %2012, %2011
  store i32 %2013, ptr %37, align 4, !tbaa !9
  br label %2028

2014:                                             ; preds = %1959
  %2015 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2015, ptr %37, align 4, !tbaa !9
  %2016 = load ptr, ptr %9, align 8, !tbaa !5
  %2017 = getelementptr inbounds %struct.w2c_hermes, ptr %2016, i32 0, i32 6
  %2018 = load i32, ptr %37, align 4, !tbaa !9
  %2019 = zext i32 %2018 to i64
  %2020 = call i32 @i32_load(ptr noundef %2017, i64 noundef %2019)
  store i32 %2020, ptr %37, align 4, !tbaa !9
  %2021 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2021, ptr %38, align 4, !tbaa !9
  store i32 -1, ptr %39, align 4, !tbaa !9
  %2022 = load i32, ptr %39, align 4, !tbaa !9
  %2023 = load i32, ptr %38, align 4, !tbaa !9
  %2024 = xor i32 %2023, %2022
  store i32 %2024, ptr %38, align 4, !tbaa !9
  %2025 = load i32, ptr %38, align 4, !tbaa !9
  %2026 = load i32, ptr %37, align 4, !tbaa !9
  %2027 = and i32 %2026, %2025
  store i32 %2027, ptr %37, align 4, !tbaa !9
  br label %2028

2028:                                             ; preds = %2014, %2003
  %2029 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2029, ptr %22, align 4, !tbaa !9
  %2030 = load ptr, ptr %9, align 8, !tbaa !5
  %2031 = getelementptr inbounds %struct.w2c_hermes, ptr %2030, i32 0, i32 6
  %2032 = load i32, ptr %36, align 4, !tbaa !9
  %2033 = zext i32 %2032 to i64
  %2034 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2031, i64 noundef %2033, i32 noundef %2034)
  %2035 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2035, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %2036 = load i32, ptr %37, align 4, !tbaa !9
  %2037 = load i32, ptr %36, align 4, !tbaa !9
  %2038 = add i32 %2037, %2036
  store i32 %2038, ptr %36, align 4, !tbaa !9
  %2039 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2039, ptr %14, align 4, !tbaa !9
  %2040 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %2040, ptr %37, align 4, !tbaa !9
  %2041 = load i32, ptr %36, align 4, !tbaa !9
  %2042 = load i32, ptr %37, align 4, !tbaa !9
  %2043 = icmp ne i32 %2041, %2042
  %2044 = zext i1 %2043 to i32
  store i32 %2044, ptr %36, align 4, !tbaa !9
  %2045 = load i32, ptr %36, align 4, !tbaa !9
  %2046 = icmp ne i32 %2045, 0
  br i1 %2046, label %2047, label %2048

2047:                                             ; preds = %2028
  br label %1614

2048:                                             ; preds = %2028
  %2049 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %2049, ptr %36, align 4, !tbaa !9
  %2050 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2050, ptr %14, align 4, !tbaa !9
  br label %2051

2051:                                             ; preds = %2048, %1593
  %2052 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %2052, ptr %36, align 4, !tbaa !9
  %2053 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %2053, ptr %37, align 4, !tbaa !9
  store i32 4, ptr %38, align 4, !tbaa !9
  %2054 = load i32, ptr %38, align 4, !tbaa !9
  %2055 = load i32, ptr %37, align 4, !tbaa !9
  %2056 = add i32 %2055, %2054
  store i32 %2056, ptr %37, align 4, !tbaa !9
  %2057 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2057, ptr %24, align 4, !tbaa !9
  %2058 = load i32, ptr %36, align 4, !tbaa !9
  %2059 = load i32, ptr %37, align 4, !tbaa !9
  %2060 = icmp ne i32 %2058, %2059
  %2061 = zext i1 %2060 to i32
  store i32 %2061, ptr %36, align 4, !tbaa !9
  %2062 = load i32, ptr %36, align 4, !tbaa !9
  %2063 = icmp ne i32 %2062, 0
  br i1 %2063, label %2064, label %2065

2064:                                             ; preds = %2051
  br label %1593

2065:                                             ; preds = %2051
  br label %2169

2066:                                             ; preds = %1473
  %2067 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2067, ptr %36, align 4, !tbaa !9
  store i32 544, ptr %37, align 4, !tbaa !9
  %2068 = load i32, ptr %37, align 4, !tbaa !9
  %2069 = load i32, ptr %36, align 4, !tbaa !9
  %2070 = add i32 %2069, %2068
  store i32 %2070, ptr %36, align 4, !tbaa !9
  %2071 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2071, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2072 = load ptr, ptr %9, align 8, !tbaa !5
  %2073 = getelementptr inbounds %struct.w2c_hermes, ptr %2072, i32 0, i32 6
  %2074 = load i32, ptr %36, align 4, !tbaa !9
  %2075 = zext i32 %2074 to i64
  %2076 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2073, i64 noundef %2075, i32 noundef %2076)
  %2077 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2077, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2078 = load ptr, ptr %9, align 8, !tbaa !5
  %2079 = getelementptr inbounds %struct.w2c_hermes, ptr %2078, i32 0, i32 6
  %2080 = load i32, ptr %36, align 4, !tbaa !9
  %2081 = zext i32 %2080 to i64
  %2082 = add i64 %2081, 536
  %2083 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2079, i64 noundef %2082, i64 noundef %2083)
  %2084 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2084, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2085 = load ptr, ptr %9, align 8, !tbaa !5
  %2086 = getelementptr inbounds %struct.w2c_hermes, ptr %2085, i32 0, i32 6
  %2087 = load i32, ptr %36, align 4, !tbaa !9
  %2088 = zext i32 %2087 to i64
  %2089 = add i64 %2088, 528
  %2090 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2086, i64 noundef %2089, i64 noundef %2090)
  %2091 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2091, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2092 = load ptr, ptr %9, align 8, !tbaa !5
  %2093 = getelementptr inbounds %struct.w2c_hermes, ptr %2092, i32 0, i32 6
  %2094 = load i32, ptr %36, align 4, !tbaa !9
  %2095 = zext i32 %2094 to i64
  %2096 = add i64 %2095, 556
  %2097 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2093, i64 noundef %2096, i64 noundef %2097)
  %2098 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2098, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2099 = load ptr, ptr %9, align 8, !tbaa !5
  %2100 = getelementptr inbounds %struct.w2c_hermes, ptr %2099, i32 0, i32 6
  %2101 = load i32, ptr %36, align 4, !tbaa !9
  %2102 = zext i32 %2101 to i64
  %2103 = add i64 %2102, 564
  %2104 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2100, i64 noundef %2103, i64 noundef %2104)
  %2105 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2105, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2106 = load ptr, ptr %9, align 8, !tbaa !5
  %2107 = getelementptr inbounds %struct.w2c_hermes, ptr %2106, i32 0, i32 6
  %2108 = load i32, ptr %36, align 4, !tbaa !9
  %2109 = zext i32 %2108 to i64
  %2110 = add i64 %2109, 572
  %2111 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2107, i64 noundef %2110, i64 noundef %2111)
  %2112 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2112, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2113 = load ptr, ptr %9, align 8, !tbaa !5
  %2114 = getelementptr inbounds %struct.w2c_hermes, ptr %2113, i32 0, i32 6
  %2115 = load i32, ptr %36, align 4, !tbaa !9
  %2116 = zext i32 %2115 to i64
  %2117 = add i64 %2116, 580
  %2118 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2114, i64 noundef %2117, i64 noundef %2118)
  %2119 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2119, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2120 = load ptr, ptr %9, align 8, !tbaa !5
  %2121 = getelementptr inbounds %struct.w2c_hermes, ptr %2120, i32 0, i32 6
  %2122 = load i32, ptr %36, align 4, !tbaa !9
  %2123 = zext i32 %2122 to i64
  %2124 = add i64 %2123, 588
  %2125 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2121, i64 noundef %2124, i64 noundef %2125)
  %2126 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2126, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2127 = load ptr, ptr %9, align 8, !tbaa !5
  %2128 = getelementptr inbounds %struct.w2c_hermes, ptr %2127, i32 0, i32 6
  %2129 = load i32, ptr %36, align 4, !tbaa !9
  %2130 = zext i32 %2129 to i64
  %2131 = add i64 %2130, 596
  %2132 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2128, i64 noundef %2131, i64 noundef %2132)
  %2133 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2133, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2134 = load ptr, ptr %9, align 8, !tbaa !5
  %2135 = getelementptr inbounds %struct.w2c_hermes, ptr %2134, i32 0, i32 6
  %2136 = load i32, ptr %36, align 4, !tbaa !9
  %2137 = zext i32 %2136 to i64
  %2138 = add i64 %2137, 604
  %2139 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2135, i64 noundef %2138, i64 noundef %2139)
  %2140 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2140, ptr %36, align 4, !tbaa !9
  store i32 257, ptr %37, align 4, !tbaa !9
  %2141 = load ptr, ptr %9, align 8, !tbaa !5
  %2142 = getelementptr inbounds %struct.w2c_hermes, ptr %2141, i32 0, i32 6
  %2143 = load i32, ptr %36, align 4, !tbaa !9
  %2144 = zext i32 %2143 to i64
  %2145 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %2142, i64 noundef %2144, i32 noundef %2145)
  %2146 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2146, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2147 = load ptr, ptr %9, align 8, !tbaa !5
  %2148 = getelementptr inbounds %struct.w2c_hermes, ptr %2147, i32 0, i32 6
  %2149 = load i32, ptr %36, align 4, !tbaa !9
  %2150 = zext i32 %2149 to i64
  %2151 = add i64 %2150, 520
  %2152 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2148, i64 noundef %2151, i64 noundef %2152)
  %2153 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2153, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2154 = load ptr, ptr %9, align 8, !tbaa !5
  %2155 = getelementptr inbounds %struct.w2c_hermes, ptr %2154, i32 0, i32 6
  %2156 = load i32, ptr %36, align 4, !tbaa !9
  %2157 = zext i32 %2156 to i64
  %2158 = add i64 %2157, 548
  %2159 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2155, i64 noundef %2158, i64 noundef %2159)
  br label %2457

2160:                                             ; preds = %788
  %2161 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %2161, ptr %36, align 4, !tbaa !9
  %2162 = load ptr, ptr %9, align 8, !tbaa !5
  %2163 = call i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef %2162)
  store i32 %2163, ptr %37, align 4, !tbaa !9
  %2164 = load ptr, ptr %9, align 8, !tbaa !5
  %2165 = load i32, ptr %36, align 4, !tbaa !9
  %2166 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef %2164, i32 noundef %2165, i32 noundef %2166)
  store i32 105796, ptr %36, align 4, !tbaa !9
  %2167 = load ptr, ptr %9, align 8, !tbaa !5
  %2168 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef %2167, i32 noundef %2168)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

2169:                                             ; preds = %2065, %1570
  %2170 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2170, ptr %36, align 4, !tbaa !9
  %2171 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %2171, ptr %37, align 4, !tbaa !9
  %2172 = load i32, ptr %36, align 4, !tbaa !9
  %2173 = load i32, ptr %37, align 4, !tbaa !9
  %2174 = icmp ne i32 %2172, %2173
  %2175 = zext i1 %2174 to i32
  store i32 %2175, ptr %36, align 4, !tbaa !9
  %2176 = load i32, ptr %36, align 4, !tbaa !9
  %2177 = icmp ne i32 %2176, 0
  br i1 %2177, label %2178, label %2196

2178:                                             ; preds = %2169
  store i32 0, ptr %36, align 4, !tbaa !9
  %2179 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2179, ptr %17, align 4, !tbaa !9
  store i32 162147, ptr %37, align 4, !tbaa !9
  %2180 = load i32, ptr %37, align 4, !tbaa !9
  %2181 = load i32, ptr %36, align 4, !tbaa !9
  %2182 = add i32 %2181, %2180
  store i32 %2182, ptr %36, align 4, !tbaa !9
  %2183 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2183, ptr %37, align 4, !tbaa !9
  store i32 62752, ptr %38, align 4, !tbaa !9
  %2184 = load i32, ptr %38, align 4, !tbaa !9
  %2185 = load i32, ptr %37, align 4, !tbaa !9
  %2186 = add i32 %2185, %2184
  store i32 %2186, ptr %37, align 4, !tbaa !9
  store i32 128, ptr %38, align 4, !tbaa !9
  %2187 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2187, ptr %39, align 4, !tbaa !9
  store i32 52356, ptr %40, align 4, !tbaa !9
  %2188 = load i32, ptr %40, align 4, !tbaa !9
  %2189 = load i32, ptr %39, align 4, !tbaa !9
  %2190 = add i32 %2189, %2188
  store i32 %2190, ptr %39, align 4, !tbaa !9
  %2191 = load ptr, ptr %9, align 8, !tbaa !5
  %2192 = load i32, ptr %36, align 4, !tbaa !9
  %2193 = load i32, ptr %37, align 4, !tbaa !9
  %2194 = load i32, ptr %38, align 4, !tbaa !9
  %2195 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %2191, i32 noundef %2192, i32 noundef %2193, i32 noundef %2194, i32 noundef %2195)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

2196:                                             ; preds = %2169
  store i32 0, ptr %36, align 4, !tbaa !9
  %2197 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2197, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %2198 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2198, ptr %22, align 4, !tbaa !9
  %2199 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2199, ptr %36, align 4, !tbaa !9
  %2200 = load ptr, ptr %9, align 8, !tbaa !5
  %2201 = getelementptr inbounds %struct.w2c_hermes, ptr %2200, i32 0, i32 6
  %2202 = load i32, ptr %36, align 4, !tbaa !9
  %2203 = zext i32 %2202 to i64
  %2204 = add i64 %2203, 40
  %2205 = call i32 @i32_load(ptr noundef %2201, i64 noundef %2204)
  store i32 %2205, ptr %36, align 4, !tbaa !9
  %2206 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2206, ptr %14, align 4, !tbaa !9
  %2207 = load i32, ptr %36, align 4, !tbaa !9
  %2208 = icmp ne i32 %2207, 0
  br i1 %2208, label %2209, label %2244

2209:                                             ; preds = %2196
  %2210 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2210, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2211 = load i32, ptr %36, align 4, !tbaa !9
  %2212 = load i32, ptr %37, align 4, !tbaa !9
  %2213 = icmp slt i32 %2211, %2212
  %2214 = zext i1 %2213 to i32
  store i32 %2214, ptr %36, align 4, !tbaa !9
  %2215 = load i32, ptr %36, align 4, !tbaa !9
  %2216 = icmp ne i32 %2215, 0
  br i1 %2216, label %2217, label %2218

2217:                                             ; preds = %2209
  br label %7450

2218:                                             ; preds = %2209
  %2219 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %2219, ptr %36, align 4, !tbaa !9
  %2220 = load ptr, ptr %9, align 8, !tbaa !5
  %2221 = getelementptr inbounds %struct.w2c_hermes, ptr %2220, i32 0, i32 6
  %2222 = load i32, ptr %36, align 4, !tbaa !9
  %2223 = zext i32 %2222 to i64
  %2224 = add i64 %2223, 36
  %2225 = call i32 @i32_load(ptr noundef %2221, i64 noundef %2224)
  store i32 %2225, ptr %36, align 4, !tbaa !9
  %2226 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2226, ptr %18, align 4, !tbaa !9
  %2227 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2227, ptr %36, align 4, !tbaa !9
  %2228 = load ptr, ptr %9, align 8, !tbaa !5
  %2229 = load i32, ptr %36, align 4, !tbaa !9
  %2230 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %2228, i32 noundef %2229)
  store i32 %2230, ptr %36, align 4, !tbaa !9
  %2231 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2231, ptr %22, align 4, !tbaa !9
  %2232 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2232, ptr %37, align 4, !tbaa !9
  %2233 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2233, ptr %38, align 4, !tbaa !9
  %2234 = load ptr, ptr %9, align 8, !tbaa !5
  %2235 = load i32, ptr %36, align 4, !tbaa !9
  %2236 = load i32, ptr %37, align 4, !tbaa !9
  %2237 = load i32, ptr %38, align 4, !tbaa !9
  %2238 = call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %2234, i32 noundef %2235, i32 noundef %2236, i32 noundef %2237)
  store i32 %2238, ptr %36, align 4, !tbaa !9
  %2239 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %2239, ptr %37, align 4, !tbaa !9
  %2240 = load i32, ptr %37, align 4, !tbaa !9
  %2241 = load i32, ptr %36, align 4, !tbaa !9
  %2242 = add i32 %2241, %2240
  store i32 %2242, ptr %36, align 4, !tbaa !9
  %2243 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2243, ptr %18, align 4, !tbaa !9
  br label %2244

2244:                                             ; preds = %2218, %2196
  %2245 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2245, ptr %36, align 4, !tbaa !9
  %2246 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2246, ptr %37, align 4, !tbaa !9
  %2247 = load ptr, ptr %9, align 8, !tbaa !5
  %2248 = getelementptr inbounds %struct.w2c_hermes, ptr %2247, i32 0, i32 6
  %2249 = load i32, ptr %36, align 4, !tbaa !9
  %2250 = zext i32 %2249 to i64
  %2251 = add i64 %2250, 140
  %2252 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2248, i64 noundef %2251, i32 noundef %2252)
  %2253 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2253, ptr %36, align 4, !tbaa !9
  %2254 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2254, ptr %37, align 4, !tbaa !9
  %2255 = load ptr, ptr %9, align 8, !tbaa !5
  %2256 = getelementptr inbounds %struct.w2c_hermes, ptr %2255, i32 0, i32 6
  %2257 = load i32, ptr %36, align 4, !tbaa !9
  %2258 = zext i32 %2257 to i64
  %2259 = add i64 %2258, 136
  %2260 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2256, i64 noundef %2259, i32 noundef %2260)
  %2261 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2261, ptr %36, align 4, !tbaa !9
  store i32 257, ptr %37, align 4, !tbaa !9
  %2262 = load ptr, ptr %9, align 8, !tbaa !5
  %2263 = getelementptr inbounds %struct.w2c_hermes, ptr %2262, i32 0, i32 6
  %2264 = load i32, ptr %36, align 4, !tbaa !9
  %2265 = zext i32 %2264 to i64
  %2266 = add i64 %2265, 144
  %2267 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %2263, i64 noundef %2266, i32 noundef %2267)
  %2268 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2268, ptr %36, align 4, !tbaa !9
  %2269 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %2269, ptr %37, align 4, !tbaa !9
  %2270 = load ptr, ptr %9, align 8, !tbaa !5
  %2271 = getelementptr inbounds %struct.w2c_hermes, ptr %2270, i32 0, i32 6
  %2272 = load i32, ptr %36, align 4, !tbaa !9
  %2273 = zext i32 %2272 to i64
  %2274 = add i64 %2273, 132
  %2275 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2271, i64 noundef %2274, i32 noundef %2275)
  %2276 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2276, ptr %36, align 4, !tbaa !9
  %2277 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %2277, ptr %37, align 4, !tbaa !9
  %2278 = load ptr, ptr %9, align 8, !tbaa !5
  %2279 = getelementptr inbounds %struct.w2c_hermes, ptr %2278, i32 0, i32 6
  %2280 = load i32, ptr %36, align 4, !tbaa !9
  %2281 = zext i32 %2280 to i64
  %2282 = add i64 %2281, 128
  %2283 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2279, i64 noundef %2282, i32 noundef %2283)
  %2284 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2284, ptr %36, align 4, !tbaa !9
  %2285 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2285, ptr %37, align 4, !tbaa !9
  %2286 = load ptr, ptr %9, align 8, !tbaa !5
  %2287 = getelementptr inbounds %struct.w2c_hermes, ptr %2286, i32 0, i32 6
  %2288 = load i32, ptr %36, align 4, !tbaa !9
  %2289 = zext i32 %2288 to i64
  %2290 = add i64 %2289, 124
  %2291 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2287, i64 noundef %2290, i32 noundef %2291)
  %2292 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2292, ptr %36, align 4, !tbaa !9
  %2293 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %2293, ptr %37, align 4, !tbaa !9
  %2294 = load ptr, ptr %9, align 8, !tbaa !5
  %2295 = getelementptr inbounds %struct.w2c_hermes, ptr %2294, i32 0, i32 6
  %2296 = load i32, ptr %36, align 4, !tbaa !9
  %2297 = zext i32 %2296 to i64
  %2298 = add i64 %2297, 120
  %2299 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2295, i64 noundef %2298, i32 noundef %2299)
  %2300 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2300, ptr %36, align 4, !tbaa !9
  %2301 = load ptr, ptr %9, align 8, !tbaa !5
  %2302 = getelementptr inbounds %struct.w2c_hermes, ptr %2301, i32 0, i32 6
  %2303 = load i32, ptr %36, align 4, !tbaa !9
  %2304 = zext i32 %2303 to i64
  %2305 = add i64 %2304, 404
  %2306 = call i32 @i32_load(ptr noundef %2302, i64 noundef %2305)
  store i32 %2306, ptr %36, align 4, !tbaa !9
  %2307 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2307, ptr %18, align 4, !tbaa !9
  %2308 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2308, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2309 = load ptr, ptr %9, align 8, !tbaa !5
  %2310 = getelementptr inbounds %struct.w2c_hermes, ptr %2309, i32 0, i32 6
  %2311 = load i32, ptr %36, align 4, !tbaa !9
  %2312 = zext i32 %2311 to i64
  %2313 = add i64 %2312, 404
  %2314 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2310, i64 noundef %2313, i32 noundef %2314)
  %2315 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2315, ptr %36, align 4, !tbaa !9
  %2316 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2316, ptr %37, align 4, !tbaa !9
  %2317 = load ptr, ptr %9, align 8, !tbaa !5
  %2318 = getelementptr inbounds %struct.w2c_hermes, ptr %2317, i32 0, i32 6
  %2319 = load i32, ptr %36, align 4, !tbaa !9
  %2320 = zext i32 %2319 to i64
  %2321 = add i64 %2320, 1664
  %2322 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2318, i64 noundef %2321, i32 noundef %2322)
  %2323 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2323, ptr %36, align 4, !tbaa !9
  %2324 = load ptr, ptr %9, align 8, !tbaa !5
  %2325 = getelementptr inbounds %struct.w2c_hermes, ptr %2324, i32 0, i32 6
  %2326 = load i32, ptr %36, align 4, !tbaa !9
  %2327 = zext i32 %2326 to i64
  %2328 = add i64 %2327, 408
  %2329 = call i64 @i64_load(ptr noundef %2325, i64 noundef %2328)
  store i64 %2329, ptr %42, align 8, !tbaa !11
  %2330 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %2330, ptr %35, align 8, !tbaa !11
  %2331 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2331, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2332 = load ptr, ptr %9, align 8, !tbaa !5
  %2333 = getelementptr inbounds %struct.w2c_hermes, ptr %2332, i32 0, i32 6
  %2334 = load i32, ptr %36, align 4, !tbaa !9
  %2335 = zext i32 %2334 to i64
  %2336 = add i64 %2335, 408
  %2337 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2333, i64 noundef %2336, i64 noundef %2337)
  %2338 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2338, ptr %36, align 4, !tbaa !9
  %2339 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %2339, ptr %43, align 8, !tbaa !11
  %2340 = load ptr, ptr %9, align 8, !tbaa !5
  %2341 = getelementptr inbounds %struct.w2c_hermes, ptr %2340, i32 0, i32 6
  %2342 = load i32, ptr %36, align 4, !tbaa !9
  %2343 = zext i32 %2342 to i64
  %2344 = add i64 %2343, 1668
  %2345 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2341, i64 noundef %2344, i64 noundef %2345)
  %2346 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2346, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %2347 = load i32, ptr %37, align 4, !tbaa !9
  %2348 = load i32, ptr %36, align 4, !tbaa !9
  %2349 = add i32 %2348, %2347
  store i32 %2349, ptr %36, align 4, !tbaa !9
  %2350 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2350, ptr %37, align 4, !tbaa !9
  store i32 120, ptr %38, align 4, !tbaa !9
  %2351 = load i32, ptr %38, align 4, !tbaa !9
  %2352 = load i32, ptr %37, align 4, !tbaa !9
  %2353 = add i32 %2352, %2351
  store i32 %2353, ptr %37, align 4, !tbaa !9
  %2354 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2354, ptr %38, align 4, !tbaa !9
  store i32 1664, ptr %39, align 4, !tbaa !9
  %2355 = load i32, ptr %39, align 4, !tbaa !9
  %2356 = load i32, ptr %38, align 4, !tbaa !9
  %2357 = add i32 %2356, %2355
  store i32 %2357, ptr %38, align 4, !tbaa !9
  %2358 = load ptr, ptr %9, align 8, !tbaa !5
  %2359 = load i32, ptr %36, align 4, !tbaa !9
  %2360 = load i32, ptr %37, align 4, !tbaa !9
  %2361 = load i32, ptr %38, align 4, !tbaa !9
  %2362 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3AStringLiteralIDMapping0x28hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x29(ptr noundef %2358, i32 noundef %2359, i32 noundef %2360, i32 noundef %2361)
  store i32 %2362, ptr %36, align 4, !tbaa !9
  %2363 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2363, ptr %18, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %2364 = load ptr, ptr %9, align 8, !tbaa !5
  %2365 = getelementptr inbounds %struct.w2c_hermes, ptr %2364, i32 0, i32 6
  %2366 = load i32, ptr %36, align 4, !tbaa !9
  %2367 = zext i32 %2366 to i64
  %2368 = add i64 %2367, 80
  %2369 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %2365, i64 noundef %2368, i64 noundef %2369)
  %2370 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2370, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2371 = load ptr, ptr %9, align 8, !tbaa !5
  %2372 = getelementptr inbounds %struct.w2c_hermes, ptr %2371, i32 0, i32 6
  %2373 = load i32, ptr %36, align 4, !tbaa !9
  %2374 = zext i32 %2373 to i64
  %2375 = add i64 %2374, 88
  %2376 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2372, i64 noundef %2375, i32 noundef %2376)
  %2377 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2377, ptr %36, align 4, !tbaa !9
  %2378 = load ptr, ptr %9, align 8, !tbaa !5
  %2379 = getelementptr inbounds %struct.w2c_hermes, ptr %2378, i32 0, i32 6
  %2380 = load i32, ptr %36, align 4, !tbaa !9
  %2381 = zext i32 %2380 to i64
  %2382 = add i64 %2381, 1664
  %2383 = call i32 @i32_load(ptr noundef %2379, i64 noundef %2382)
  store i32 %2383, ptr %36, align 4, !tbaa !9
  %2384 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2384, ptr %18, align 4, !tbaa !9
  %2385 = load i32, ptr %36, align 4, !tbaa !9
  %2386 = icmp ne i32 %2385, 0
  br i1 %2386, label %2387, label %2391

2387:                                             ; preds = %2244
  %2388 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2388, ptr %36, align 4, !tbaa !9
  %2389 = load ptr, ptr %9, align 8, !tbaa !5
  %2390 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %2389, i32 noundef %2390)
  br label %2391

2391:                                             ; preds = %2387, %2244
  %2392 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2392, ptr %36, align 4, !tbaa !9
  %2393 = load ptr, ptr %9, align 8, !tbaa !5
  %2394 = getelementptr inbounds %struct.w2c_hermes, ptr %2393, i32 0, i32 6
  %2395 = load i32, ptr %36, align 4, !tbaa !9
  %2396 = zext i32 %2395 to i64
  %2397 = add i64 %2396, 132
  %2398 = call i32 @i32_load(ptr noundef %2394, i64 noundef %2397)
  store i32 %2398, ptr %36, align 4, !tbaa !9
  %2399 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2399, ptr %18, align 4, !tbaa !9
  %2400 = load i32, ptr %36, align 4, !tbaa !9
  %2401 = icmp ne i32 %2400, 0
  br i1 %2401, label %2402, label %2414

2402:                                             ; preds = %2391
  %2403 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2403, ptr %36, align 4, !tbaa !9
  %2404 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2404, ptr %37, align 4, !tbaa !9
  %2405 = load ptr, ptr %9, align 8, !tbaa !5
  %2406 = getelementptr inbounds %struct.w2c_hermes, ptr %2405, i32 0, i32 6
  %2407 = load i32, ptr %36, align 4, !tbaa !9
  %2408 = zext i32 %2407 to i64
  %2409 = add i64 %2408, 136
  %2410 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2406, i64 noundef %2409, i32 noundef %2410)
  %2411 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2411, ptr %36, align 4, !tbaa !9
  %2412 = load ptr, ptr %9, align 8, !tbaa !5
  %2413 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %2412, i32 noundef %2413)
  br label %2414

2414:                                             ; preds = %2402, %2391
  %2415 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2415, ptr %36, align 4, !tbaa !9
  %2416 = load ptr, ptr %9, align 8, !tbaa !5
  %2417 = getelementptr inbounds %struct.w2c_hermes, ptr %2416, i32 0, i32 6
  %2418 = load i32, ptr %36, align 4, !tbaa !9
  %2419 = zext i32 %2418 to i64
  %2420 = add i64 %2419, 120
  %2421 = call i32 @i32_load(ptr noundef %2417, i64 noundef %2420)
  store i32 %2421, ptr %36, align 4, !tbaa !9
  %2422 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2422, ptr %18, align 4, !tbaa !9
  %2423 = load i32, ptr %36, align 4, !tbaa !9
  %2424 = icmp ne i32 %2423, 0
  br i1 %2424, label %2425, label %2437

2425:                                             ; preds = %2414
  %2426 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2426, ptr %36, align 4, !tbaa !9
  %2427 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2427, ptr %37, align 4, !tbaa !9
  %2428 = load ptr, ptr %9, align 8, !tbaa !5
  %2429 = getelementptr inbounds %struct.w2c_hermes, ptr %2428, i32 0, i32 6
  %2430 = load i32, ptr %36, align 4, !tbaa !9
  %2431 = zext i32 %2430 to i64
  %2432 = add i64 %2431, 124
  %2433 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2429, i64 noundef %2432, i32 noundef %2433)
  %2434 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2434, ptr %36, align 4, !tbaa !9
  %2435 = load ptr, ptr %9, align 8, !tbaa !5
  %2436 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %2435, i32 noundef %2436)
  br label %2437

2437:                                             ; preds = %2425, %2414
  %2438 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2438, ptr %36, align 4, !tbaa !9
  %2439 = load ptr, ptr %9, align 8, !tbaa !5
  %2440 = getelementptr inbounds %struct.w2c_hermes, ptr %2439, i32 0, i32 6
  %2441 = load i32, ptr %36, align 4, !tbaa !9
  %2442 = zext i32 %2441 to i64
  %2443 = add i64 %2442, 404
  %2444 = call i32 @i32_load(ptr noundef %2440, i64 noundef %2443)
  store i32 %2444, ptr %36, align 4, !tbaa !9
  %2445 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2445, ptr %18, align 4, !tbaa !9
  %2446 = load i32, ptr %36, align 4, !tbaa !9
  %2447 = icmp ne i32 %2446, 0
  %2448 = xor i1 %2447, true
  %2449 = zext i1 %2448 to i32
  store i32 %2449, ptr %36, align 4, !tbaa !9
  %2450 = load i32, ptr %36, align 4, !tbaa !9
  %2451 = icmp ne i32 %2450, 0
  br i1 %2451, label %2452, label %2453

2452:                                             ; preds = %2437
  br label %2457

2453:                                             ; preds = %2437
  %2454 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2454, ptr %36, align 4, !tbaa !9
  %2455 = load ptr, ptr %9, align 8, !tbaa !5
  %2456 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %2455, i32 noundef %2456)
  br label %2457

2457:                                             ; preds = %2453, %2452, %2066
  %2458 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2458, ptr %36, align 4, !tbaa !9
  %2459 = load ptr, ptr %9, align 8, !tbaa !5
  %2460 = getelementptr inbounds %struct.w2c_hermes, ptr %2459, i32 0, i32 6
  %2461 = load i32, ptr %36, align 4, !tbaa !9
  %2462 = zext i32 %2461 to i64
  %2463 = add i64 %2462, 2208
  %2464 = call i32 @i32_load(ptr noundef %2460, i64 noundef %2463)
  store i32 %2464, ptr %36, align 4, !tbaa !9
  %2465 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2465, ptr %18, align 4, !tbaa !9
  %2466 = load i32, ptr %36, align 4, !tbaa !9
  %2467 = icmp ne i32 %2466, 0
  %2468 = xor i1 %2467, true
  %2469 = zext i1 %2468 to i32
  store i32 %2469, ptr %36, align 4, !tbaa !9
  %2470 = load i32, ptr %36, align 4, !tbaa !9
  %2471 = icmp ne i32 %2470, 0
  br i1 %2471, label %2472, label %2487

2472:                                             ; preds = %2457
  %2473 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2473, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2474 = load ptr, ptr %9, align 8, !tbaa !5
  %2475 = getelementptr inbounds %struct.w2c_hermes, ptr %2474, i32 0, i32 6
  %2476 = load i32, ptr %36, align 4, !tbaa !9
  %2477 = zext i32 %2476 to i64
  %2478 = add i64 %2477, 2168
  %2479 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2475, i64 noundef %2478, i32 noundef %2479)
  %2480 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2480, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2481 = load ptr, ptr %9, align 8, !tbaa !5
  %2482 = getelementptr inbounds %struct.w2c_hermes, ptr %2481, i32 0, i32 6
  %2483 = load i32, ptr %36, align 4, !tbaa !9
  %2484 = zext i32 %2483 to i64
  %2485 = add i64 %2484, 2144
  %2486 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2482, i64 noundef %2485, i32 noundef %2486)
  br label %2845

2487:                                             ; preds = %2457
  %2488 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2488, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %2489 = load i32, ptr %37, align 4, !tbaa !9
  %2490 = load i32, ptr %36, align 4, !tbaa !9
  %2491 = add i32 %2490, %2489
  store i32 %2491, ptr %36, align 4, !tbaa !9
  %2492 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2492, ptr %37, align 4, !tbaa !9
  %2493 = load i32, ptr %36, align 4, !tbaa !9
  %2494 = load i32, ptr %37, align 4, !tbaa !9
  %2495 = icmp eq i32 %2493, %2494
  %2496 = zext i1 %2495 to i32
  store i32 %2496, ptr %36, align 4, !tbaa !9
  %2497 = load i32, ptr %36, align 4, !tbaa !9
  %2498 = icmp ne i32 %2497, 0
  br i1 %2498, label %2499, label %2602

2499:                                             ; preds = %2487
  %2500 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2500, ptr %36, align 4, !tbaa !9
  %2501 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2501, ptr %37, align 4, !tbaa !9
  store i32 2128, ptr %38, align 4, !tbaa !9
  %2502 = load i32, ptr %38, align 4, !tbaa !9
  %2503 = load i32, ptr %37, align 4, !tbaa !9
  %2504 = add i32 %2503, %2502
  store i32 %2504, ptr %37, align 4, !tbaa !9
  %2505 = load ptr, ptr %9, align 8, !tbaa !5
  %2506 = getelementptr inbounds %struct.w2c_hermes, ptr %2505, i32 0, i32 6
  %2507 = load i32, ptr %36, align 4, !tbaa !9
  %2508 = zext i32 %2507 to i64
  %2509 = add i64 %2508, 2144
  %2510 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2506, i64 noundef %2509, i32 noundef %2510)
  %2511 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2511, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %2512 = load i32, ptr %37, align 4, !tbaa !9
  %2513 = load i32, ptr %36, align 4, !tbaa !9
  %2514 = add i32 %2513, %2512
  store i32 %2514, ptr %36, align 4, !tbaa !9
  %2515 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2515, ptr %37, align 4, !tbaa !9
  store i32 2128, ptr %38, align 4, !tbaa !9
  %2516 = load i32, ptr %38, align 4, !tbaa !9
  %2517 = load i32, ptr %37, align 4, !tbaa !9
  %2518 = add i32 %2517, %2516
  store i32 %2518, ptr %37, align 4, !tbaa !9
  %2519 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2519, ptr %38, align 4, !tbaa !9
  %2520 = load ptr, ptr %9, align 8, !tbaa !5
  %2521 = getelementptr inbounds %struct.w2c_hermes, ptr %2520, i32 0, i32 6
  %2522 = load i32, ptr %38, align 4, !tbaa !9
  %2523 = zext i32 %2522 to i64
  %2524 = add i64 %2523, 2192
  %2525 = call i32 @i32_load(ptr noundef %2521, i64 noundef %2524)
  store i32 %2525, ptr %38, align 4, !tbaa !9
  %2526 = load ptr, ptr %9, align 8, !tbaa !5
  %2527 = getelementptr inbounds %struct.w2c_hermes, ptr %2526, i32 0, i32 6
  %2528 = load i32, ptr %38, align 4, !tbaa !9
  %2529 = zext i32 %2528 to i64
  %2530 = add i64 %2529, 12
  %2531 = call i32 @i32_load(ptr noundef %2527, i64 noundef %2530)
  store i32 %2531, ptr %38, align 4, !tbaa !9
  %2532 = load i32, ptr %38, align 4, !tbaa !9
  %2533 = load ptr, ptr %9, align 8, !tbaa !5
  %2534 = getelementptr inbounds %struct.w2c_hermes, ptr %2533, i32 0, i32 7
  %2535 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2534, i32 0, i32 2
  %2536 = load i32, ptr %2535, align 4, !tbaa !18
  %2537 = icmp ult i32 %2532, %2536
  br i1 %2537, label %2538, label %2561

2538:                                             ; preds = %2499
  %2539 = load ptr, ptr %9, align 8, !tbaa !5
  %2540 = getelementptr inbounds %struct.w2c_hermes, ptr %2539, i32 0, i32 7
  %2541 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2540, i32 0, i32 0
  %2542 = load ptr, ptr %2541, align 8, !tbaa !19
  %2543 = load i32, ptr %38, align 4, !tbaa !9
  %2544 = zext i32 %2543 to i64
  %2545 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2542, i64 %2544
  %2546 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2545, i32 0, i32 1
  %2547 = load ptr, ptr %2546, align 8, !tbaa !20
  %2548 = icmp ne ptr %2547, null
  br i1 %2548, label %2549, label %2561

2549:                                             ; preds = %2538
  %2550 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %2551 = load ptr, ptr %9, align 8, !tbaa !5
  %2552 = getelementptr inbounds %struct.w2c_hermes, ptr %2551, i32 0, i32 7
  %2553 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2552, i32 0, i32 0
  %2554 = load ptr, ptr %2553, align 8, !tbaa !19
  %2555 = load i32, ptr %38, align 4, !tbaa !9
  %2556 = zext i32 %2555 to i64
  %2557 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2554, i64 %2556
  %2558 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2557, i32 0, i32 0
  %2559 = load ptr, ptr %2558, align 8, !tbaa !22
  %2560 = call zeroext i1 @func_types_eq(ptr noundef %2550, ptr noundef %2559)
  br label %2561

2561:                                             ; preds = %2549, %2538, %2499
  %2562 = phi i1 [ false, %2538 ], [ false, %2499 ], [ %2560, %2549 ]
  %2563 = xor i1 %2562, true
  %2564 = xor i1 %2563, true
  %2565 = zext i1 %2564 to i32
  %2566 = sext i32 %2565 to i64
  %2567 = call i64 @llvm.expect.i64(i64 %2566, i64 1)
  %2568 = icmp ne i64 %2567, 0
  br i1 %2568, label %2571, label %2569

2569:                                             ; preds = %2561
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

2570:                                             ; No predecessors!
  br label %2571

2571:                                             ; preds = %2570, %2561
  %2572 = phi i1 [ true, %2561 ], [ false, %2570 ]
  %2573 = zext i1 %2572 to i32
  %2574 = load ptr, ptr %9, align 8, !tbaa !5
  %2575 = getelementptr inbounds %struct.w2c_hermes, ptr %2574, i32 0, i32 7
  %2576 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2575, i32 0, i32 0
  %2577 = load ptr, ptr %2576, align 8, !tbaa !19
  %2578 = load i32, ptr %38, align 4, !tbaa !9
  %2579 = zext i32 %2578 to i64
  %2580 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2577, i64 %2579
  %2581 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2580, i32 0, i32 1
  %2582 = load ptr, ptr %2581, align 8, !tbaa !20
  %2583 = load ptr, ptr %9, align 8, !tbaa !5
  %2584 = getelementptr inbounds %struct.w2c_hermes, ptr %2583, i32 0, i32 7
  %2585 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2584, i32 0, i32 0
  %2586 = load ptr, ptr %2585, align 8, !tbaa !19
  %2587 = load i32, ptr %38, align 4, !tbaa !9
  %2588 = zext i32 %2587 to i64
  %2589 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2586, i64 %2588
  %2590 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2589, i32 0, i32 2
  %2591 = load ptr, ptr %2590, align 8, !tbaa !23
  %2592 = load i32, ptr %36, align 4, !tbaa !9
  %2593 = load i32, ptr %37, align 4, !tbaa !9
  call void %2582(ptr noundef %2591, i32 noundef %2592, i32 noundef %2593)
  %2594 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2594, ptr %36, align 4, !tbaa !9
  %2595 = load ptr, ptr %9, align 8, !tbaa !5
  %2596 = getelementptr inbounds %struct.w2c_hermes, ptr %2595, i32 0, i32 6
  %2597 = load i32, ptr %36, align 4, !tbaa !9
  %2598 = zext i32 %2597 to i64
  %2599 = add i64 %2598, 2144
  %2600 = call i32 @i32_load(ptr noundef %2596, i64 noundef %2599)
  store i32 %2600, ptr %36, align 4, !tbaa !9
  %2601 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2601, ptr %18, align 4, !tbaa !9
  br label %2686

2602:                                             ; preds = %2487
  %2603 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2603, ptr %36, align 4, !tbaa !9
  %2604 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2604, ptr %37, align 4, !tbaa !9
  %2605 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2605, ptr %38, align 4, !tbaa !9
  %2606 = load ptr, ptr %9, align 8, !tbaa !5
  %2607 = getelementptr inbounds %struct.w2c_hermes, ptr %2606, i32 0, i32 6
  %2608 = load i32, ptr %38, align 4, !tbaa !9
  %2609 = zext i32 %2608 to i64
  %2610 = call i32 @i32_load(ptr noundef %2607, i64 noundef %2609)
  store i32 %2610, ptr %38, align 4, !tbaa !9
  %2611 = load ptr, ptr %9, align 8, !tbaa !5
  %2612 = getelementptr inbounds %struct.w2c_hermes, ptr %2611, i32 0, i32 6
  %2613 = load i32, ptr %38, align 4, !tbaa !9
  %2614 = zext i32 %2613 to i64
  %2615 = add i64 %2614, 8
  %2616 = call i32 @i32_load(ptr noundef %2612, i64 noundef %2615)
  store i32 %2616, ptr %38, align 4, !tbaa !9
  %2617 = load i32, ptr %38, align 4, !tbaa !9
  %2618 = load ptr, ptr %9, align 8, !tbaa !5
  %2619 = getelementptr inbounds %struct.w2c_hermes, ptr %2618, i32 0, i32 7
  %2620 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2619, i32 0, i32 2
  %2621 = load i32, ptr %2620, align 4, !tbaa !18
  %2622 = icmp ult i32 %2617, %2621
  br i1 %2622, label %2623, label %2646

2623:                                             ; preds = %2602
  %2624 = load ptr, ptr %9, align 8, !tbaa !5
  %2625 = getelementptr inbounds %struct.w2c_hermes, ptr %2624, i32 0, i32 7
  %2626 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2625, i32 0, i32 0
  %2627 = load ptr, ptr %2626, align 8, !tbaa !19
  %2628 = load i32, ptr %38, align 4, !tbaa !9
  %2629 = zext i32 %2628 to i64
  %2630 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2627, i64 %2629
  %2631 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2630, i32 0, i32 1
  %2632 = load ptr, ptr %2631, align 8, !tbaa !20
  %2633 = icmp ne ptr %2632, null
  br i1 %2633, label %2634, label %2646

2634:                                             ; preds = %2623
  %2635 = load ptr, ptr @w2c_hermes_t2, align 8, !tbaa !5
  %2636 = load ptr, ptr %9, align 8, !tbaa !5
  %2637 = getelementptr inbounds %struct.w2c_hermes, ptr %2636, i32 0, i32 7
  %2638 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2637, i32 0, i32 0
  %2639 = load ptr, ptr %2638, align 8, !tbaa !19
  %2640 = load i32, ptr %38, align 4, !tbaa !9
  %2641 = zext i32 %2640 to i64
  %2642 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2639, i64 %2641
  %2643 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2642, i32 0, i32 0
  %2644 = load ptr, ptr %2643, align 8, !tbaa !22
  %2645 = call zeroext i1 @func_types_eq(ptr noundef %2635, ptr noundef %2644)
  br label %2646

2646:                                             ; preds = %2634, %2623, %2602
  %2647 = phi i1 [ false, %2623 ], [ false, %2602 ], [ %2645, %2634 ]
  %2648 = xor i1 %2647, true
  %2649 = xor i1 %2648, true
  %2650 = zext i1 %2649 to i32
  %2651 = sext i32 %2650 to i64
  %2652 = call i64 @llvm.expect.i64(i64 %2651, i64 1)
  %2653 = icmp ne i64 %2652, 0
  br i1 %2653, label %2656, label %2654

2654:                                             ; preds = %2646
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

2655:                                             ; No predecessors!
  br label %2656

2656:                                             ; preds = %2655, %2646
  %2657 = phi i1 [ true, %2646 ], [ false, %2655 ]
  %2658 = zext i1 %2657 to i32
  %2659 = load ptr, ptr %9, align 8, !tbaa !5
  %2660 = getelementptr inbounds %struct.w2c_hermes, ptr %2659, i32 0, i32 7
  %2661 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2660, i32 0, i32 0
  %2662 = load ptr, ptr %2661, align 8, !tbaa !19
  %2663 = load i32, ptr %38, align 4, !tbaa !9
  %2664 = zext i32 %2663 to i64
  %2665 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2662, i64 %2664
  %2666 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2665, i32 0, i32 1
  %2667 = load ptr, ptr %2666, align 8, !tbaa !20
  %2668 = load ptr, ptr %9, align 8, !tbaa !5
  %2669 = getelementptr inbounds %struct.w2c_hermes, ptr %2668, i32 0, i32 7
  %2670 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2669, i32 0, i32 0
  %2671 = load ptr, ptr %2670, align 8, !tbaa !19
  %2672 = load i32, ptr %38, align 4, !tbaa !9
  %2673 = zext i32 %2672 to i64
  %2674 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2671, i64 %2673
  %2675 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2674, i32 0, i32 2
  %2676 = load ptr, ptr %2675, align 8, !tbaa !23
  %2677 = load i32, ptr %37, align 4, !tbaa !9
  %2678 = call i32 %2667(ptr noundef %2676, i32 noundef %2677)
  store i32 %2678, ptr %37, align 4, !tbaa !9
  %2679 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2679, ptr %18, align 4, !tbaa !9
  %2680 = load ptr, ptr %9, align 8, !tbaa !5
  %2681 = getelementptr inbounds %struct.w2c_hermes, ptr %2680, i32 0, i32 6
  %2682 = load i32, ptr %36, align 4, !tbaa !9
  %2683 = zext i32 %2682 to i64
  %2684 = add i64 %2683, 2144
  %2685 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2681, i64 noundef %2684, i32 noundef %2685)
  br label %2686

2686:                                             ; preds = %2656, %2571
  %2687 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2687, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2688 = load ptr, ptr %9, align 8, !tbaa !5
  %2689 = getelementptr inbounds %struct.w2c_hermes, ptr %2688, i32 0, i32 6
  %2690 = load i32, ptr %36, align 4, !tbaa !9
  %2691 = zext i32 %2690 to i64
  %2692 = add i64 %2691, 2168
  %2693 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2689, i64 noundef %2692, i32 noundef %2693)
  %2694 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2694, ptr %36, align 4, !tbaa !9
  %2695 = load i32, ptr %36, align 4, !tbaa !9
  %2696 = icmp ne i32 %2695, 0
  %2697 = xor i1 %2696, true
  %2698 = zext i1 %2697 to i32
  store i32 %2698, ptr %36, align 4, !tbaa !9
  %2699 = load i32, ptr %36, align 4, !tbaa !9
  %2700 = icmp ne i32 %2699, 0
  br i1 %2700, label %2701, label %2702

2701:                                             ; preds = %2686
  br label %2845

2702:                                             ; preds = %2686
  store i32 32, ptr %36, align 4, !tbaa !9
  %2703 = load ptr, ptr %9, align 8, !tbaa !5
  %2704 = load i32, ptr %36, align 4, !tbaa !9
  %2705 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %2703, i32 noundef %2704)
  store i32 %2705, ptr %36, align 4, !tbaa !9
  %2706 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2706, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2707 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2707, ptr %14, align 4, !tbaa !9
  store i32 271268, ptr %38, align 4, !tbaa !9
  %2708 = load i32, ptr %38, align 4, !tbaa !9
  %2709 = load i32, ptr %37, align 4, !tbaa !9
  %2710 = add i32 %2709, %2708
  store i32 %2710, ptr %37, align 4, !tbaa !9
  %2711 = load ptr, ptr %9, align 8, !tbaa !5
  %2712 = getelementptr inbounds %struct.w2c_hermes, ptr %2711, i32 0, i32 6
  %2713 = load i32, ptr %36, align 4, !tbaa !9
  %2714 = zext i32 %2713 to i64
  %2715 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2712, i64 noundef %2714, i32 noundef %2715)
  %2716 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2716, ptr %36, align 4, !tbaa !9
  store i32 2128, ptr %37, align 4, !tbaa !9
  %2717 = load i32, ptr %37, align 4, !tbaa !9
  %2718 = load i32, ptr %36, align 4, !tbaa !9
  %2719 = add i32 %2718, %2717
  store i32 %2719, ptr %36, align 4, !tbaa !9
  %2720 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2720, ptr %37, align 4, !tbaa !9
  %2721 = load i32, ptr %36, align 4, !tbaa !9
  %2722 = load i32, ptr %37, align 4, !tbaa !9
  %2723 = icmp eq i32 %2721, %2722
  %2724 = zext i1 %2723 to i32
  store i32 %2724, ptr %36, align 4, !tbaa !9
  %2725 = load i32, ptr %36, align 4, !tbaa !9
  %2726 = icmp ne i32 %2725, 0
  br i1 %2726, label %2727, label %2820

2727:                                             ; preds = %2702
  %2728 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2728, ptr %36, align 4, !tbaa !9
  %2729 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2729, ptr %37, align 4, !tbaa !9
  store i32 8, ptr %38, align 4, !tbaa !9
  %2730 = load i32, ptr %38, align 4, !tbaa !9
  %2731 = load i32, ptr %37, align 4, !tbaa !9
  %2732 = add i32 %2731, %2730
  store i32 %2732, ptr %37, align 4, !tbaa !9
  %2733 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %2733, ptr %18, align 4, !tbaa !9
  %2734 = load ptr, ptr %9, align 8, !tbaa !5
  %2735 = getelementptr inbounds %struct.w2c_hermes, ptr %2734, i32 0, i32 6
  %2736 = load i32, ptr %36, align 4, !tbaa !9
  %2737 = zext i32 %2736 to i64
  %2738 = add i64 %2737, 24
  %2739 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2735, i64 noundef %2738, i32 noundef %2739)
  %2740 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2740, ptr %36, align 4, !tbaa !9
  store i32 2128, ptr %37, align 4, !tbaa !9
  %2741 = load i32, ptr %37, align 4, !tbaa !9
  %2742 = load i32, ptr %36, align 4, !tbaa !9
  %2743 = add i32 %2742, %2741
  store i32 %2743, ptr %36, align 4, !tbaa !9
  %2744 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2744, ptr %37, align 4, !tbaa !9
  %2745 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2745, ptr %38, align 4, !tbaa !9
  %2746 = load ptr, ptr %9, align 8, !tbaa !5
  %2747 = getelementptr inbounds %struct.w2c_hermes, ptr %2746, i32 0, i32 6
  %2748 = load i32, ptr %38, align 4, !tbaa !9
  %2749 = zext i32 %2748 to i64
  %2750 = add i64 %2749, 2128
  %2751 = call i32 @i32_load(ptr noundef %2747, i64 noundef %2750)
  store i32 %2751, ptr %38, align 4, !tbaa !9
  %2752 = load ptr, ptr %9, align 8, !tbaa !5
  %2753 = getelementptr inbounds %struct.w2c_hermes, ptr %2752, i32 0, i32 6
  %2754 = load i32, ptr %38, align 4, !tbaa !9
  %2755 = zext i32 %2754 to i64
  %2756 = add i64 %2755, 12
  %2757 = call i32 @i32_load(ptr noundef %2753, i64 noundef %2756)
  store i32 %2757, ptr %38, align 4, !tbaa !9
  %2758 = load i32, ptr %38, align 4, !tbaa !9
  %2759 = load ptr, ptr %9, align 8, !tbaa !5
  %2760 = getelementptr inbounds %struct.w2c_hermes, ptr %2759, i32 0, i32 7
  %2761 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2760, i32 0, i32 2
  %2762 = load i32, ptr %2761, align 4, !tbaa !18
  %2763 = icmp ult i32 %2758, %2762
  br i1 %2763, label %2764, label %2787

2764:                                             ; preds = %2727
  %2765 = load ptr, ptr %9, align 8, !tbaa !5
  %2766 = getelementptr inbounds %struct.w2c_hermes, ptr %2765, i32 0, i32 7
  %2767 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2766, i32 0, i32 0
  %2768 = load ptr, ptr %2767, align 8, !tbaa !19
  %2769 = load i32, ptr %38, align 4, !tbaa !9
  %2770 = zext i32 %2769 to i64
  %2771 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2768, i64 %2770
  %2772 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2771, i32 0, i32 1
  %2773 = load ptr, ptr %2772, align 8, !tbaa !20
  %2774 = icmp ne ptr %2773, null
  br i1 %2774, label %2775, label %2787

2775:                                             ; preds = %2764
  %2776 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %2777 = load ptr, ptr %9, align 8, !tbaa !5
  %2778 = getelementptr inbounds %struct.w2c_hermes, ptr %2777, i32 0, i32 7
  %2779 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2778, i32 0, i32 0
  %2780 = load ptr, ptr %2779, align 8, !tbaa !19
  %2781 = load i32, ptr %38, align 4, !tbaa !9
  %2782 = zext i32 %2781 to i64
  %2783 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2780, i64 %2782
  %2784 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2783, i32 0, i32 0
  %2785 = load ptr, ptr %2784, align 8, !tbaa !22
  %2786 = call zeroext i1 @func_types_eq(ptr noundef %2776, ptr noundef %2785)
  br label %2787

2787:                                             ; preds = %2775, %2764, %2727
  %2788 = phi i1 [ false, %2764 ], [ false, %2727 ], [ %2786, %2775 ]
  %2789 = xor i1 %2788, true
  %2790 = xor i1 %2789, true
  %2791 = zext i1 %2790 to i32
  %2792 = sext i32 %2791 to i64
  %2793 = call i64 @llvm.expect.i64(i64 %2792, i64 1)
  %2794 = icmp ne i64 %2793, 0
  br i1 %2794, label %2797, label %2795

2795:                                             ; preds = %2787
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

2796:                                             ; No predecessors!
  br label %2797

2797:                                             ; preds = %2796, %2787
  %2798 = phi i1 [ true, %2787 ], [ false, %2796 ]
  %2799 = zext i1 %2798 to i32
  %2800 = load ptr, ptr %9, align 8, !tbaa !5
  %2801 = getelementptr inbounds %struct.w2c_hermes, ptr %2800, i32 0, i32 7
  %2802 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2801, i32 0, i32 0
  %2803 = load ptr, ptr %2802, align 8, !tbaa !19
  %2804 = load i32, ptr %38, align 4, !tbaa !9
  %2805 = zext i32 %2804 to i64
  %2806 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2803, i64 %2805
  %2807 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2806, i32 0, i32 1
  %2808 = load ptr, ptr %2807, align 8, !tbaa !20
  %2809 = load ptr, ptr %9, align 8, !tbaa !5
  %2810 = getelementptr inbounds %struct.w2c_hermes, ptr %2809, i32 0, i32 7
  %2811 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2810, i32 0, i32 0
  %2812 = load ptr, ptr %2811, align 8, !tbaa !19
  %2813 = load i32, ptr %38, align 4, !tbaa !9
  %2814 = zext i32 %2813 to i64
  %2815 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2812, i64 %2814
  %2816 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2815, i32 0, i32 2
  %2817 = load ptr, ptr %2816, align 8, !tbaa !23
  %2818 = load i32, ptr %36, align 4, !tbaa !9
  %2819 = load i32, ptr %37, align 4, !tbaa !9
  call void %2808(ptr noundef %2817, i32 noundef %2818, i32 noundef %2819)
  br label %2836

2820:                                             ; preds = %2702
  %2821 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2821, ptr %36, align 4, !tbaa !9
  %2822 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2822, ptr %37, align 4, !tbaa !9
  %2823 = load ptr, ptr %9, align 8, !tbaa !5
  %2824 = getelementptr inbounds %struct.w2c_hermes, ptr %2823, i32 0, i32 6
  %2825 = load i32, ptr %36, align 4, !tbaa !9
  %2826 = zext i32 %2825 to i64
  %2827 = add i64 %2826, 24
  %2828 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2824, i64 noundef %2827, i32 noundef %2828)
  %2829 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2829, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %2830 = load ptr, ptr %9, align 8, !tbaa !5
  %2831 = getelementptr inbounds %struct.w2c_hermes, ptr %2830, i32 0, i32 6
  %2832 = load i32, ptr %36, align 4, !tbaa !9
  %2833 = zext i32 %2832 to i64
  %2834 = add i64 %2833, 2144
  %2835 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2831, i64 noundef %2834, i32 noundef %2835)
  br label %2836

2836:                                             ; preds = %2820, %2797
  %2837 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2837, ptr %36, align 4, !tbaa !9
  %2838 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2838, ptr %37, align 4, !tbaa !9
  %2839 = load ptr, ptr %9, align 8, !tbaa !5
  %2840 = getelementptr inbounds %struct.w2c_hermes, ptr %2839, i32 0, i32 6
  %2841 = load i32, ptr %36, align 4, !tbaa !9
  %2842 = zext i32 %2841 to i64
  %2843 = add i64 %2842, 2168
  %2844 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2840, i64 noundef %2843, i32 noundef %2844)
  br label %2845

2845:                                             ; preds = %2836, %2701, %2472
  %2846 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2846, ptr %36, align 4, !tbaa !9
  store i32 271304, ptr %37, align 4, !tbaa !9
  %2847 = load ptr, ptr %9, align 8, !tbaa !5
  %2848 = getelementptr inbounds %struct.w2c_hermes, ptr %2847, i32 0, i32 6
  %2849 = load i32, ptr %36, align 4, !tbaa !9
  %2850 = zext i32 %2849 to i64
  %2851 = add i64 %2850, 2104
  %2852 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2848, i64 noundef %2851, i32 noundef %2852)
  %2853 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2853, ptr %36, align 4, !tbaa !9
  %2854 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2854, ptr %37, align 4, !tbaa !9
  store i32 2104, ptr %38, align 4, !tbaa !9
  %2855 = load i32, ptr %38, align 4, !tbaa !9
  %2856 = load i32, ptr %37, align 4, !tbaa !9
  %2857 = add i32 %2856, %2855
  store i32 %2857, ptr %37, align 4, !tbaa !9
  %2858 = load ptr, ptr %9, align 8, !tbaa !5
  %2859 = getelementptr inbounds %struct.w2c_hermes, ptr %2858, i32 0, i32 6
  %2860 = load i32, ptr %36, align 4, !tbaa !9
  %2861 = zext i32 %2860 to i64
  %2862 = add i64 %2861, 2120
  %2863 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %2859, i64 noundef %2862, i32 noundef %2863)
  %2864 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2864, ptr %36, align 4, !tbaa !9
  %2865 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2865, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %2866 = load i32, ptr %38, align 4, !tbaa !9
  %2867 = load i32, ptr %37, align 4, !tbaa !9
  %2868 = add i32 %2867, %2866
  store i32 %2868, ptr %37, align 4, !tbaa !9
  %2869 = load ptr, ptr %9, align 8, !tbaa !5
  %2870 = getelementptr inbounds %struct.w2c_hermes, ptr %2869, i32 0, i32 6
  %2871 = load i32, ptr %36, align 4, !tbaa !9
  %2872 = zext i32 %2871 to i64
  %2873 = add i64 %2872, 2108
  %2874 = load i32, ptr %37, 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 %36, align 4, !tbaa !9
  %2876 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2876, ptr %37, align 4, !tbaa !9
  store i32 2152, ptr %38, align 4, !tbaa !9
  %2877 = load i32, ptr %38, align 4, !tbaa !9
  %2878 = load i32, ptr %37, align 4, !tbaa !9
  %2879 = add i32 %2878, %2877
  store i32 %2879, ptr %37, align 4, !tbaa !9
  %2880 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2880, ptr %38, align 4, !tbaa !9
  store i32 2104, ptr %39, align 4, !tbaa !9
  %2881 = load i32, ptr %39, align 4, !tbaa !9
  %2882 = load i32, ptr %38, align 4, !tbaa !9
  %2883 = add i32 %2882, %2881
  store i32 %2883, ptr %38, align 4, !tbaa !9
  %2884 = load ptr, ptr %9, align 8, !tbaa !5
  %2885 = load i32, ptr %36, align 4, !tbaa !9
  %2886 = load i32, ptr %37, align 4, !tbaa !9
  %2887 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseLiteralStrings0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x2C0x20bool0x290x3E0x29(ptr noundef %2884, i32 noundef %2885, i32 noundef %2886, i32 noundef %2887)
  %2888 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2888, ptr %36, align 4, !tbaa !9
  %2889 = load ptr, ptr %9, align 8, !tbaa !5
  %2890 = getelementptr inbounds %struct.w2c_hermes, ptr %2889, i32 0, i32 6
  %2891 = load i32, ptr %36, align 4, !tbaa !9
  %2892 = zext i32 %2891 to i64
  %2893 = add i64 %2892, 2120
  %2894 = call i32 @i32_load(ptr noundef %2890, i64 noundef %2893)
  store i32 %2894, ptr %36, align 4, !tbaa !9
  %2895 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2895, ptr %18, align 4, !tbaa !9
  %2896 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2896, ptr %37, align 4, !tbaa !9
  store i32 2104, ptr %38, align 4, !tbaa !9
  %2897 = load i32, ptr %38, align 4, !tbaa !9
  %2898 = load i32, ptr %37, align 4, !tbaa !9
  %2899 = add i32 %2898, %2897
  store i32 %2899, ptr %37, align 4, !tbaa !9
  %2900 = load i32, ptr %36, align 4, !tbaa !9
  %2901 = load i32, ptr %37, align 4, !tbaa !9
  %2902 = icmp eq i32 %2900, %2901
  %2903 = zext i1 %2902 to i32
  store i32 %2903, ptr %36, align 4, !tbaa !9
  %2904 = load i32, ptr %36, align 4, !tbaa !9
  %2905 = icmp ne i32 %2904, 0
  br i1 %2905, label %2906, label %2922

2906:                                             ; preds = %2845
  %2907 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2907, ptr %36, align 4, !tbaa !9
  store i32 2104, ptr %37, align 4, !tbaa !9
  %2908 = load i32, ptr %37, align 4, !tbaa !9
  %2909 = load i32, ptr %36, align 4, !tbaa !9
  %2910 = add i32 %2909, %2908
  store i32 %2910, ptr %36, align 4, !tbaa !9
  %2911 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2911, ptr %18, align 4, !tbaa !9
  %2912 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %2912, ptr %36, align 4, !tbaa !9
  %2913 = load ptr, ptr %9, align 8, !tbaa !5
  %2914 = getelementptr inbounds %struct.w2c_hermes, ptr %2913, i32 0, i32 6
  %2915 = load i32, ptr %36, align 4, !tbaa !9
  %2916 = zext i32 %2915 to i64
  %2917 = add i64 %2916, 2104
  %2918 = call i32 @i32_load(ptr noundef %2914, i64 noundef %2917)
  store i32 %2918, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %2919 = load i32, ptr %37, align 4, !tbaa !9
  %2920 = load i32, ptr %36, align 4, !tbaa !9
  %2921 = add i32 %2920, %2919
  store i32 %2921, ptr %36, align 4, !tbaa !9
  br label %2941

2922:                                             ; preds = %2845
  %2923 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2923, ptr %36, align 4, !tbaa !9
  %2924 = load i32, ptr %36, align 4, !tbaa !9
  %2925 = icmp ne i32 %2924, 0
  %2926 = xor i1 %2925, true
  %2927 = zext i1 %2926 to i32
  store i32 %2927, ptr %36, align 4, !tbaa !9
  %2928 = load i32, ptr %36, align 4, !tbaa !9
  %2929 = icmp ne i32 %2928, 0
  br i1 %2929, label %2930, label %2931

2930:                                             ; preds = %2922
  br label %3011

2931:                                             ; preds = %2922
  %2932 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2932, ptr %36, align 4, !tbaa !9
  %2933 = load ptr, ptr %9, align 8, !tbaa !5
  %2934 = getelementptr inbounds %struct.w2c_hermes, ptr %2933, i32 0, i32 6
  %2935 = load i32, ptr %36, align 4, !tbaa !9
  %2936 = zext i32 %2935 to i64
  %2937 = call i32 @i32_load(ptr noundef %2934, i64 noundef %2936)
  store i32 %2937, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %2938 = load i32, ptr %37, align 4, !tbaa !9
  %2939 = load i32, ptr %36, align 4, !tbaa !9
  %2940 = add i32 %2939, %2938
  store i32 %2940, ptr %36, align 4, !tbaa !9
  br label %2941

2941:                                             ; preds = %2931, %2906
  %2942 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %2942, ptr %19, align 4, !tbaa !9
  %2943 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %2943, ptr %36, align 4, !tbaa !9
  %2944 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %2944, ptr %37, align 4, !tbaa !9
  %2945 = load ptr, ptr %9, align 8, !tbaa !5
  %2946 = getelementptr inbounds %struct.w2c_hermes, ptr %2945, i32 0, i32 6
  %2947 = load i32, ptr %37, align 4, !tbaa !9
  %2948 = zext i32 %2947 to i64
  %2949 = call i32 @i32_load(ptr noundef %2946, i64 noundef %2948)
  store i32 %2949, ptr %37, align 4, !tbaa !9
  %2950 = load i32, ptr %37, align 4, !tbaa !9
  %2951 = load ptr, ptr %9, align 8, !tbaa !5
  %2952 = getelementptr inbounds %struct.w2c_hermes, ptr %2951, i32 0, i32 7
  %2953 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2952, i32 0, i32 2
  %2954 = load i32, ptr %2953, align 4, !tbaa !18
  %2955 = icmp ult i32 %2950, %2954
  br i1 %2955, label %2956, label %2979

2956:                                             ; preds = %2941
  %2957 = load ptr, ptr %9, align 8, !tbaa !5
  %2958 = getelementptr inbounds %struct.w2c_hermes, ptr %2957, i32 0, i32 7
  %2959 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2958, i32 0, i32 0
  %2960 = load ptr, ptr %2959, align 8, !tbaa !19
  %2961 = load i32, ptr %37, align 4, !tbaa !9
  %2962 = zext i32 %2961 to i64
  %2963 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2960, i64 %2962
  %2964 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2963, i32 0, i32 1
  %2965 = load ptr, ptr %2964, align 8, !tbaa !20
  %2966 = icmp ne ptr %2965, null
  br i1 %2966, label %2967, label %2979

2967:                                             ; preds = %2956
  %2968 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %2969 = load ptr, ptr %9, align 8, !tbaa !5
  %2970 = getelementptr inbounds %struct.w2c_hermes, ptr %2969, i32 0, i32 7
  %2971 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2970, i32 0, i32 0
  %2972 = load ptr, ptr %2971, align 8, !tbaa !19
  %2973 = load i32, ptr %37, align 4, !tbaa !9
  %2974 = zext i32 %2973 to i64
  %2975 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2972, i64 %2974
  %2976 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2975, i32 0, i32 0
  %2977 = load ptr, ptr %2976, align 8, !tbaa !22
  %2978 = call zeroext i1 @func_types_eq(ptr noundef %2968, ptr noundef %2977)
  br label %2979

2979:                                             ; preds = %2967, %2956, %2941
  %2980 = phi i1 [ false, %2956 ], [ false, %2941 ], [ %2978, %2967 ]
  %2981 = xor i1 %2980, true
  %2982 = xor i1 %2981, true
  %2983 = zext i1 %2982 to i32
  %2984 = sext i32 %2983 to i64
  %2985 = call i64 @llvm.expect.i64(i64 %2984, i64 1)
  %2986 = icmp ne i64 %2985, 0
  br i1 %2986, label %2989, label %2987

2987:                                             ; preds = %2979
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

2988:                                             ; No predecessors!
  br label %2989

2989:                                             ; preds = %2988, %2979
  %2990 = phi i1 [ true, %2979 ], [ false, %2988 ]
  %2991 = zext i1 %2990 to i32
  %2992 = load ptr, ptr %9, align 8, !tbaa !5
  %2993 = getelementptr inbounds %struct.w2c_hermes, ptr %2992, i32 0, i32 7
  %2994 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %2993, i32 0, i32 0
  %2995 = load ptr, ptr %2994, align 8, !tbaa !19
  %2996 = load i32, ptr %37, align 4, !tbaa !9
  %2997 = zext i32 %2996 to i64
  %2998 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2995, i64 %2997
  %2999 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2998, i32 0, i32 1
  %3000 = load ptr, ptr %2999, align 8, !tbaa !20
  %3001 = load ptr, ptr %9, align 8, !tbaa !5
  %3002 = getelementptr inbounds %struct.w2c_hermes, ptr %3001, i32 0, i32 7
  %3003 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3002, i32 0, i32 0
  %3004 = load ptr, ptr %3003, align 8, !tbaa !19
  %3005 = load i32, ptr %37, align 4, !tbaa !9
  %3006 = zext i32 %3005 to i64
  %3007 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3004, i64 %3006
  %3008 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3007, i32 0, i32 2
  %3009 = load ptr, ptr %3008, align 8, !tbaa !23
  %3010 = load i32, ptr %36, align 4, !tbaa !9
  call void %3000(ptr noundef %3009, i32 noundef %3010)
  br label %3011

3011:                                             ; preds = %2989, %2930
  %3012 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3012, ptr %36, align 4, !tbaa !9
  %3013 = load ptr, ptr %9, align 8, !tbaa !5
  %3014 = getelementptr inbounds %struct.w2c_hermes, ptr %3013, i32 0, i32 6
  %3015 = load i32, ptr %36, align 4, !tbaa !9
  %3016 = zext i32 %3015 to i64
  %3017 = add i64 %3016, 2168
  %3018 = call i32 @i32_load(ptr noundef %3014, i64 noundef %3017)
  store i32 %3018, ptr %36, align 4, !tbaa !9
  %3019 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3019, ptr %18, align 4, !tbaa !9
  %3020 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3020, ptr %37, align 4, !tbaa !9
  store i32 2152, ptr %38, align 4, !tbaa !9
  %3021 = load i32, ptr %38, align 4, !tbaa !9
  %3022 = load i32, ptr %37, align 4, !tbaa !9
  %3023 = add i32 %3022, %3021
  store i32 %3023, ptr %37, align 4, !tbaa !9
  %3024 = load i32, ptr %36, align 4, !tbaa !9
  %3025 = load i32, ptr %37, align 4, !tbaa !9
  %3026 = icmp eq i32 %3024, %3025
  %3027 = zext i1 %3026 to i32
  store i32 %3027, ptr %36, align 4, !tbaa !9
  %3028 = load i32, ptr %36, align 4, !tbaa !9
  %3029 = icmp ne i32 %3028, 0
  br i1 %3029, label %3030, label %3046

3030:                                             ; preds = %3011
  %3031 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3031, ptr %36, align 4, !tbaa !9
  store i32 2152, ptr %37, align 4, !tbaa !9
  %3032 = load i32, ptr %37, align 4, !tbaa !9
  %3033 = load i32, ptr %36, align 4, !tbaa !9
  %3034 = add i32 %3033, %3032
  store i32 %3034, ptr %36, align 4, !tbaa !9
  %3035 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3035, ptr %18, align 4, !tbaa !9
  %3036 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3036, ptr %36, align 4, !tbaa !9
  %3037 = load ptr, ptr %9, align 8, !tbaa !5
  %3038 = getelementptr inbounds %struct.w2c_hermes, ptr %3037, i32 0, i32 6
  %3039 = load i32, ptr %36, align 4, !tbaa !9
  %3040 = zext i32 %3039 to i64
  %3041 = add i64 %3040, 2152
  %3042 = call i32 @i32_load(ptr noundef %3038, i64 noundef %3041)
  store i32 %3042, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %3043 = load i32, ptr %37, align 4, !tbaa !9
  %3044 = load i32, ptr %36, align 4, !tbaa !9
  %3045 = add i32 %3044, %3043
  store i32 %3045, ptr %36, align 4, !tbaa !9
  br label %3065

3046:                                             ; preds = %3011
  %3047 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3047, ptr %36, align 4, !tbaa !9
  %3048 = load i32, ptr %36, align 4, !tbaa !9
  %3049 = icmp ne i32 %3048, 0
  %3050 = xor i1 %3049, true
  %3051 = zext i1 %3050 to i32
  store i32 %3051, ptr %36, align 4, !tbaa !9
  %3052 = load i32, ptr %36, align 4, !tbaa !9
  %3053 = icmp ne i32 %3052, 0
  br i1 %3053, label %3054, label %3055

3054:                                             ; preds = %3046
  br label %3135

3055:                                             ; preds = %3046
  %3056 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3056, ptr %36, align 4, !tbaa !9
  %3057 = load ptr, ptr %9, align 8, !tbaa !5
  %3058 = getelementptr inbounds %struct.w2c_hermes, ptr %3057, i32 0, i32 6
  %3059 = load i32, ptr %36, align 4, !tbaa !9
  %3060 = zext i32 %3059 to i64
  %3061 = call i32 @i32_load(ptr noundef %3058, i64 noundef %3060)
  store i32 %3061, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %3062 = load i32, ptr %37, align 4, !tbaa !9
  %3063 = load i32, ptr %36, align 4, !tbaa !9
  %3064 = add i32 %3063, %3062
  store i32 %3064, ptr %36, align 4, !tbaa !9
  br label %3065

3065:                                             ; preds = %3055, %3030
  %3066 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3066, ptr %19, align 4, !tbaa !9
  %3067 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3067, ptr %36, align 4, !tbaa !9
  %3068 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3068, ptr %37, align 4, !tbaa !9
  %3069 = load ptr, ptr %9, align 8, !tbaa !5
  %3070 = getelementptr inbounds %struct.w2c_hermes, ptr %3069, i32 0, i32 6
  %3071 = load i32, ptr %37, align 4, !tbaa !9
  %3072 = zext i32 %3071 to i64
  %3073 = call i32 @i32_load(ptr noundef %3070, i64 noundef %3072)
  store i32 %3073, ptr %37, align 4, !tbaa !9
  %3074 = load i32, ptr %37, align 4, !tbaa !9
  %3075 = load ptr, ptr %9, align 8, !tbaa !5
  %3076 = getelementptr inbounds %struct.w2c_hermes, ptr %3075, i32 0, i32 7
  %3077 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3076, i32 0, i32 2
  %3078 = load i32, ptr %3077, align 4, !tbaa !18
  %3079 = icmp ult i32 %3074, %3078
  br i1 %3079, label %3080, label %3103

3080:                                             ; preds = %3065
  %3081 = load ptr, ptr %9, align 8, !tbaa !5
  %3082 = getelementptr inbounds %struct.w2c_hermes, ptr %3081, i32 0, i32 7
  %3083 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3082, i32 0, i32 0
  %3084 = load ptr, ptr %3083, align 8, !tbaa !19
  %3085 = load i32, ptr %37, align 4, !tbaa !9
  %3086 = zext i32 %3085 to i64
  %3087 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3084, i64 %3086
  %3088 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3087, i32 0, i32 1
  %3089 = load ptr, ptr %3088, align 8, !tbaa !20
  %3090 = icmp ne ptr %3089, null
  br i1 %3090, label %3091, label %3103

3091:                                             ; preds = %3080
  %3092 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %3093 = load ptr, ptr %9, align 8, !tbaa !5
  %3094 = getelementptr inbounds %struct.w2c_hermes, ptr %3093, i32 0, i32 7
  %3095 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3094, i32 0, i32 0
  %3096 = load ptr, ptr %3095, align 8, !tbaa !19
  %3097 = load i32, ptr %37, align 4, !tbaa !9
  %3098 = zext i32 %3097 to i64
  %3099 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3096, i64 %3098
  %3100 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3099, i32 0, i32 0
  %3101 = load ptr, ptr %3100, align 8, !tbaa !22
  %3102 = call zeroext i1 @func_types_eq(ptr noundef %3092, ptr noundef %3101)
  br label %3103

3103:                                             ; preds = %3091, %3080, %3065
  %3104 = phi i1 [ false, %3080 ], [ false, %3065 ], [ %3102, %3091 ]
  %3105 = xor i1 %3104, true
  %3106 = xor i1 %3105, true
  %3107 = zext i1 %3106 to i32
  %3108 = sext i32 %3107 to i64
  %3109 = call i64 @llvm.expect.i64(i64 %3108, i64 1)
  %3110 = icmp ne i64 %3109, 0
  br i1 %3110, label %3113, label %3111

3111:                                             ; preds = %3103
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3112:                                             ; No predecessors!
  br label %3113

3113:                                             ; preds = %3112, %3103
  %3114 = phi i1 [ true, %3103 ], [ false, %3112 ]
  %3115 = zext i1 %3114 to i32
  %3116 = load ptr, ptr %9, align 8, !tbaa !5
  %3117 = getelementptr inbounds %struct.w2c_hermes, ptr %3116, i32 0, i32 7
  %3118 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3117, i32 0, i32 0
  %3119 = load ptr, ptr %3118, align 8, !tbaa !19
  %3120 = load i32, ptr %37, align 4, !tbaa !9
  %3121 = zext i32 %3120 to i64
  %3122 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3119, i64 %3121
  %3123 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3122, i32 0, i32 1
  %3124 = load ptr, ptr %3123, align 8, !tbaa !20
  %3125 = load ptr, ptr %9, align 8, !tbaa !5
  %3126 = getelementptr inbounds %struct.w2c_hermes, ptr %3125, i32 0, i32 7
  %3127 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3126, i32 0, i32 0
  %3128 = load ptr, ptr %3127, align 8, !tbaa !19
  %3129 = load i32, ptr %37, align 4, !tbaa !9
  %3130 = zext i32 %3129 to i64
  %3131 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3128, i64 %3130
  %3132 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3131, i32 0, i32 2
  %3133 = load ptr, ptr %3132, align 8, !tbaa !23
  %3134 = load i32, ptr %36, align 4, !tbaa !9
  call void %3124(ptr noundef %3133, i32 noundef %3134)
  br label %3135

3135:                                             ; preds = %3113, %3054
  %3136 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3136, ptr %36, align 4, !tbaa !9
  %3137 = load ptr, ptr %9, align 8, !tbaa !5
  %3138 = getelementptr inbounds %struct.w2c_hermes, ptr %3137, i32 0, i32 6
  %3139 = load i32, ptr %36, align 4, !tbaa !9
  %3140 = zext i32 %3139 to i64
  %3141 = add i64 %3140, 2144
  %3142 = call i32 @i32_load(ptr noundef %3138, i64 noundef %3141)
  store i32 %3142, ptr %36, align 4, !tbaa !9
  %3143 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3143, ptr %18, align 4, !tbaa !9
  %3144 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3144, ptr %37, align 4, !tbaa !9
  store i32 2128, ptr %38, align 4, !tbaa !9
  %3145 = load i32, ptr %38, align 4, !tbaa !9
  %3146 = load i32, ptr %37, align 4, !tbaa !9
  %3147 = add i32 %3146, %3145
  store i32 %3147, ptr %37, align 4, !tbaa !9
  %3148 = load i32, ptr %36, align 4, !tbaa !9
  %3149 = load i32, ptr %37, align 4, !tbaa !9
  %3150 = icmp eq i32 %3148, %3149
  %3151 = zext i1 %3150 to i32
  store i32 %3151, ptr %36, align 4, !tbaa !9
  %3152 = load i32, ptr %36, align 4, !tbaa !9
  %3153 = icmp ne i32 %3152, 0
  br i1 %3153, label %3154, label %3170

3154:                                             ; preds = %3135
  %3155 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3155, ptr %36, align 4, !tbaa !9
  store i32 2128, ptr %37, align 4, !tbaa !9
  %3156 = load i32, ptr %37, align 4, !tbaa !9
  %3157 = load i32, ptr %36, align 4, !tbaa !9
  %3158 = add i32 %3157, %3156
  store i32 %3158, ptr %36, align 4, !tbaa !9
  %3159 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3159, ptr %18, align 4, !tbaa !9
  %3160 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3160, ptr %36, align 4, !tbaa !9
  %3161 = load ptr, ptr %9, align 8, !tbaa !5
  %3162 = getelementptr inbounds %struct.w2c_hermes, ptr %3161, i32 0, i32 6
  %3163 = load i32, ptr %36, align 4, !tbaa !9
  %3164 = zext i32 %3163 to i64
  %3165 = add i64 %3164, 2128
  %3166 = call i32 @i32_load(ptr noundef %3162, i64 noundef %3165)
  store i32 %3166, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %3167 = load i32, ptr %37, align 4, !tbaa !9
  %3168 = load i32, ptr %36, align 4, !tbaa !9
  %3169 = add i32 %3168, %3167
  store i32 %3169, ptr %36, align 4, !tbaa !9
  br label %3189

3170:                                             ; preds = %3135
  %3171 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3171, ptr %36, align 4, !tbaa !9
  %3172 = load i32, ptr %36, align 4, !tbaa !9
  %3173 = icmp ne i32 %3172, 0
  %3174 = xor i1 %3173, true
  %3175 = zext i1 %3174 to i32
  store i32 %3175, ptr %36, align 4, !tbaa !9
  %3176 = load i32, ptr %36, align 4, !tbaa !9
  %3177 = icmp ne i32 %3176, 0
  br i1 %3177, label %3178, label %3179

3178:                                             ; preds = %3170
  br label %3259

3179:                                             ; preds = %3170
  %3180 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3180, ptr %36, align 4, !tbaa !9
  %3181 = load ptr, ptr %9, align 8, !tbaa !5
  %3182 = getelementptr inbounds %struct.w2c_hermes, ptr %3181, i32 0, i32 6
  %3183 = load i32, ptr %36, align 4, !tbaa !9
  %3184 = zext i32 %3183 to i64
  %3185 = call i32 @i32_load(ptr noundef %3182, i64 noundef %3184)
  store i32 %3185, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %3186 = load i32, ptr %37, align 4, !tbaa !9
  %3187 = load i32, ptr %36, align 4, !tbaa !9
  %3188 = add i32 %3187, %3186
  store i32 %3188, ptr %36, align 4, !tbaa !9
  br label %3189

3189:                                             ; preds = %3179, %3154
  %3190 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3190, ptr %19, align 4, !tbaa !9
  %3191 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3191, ptr %36, align 4, !tbaa !9
  %3192 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3192, ptr %37, align 4, !tbaa !9
  %3193 = load ptr, ptr %9, align 8, !tbaa !5
  %3194 = getelementptr inbounds %struct.w2c_hermes, ptr %3193, i32 0, i32 6
  %3195 = load i32, ptr %37, align 4, !tbaa !9
  %3196 = zext i32 %3195 to i64
  %3197 = call i32 @i32_load(ptr noundef %3194, i64 noundef %3196)
  store i32 %3197, ptr %37, align 4, !tbaa !9
  %3198 = load i32, ptr %37, align 4, !tbaa !9
  %3199 = load ptr, ptr %9, align 8, !tbaa !5
  %3200 = getelementptr inbounds %struct.w2c_hermes, ptr %3199, i32 0, i32 7
  %3201 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3200, i32 0, i32 2
  %3202 = load i32, ptr %3201, align 4, !tbaa !18
  %3203 = icmp ult i32 %3198, %3202
  br i1 %3203, label %3204, label %3227

3204:                                             ; preds = %3189
  %3205 = load ptr, ptr %9, align 8, !tbaa !5
  %3206 = getelementptr inbounds %struct.w2c_hermes, ptr %3205, i32 0, i32 7
  %3207 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3206, i32 0, i32 0
  %3208 = load ptr, ptr %3207, align 8, !tbaa !19
  %3209 = load i32, ptr %37, align 4, !tbaa !9
  %3210 = zext i32 %3209 to i64
  %3211 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3208, i64 %3210
  %3212 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3211, i32 0, i32 1
  %3213 = load ptr, ptr %3212, align 8, !tbaa !20
  %3214 = icmp ne ptr %3213, null
  br i1 %3214, label %3215, label %3227

3215:                                             ; preds = %3204
  %3216 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %3217 = load ptr, ptr %9, align 8, !tbaa !5
  %3218 = getelementptr inbounds %struct.w2c_hermes, ptr %3217, i32 0, i32 7
  %3219 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3218, i32 0, i32 0
  %3220 = load ptr, ptr %3219, align 8, !tbaa !19
  %3221 = load i32, ptr %37, align 4, !tbaa !9
  %3222 = zext i32 %3221 to i64
  %3223 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3220, i64 %3222
  %3224 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3223, i32 0, i32 0
  %3225 = load ptr, ptr %3224, align 8, !tbaa !22
  %3226 = call zeroext i1 @func_types_eq(ptr noundef %3216, ptr noundef %3225)
  br label %3227

3227:                                             ; preds = %3215, %3204, %3189
  %3228 = phi i1 [ false, %3204 ], [ false, %3189 ], [ %3226, %3215 ]
  %3229 = xor i1 %3228, true
  %3230 = xor i1 %3229, true
  %3231 = zext i1 %3230 to i32
  %3232 = sext i32 %3231 to i64
  %3233 = call i64 @llvm.expect.i64(i64 %3232, i64 1)
  %3234 = icmp ne i64 %3233, 0
  br i1 %3234, label %3237, label %3235

3235:                                             ; preds = %3227
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3236:                                             ; No predecessors!
  br label %3237

3237:                                             ; preds = %3236, %3227
  %3238 = phi i1 [ true, %3227 ], [ false, %3236 ]
  %3239 = zext i1 %3238 to i32
  %3240 = load ptr, ptr %9, align 8, !tbaa !5
  %3241 = getelementptr inbounds %struct.w2c_hermes, ptr %3240, i32 0, i32 7
  %3242 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3241, i32 0, i32 0
  %3243 = load ptr, ptr %3242, align 8, !tbaa !19
  %3244 = load i32, ptr %37, align 4, !tbaa !9
  %3245 = zext i32 %3244 to i64
  %3246 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3243, i64 %3245
  %3247 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3246, i32 0, i32 1
  %3248 = load ptr, ptr %3247, align 8, !tbaa !20
  %3249 = load ptr, ptr %9, align 8, !tbaa !5
  %3250 = getelementptr inbounds %struct.w2c_hermes, ptr %3249, i32 0, i32 7
  %3251 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3250, i32 0, i32 0
  %3252 = load ptr, ptr %3251, align 8, !tbaa !19
  %3253 = load i32, ptr %37, align 4, !tbaa !9
  %3254 = zext i32 %3253 to i64
  %3255 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3252, i64 %3254
  %3256 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3255, i32 0, i32 2
  %3257 = load ptr, ptr %3256, align 8, !tbaa !23
  %3258 = load i32, ptr %36, align 4, !tbaa !9
  call void %3248(ptr noundef %3257, i32 noundef %3258)
  br label %3259

3259:                                             ; preds = %3237, %3178
  %3260 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3260, ptr %36, align 4, !tbaa !9
  %3261 = load ptr, ptr %9, align 8, !tbaa !5
  %3262 = getelementptr inbounds %struct.w2c_hermes, ptr %3261, i32 0, i32 6
  %3263 = load i32, ptr %36, align 4, !tbaa !9
  %3264 = zext i32 %3263 to i64
  %3265 = add i64 %3264, 10
  %3266 = call i32 @i32_load8_u(ptr noundef %3262, i64 noundef %3265)
  store i32 %3266, ptr %36, align 4, !tbaa !9
  %3267 = load i32, ptr %36, align 4, !tbaa !9
  %3268 = icmp ne i32 %3267, 0
  br i1 %3268, label %3269, label %3310

3269:                                             ; preds = %3259
  %3270 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3270, ptr %36, align 4, !tbaa !9
  store i32 22, ptr %37, align 4, !tbaa !9
  %3271 = load ptr, ptr %9, align 8, !tbaa !5
  %3272 = getelementptr inbounds %struct.w2c_hermes, ptr %3271, i32 0, i32 6
  %3273 = load i32, ptr %36, align 4, !tbaa !9
  %3274 = zext i32 %3273 to i64
  %3275 = add i64 %3274, 124
  %3276 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3272, i64 noundef %3275, i32 noundef %3276)
  %3277 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3277, ptr %36, align 4, !tbaa !9
  store i32 105273, ptr %37, align 4, !tbaa !9
  %3278 = load ptr, ptr %9, align 8, !tbaa !5
  %3279 = getelementptr inbounds %struct.w2c_hermes, ptr %3278, i32 0, i32 6
  %3280 = load i32, ptr %36, align 4, !tbaa !9
  %3281 = zext i32 %3280 to i64
  %3282 = add i64 %3281, 120
  %3283 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3279, i64 noundef %3282, i32 noundef %3283)
  %3284 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3284, ptr %36, align 4, !tbaa !9
  %3285 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3285, ptr %37, align 4, !tbaa !9
  %3286 = load ptr, ptr %9, align 8, !tbaa !5
  %3287 = getelementptr inbounds %struct.w2c_hermes, ptr %3286, i32 0, i32 6
  %3288 = load i32, ptr %37, align 4, !tbaa !9
  %3289 = zext i32 %3288 to i64
  %3290 = add i64 %3289, 120
  %3291 = call i64 @i64_load(ptr noundef %3287, i64 noundef %3290)
  store i64 %3291, ptr %43, align 8, !tbaa !11
  %3292 = load ptr, ptr %9, align 8, !tbaa !5
  %3293 = getelementptr inbounds %struct.w2c_hermes, ptr %3292, i32 0, i32 6
  %3294 = load i32, ptr %36, align 4, !tbaa !9
  %3295 = zext i32 %3294 to i64
  %3296 = add i64 %3295, 112
  %3297 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %3293, i64 noundef %3296, i64 noundef %3297)
  %3298 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3298, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %3299 = load i32, ptr %37, align 4, !tbaa !9
  %3300 = load i32, ptr %36, align 4, !tbaa !9
  %3301 = add i32 %3300, %3299
  store i32 %3301, ptr %36, align 4, !tbaa !9
  %3302 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3302, ptr %37, align 4, !tbaa !9
  store i32 112, ptr %38, align 4, !tbaa !9
  %3303 = load i32, ptr %38, align 4, !tbaa !9
  %3304 = load i32, ptr %37, align 4, !tbaa !9
  %3305 = add i32 %3304, %3303
  store i32 %3305, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  %3306 = load ptr, ptr %9, align 8, !tbaa !5
  %3307 = load i32, ptr %36, align 4, !tbaa !9
  %3308 = load i32, ptr %37, align 4, !tbaa !9
  %3309 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x3A0x3AaddString0x28llvh0x3A0x3AStringRef0x2C0x20bool0x29(ptr noundef %3306, i32 noundef %3307, i32 noundef %3308, i32 noundef %3309)
  br label %3310

3310:                                             ; preds = %3269, %3259
  %3311 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3311, ptr %36, align 4, !tbaa !9
  %3312 = load ptr, ptr %9, align 8, !tbaa !5
  %3313 = getelementptr inbounds %struct.w2c_hermes, ptr %3312, i32 0, i32 6
  %3314 = load i32, ptr %36, align 4, !tbaa !9
  %3315 = zext i32 %3314 to i64
  %3316 = add i64 %3315, 2208
  %3317 = call i32 @i32_load(ptr noundef %3313, i64 noundef %3316)
  store i32 %3317, ptr %36, align 4, !tbaa !9
  %3318 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3318, ptr %18, align 4, !tbaa !9
  %3319 = load i32, ptr %36, align 4, !tbaa !9
  %3320 = icmp ne i32 %3319, 0
  %3321 = xor i1 %3320, true
  %3322 = zext i1 %3321 to i32
  store i32 %3322, ptr %36, align 4, !tbaa !9
  %3323 = load i32, ptr %36, align 4, !tbaa !9
  %3324 = icmp ne i32 %3323, 0
  br i1 %3324, label %3325, label %3340

3325:                                             ; preds = %3310
  %3326 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3326, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %3327 = load ptr, ptr %9, align 8, !tbaa !5
  %3328 = getelementptr inbounds %struct.w2c_hermes, ptr %3327, i32 0, i32 6
  %3329 = load i32, ptr %36, align 4, !tbaa !9
  %3330 = zext i32 %3329 to i64
  %3331 = add i64 %3330, 2096
  %3332 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3328, i64 noundef %3331, i32 noundef %3332)
  %3333 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3333, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %3334 = load ptr, ptr %9, align 8, !tbaa !5
  %3335 = getelementptr inbounds %struct.w2c_hermes, ptr %3334, i32 0, i32 6
  %3336 = load i32, ptr %36, align 4, !tbaa !9
  %3337 = zext i32 %3336 to i64
  %3338 = add i64 %3337, 2072
  %3339 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3335, i64 noundef %3338, i32 noundef %3339)
  br label %3698

3340:                                             ; preds = %3310
  %3341 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3341, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %3342 = load i32, ptr %37, align 4, !tbaa !9
  %3343 = load i32, ptr %36, align 4, !tbaa !9
  %3344 = add i32 %3343, %3342
  store i32 %3344, ptr %36, align 4, !tbaa !9
  %3345 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3345, ptr %37, align 4, !tbaa !9
  %3346 = load i32, ptr %36, align 4, !tbaa !9
  %3347 = load i32, ptr %37, align 4, !tbaa !9
  %3348 = icmp eq i32 %3346, %3347
  %3349 = zext i1 %3348 to i32
  store i32 %3349, ptr %36, align 4, !tbaa !9
  %3350 = load i32, ptr %36, align 4, !tbaa !9
  %3351 = icmp ne i32 %3350, 0
  br i1 %3351, label %3352, label %3455

3352:                                             ; preds = %3340
  %3353 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3353, ptr %36, align 4, !tbaa !9
  %3354 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3354, ptr %37, align 4, !tbaa !9
  store i32 2056, ptr %38, align 4, !tbaa !9
  %3355 = load i32, ptr %38, align 4, !tbaa !9
  %3356 = load i32, ptr %37, align 4, !tbaa !9
  %3357 = add i32 %3356, %3355
  store i32 %3357, ptr %37, align 4, !tbaa !9
  %3358 = load ptr, ptr %9, align 8, !tbaa !5
  %3359 = getelementptr inbounds %struct.w2c_hermes, ptr %3358, i32 0, i32 6
  %3360 = load i32, ptr %36, align 4, !tbaa !9
  %3361 = zext i32 %3360 to i64
  %3362 = add i64 %3361, 2072
  %3363 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3359, i64 noundef %3362, i32 noundef %3363)
  %3364 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3364, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %3365 = load i32, ptr %37, align 4, !tbaa !9
  %3366 = load i32, ptr %36, align 4, !tbaa !9
  %3367 = add i32 %3366, %3365
  store i32 %3367, ptr %36, align 4, !tbaa !9
  %3368 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3368, ptr %37, align 4, !tbaa !9
  store i32 2056, ptr %38, align 4, !tbaa !9
  %3369 = load i32, ptr %38, align 4, !tbaa !9
  %3370 = load i32, ptr %37, align 4, !tbaa !9
  %3371 = add i32 %3370, %3369
  store i32 %3371, ptr %37, align 4, !tbaa !9
  %3372 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3372, ptr %38, align 4, !tbaa !9
  %3373 = load ptr, ptr %9, align 8, !tbaa !5
  %3374 = getelementptr inbounds %struct.w2c_hermes, ptr %3373, i32 0, i32 6
  %3375 = load i32, ptr %38, align 4, !tbaa !9
  %3376 = zext i32 %3375 to i64
  %3377 = add i64 %3376, 2192
  %3378 = call i32 @i32_load(ptr noundef %3374, i64 noundef %3377)
  store i32 %3378, ptr %38, align 4, !tbaa !9
  %3379 = load ptr, ptr %9, align 8, !tbaa !5
  %3380 = getelementptr inbounds %struct.w2c_hermes, ptr %3379, i32 0, i32 6
  %3381 = load i32, ptr %38, align 4, !tbaa !9
  %3382 = zext i32 %3381 to i64
  %3383 = add i64 %3382, 12
  %3384 = call i32 @i32_load(ptr noundef %3380, i64 noundef %3383)
  store i32 %3384, ptr %38, align 4, !tbaa !9
  %3385 = load i32, ptr %38, align 4, !tbaa !9
  %3386 = load ptr, ptr %9, align 8, !tbaa !5
  %3387 = getelementptr inbounds %struct.w2c_hermes, ptr %3386, i32 0, i32 7
  %3388 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3387, i32 0, i32 2
  %3389 = load i32, ptr %3388, align 4, !tbaa !18
  %3390 = icmp ult i32 %3385, %3389
  br i1 %3390, label %3391, label %3414

3391:                                             ; preds = %3352
  %3392 = load ptr, ptr %9, align 8, !tbaa !5
  %3393 = getelementptr inbounds %struct.w2c_hermes, ptr %3392, i32 0, i32 7
  %3394 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3393, i32 0, i32 0
  %3395 = load ptr, ptr %3394, align 8, !tbaa !19
  %3396 = load i32, ptr %38, align 4, !tbaa !9
  %3397 = zext i32 %3396 to i64
  %3398 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3395, i64 %3397
  %3399 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3398, i32 0, i32 1
  %3400 = load ptr, ptr %3399, align 8, !tbaa !20
  %3401 = icmp ne ptr %3400, null
  br i1 %3401, label %3402, label %3414

3402:                                             ; preds = %3391
  %3403 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %3404 = load ptr, ptr %9, align 8, !tbaa !5
  %3405 = getelementptr inbounds %struct.w2c_hermes, ptr %3404, i32 0, i32 7
  %3406 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3405, i32 0, i32 0
  %3407 = load ptr, ptr %3406, align 8, !tbaa !19
  %3408 = load i32, ptr %38, align 4, !tbaa !9
  %3409 = zext i32 %3408 to i64
  %3410 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3407, i64 %3409
  %3411 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3410, i32 0, i32 0
  %3412 = load ptr, ptr %3411, align 8, !tbaa !22
  %3413 = call zeroext i1 @func_types_eq(ptr noundef %3403, ptr noundef %3412)
  br label %3414

3414:                                             ; preds = %3402, %3391, %3352
  %3415 = phi i1 [ false, %3391 ], [ false, %3352 ], [ %3413, %3402 ]
  %3416 = xor i1 %3415, true
  %3417 = xor i1 %3416, true
  %3418 = zext i1 %3417 to i32
  %3419 = sext i32 %3418 to i64
  %3420 = call i64 @llvm.expect.i64(i64 %3419, i64 1)
  %3421 = icmp ne i64 %3420, 0
  br i1 %3421, label %3424, label %3422

3422:                                             ; preds = %3414
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3423:                                             ; No predecessors!
  br label %3424

3424:                                             ; preds = %3423, %3414
  %3425 = phi i1 [ true, %3414 ], [ false, %3423 ]
  %3426 = zext i1 %3425 to i32
  %3427 = load ptr, ptr %9, align 8, !tbaa !5
  %3428 = getelementptr inbounds %struct.w2c_hermes, ptr %3427, i32 0, i32 7
  %3429 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3428, i32 0, i32 0
  %3430 = load ptr, ptr %3429, align 8, !tbaa !19
  %3431 = load i32, ptr %38, align 4, !tbaa !9
  %3432 = zext i32 %3431 to i64
  %3433 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3430, i64 %3432
  %3434 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3433, i32 0, i32 1
  %3435 = load ptr, ptr %3434, align 8, !tbaa !20
  %3436 = load ptr, ptr %9, align 8, !tbaa !5
  %3437 = getelementptr inbounds %struct.w2c_hermes, ptr %3436, i32 0, i32 7
  %3438 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3437, i32 0, i32 0
  %3439 = load ptr, ptr %3438, align 8, !tbaa !19
  %3440 = load i32, ptr %38, align 4, !tbaa !9
  %3441 = zext i32 %3440 to i64
  %3442 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3439, i64 %3441
  %3443 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3442, i32 0, i32 2
  %3444 = load ptr, ptr %3443, align 8, !tbaa !23
  %3445 = load i32, ptr %36, align 4, !tbaa !9
  %3446 = load i32, ptr %37, align 4, !tbaa !9
  call void %3435(ptr noundef %3444, i32 noundef %3445, i32 noundef %3446)
  %3447 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3447, ptr %36, align 4, !tbaa !9
  %3448 = load ptr, ptr %9, align 8, !tbaa !5
  %3449 = getelementptr inbounds %struct.w2c_hermes, ptr %3448, i32 0, i32 6
  %3450 = load i32, ptr %36, align 4, !tbaa !9
  %3451 = zext i32 %3450 to i64
  %3452 = add i64 %3451, 2072
  %3453 = call i32 @i32_load(ptr noundef %3449, i64 noundef %3452)
  store i32 %3453, ptr %36, align 4, !tbaa !9
  %3454 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3454, ptr %18, align 4, !tbaa !9
  br label %3539

3455:                                             ; preds = %3340
  %3456 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3456, ptr %36, align 4, !tbaa !9
  %3457 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3457, ptr %37, align 4, !tbaa !9
  %3458 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3458, ptr %38, align 4, !tbaa !9
  %3459 = load ptr, ptr %9, align 8, !tbaa !5
  %3460 = getelementptr inbounds %struct.w2c_hermes, ptr %3459, i32 0, i32 6
  %3461 = load i32, ptr %38, align 4, !tbaa !9
  %3462 = zext i32 %3461 to i64
  %3463 = call i32 @i32_load(ptr noundef %3460, i64 noundef %3462)
  store i32 %3463, ptr %38, align 4, !tbaa !9
  %3464 = load ptr, ptr %9, align 8, !tbaa !5
  %3465 = getelementptr inbounds %struct.w2c_hermes, ptr %3464, i32 0, i32 6
  %3466 = load i32, ptr %38, align 4, !tbaa !9
  %3467 = zext i32 %3466 to i64
  %3468 = add i64 %3467, 8
  %3469 = call i32 @i32_load(ptr noundef %3465, i64 noundef %3468)
  store i32 %3469, ptr %38, align 4, !tbaa !9
  %3470 = load i32, ptr %38, align 4, !tbaa !9
  %3471 = load ptr, ptr %9, align 8, !tbaa !5
  %3472 = getelementptr inbounds %struct.w2c_hermes, ptr %3471, i32 0, i32 7
  %3473 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3472, i32 0, i32 2
  %3474 = load i32, ptr %3473, align 4, !tbaa !18
  %3475 = icmp ult i32 %3470, %3474
  br i1 %3475, label %3476, label %3499

3476:                                             ; preds = %3455
  %3477 = load ptr, ptr %9, align 8, !tbaa !5
  %3478 = getelementptr inbounds %struct.w2c_hermes, ptr %3477, i32 0, i32 7
  %3479 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3478, i32 0, i32 0
  %3480 = load ptr, ptr %3479, align 8, !tbaa !19
  %3481 = load i32, ptr %38, align 4, !tbaa !9
  %3482 = zext i32 %3481 to i64
  %3483 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3480, i64 %3482
  %3484 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3483, i32 0, i32 1
  %3485 = load ptr, ptr %3484, align 8, !tbaa !20
  %3486 = icmp ne ptr %3485, null
  br i1 %3486, label %3487, label %3499

3487:                                             ; preds = %3476
  %3488 = load ptr, ptr @w2c_hermes_t2, align 8, !tbaa !5
  %3489 = load ptr, ptr %9, align 8, !tbaa !5
  %3490 = getelementptr inbounds %struct.w2c_hermes, ptr %3489, i32 0, i32 7
  %3491 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3490, i32 0, i32 0
  %3492 = load ptr, ptr %3491, align 8, !tbaa !19
  %3493 = load i32, ptr %38, align 4, !tbaa !9
  %3494 = zext i32 %3493 to i64
  %3495 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3492, i64 %3494
  %3496 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3495, i32 0, i32 0
  %3497 = load ptr, ptr %3496, align 8, !tbaa !22
  %3498 = call zeroext i1 @func_types_eq(ptr noundef %3488, ptr noundef %3497)
  br label %3499

3499:                                             ; preds = %3487, %3476, %3455
  %3500 = phi i1 [ false, %3476 ], [ false, %3455 ], [ %3498, %3487 ]
  %3501 = xor i1 %3500, true
  %3502 = xor i1 %3501, true
  %3503 = zext i1 %3502 to i32
  %3504 = sext i32 %3503 to i64
  %3505 = call i64 @llvm.expect.i64(i64 %3504, i64 1)
  %3506 = icmp ne i64 %3505, 0
  br i1 %3506, label %3509, label %3507

3507:                                             ; preds = %3499
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3508:                                             ; No predecessors!
  br label %3509

3509:                                             ; preds = %3508, %3499
  %3510 = phi i1 [ true, %3499 ], [ false, %3508 ]
  %3511 = zext i1 %3510 to i32
  %3512 = load ptr, ptr %9, align 8, !tbaa !5
  %3513 = getelementptr inbounds %struct.w2c_hermes, ptr %3512, i32 0, i32 7
  %3514 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3513, i32 0, i32 0
  %3515 = load ptr, ptr %3514, align 8, !tbaa !19
  %3516 = load i32, ptr %38, align 4, !tbaa !9
  %3517 = zext i32 %3516 to i64
  %3518 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3515, i64 %3517
  %3519 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3518, i32 0, i32 1
  %3520 = load ptr, ptr %3519, align 8, !tbaa !20
  %3521 = load ptr, ptr %9, align 8, !tbaa !5
  %3522 = getelementptr inbounds %struct.w2c_hermes, ptr %3521, i32 0, i32 7
  %3523 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3522, i32 0, i32 0
  %3524 = load ptr, ptr %3523, align 8, !tbaa !19
  %3525 = load i32, ptr %38, align 4, !tbaa !9
  %3526 = zext i32 %3525 to i64
  %3527 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3524, i64 %3526
  %3528 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3527, i32 0, i32 2
  %3529 = load ptr, ptr %3528, align 8, !tbaa !23
  %3530 = load i32, ptr %37, align 4, !tbaa !9
  %3531 = call i32 %3520(ptr noundef %3529, i32 noundef %3530)
  store i32 %3531, ptr %37, align 4, !tbaa !9
  %3532 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3532, ptr %18, align 4, !tbaa !9
  %3533 = load ptr, ptr %9, align 8, !tbaa !5
  %3534 = getelementptr inbounds %struct.w2c_hermes, ptr %3533, i32 0, i32 6
  %3535 = load i32, ptr %36, align 4, !tbaa !9
  %3536 = zext i32 %3535 to i64
  %3537 = add i64 %3536, 2072
  %3538 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3534, i64 noundef %3537, i32 noundef %3538)
  br label %3539

3539:                                             ; preds = %3509, %3424
  %3540 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3540, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %3541 = load ptr, ptr %9, align 8, !tbaa !5
  %3542 = getelementptr inbounds %struct.w2c_hermes, ptr %3541, i32 0, i32 6
  %3543 = load i32, ptr %36, align 4, !tbaa !9
  %3544 = zext i32 %3543 to i64
  %3545 = add i64 %3544, 2096
  %3546 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3542, i64 noundef %3545, i32 noundef %3546)
  %3547 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3547, ptr %36, align 4, !tbaa !9
  %3548 = load i32, ptr %36, align 4, !tbaa !9
  %3549 = icmp ne i32 %3548, 0
  %3550 = xor i1 %3549, true
  %3551 = zext i1 %3550 to i32
  store i32 %3551, ptr %36, align 4, !tbaa !9
  %3552 = load i32, ptr %36, align 4, !tbaa !9
  %3553 = icmp ne i32 %3552, 0
  br i1 %3553, label %3554, label %3555

3554:                                             ; preds = %3539
  br label %3698

3555:                                             ; preds = %3539
  store i32 32, ptr %36, align 4, !tbaa !9
  %3556 = load ptr, ptr %9, align 8, !tbaa !5
  %3557 = load i32, ptr %36, align 4, !tbaa !9
  %3558 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %3556, i32 noundef %3557)
  store i32 %3558, ptr %36, align 4, !tbaa !9
  %3559 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3559, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %3560 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3560, ptr %14, align 4, !tbaa !9
  store i32 271268, ptr %38, align 4, !tbaa !9
  %3561 = load i32, ptr %38, align 4, !tbaa !9
  %3562 = load i32, ptr %37, align 4, !tbaa !9
  %3563 = add i32 %3562, %3561
  store i32 %3563, ptr %37, align 4, !tbaa !9
  %3564 = load ptr, ptr %9, align 8, !tbaa !5
  %3565 = getelementptr inbounds %struct.w2c_hermes, ptr %3564, i32 0, i32 6
  %3566 = load i32, ptr %36, align 4, !tbaa !9
  %3567 = zext i32 %3566 to i64
  %3568 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3565, i64 noundef %3567, i32 noundef %3568)
  %3569 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3569, ptr %36, align 4, !tbaa !9
  store i32 2056, ptr %37, align 4, !tbaa !9
  %3570 = load i32, ptr %37, align 4, !tbaa !9
  %3571 = load i32, ptr %36, align 4, !tbaa !9
  %3572 = add i32 %3571, %3570
  store i32 %3572, ptr %36, align 4, !tbaa !9
  %3573 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3573, ptr %37, align 4, !tbaa !9
  %3574 = load i32, ptr %36, align 4, !tbaa !9
  %3575 = load i32, ptr %37, align 4, !tbaa !9
  %3576 = icmp eq i32 %3574, %3575
  %3577 = zext i1 %3576 to i32
  store i32 %3577, ptr %36, align 4, !tbaa !9
  %3578 = load i32, ptr %36, align 4, !tbaa !9
  %3579 = icmp ne i32 %3578, 0
  br i1 %3579, label %3580, label %3673

3580:                                             ; preds = %3555
  %3581 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3581, ptr %36, align 4, !tbaa !9
  %3582 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3582, ptr %37, align 4, !tbaa !9
  store i32 8, ptr %38, align 4, !tbaa !9
  %3583 = load i32, ptr %38, align 4, !tbaa !9
  %3584 = load i32, ptr %37, align 4, !tbaa !9
  %3585 = add i32 %3584, %3583
  store i32 %3585, ptr %37, align 4, !tbaa !9
  %3586 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3586, ptr %18, align 4, !tbaa !9
  %3587 = load ptr, ptr %9, align 8, !tbaa !5
  %3588 = getelementptr inbounds %struct.w2c_hermes, ptr %3587, i32 0, i32 6
  %3589 = load i32, ptr %36, align 4, !tbaa !9
  %3590 = zext i32 %3589 to i64
  %3591 = add i64 %3590, 24
  %3592 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3588, i64 noundef %3591, i32 noundef %3592)
  %3593 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3593, ptr %36, align 4, !tbaa !9
  store i32 2056, ptr %37, align 4, !tbaa !9
  %3594 = load i32, ptr %37, align 4, !tbaa !9
  %3595 = load i32, ptr %36, align 4, !tbaa !9
  %3596 = add i32 %3595, %3594
  store i32 %3596, ptr %36, align 4, !tbaa !9
  %3597 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3597, ptr %37, align 4, !tbaa !9
  %3598 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3598, ptr %38, align 4, !tbaa !9
  %3599 = load ptr, ptr %9, align 8, !tbaa !5
  %3600 = getelementptr inbounds %struct.w2c_hermes, ptr %3599, i32 0, i32 6
  %3601 = load i32, ptr %38, align 4, !tbaa !9
  %3602 = zext i32 %3601 to i64
  %3603 = add i64 %3602, 2056
  %3604 = call i32 @i32_load(ptr noundef %3600, i64 noundef %3603)
  store i32 %3604, ptr %38, align 4, !tbaa !9
  %3605 = load ptr, ptr %9, align 8, !tbaa !5
  %3606 = getelementptr inbounds %struct.w2c_hermes, ptr %3605, i32 0, i32 6
  %3607 = load i32, ptr %38, align 4, !tbaa !9
  %3608 = zext i32 %3607 to i64
  %3609 = add i64 %3608, 12
  %3610 = call i32 @i32_load(ptr noundef %3606, i64 noundef %3609)
  store i32 %3610, ptr %38, align 4, !tbaa !9
  %3611 = load i32, ptr %38, align 4, !tbaa !9
  %3612 = load ptr, ptr %9, align 8, !tbaa !5
  %3613 = getelementptr inbounds %struct.w2c_hermes, ptr %3612, i32 0, i32 7
  %3614 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3613, i32 0, i32 2
  %3615 = load i32, ptr %3614, align 4, !tbaa !18
  %3616 = icmp ult i32 %3611, %3615
  br i1 %3616, label %3617, label %3640

3617:                                             ; preds = %3580
  %3618 = load ptr, ptr %9, align 8, !tbaa !5
  %3619 = getelementptr inbounds %struct.w2c_hermes, ptr %3618, i32 0, i32 7
  %3620 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3619, i32 0, i32 0
  %3621 = load ptr, ptr %3620, align 8, !tbaa !19
  %3622 = load i32, ptr %38, align 4, !tbaa !9
  %3623 = zext i32 %3622 to i64
  %3624 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3621, i64 %3623
  %3625 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3624, i32 0, i32 1
  %3626 = load ptr, ptr %3625, align 8, !tbaa !20
  %3627 = icmp ne ptr %3626, null
  br i1 %3627, label %3628, label %3640

3628:                                             ; preds = %3617
  %3629 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %3630 = load ptr, ptr %9, align 8, !tbaa !5
  %3631 = getelementptr inbounds %struct.w2c_hermes, ptr %3630, i32 0, i32 7
  %3632 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3631, i32 0, i32 0
  %3633 = load ptr, ptr %3632, align 8, !tbaa !19
  %3634 = load i32, ptr %38, align 4, !tbaa !9
  %3635 = zext i32 %3634 to i64
  %3636 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3633, i64 %3635
  %3637 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3636, i32 0, i32 0
  %3638 = load ptr, ptr %3637, align 8, !tbaa !22
  %3639 = call zeroext i1 @func_types_eq(ptr noundef %3629, ptr noundef %3638)
  br label %3640

3640:                                             ; preds = %3628, %3617, %3580
  %3641 = phi i1 [ false, %3617 ], [ false, %3580 ], [ %3639, %3628 ]
  %3642 = xor i1 %3641, true
  %3643 = xor i1 %3642, true
  %3644 = zext i1 %3643 to i32
  %3645 = sext i32 %3644 to i64
  %3646 = call i64 @llvm.expect.i64(i64 %3645, i64 1)
  %3647 = icmp ne i64 %3646, 0
  br i1 %3647, label %3650, label %3648

3648:                                             ; preds = %3640
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3649:                                             ; No predecessors!
  br label %3650

3650:                                             ; preds = %3649, %3640
  %3651 = phi i1 [ true, %3640 ], [ false, %3649 ]
  %3652 = zext i1 %3651 to i32
  %3653 = load ptr, ptr %9, align 8, !tbaa !5
  %3654 = getelementptr inbounds %struct.w2c_hermes, ptr %3653, i32 0, i32 7
  %3655 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3654, i32 0, i32 0
  %3656 = load ptr, ptr %3655, align 8, !tbaa !19
  %3657 = load i32, ptr %38, align 4, !tbaa !9
  %3658 = zext i32 %3657 to i64
  %3659 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3656, i64 %3658
  %3660 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3659, i32 0, i32 1
  %3661 = load ptr, ptr %3660, align 8, !tbaa !20
  %3662 = load ptr, ptr %9, align 8, !tbaa !5
  %3663 = getelementptr inbounds %struct.w2c_hermes, ptr %3662, i32 0, i32 7
  %3664 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3663, i32 0, i32 0
  %3665 = load ptr, ptr %3664, align 8, !tbaa !19
  %3666 = load i32, ptr %38, align 4, !tbaa !9
  %3667 = zext i32 %3666 to i64
  %3668 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3665, i64 %3667
  %3669 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3668, i32 0, i32 2
  %3670 = load ptr, ptr %3669, align 8, !tbaa !23
  %3671 = load i32, ptr %36, align 4, !tbaa !9
  %3672 = load i32, ptr %37, align 4, !tbaa !9
  call void %3661(ptr noundef %3670, i32 noundef %3671, i32 noundef %3672)
  br label %3689

3673:                                             ; preds = %3555
  %3674 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3674, ptr %36, align 4, !tbaa !9
  %3675 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3675, ptr %37, align 4, !tbaa !9
  %3676 = load ptr, ptr %9, align 8, !tbaa !5
  %3677 = getelementptr inbounds %struct.w2c_hermes, ptr %3676, i32 0, i32 6
  %3678 = load i32, ptr %36, align 4, !tbaa !9
  %3679 = zext i32 %3678 to i64
  %3680 = add i64 %3679, 24
  %3681 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3677, i64 noundef %3680, i32 noundef %3681)
  %3682 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3682, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %3683 = load ptr, ptr %9, align 8, !tbaa !5
  %3684 = getelementptr inbounds %struct.w2c_hermes, ptr %3683, i32 0, i32 6
  %3685 = load i32, ptr %36, align 4, !tbaa !9
  %3686 = zext i32 %3685 to i64
  %3687 = add i64 %3686, 2072
  %3688 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3684, i64 noundef %3687, i32 noundef %3688)
  br label %3689

3689:                                             ; preds = %3673, %3650
  %3690 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3690, ptr %36, align 4, !tbaa !9
  %3691 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3691, ptr %37, align 4, !tbaa !9
  %3692 = load ptr, ptr %9, align 8, !tbaa !5
  %3693 = getelementptr inbounds %struct.w2c_hermes, ptr %3692, i32 0, i32 6
  %3694 = load i32, ptr %36, align 4, !tbaa !9
  %3695 = zext i32 %3694 to i64
  %3696 = add i64 %3695, 2096
  %3697 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3693, i64 noundef %3696, i32 noundef %3697)
  br label %3698

3698:                                             ; preds = %3689, %3554, %3325
  %3699 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3699, ptr %36, align 4, !tbaa !9
  store i32 2016, ptr %37, align 4, !tbaa !9
  %3700 = load i32, ptr %37, align 4, !tbaa !9
  %3701 = load i32, ptr %36, align 4, !tbaa !9
  %3702 = add i32 %3701, %3700
  store i32 %3702, ptr %36, align 4, !tbaa !9
  %3703 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3703, ptr %37, align 4, !tbaa !9
  store i32 2176, ptr %38, align 4, !tbaa !9
  %3704 = load i32, ptr %38, align 4, !tbaa !9
  %3705 = load i32, ptr %37, align 4, !tbaa !9
  %3706 = add i32 %3705, %3704
  store i32 %3706, ptr %37, align 4, !tbaa !9
  %3707 = load ptr, ptr %9, align 8, !tbaa !5
  %3708 = getelementptr inbounds %struct.w2c_hermes, ptr %3707, i32 0, i32 6
  %3709 = load i32, ptr %36, align 4, !tbaa !9
  %3710 = zext i32 %3709 to i64
  %3711 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3708, i64 noundef %3710, i32 noundef %3711)
  %3712 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3712, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %3713 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %3713, ptr %18, align 4, !tbaa !9
  store i32 271340, ptr %38, align 4, !tbaa !9
  %3714 = load i32, ptr %38, align 4, !tbaa !9
  %3715 = load i32, ptr %37, align 4, !tbaa !9
  %3716 = add i32 %3715, %3714
  store i32 %3716, ptr %37, align 4, !tbaa !9
  %3717 = load ptr, ptr %9, align 8, !tbaa !5
  %3718 = getelementptr inbounds %struct.w2c_hermes, ptr %3717, i32 0, i32 6
  %3719 = load i32, ptr %36, align 4, !tbaa !9
  %3720 = zext i32 %3719 to i64
  %3721 = add i64 %3720, 2032
  %3722 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3718, i64 noundef %3721, i32 noundef %3722)
  %3723 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3723, ptr %36, align 4, !tbaa !9
  %3724 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3724, ptr %37, align 4, !tbaa !9
  store i32 271376, ptr %38, align 4, !tbaa !9
  %3725 = load i32, ptr %38, align 4, !tbaa !9
  %3726 = load i32, ptr %37, align 4, !tbaa !9
  %3727 = add i32 %3726, %3725
  store i32 %3727, ptr %37, align 4, !tbaa !9
  %3728 = load ptr, ptr %9, align 8, !tbaa !5
  %3729 = getelementptr inbounds %struct.w2c_hermes, ptr %3728, i32 0, i32 6
  %3730 = load i32, ptr %36, align 4, !tbaa !9
  %3731 = zext i32 %3730 to i64
  %3732 = add i64 %3731, 2008
  %3733 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3729, i64 noundef %3732, i32 noundef %3733)
  %3734 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3734, ptr %36, align 4, !tbaa !9
  %3735 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3735, ptr %37, align 4, !tbaa !9
  store i32 2032, ptr %38, align 4, !tbaa !9
  %3736 = load i32, ptr %38, align 4, !tbaa !9
  %3737 = load i32, ptr %37, align 4, !tbaa !9
  %3738 = add i32 %3737, %3736
  store i32 %3738, ptr %37, align 4, !tbaa !9
  %3739 = load ptr, ptr %9, align 8, !tbaa !5
  %3740 = getelementptr inbounds %struct.w2c_hermes, ptr %3739, i32 0, i32 6
  %3741 = load i32, ptr %36, align 4, !tbaa !9
  %3742 = zext i32 %3741 to i64
  %3743 = add i64 %3742, 2048
  %3744 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3740, i64 noundef %3743, i32 noundef %3744)
  %3745 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3745, ptr %36, align 4, !tbaa !9
  %3746 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3746, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %3747 = load i32, ptr %38, align 4, !tbaa !9
  %3748 = load i32, ptr %37, align 4, !tbaa !9
  %3749 = add i32 %3748, %3747
  store i32 %3749, ptr %37, align 4, !tbaa !9
  %3750 = load ptr, ptr %9, align 8, !tbaa !5
  %3751 = getelementptr inbounds %struct.w2c_hermes, ptr %3750, i32 0, i32 6
  %3752 = load i32, ptr %36, align 4, !tbaa !9
  %3753 = zext i32 %3752 to i64
  %3754 = add i64 %3753, 2036
  %3755 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3751, i64 noundef %3754, i32 noundef %3755)
  %3756 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3756, ptr %36, align 4, !tbaa !9
  %3757 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3757, ptr %37, align 4, !tbaa !9
  store i32 2008, ptr %38, align 4, !tbaa !9
  %3758 = load i32, ptr %38, align 4, !tbaa !9
  %3759 = load i32, ptr %37, align 4, !tbaa !9
  %3760 = add i32 %3759, %3758
  store i32 %3760, ptr %37, align 4, !tbaa !9
  %3761 = load ptr, ptr %9, align 8, !tbaa !5
  %3762 = getelementptr inbounds %struct.w2c_hermes, ptr %3761, i32 0, i32 6
  %3763 = load i32, ptr %36, align 4, !tbaa !9
  %3764 = zext i32 %3763 to i64
  %3765 = add i64 %3764, 2024
  %3766 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3762, i64 noundef %3765, i32 noundef %3766)
  %3767 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3767, ptr %36, align 4, !tbaa !9
  %3768 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3768, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %3769 = load i32, ptr %38, align 4, !tbaa !9
  %3770 = load i32, ptr %37, align 4, !tbaa !9
  %3771 = add i32 %3770, %3769
  store i32 %3771, ptr %37, align 4, !tbaa !9
  %3772 = load ptr, ptr %9, align 8, !tbaa !5
  %3773 = getelementptr inbounds %struct.w2c_hermes, ptr %3772, i32 0, i32 6
  %3774 = load i32, ptr %36, align 4, !tbaa !9
  %3775 = zext i32 %3774 to i64
  %3776 = add i64 %3775, 2012
  %3777 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %3773, i64 noundef %3776, i32 noundef %3777)
  %3778 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %3778, ptr %36, align 4, !tbaa !9
  %3779 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3779, ptr %37, align 4, !tbaa !9
  store i32 2080, ptr %38, align 4, !tbaa !9
  %3780 = load i32, ptr %38, align 4, !tbaa !9
  %3781 = load i32, ptr %37, align 4, !tbaa !9
  %3782 = add i32 %3781, %3780
  store i32 %3782, ptr %37, align 4, !tbaa !9
  %3783 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3783, ptr %38, align 4, !tbaa !9
  store i32 2032, ptr %39, align 4, !tbaa !9
  %3784 = load i32, ptr %39, align 4, !tbaa !9
  %3785 = load i32, ptr %38, align 4, !tbaa !9
  %3786 = add i32 %3785, %3784
  store i32 %3786, ptr %38, align 4, !tbaa !9
  %3787 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3787, ptr %39, align 4, !tbaa !9
  store i32 2008, ptr %40, align 4, !tbaa !9
  %3788 = load i32, ptr %40, align 4, !tbaa !9
  %3789 = load i32, ptr %39, align 4, !tbaa !9
  %3790 = add i32 %3789, %3788
  store i32 %3790, ptr %39, align 4, !tbaa !9
  %3791 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %3791, ptr %40, align 4, !tbaa !9
  %3792 = load ptr, ptr %9, align 8, !tbaa !5
  %3793 = getelementptr inbounds %struct.w2c_hermes, ptr %3792, i32 0, i32 6
  %3794 = load i32, ptr %40, align 4, !tbaa !9
  %3795 = zext i32 %3794 to i64
  %3796 = add i64 %3795, 10
  %3797 = call i32 @i32_load8_u(ptr noundef %3793, i64 noundef %3796)
  store i32 %3797, ptr %40, align 4, !tbaa !9
  %3798 = load ptr, ptr %9, align 8, !tbaa !5
  %3799 = load i32, ptr %36, align 4, !tbaa !9
  %3800 = load i32, ptr %37, align 4, !tbaa !9
  %3801 = load i32, ptr %38, align 4, !tbaa !9
  %3802 = load i32, ptr %39, align 4, !tbaa !9
  %3803 = load i32, ptr %40, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseFunctions0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x2C0x20bool0x29(ptr noundef %3798, i32 noundef %3799, i32 noundef %3800, i32 noundef %3801, i32 noundef %3802, i32 noundef %3803)
  %3804 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3804, ptr %36, align 4, !tbaa !9
  %3805 = load ptr, ptr %9, align 8, !tbaa !5
  %3806 = getelementptr inbounds %struct.w2c_hermes, ptr %3805, i32 0, i32 6
  %3807 = load i32, ptr %36, align 4, !tbaa !9
  %3808 = zext i32 %3807 to i64
  %3809 = add i64 %3808, 2024
  %3810 = call i32 @i32_load(ptr noundef %3806, i64 noundef %3809)
  store i32 %3810, ptr %36, align 4, !tbaa !9
  %3811 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3811, ptr %18, align 4, !tbaa !9
  %3812 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3812, ptr %37, align 4, !tbaa !9
  store i32 2008, ptr %38, align 4, !tbaa !9
  %3813 = load i32, ptr %38, align 4, !tbaa !9
  %3814 = load i32, ptr %37, align 4, !tbaa !9
  %3815 = add i32 %3814, %3813
  store i32 %3815, ptr %37, align 4, !tbaa !9
  %3816 = load i32, ptr %36, align 4, !tbaa !9
  %3817 = load i32, ptr %37, align 4, !tbaa !9
  %3818 = icmp eq i32 %3816, %3817
  %3819 = zext i1 %3818 to i32
  store i32 %3819, ptr %36, align 4, !tbaa !9
  %3820 = load i32, ptr %36, align 4, !tbaa !9
  %3821 = icmp ne i32 %3820, 0
  br i1 %3821, label %3822, label %3838

3822:                                             ; preds = %3698
  %3823 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3823, ptr %36, align 4, !tbaa !9
  store i32 2008, ptr %37, align 4, !tbaa !9
  %3824 = load i32, ptr %37, align 4, !tbaa !9
  %3825 = load i32, ptr %36, align 4, !tbaa !9
  %3826 = add i32 %3825, %3824
  store i32 %3826, ptr %36, align 4, !tbaa !9
  %3827 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3827, ptr %18, align 4, !tbaa !9
  %3828 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3828, ptr %36, align 4, !tbaa !9
  %3829 = load ptr, ptr %9, align 8, !tbaa !5
  %3830 = getelementptr inbounds %struct.w2c_hermes, ptr %3829, i32 0, i32 6
  %3831 = load i32, ptr %36, align 4, !tbaa !9
  %3832 = zext i32 %3831 to i64
  %3833 = add i64 %3832, 2008
  %3834 = call i32 @i32_load(ptr noundef %3830, i64 noundef %3833)
  store i32 %3834, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %3835 = load i32, ptr %37, align 4, !tbaa !9
  %3836 = load i32, ptr %36, align 4, !tbaa !9
  %3837 = add i32 %3836, %3835
  store i32 %3837, ptr %36, align 4, !tbaa !9
  br label %3857

3838:                                             ; preds = %3698
  %3839 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3839, ptr %36, align 4, !tbaa !9
  %3840 = load i32, ptr %36, align 4, !tbaa !9
  %3841 = icmp ne i32 %3840, 0
  %3842 = xor i1 %3841, true
  %3843 = zext i1 %3842 to i32
  store i32 %3843, ptr %36, align 4, !tbaa !9
  %3844 = load i32, ptr %36, align 4, !tbaa !9
  %3845 = icmp ne i32 %3844, 0
  br i1 %3845, label %3846, label %3847

3846:                                             ; preds = %3838
  br label %3927

3847:                                             ; preds = %3838
  %3848 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3848, ptr %36, align 4, !tbaa !9
  %3849 = load ptr, ptr %9, align 8, !tbaa !5
  %3850 = getelementptr inbounds %struct.w2c_hermes, ptr %3849, i32 0, i32 6
  %3851 = load i32, ptr %36, align 4, !tbaa !9
  %3852 = zext i32 %3851 to i64
  %3853 = call i32 @i32_load(ptr noundef %3850, i64 noundef %3852)
  store i32 %3853, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %3854 = load i32, ptr %37, align 4, !tbaa !9
  %3855 = load i32, ptr %36, align 4, !tbaa !9
  %3856 = add i32 %3855, %3854
  store i32 %3856, ptr %36, align 4, !tbaa !9
  br label %3857

3857:                                             ; preds = %3847, %3822
  %3858 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3858, ptr %19, align 4, !tbaa !9
  %3859 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3859, ptr %36, align 4, !tbaa !9
  %3860 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3860, ptr %37, align 4, !tbaa !9
  %3861 = load ptr, ptr %9, align 8, !tbaa !5
  %3862 = getelementptr inbounds %struct.w2c_hermes, ptr %3861, i32 0, i32 6
  %3863 = load i32, ptr %37, align 4, !tbaa !9
  %3864 = zext i32 %3863 to i64
  %3865 = call i32 @i32_load(ptr noundef %3862, i64 noundef %3864)
  store i32 %3865, ptr %37, align 4, !tbaa !9
  %3866 = load i32, ptr %37, align 4, !tbaa !9
  %3867 = load ptr, ptr %9, align 8, !tbaa !5
  %3868 = getelementptr inbounds %struct.w2c_hermes, ptr %3867, i32 0, i32 7
  %3869 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3868, i32 0, i32 2
  %3870 = load i32, ptr %3869, align 4, !tbaa !18
  %3871 = icmp ult i32 %3866, %3870
  br i1 %3871, label %3872, label %3895

3872:                                             ; preds = %3857
  %3873 = load ptr, ptr %9, align 8, !tbaa !5
  %3874 = getelementptr inbounds %struct.w2c_hermes, ptr %3873, i32 0, i32 7
  %3875 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3874, i32 0, i32 0
  %3876 = load ptr, ptr %3875, align 8, !tbaa !19
  %3877 = load i32, ptr %37, align 4, !tbaa !9
  %3878 = zext i32 %3877 to i64
  %3879 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3876, i64 %3878
  %3880 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3879, i32 0, i32 1
  %3881 = load ptr, ptr %3880, align 8, !tbaa !20
  %3882 = icmp ne ptr %3881, null
  br i1 %3882, label %3883, label %3895

3883:                                             ; preds = %3872
  %3884 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %3885 = load ptr, ptr %9, align 8, !tbaa !5
  %3886 = getelementptr inbounds %struct.w2c_hermes, ptr %3885, i32 0, i32 7
  %3887 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3886, i32 0, i32 0
  %3888 = load ptr, ptr %3887, align 8, !tbaa !19
  %3889 = load i32, ptr %37, align 4, !tbaa !9
  %3890 = zext i32 %3889 to i64
  %3891 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3888, i64 %3890
  %3892 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3891, i32 0, i32 0
  %3893 = load ptr, ptr %3892, align 8, !tbaa !22
  %3894 = call zeroext i1 @func_types_eq(ptr noundef %3884, ptr noundef %3893)
  br label %3895

3895:                                             ; preds = %3883, %3872, %3857
  %3896 = phi i1 [ false, %3872 ], [ false, %3857 ], [ %3894, %3883 ]
  %3897 = xor i1 %3896, true
  %3898 = xor i1 %3897, true
  %3899 = zext i1 %3898 to i32
  %3900 = sext i32 %3899 to i64
  %3901 = call i64 @llvm.expect.i64(i64 %3900, i64 1)
  %3902 = icmp ne i64 %3901, 0
  br i1 %3902, label %3905, label %3903

3903:                                             ; preds = %3895
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

3904:                                             ; No predecessors!
  br label %3905

3905:                                             ; preds = %3904, %3895
  %3906 = phi i1 [ true, %3895 ], [ false, %3904 ]
  %3907 = zext i1 %3906 to i32
  %3908 = load ptr, ptr %9, align 8, !tbaa !5
  %3909 = getelementptr inbounds %struct.w2c_hermes, ptr %3908, i32 0, i32 7
  %3910 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3909, i32 0, i32 0
  %3911 = load ptr, ptr %3910, align 8, !tbaa !19
  %3912 = load i32, ptr %37, align 4, !tbaa !9
  %3913 = zext i32 %3912 to i64
  %3914 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3911, i64 %3913
  %3915 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3914, i32 0, i32 1
  %3916 = load ptr, ptr %3915, align 8, !tbaa !20
  %3917 = load ptr, ptr %9, align 8, !tbaa !5
  %3918 = getelementptr inbounds %struct.w2c_hermes, ptr %3917, i32 0, i32 7
  %3919 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3918, i32 0, i32 0
  %3920 = load ptr, ptr %3919, align 8, !tbaa !19
  %3921 = load i32, ptr %37, align 4, !tbaa !9
  %3922 = zext i32 %3921 to i64
  %3923 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3920, i64 %3922
  %3924 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %3923, i32 0, i32 2
  %3925 = load ptr, ptr %3924, align 8, !tbaa !23
  %3926 = load i32, ptr %36, align 4, !tbaa !9
  call void %3916(ptr noundef %3925, i32 noundef %3926)
  br label %3927

3927:                                             ; preds = %3905, %3846
  %3928 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3928, ptr %36, align 4, !tbaa !9
  %3929 = load ptr, ptr %9, align 8, !tbaa !5
  %3930 = getelementptr inbounds %struct.w2c_hermes, ptr %3929, i32 0, i32 6
  %3931 = load i32, ptr %36, align 4, !tbaa !9
  %3932 = zext i32 %3931 to i64
  %3933 = add i64 %3932, 2048
  %3934 = call i32 @i32_load(ptr noundef %3930, i64 noundef %3933)
  store i32 %3934, ptr %36, align 4, !tbaa !9
  %3935 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3935, ptr %18, align 4, !tbaa !9
  %3936 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3936, ptr %37, align 4, !tbaa !9
  store i32 2032, ptr %38, align 4, !tbaa !9
  %3937 = load i32, ptr %38, align 4, !tbaa !9
  %3938 = load i32, ptr %37, align 4, !tbaa !9
  %3939 = add i32 %3938, %3937
  store i32 %3939, ptr %37, align 4, !tbaa !9
  %3940 = load i32, ptr %36, align 4, !tbaa !9
  %3941 = load i32, ptr %37, align 4, !tbaa !9
  %3942 = icmp eq i32 %3940, %3941
  %3943 = zext i1 %3942 to i32
  store i32 %3943, ptr %36, align 4, !tbaa !9
  %3944 = load i32, ptr %36, align 4, !tbaa !9
  %3945 = icmp ne i32 %3944, 0
  br i1 %3945, label %3946, label %3962

3946:                                             ; preds = %3927
  %3947 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3947, ptr %36, align 4, !tbaa !9
  store i32 2032, ptr %37, align 4, !tbaa !9
  %3948 = load i32, ptr %37, align 4, !tbaa !9
  %3949 = load i32, ptr %36, align 4, !tbaa !9
  %3950 = add i32 %3949, %3948
  store i32 %3950, ptr %36, align 4, !tbaa !9
  %3951 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3951, ptr %18, align 4, !tbaa !9
  %3952 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %3952, ptr %36, align 4, !tbaa !9
  %3953 = load ptr, ptr %9, align 8, !tbaa !5
  %3954 = getelementptr inbounds %struct.w2c_hermes, ptr %3953, i32 0, i32 6
  %3955 = load i32, ptr %36, align 4, !tbaa !9
  %3956 = zext i32 %3955 to i64
  %3957 = add i64 %3956, 2032
  %3958 = call i32 @i32_load(ptr noundef %3954, i64 noundef %3957)
  store i32 %3958, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %3959 = load i32, ptr %37, align 4, !tbaa !9
  %3960 = load i32, ptr %36, align 4, !tbaa !9
  %3961 = add i32 %3960, %3959
  store i32 %3961, ptr %36, align 4, !tbaa !9
  br label %3981

3962:                                             ; preds = %3927
  %3963 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3963, ptr %36, align 4, !tbaa !9
  %3964 = load i32, ptr %36, align 4, !tbaa !9
  %3965 = icmp ne i32 %3964, 0
  %3966 = xor i1 %3965, true
  %3967 = zext i1 %3966 to i32
  store i32 %3967, ptr %36, align 4, !tbaa !9
  %3968 = load i32, ptr %36, align 4, !tbaa !9
  %3969 = icmp ne i32 %3968, 0
  br i1 %3969, label %3970, label %3971

3970:                                             ; preds = %3962
  br label %4051

3971:                                             ; preds = %3962
  %3972 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3972, ptr %36, align 4, !tbaa !9
  %3973 = load ptr, ptr %9, align 8, !tbaa !5
  %3974 = getelementptr inbounds %struct.w2c_hermes, ptr %3973, i32 0, i32 6
  %3975 = load i32, ptr %36, align 4, !tbaa !9
  %3976 = zext i32 %3975 to i64
  %3977 = call i32 @i32_load(ptr noundef %3974, i64 noundef %3976)
  store i32 %3977, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %3978 = load i32, ptr %37, align 4, !tbaa !9
  %3979 = load i32, ptr %36, align 4, !tbaa !9
  %3980 = add i32 %3979, %3978
  store i32 %3980, ptr %36, align 4, !tbaa !9
  br label %3981

3981:                                             ; preds = %3971, %3946
  %3982 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %3982, ptr %19, align 4, !tbaa !9
  %3983 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %3983, ptr %36, align 4, !tbaa !9
  %3984 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %3984, ptr %37, align 4, !tbaa !9
  %3985 = load ptr, ptr %9, align 8, !tbaa !5
  %3986 = getelementptr inbounds %struct.w2c_hermes, ptr %3985, i32 0, i32 6
  %3987 = load i32, ptr %37, align 4, !tbaa !9
  %3988 = zext i32 %3987 to i64
  %3989 = call i32 @i32_load(ptr noundef %3986, i64 noundef %3988)
  store i32 %3989, ptr %37, align 4, !tbaa !9
  %3990 = load i32, ptr %37, align 4, !tbaa !9
  %3991 = load ptr, ptr %9, align 8, !tbaa !5
  %3992 = getelementptr inbounds %struct.w2c_hermes, ptr %3991, i32 0, i32 7
  %3993 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3992, i32 0, i32 2
  %3994 = load i32, ptr %3993, align 4, !tbaa !18
  %3995 = icmp ult i32 %3990, %3994
  br i1 %3995, label %3996, label %4019

3996:                                             ; preds = %3981
  %3997 = load ptr, ptr %9, align 8, !tbaa !5
  %3998 = getelementptr inbounds %struct.w2c_hermes, ptr %3997, i32 0, i32 7
  %3999 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %3998, i32 0, i32 0
  %4000 = load ptr, ptr %3999, align 8, !tbaa !19
  %4001 = load i32, ptr %37, align 4, !tbaa !9
  %4002 = zext i32 %4001 to i64
  %4003 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4000, i64 %4002
  %4004 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4003, i32 0, i32 1
  %4005 = load ptr, ptr %4004, align 8, !tbaa !20
  %4006 = icmp ne ptr %4005, null
  br i1 %4006, label %4007, label %4019

4007:                                             ; preds = %3996
  %4008 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %4009 = load ptr, ptr %9, align 8, !tbaa !5
  %4010 = getelementptr inbounds %struct.w2c_hermes, ptr %4009, i32 0, i32 7
  %4011 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4010, i32 0, i32 0
  %4012 = load ptr, ptr %4011, align 8, !tbaa !19
  %4013 = load i32, ptr %37, align 4, !tbaa !9
  %4014 = zext i32 %4013 to i64
  %4015 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4012, i64 %4014
  %4016 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4015, i32 0, i32 0
  %4017 = load ptr, ptr %4016, align 8, !tbaa !22
  %4018 = call zeroext i1 @func_types_eq(ptr noundef %4008, ptr noundef %4017)
  br label %4019

4019:                                             ; preds = %4007, %3996, %3981
  %4020 = phi i1 [ false, %3996 ], [ false, %3981 ], [ %4018, %4007 ]
  %4021 = xor i1 %4020, true
  %4022 = xor i1 %4021, true
  %4023 = zext i1 %4022 to i32
  %4024 = sext i32 %4023 to i64
  %4025 = call i64 @llvm.expect.i64(i64 %4024, i64 1)
  %4026 = icmp ne i64 %4025, 0
  br i1 %4026, label %4029, label %4027

4027:                                             ; preds = %4019
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4028:                                             ; No predecessors!
  br label %4029

4029:                                             ; preds = %4028, %4019
  %4030 = phi i1 [ true, %4019 ], [ false, %4028 ]
  %4031 = zext i1 %4030 to i32
  %4032 = load ptr, ptr %9, align 8, !tbaa !5
  %4033 = getelementptr inbounds %struct.w2c_hermes, ptr %4032, i32 0, i32 7
  %4034 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4033, i32 0, i32 0
  %4035 = load ptr, ptr %4034, align 8, !tbaa !19
  %4036 = load i32, ptr %37, align 4, !tbaa !9
  %4037 = zext i32 %4036 to i64
  %4038 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4035, i64 %4037
  %4039 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4038, i32 0, i32 1
  %4040 = load ptr, ptr %4039, align 8, !tbaa !20
  %4041 = load ptr, ptr %9, align 8, !tbaa !5
  %4042 = getelementptr inbounds %struct.w2c_hermes, ptr %4041, i32 0, i32 7
  %4043 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4042, i32 0, i32 0
  %4044 = load ptr, ptr %4043, align 8, !tbaa !19
  %4045 = load i32, ptr %37, align 4, !tbaa !9
  %4046 = zext i32 %4045 to i64
  %4047 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4044, i64 %4046
  %4048 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4047, i32 0, i32 2
  %4049 = load ptr, ptr %4048, align 8, !tbaa !23
  %4050 = load i32, ptr %36, align 4, !tbaa !9
  call void %4040(ptr noundef %4049, i32 noundef %4050)
  br label %4051

4051:                                             ; preds = %4029, %3970
  %4052 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4052, ptr %36, align 4, !tbaa !9
  %4053 = load ptr, ptr %9, align 8, !tbaa !5
  %4054 = getelementptr inbounds %struct.w2c_hermes, ptr %4053, i32 0, i32 6
  %4055 = load i32, ptr %36, align 4, !tbaa !9
  %4056 = zext i32 %4055 to i64
  %4057 = add i64 %4056, 2096
  %4058 = call i32 @i32_load(ptr noundef %4054, i64 noundef %4057)
  store i32 %4058, ptr %36, align 4, !tbaa !9
  %4059 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4059, ptr %18, align 4, !tbaa !9
  %4060 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4060, ptr %37, align 4, !tbaa !9
  store i32 2080, ptr %38, align 4, !tbaa !9
  %4061 = load i32, ptr %38, align 4, !tbaa !9
  %4062 = load i32, ptr %37, align 4, !tbaa !9
  %4063 = add i32 %4062, %4061
  store i32 %4063, ptr %37, align 4, !tbaa !9
  %4064 = load i32, ptr %36, align 4, !tbaa !9
  %4065 = load i32, ptr %37, align 4, !tbaa !9
  %4066 = icmp eq i32 %4064, %4065
  %4067 = zext i1 %4066 to i32
  store i32 %4067, ptr %36, align 4, !tbaa !9
  %4068 = load i32, ptr %36, align 4, !tbaa !9
  %4069 = icmp ne i32 %4068, 0
  br i1 %4069, label %4070, label %4086

4070:                                             ; preds = %4051
  %4071 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4071, ptr %36, align 4, !tbaa !9
  store i32 2080, ptr %37, align 4, !tbaa !9
  %4072 = load i32, ptr %37, align 4, !tbaa !9
  %4073 = load i32, ptr %36, align 4, !tbaa !9
  %4074 = add i32 %4073, %4072
  store i32 %4074, ptr %36, align 4, !tbaa !9
  %4075 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4075, ptr %18, align 4, !tbaa !9
  %4076 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4076, ptr %36, align 4, !tbaa !9
  %4077 = load ptr, ptr %9, align 8, !tbaa !5
  %4078 = getelementptr inbounds %struct.w2c_hermes, ptr %4077, i32 0, i32 6
  %4079 = load i32, ptr %36, align 4, !tbaa !9
  %4080 = zext i32 %4079 to i64
  %4081 = add i64 %4080, 2080
  %4082 = call i32 @i32_load(ptr noundef %4078, i64 noundef %4081)
  store i32 %4082, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %4083 = load i32, ptr %37, align 4, !tbaa !9
  %4084 = load i32, ptr %36, align 4, !tbaa !9
  %4085 = add i32 %4084, %4083
  store i32 %4085, ptr %36, align 4, !tbaa !9
  br label %4105

4086:                                             ; preds = %4051
  %4087 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4087, ptr %36, align 4, !tbaa !9
  %4088 = load i32, ptr %36, align 4, !tbaa !9
  %4089 = icmp ne i32 %4088, 0
  %4090 = xor i1 %4089, true
  %4091 = zext i1 %4090 to i32
  store i32 %4091, ptr %36, align 4, !tbaa !9
  %4092 = load i32, ptr %36, align 4, !tbaa !9
  %4093 = icmp ne i32 %4092, 0
  br i1 %4093, label %4094, label %4095

4094:                                             ; preds = %4086
  br label %4175

4095:                                             ; preds = %4086
  %4096 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4096, ptr %36, align 4, !tbaa !9
  %4097 = load ptr, ptr %9, align 8, !tbaa !5
  %4098 = getelementptr inbounds %struct.w2c_hermes, ptr %4097, i32 0, i32 6
  %4099 = load i32, ptr %36, align 4, !tbaa !9
  %4100 = zext i32 %4099 to i64
  %4101 = call i32 @i32_load(ptr noundef %4098, i64 noundef %4100)
  store i32 %4101, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %4102 = load i32, ptr %37, align 4, !tbaa !9
  %4103 = load i32, ptr %36, align 4, !tbaa !9
  %4104 = add i32 %4103, %4102
  store i32 %4104, ptr %36, align 4, !tbaa !9
  br label %4105

4105:                                             ; preds = %4095, %4070
  %4106 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4106, ptr %19, align 4, !tbaa !9
  %4107 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4107, ptr %36, align 4, !tbaa !9
  %4108 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4108, ptr %37, align 4, !tbaa !9
  %4109 = load ptr, ptr %9, align 8, !tbaa !5
  %4110 = getelementptr inbounds %struct.w2c_hermes, ptr %4109, i32 0, i32 6
  %4111 = load i32, ptr %37, align 4, !tbaa !9
  %4112 = zext i32 %4111 to i64
  %4113 = call i32 @i32_load(ptr noundef %4110, i64 noundef %4112)
  store i32 %4113, ptr %37, align 4, !tbaa !9
  %4114 = load i32, ptr %37, align 4, !tbaa !9
  %4115 = load ptr, ptr %9, align 8, !tbaa !5
  %4116 = getelementptr inbounds %struct.w2c_hermes, ptr %4115, i32 0, i32 7
  %4117 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4116, i32 0, i32 2
  %4118 = load i32, ptr %4117, align 4, !tbaa !18
  %4119 = icmp ult i32 %4114, %4118
  br i1 %4119, label %4120, label %4143

4120:                                             ; preds = %4105
  %4121 = load ptr, ptr %9, align 8, !tbaa !5
  %4122 = getelementptr inbounds %struct.w2c_hermes, ptr %4121, i32 0, i32 7
  %4123 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4122, i32 0, i32 0
  %4124 = load ptr, ptr %4123, align 8, !tbaa !19
  %4125 = load i32, ptr %37, align 4, !tbaa !9
  %4126 = zext i32 %4125 to i64
  %4127 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4124, i64 %4126
  %4128 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4127, i32 0, i32 1
  %4129 = load ptr, ptr %4128, align 8, !tbaa !20
  %4130 = icmp ne ptr %4129, null
  br i1 %4130, label %4131, label %4143

4131:                                             ; preds = %4120
  %4132 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %4133 = load ptr, ptr %9, align 8, !tbaa !5
  %4134 = getelementptr inbounds %struct.w2c_hermes, ptr %4133, i32 0, i32 7
  %4135 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4134, i32 0, i32 0
  %4136 = load ptr, ptr %4135, align 8, !tbaa !19
  %4137 = load i32, ptr %37, align 4, !tbaa !9
  %4138 = zext i32 %4137 to i64
  %4139 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4136, i64 %4138
  %4140 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4139, i32 0, i32 0
  %4141 = load ptr, ptr %4140, align 8, !tbaa !22
  %4142 = call zeroext i1 @func_types_eq(ptr noundef %4132, ptr noundef %4141)
  br label %4143

4143:                                             ; preds = %4131, %4120, %4105
  %4144 = phi i1 [ false, %4120 ], [ false, %4105 ], [ %4142, %4131 ]
  %4145 = xor i1 %4144, true
  %4146 = xor i1 %4145, true
  %4147 = zext i1 %4146 to i32
  %4148 = sext i32 %4147 to i64
  %4149 = call i64 @llvm.expect.i64(i64 %4148, i64 1)
  %4150 = icmp ne i64 %4149, 0
  br i1 %4150, label %4153, label %4151

4151:                                             ; preds = %4143
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4152:                                             ; No predecessors!
  br label %4153

4153:                                             ; preds = %4152, %4143
  %4154 = phi i1 [ true, %4143 ], [ false, %4152 ]
  %4155 = zext i1 %4154 to i32
  %4156 = load ptr, ptr %9, align 8, !tbaa !5
  %4157 = getelementptr inbounds %struct.w2c_hermes, ptr %4156, i32 0, i32 7
  %4158 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4157, i32 0, i32 0
  %4159 = load ptr, ptr %4158, align 8, !tbaa !19
  %4160 = load i32, ptr %37, align 4, !tbaa !9
  %4161 = zext i32 %4160 to i64
  %4162 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4159, i64 %4161
  %4163 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4162, i32 0, i32 1
  %4164 = load ptr, ptr %4163, align 8, !tbaa !20
  %4165 = load ptr, ptr %9, align 8, !tbaa !5
  %4166 = getelementptr inbounds %struct.w2c_hermes, ptr %4165, i32 0, i32 7
  %4167 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4166, i32 0, i32 0
  %4168 = load ptr, ptr %4167, align 8, !tbaa !19
  %4169 = load i32, ptr %37, align 4, !tbaa !9
  %4170 = zext i32 %4169 to i64
  %4171 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4168, i64 %4170
  %4172 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4171, i32 0, i32 2
  %4173 = load ptr, ptr %4172, align 8, !tbaa !23
  %4174 = load i32, ptr %36, align 4, !tbaa !9
  call void %4164(ptr noundef %4173, i32 noundef %4174)
  br label %4175

4175:                                             ; preds = %4153, %4094
  %4176 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4176, ptr %36, align 4, !tbaa !9
  %4177 = load ptr, ptr %9, align 8, !tbaa !5
  %4178 = getelementptr inbounds %struct.w2c_hermes, ptr %4177, i32 0, i32 6
  %4179 = load i32, ptr %36, align 4, !tbaa !9
  %4180 = zext i32 %4179 to i64
  %4181 = add i64 %4180, 2072
  %4182 = call i32 @i32_load(ptr noundef %4178, i64 noundef %4181)
  store i32 %4182, ptr %36, align 4, !tbaa !9
  %4183 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4183, ptr %18, align 4, !tbaa !9
  %4184 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4184, ptr %37, align 4, !tbaa !9
  store i32 2056, ptr %38, align 4, !tbaa !9
  %4185 = load i32, ptr %38, align 4, !tbaa !9
  %4186 = load i32, ptr %37, align 4, !tbaa !9
  %4187 = add i32 %4186, %4185
  store i32 %4187, ptr %37, align 4, !tbaa !9
  %4188 = load i32, ptr %36, align 4, !tbaa !9
  %4189 = load i32, ptr %37, align 4, !tbaa !9
  %4190 = icmp eq i32 %4188, %4189
  %4191 = zext i1 %4190 to i32
  store i32 %4191, ptr %36, align 4, !tbaa !9
  %4192 = load i32, ptr %36, align 4, !tbaa !9
  %4193 = icmp ne i32 %4192, 0
  br i1 %4193, label %4194, label %4210

4194:                                             ; preds = %4175
  %4195 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4195, ptr %36, align 4, !tbaa !9
  store i32 2056, ptr %37, align 4, !tbaa !9
  %4196 = load i32, ptr %37, align 4, !tbaa !9
  %4197 = load i32, ptr %36, align 4, !tbaa !9
  %4198 = add i32 %4197, %4196
  store i32 %4198, ptr %36, align 4, !tbaa !9
  %4199 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4199, ptr %18, align 4, !tbaa !9
  %4200 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4200, ptr %36, align 4, !tbaa !9
  %4201 = load ptr, ptr %9, align 8, !tbaa !5
  %4202 = getelementptr inbounds %struct.w2c_hermes, ptr %4201, i32 0, i32 6
  %4203 = load i32, ptr %36, align 4, !tbaa !9
  %4204 = zext i32 %4203 to i64
  %4205 = add i64 %4204, 2056
  %4206 = call i32 @i32_load(ptr noundef %4202, i64 noundef %4205)
  store i32 %4206, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %4207 = load i32, ptr %37, align 4, !tbaa !9
  %4208 = load i32, ptr %36, align 4, !tbaa !9
  %4209 = add i32 %4208, %4207
  store i32 %4209, ptr %36, align 4, !tbaa !9
  br label %4229

4210:                                             ; preds = %4175
  %4211 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4211, ptr %36, align 4, !tbaa !9
  %4212 = load i32, ptr %36, align 4, !tbaa !9
  %4213 = icmp ne i32 %4212, 0
  %4214 = xor i1 %4213, true
  %4215 = zext i1 %4214 to i32
  store i32 %4215, ptr %36, align 4, !tbaa !9
  %4216 = load i32, ptr %36, align 4, !tbaa !9
  %4217 = icmp ne i32 %4216, 0
  br i1 %4217, label %4218, label %4219

4218:                                             ; preds = %4210
  br label %4299

4219:                                             ; preds = %4210
  %4220 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4220, ptr %36, align 4, !tbaa !9
  %4221 = load ptr, ptr %9, align 8, !tbaa !5
  %4222 = getelementptr inbounds %struct.w2c_hermes, ptr %4221, i32 0, i32 6
  %4223 = load i32, ptr %36, align 4, !tbaa !9
  %4224 = zext i32 %4223 to i64
  %4225 = call i32 @i32_load(ptr noundef %4222, i64 noundef %4224)
  store i32 %4225, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %4226 = load i32, ptr %37, align 4, !tbaa !9
  %4227 = load i32, ptr %36, align 4, !tbaa !9
  %4228 = add i32 %4227, %4226
  store i32 %4228, ptr %36, align 4, !tbaa !9
  br label %4229

4229:                                             ; preds = %4219, %4194
  %4230 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4230, ptr %19, align 4, !tbaa !9
  %4231 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4231, ptr %36, align 4, !tbaa !9
  %4232 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4232, ptr %37, align 4, !tbaa !9
  %4233 = load ptr, ptr %9, align 8, !tbaa !5
  %4234 = getelementptr inbounds %struct.w2c_hermes, ptr %4233, i32 0, i32 6
  %4235 = load i32, ptr %37, align 4, !tbaa !9
  %4236 = zext i32 %4235 to i64
  %4237 = call i32 @i32_load(ptr noundef %4234, i64 noundef %4236)
  store i32 %4237, ptr %37, align 4, !tbaa !9
  %4238 = load i32, ptr %37, align 4, !tbaa !9
  %4239 = load ptr, ptr %9, align 8, !tbaa !5
  %4240 = getelementptr inbounds %struct.w2c_hermes, ptr %4239, i32 0, i32 7
  %4241 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4240, i32 0, i32 2
  %4242 = load i32, ptr %4241, align 4, !tbaa !18
  %4243 = icmp ult i32 %4238, %4242
  br i1 %4243, label %4244, label %4267

4244:                                             ; preds = %4229
  %4245 = load ptr, ptr %9, align 8, !tbaa !5
  %4246 = getelementptr inbounds %struct.w2c_hermes, ptr %4245, i32 0, i32 7
  %4247 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4246, i32 0, i32 0
  %4248 = load ptr, ptr %4247, align 8, !tbaa !19
  %4249 = load i32, ptr %37, align 4, !tbaa !9
  %4250 = zext i32 %4249 to i64
  %4251 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4248, i64 %4250
  %4252 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4251, i32 0, i32 1
  %4253 = load ptr, ptr %4252, align 8, !tbaa !20
  %4254 = icmp ne ptr %4253, null
  br i1 %4254, label %4255, label %4267

4255:                                             ; preds = %4244
  %4256 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %4257 = load ptr, ptr %9, align 8, !tbaa !5
  %4258 = getelementptr inbounds %struct.w2c_hermes, ptr %4257, i32 0, i32 7
  %4259 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4258, i32 0, i32 0
  %4260 = load ptr, ptr %4259, align 8, !tbaa !19
  %4261 = load i32, ptr %37, align 4, !tbaa !9
  %4262 = zext i32 %4261 to i64
  %4263 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4260, i64 %4262
  %4264 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4263, i32 0, i32 0
  %4265 = load ptr, ptr %4264, align 8, !tbaa !22
  %4266 = call zeroext i1 @func_types_eq(ptr noundef %4256, ptr noundef %4265)
  br label %4267

4267:                                             ; preds = %4255, %4244, %4229
  %4268 = phi i1 [ false, %4244 ], [ false, %4229 ], [ %4266, %4255 ]
  %4269 = xor i1 %4268, true
  %4270 = xor i1 %4269, true
  %4271 = zext i1 %4270 to i32
  %4272 = sext i32 %4271 to i64
  %4273 = call i64 @llvm.expect.i64(i64 %4272, i64 1)
  %4274 = icmp ne i64 %4273, 0
  br i1 %4274, label %4277, label %4275

4275:                                             ; preds = %4267
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4276:                                             ; No predecessors!
  br label %4277

4277:                                             ; preds = %4276, %4267
  %4278 = phi i1 [ true, %4267 ], [ false, %4276 ]
  %4279 = zext i1 %4278 to i32
  %4280 = load ptr, ptr %9, align 8, !tbaa !5
  %4281 = getelementptr inbounds %struct.w2c_hermes, ptr %4280, i32 0, i32 7
  %4282 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4281, i32 0, i32 0
  %4283 = load ptr, ptr %4282, align 8, !tbaa !19
  %4284 = load i32, ptr %37, align 4, !tbaa !9
  %4285 = zext i32 %4284 to i64
  %4286 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4283, i64 %4285
  %4287 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4286, i32 0, i32 1
  %4288 = load ptr, ptr %4287, align 8, !tbaa !20
  %4289 = load ptr, ptr %9, align 8, !tbaa !5
  %4290 = getelementptr inbounds %struct.w2c_hermes, ptr %4289, i32 0, i32 7
  %4291 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4290, i32 0, i32 0
  %4292 = load ptr, ptr %4291, align 8, !tbaa !19
  %4293 = load i32, ptr %37, align 4, !tbaa !9
  %4294 = zext i32 %4293 to i64
  %4295 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4292, i64 %4294
  %4296 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4295, i32 0, i32 2
  %4297 = load ptr, ptr %4296, align 8, !tbaa !23
  %4298 = load i32, ptr %36, align 4, !tbaa !9
  call void %4288(ptr noundef %4297, i32 noundef %4298)
  br label %4299

4299:                                             ; preds = %4277, %4218
  %4300 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4300, ptr %36, align 4, !tbaa !9
  %4301 = load ptr, ptr %9, align 8, !tbaa !5
  %4302 = getelementptr inbounds %struct.w2c_hermes, ptr %4301, i32 0, i32 6
  %4303 = load i32, ptr %36, align 4, !tbaa !9
  %4304 = zext i32 %4303 to i64
  %4305 = add i64 %4304, 552
  %4306 = call i32 @i32_load8_u(ptr noundef %4302, i64 noundef %4305)
  store i32 %4306, ptr %36, align 4, !tbaa !9
  %4307 = load i32, ptr %36, align 4, !tbaa !9
  %4308 = icmp ne i32 %4307, 0
  br i1 %4308, label %4309, label %4310

4309:                                             ; preds = %4299
  br label %5112

4310:                                             ; preds = %4299
  %4311 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4311, ptr %36, align 4, !tbaa !9
  %4312 = load ptr, ptr %9, align 8, !tbaa !5
  %4313 = getelementptr inbounds %struct.w2c_hermes, ptr %4312, i32 0, i32 6
  %4314 = load i32, ptr %36, align 4, !tbaa !9
  %4315 = zext i32 %4314 to i64
  %4316 = add i64 %4315, 2208
  %4317 = call i32 @i32_load(ptr noundef %4313, i64 noundef %4316)
  store i32 %4317, ptr %36, align 4, !tbaa !9
  %4318 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4318, ptr %18, align 4, !tbaa !9
  %4319 = load i32, ptr %36, align 4, !tbaa !9
  %4320 = icmp ne i32 %4319, 0
  %4321 = xor i1 %4320, true
  %4322 = zext i1 %4321 to i32
  store i32 %4322, ptr %36, align 4, !tbaa !9
  %4323 = load i32, ptr %36, align 4, !tbaa !9
  %4324 = icmp ne i32 %4323, 0
  br i1 %4324, label %4325, label %4340

4325:                                             ; preds = %4310
  %4326 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4326, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %4327 = load ptr, ptr %9, align 8, !tbaa !5
  %4328 = getelementptr inbounds %struct.w2c_hermes, ptr %4327, i32 0, i32 6
  %4329 = load i32, ptr %36, align 4, !tbaa !9
  %4330 = zext i32 %4329 to i64
  %4331 = add i64 %4330, 2000
  %4332 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4328, i64 noundef %4331, i32 noundef %4332)
  %4333 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4333, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %4334 = load ptr, ptr %9, align 8, !tbaa !5
  %4335 = getelementptr inbounds %struct.w2c_hermes, ptr %4334, i32 0, i32 6
  %4336 = load i32, ptr %36, align 4, !tbaa !9
  %4337 = zext i32 %4336 to i64
  %4338 = add i64 %4337, 1976
  %4339 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4335, i64 noundef %4338, i32 noundef %4339)
  br label %4698

4340:                                             ; preds = %4310
  %4341 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4341, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %4342 = load i32, ptr %37, align 4, !tbaa !9
  %4343 = load i32, ptr %36, align 4, !tbaa !9
  %4344 = add i32 %4343, %4342
  store i32 %4344, ptr %36, align 4, !tbaa !9
  %4345 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4345, ptr %37, align 4, !tbaa !9
  %4346 = load i32, ptr %36, align 4, !tbaa !9
  %4347 = load i32, ptr %37, align 4, !tbaa !9
  %4348 = icmp eq i32 %4346, %4347
  %4349 = zext i1 %4348 to i32
  store i32 %4349, ptr %36, align 4, !tbaa !9
  %4350 = load i32, ptr %36, align 4, !tbaa !9
  %4351 = icmp ne i32 %4350, 0
  br i1 %4351, label %4352, label %4455

4352:                                             ; preds = %4340
  %4353 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4353, ptr %36, align 4, !tbaa !9
  %4354 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4354, ptr %37, align 4, !tbaa !9
  store i32 1960, ptr %38, align 4, !tbaa !9
  %4355 = load i32, ptr %38, align 4, !tbaa !9
  %4356 = load i32, ptr %37, align 4, !tbaa !9
  %4357 = add i32 %4356, %4355
  store i32 %4357, ptr %37, align 4, !tbaa !9
  %4358 = load ptr, ptr %9, align 8, !tbaa !5
  %4359 = getelementptr inbounds %struct.w2c_hermes, ptr %4358, i32 0, i32 6
  %4360 = load i32, ptr %36, align 4, !tbaa !9
  %4361 = zext i32 %4360 to i64
  %4362 = add i64 %4361, 1976
  %4363 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4359, i64 noundef %4362, i32 noundef %4363)
  %4364 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4364, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %4365 = load i32, ptr %37, align 4, !tbaa !9
  %4366 = load i32, ptr %36, align 4, !tbaa !9
  %4367 = add i32 %4366, %4365
  store i32 %4367, ptr %36, align 4, !tbaa !9
  %4368 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4368, ptr %37, align 4, !tbaa !9
  store i32 1960, ptr %38, align 4, !tbaa !9
  %4369 = load i32, ptr %38, align 4, !tbaa !9
  %4370 = load i32, ptr %37, align 4, !tbaa !9
  %4371 = add i32 %4370, %4369
  store i32 %4371, ptr %37, align 4, !tbaa !9
  %4372 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4372, ptr %38, align 4, !tbaa !9
  %4373 = load ptr, ptr %9, align 8, !tbaa !5
  %4374 = getelementptr inbounds %struct.w2c_hermes, ptr %4373, i32 0, i32 6
  %4375 = load i32, ptr %38, align 4, !tbaa !9
  %4376 = zext i32 %4375 to i64
  %4377 = add i64 %4376, 2192
  %4378 = call i32 @i32_load(ptr noundef %4374, i64 noundef %4377)
  store i32 %4378, ptr %38, align 4, !tbaa !9
  %4379 = load ptr, ptr %9, align 8, !tbaa !5
  %4380 = getelementptr inbounds %struct.w2c_hermes, ptr %4379, i32 0, i32 6
  %4381 = load i32, ptr %38, align 4, !tbaa !9
  %4382 = zext i32 %4381 to i64
  %4383 = add i64 %4382, 12
  %4384 = call i32 @i32_load(ptr noundef %4380, i64 noundef %4383)
  store i32 %4384, ptr %38, align 4, !tbaa !9
  %4385 = load i32, ptr %38, align 4, !tbaa !9
  %4386 = load ptr, ptr %9, align 8, !tbaa !5
  %4387 = getelementptr inbounds %struct.w2c_hermes, ptr %4386, i32 0, i32 7
  %4388 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4387, i32 0, i32 2
  %4389 = load i32, ptr %4388, align 4, !tbaa !18
  %4390 = icmp ult i32 %4385, %4389
  br i1 %4390, label %4391, label %4414

4391:                                             ; preds = %4352
  %4392 = load ptr, ptr %9, align 8, !tbaa !5
  %4393 = getelementptr inbounds %struct.w2c_hermes, ptr %4392, i32 0, i32 7
  %4394 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4393, i32 0, i32 0
  %4395 = load ptr, ptr %4394, align 8, !tbaa !19
  %4396 = load i32, ptr %38, align 4, !tbaa !9
  %4397 = zext i32 %4396 to i64
  %4398 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4395, i64 %4397
  %4399 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4398, i32 0, i32 1
  %4400 = load ptr, ptr %4399, align 8, !tbaa !20
  %4401 = icmp ne ptr %4400, null
  br i1 %4401, label %4402, label %4414

4402:                                             ; preds = %4391
  %4403 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %4404 = load ptr, ptr %9, align 8, !tbaa !5
  %4405 = getelementptr inbounds %struct.w2c_hermes, ptr %4404, i32 0, i32 7
  %4406 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4405, i32 0, i32 0
  %4407 = load ptr, ptr %4406, align 8, !tbaa !19
  %4408 = load i32, ptr %38, align 4, !tbaa !9
  %4409 = zext i32 %4408 to i64
  %4410 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4407, i64 %4409
  %4411 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4410, i32 0, i32 0
  %4412 = load ptr, ptr %4411, align 8, !tbaa !22
  %4413 = call zeroext i1 @func_types_eq(ptr noundef %4403, ptr noundef %4412)
  br label %4414

4414:                                             ; preds = %4402, %4391, %4352
  %4415 = phi i1 [ false, %4391 ], [ false, %4352 ], [ %4413, %4402 ]
  %4416 = xor i1 %4415, true
  %4417 = xor i1 %4416, true
  %4418 = zext i1 %4417 to i32
  %4419 = sext i32 %4418 to i64
  %4420 = call i64 @llvm.expect.i64(i64 %4419, i64 1)
  %4421 = icmp ne i64 %4420, 0
  br i1 %4421, label %4424, label %4422

4422:                                             ; preds = %4414
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4423:                                             ; No predecessors!
  br label %4424

4424:                                             ; preds = %4423, %4414
  %4425 = phi i1 [ true, %4414 ], [ false, %4423 ]
  %4426 = zext i1 %4425 to i32
  %4427 = load ptr, ptr %9, align 8, !tbaa !5
  %4428 = getelementptr inbounds %struct.w2c_hermes, ptr %4427, i32 0, i32 7
  %4429 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4428, i32 0, i32 0
  %4430 = load ptr, ptr %4429, align 8, !tbaa !19
  %4431 = load i32, ptr %38, align 4, !tbaa !9
  %4432 = zext i32 %4431 to i64
  %4433 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4430, i64 %4432
  %4434 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4433, i32 0, i32 1
  %4435 = load ptr, ptr %4434, align 8, !tbaa !20
  %4436 = load ptr, ptr %9, align 8, !tbaa !5
  %4437 = getelementptr inbounds %struct.w2c_hermes, ptr %4436, i32 0, i32 7
  %4438 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4437, i32 0, i32 0
  %4439 = load ptr, ptr %4438, align 8, !tbaa !19
  %4440 = load i32, ptr %38, align 4, !tbaa !9
  %4441 = zext i32 %4440 to i64
  %4442 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4439, i64 %4441
  %4443 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4442, i32 0, i32 2
  %4444 = load ptr, ptr %4443, align 8, !tbaa !23
  %4445 = load i32, ptr %36, align 4, !tbaa !9
  %4446 = load i32, ptr %37, align 4, !tbaa !9
  call void %4435(ptr noundef %4444, i32 noundef %4445, i32 noundef %4446)
  %4447 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4447, ptr %36, align 4, !tbaa !9
  %4448 = load ptr, ptr %9, align 8, !tbaa !5
  %4449 = getelementptr inbounds %struct.w2c_hermes, ptr %4448, i32 0, i32 6
  %4450 = load i32, ptr %36, align 4, !tbaa !9
  %4451 = zext i32 %4450 to i64
  %4452 = add i64 %4451, 1976
  %4453 = call i32 @i32_load(ptr noundef %4449, i64 noundef %4452)
  store i32 %4453, ptr %36, align 4, !tbaa !9
  %4454 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4454, ptr %18, align 4, !tbaa !9
  br label %4539

4455:                                             ; preds = %4340
  %4456 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4456, ptr %36, align 4, !tbaa !9
  %4457 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4457, ptr %37, align 4, !tbaa !9
  %4458 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4458, ptr %38, align 4, !tbaa !9
  %4459 = load ptr, ptr %9, align 8, !tbaa !5
  %4460 = getelementptr inbounds %struct.w2c_hermes, ptr %4459, i32 0, i32 6
  %4461 = load i32, ptr %38, align 4, !tbaa !9
  %4462 = zext i32 %4461 to i64
  %4463 = call i32 @i32_load(ptr noundef %4460, i64 noundef %4462)
  store i32 %4463, ptr %38, align 4, !tbaa !9
  %4464 = load ptr, ptr %9, align 8, !tbaa !5
  %4465 = getelementptr inbounds %struct.w2c_hermes, ptr %4464, i32 0, i32 6
  %4466 = load i32, ptr %38, align 4, !tbaa !9
  %4467 = zext i32 %4466 to i64
  %4468 = add i64 %4467, 8
  %4469 = call i32 @i32_load(ptr noundef %4465, i64 noundef %4468)
  store i32 %4469, ptr %38, align 4, !tbaa !9
  %4470 = load i32, ptr %38, align 4, !tbaa !9
  %4471 = load ptr, ptr %9, align 8, !tbaa !5
  %4472 = getelementptr inbounds %struct.w2c_hermes, ptr %4471, i32 0, i32 7
  %4473 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4472, i32 0, i32 2
  %4474 = load i32, ptr %4473, align 4, !tbaa !18
  %4475 = icmp ult i32 %4470, %4474
  br i1 %4475, label %4476, label %4499

4476:                                             ; preds = %4455
  %4477 = load ptr, ptr %9, align 8, !tbaa !5
  %4478 = getelementptr inbounds %struct.w2c_hermes, ptr %4477, i32 0, i32 7
  %4479 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4478, i32 0, i32 0
  %4480 = load ptr, ptr %4479, align 8, !tbaa !19
  %4481 = load i32, ptr %38, align 4, !tbaa !9
  %4482 = zext i32 %4481 to i64
  %4483 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4480, i64 %4482
  %4484 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4483, i32 0, i32 1
  %4485 = load ptr, ptr %4484, align 8, !tbaa !20
  %4486 = icmp ne ptr %4485, null
  br i1 %4486, label %4487, label %4499

4487:                                             ; preds = %4476
  %4488 = load ptr, ptr @w2c_hermes_t2, align 8, !tbaa !5
  %4489 = load ptr, ptr %9, align 8, !tbaa !5
  %4490 = getelementptr inbounds %struct.w2c_hermes, ptr %4489, i32 0, i32 7
  %4491 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4490, i32 0, i32 0
  %4492 = load ptr, ptr %4491, align 8, !tbaa !19
  %4493 = load i32, ptr %38, align 4, !tbaa !9
  %4494 = zext i32 %4493 to i64
  %4495 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4492, i64 %4494
  %4496 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4495, i32 0, i32 0
  %4497 = load ptr, ptr %4496, align 8, !tbaa !22
  %4498 = call zeroext i1 @func_types_eq(ptr noundef %4488, ptr noundef %4497)
  br label %4499

4499:                                             ; preds = %4487, %4476, %4455
  %4500 = phi i1 [ false, %4476 ], [ false, %4455 ], [ %4498, %4487 ]
  %4501 = xor i1 %4500, true
  %4502 = xor i1 %4501, true
  %4503 = zext i1 %4502 to i32
  %4504 = sext i32 %4503 to i64
  %4505 = call i64 @llvm.expect.i64(i64 %4504, i64 1)
  %4506 = icmp ne i64 %4505, 0
  br i1 %4506, label %4509, label %4507

4507:                                             ; preds = %4499
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4508:                                             ; No predecessors!
  br label %4509

4509:                                             ; preds = %4508, %4499
  %4510 = phi i1 [ true, %4499 ], [ false, %4508 ]
  %4511 = zext i1 %4510 to i32
  %4512 = load ptr, ptr %9, align 8, !tbaa !5
  %4513 = getelementptr inbounds %struct.w2c_hermes, ptr %4512, i32 0, i32 7
  %4514 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4513, i32 0, i32 0
  %4515 = load ptr, ptr %4514, align 8, !tbaa !19
  %4516 = load i32, ptr %38, align 4, !tbaa !9
  %4517 = zext i32 %4516 to i64
  %4518 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4515, i64 %4517
  %4519 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4518, i32 0, i32 1
  %4520 = load ptr, ptr %4519, align 8, !tbaa !20
  %4521 = load ptr, ptr %9, align 8, !tbaa !5
  %4522 = getelementptr inbounds %struct.w2c_hermes, ptr %4521, i32 0, i32 7
  %4523 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4522, i32 0, i32 0
  %4524 = load ptr, ptr %4523, align 8, !tbaa !19
  %4525 = load i32, ptr %38, align 4, !tbaa !9
  %4526 = zext i32 %4525 to i64
  %4527 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4524, i64 %4526
  %4528 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4527, i32 0, i32 2
  %4529 = load ptr, ptr %4528, align 8, !tbaa !23
  %4530 = load i32, ptr %37, align 4, !tbaa !9
  %4531 = call i32 %4520(ptr noundef %4529, i32 noundef %4530)
  store i32 %4531, ptr %37, align 4, !tbaa !9
  %4532 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %4532, ptr %18, align 4, !tbaa !9
  %4533 = load ptr, ptr %9, align 8, !tbaa !5
  %4534 = getelementptr inbounds %struct.w2c_hermes, ptr %4533, i32 0, i32 6
  %4535 = load i32, ptr %36, align 4, !tbaa !9
  %4536 = zext i32 %4535 to i64
  %4537 = add i64 %4536, 1976
  %4538 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4534, i64 noundef %4537, i32 noundef %4538)
  br label %4539

4539:                                             ; preds = %4509, %4424
  %4540 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4540, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %4541 = load ptr, ptr %9, align 8, !tbaa !5
  %4542 = getelementptr inbounds %struct.w2c_hermes, ptr %4541, i32 0, i32 6
  %4543 = load i32, ptr %36, align 4, !tbaa !9
  %4544 = zext i32 %4543 to i64
  %4545 = add i64 %4544, 2000
  %4546 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4542, i64 noundef %4545, i32 noundef %4546)
  %4547 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4547, ptr %36, align 4, !tbaa !9
  %4548 = load i32, ptr %36, align 4, !tbaa !9
  %4549 = icmp ne i32 %4548, 0
  %4550 = xor i1 %4549, true
  %4551 = zext i1 %4550 to i32
  store i32 %4551, ptr %36, align 4, !tbaa !9
  %4552 = load i32, ptr %36, align 4, !tbaa !9
  %4553 = icmp ne i32 %4552, 0
  br i1 %4553, label %4554, label %4555

4554:                                             ; preds = %4539
  br label %4698

4555:                                             ; preds = %4539
  store i32 32, ptr %36, align 4, !tbaa !9
  %4556 = load ptr, ptr %9, align 8, !tbaa !5
  %4557 = load i32, ptr %36, align 4, !tbaa !9
  %4558 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %4556, i32 noundef %4557)
  store i32 %4558, ptr %36, align 4, !tbaa !9
  %4559 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4559, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %4560 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %4560, ptr %14, align 4, !tbaa !9
  store i32 271268, ptr %38, align 4, !tbaa !9
  %4561 = load i32, ptr %38, align 4, !tbaa !9
  %4562 = load i32, ptr %37, align 4, !tbaa !9
  %4563 = add i32 %4562, %4561
  store i32 %4563, ptr %37, align 4, !tbaa !9
  %4564 = load ptr, ptr %9, align 8, !tbaa !5
  %4565 = getelementptr inbounds %struct.w2c_hermes, ptr %4564, i32 0, i32 6
  %4566 = load i32, ptr %36, align 4, !tbaa !9
  %4567 = zext i32 %4566 to i64
  %4568 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4565, i64 noundef %4567, i32 noundef %4568)
  %4569 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4569, ptr %36, align 4, !tbaa !9
  store i32 1960, ptr %37, align 4, !tbaa !9
  %4570 = load i32, ptr %37, align 4, !tbaa !9
  %4571 = load i32, ptr %36, align 4, !tbaa !9
  %4572 = add i32 %4571, %4570
  store i32 %4572, ptr %36, align 4, !tbaa !9
  %4573 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4573, ptr %37, align 4, !tbaa !9
  %4574 = load i32, ptr %36, align 4, !tbaa !9
  %4575 = load i32, ptr %37, align 4, !tbaa !9
  %4576 = icmp eq i32 %4574, %4575
  %4577 = zext i1 %4576 to i32
  store i32 %4577, ptr %36, align 4, !tbaa !9
  %4578 = load i32, ptr %36, align 4, !tbaa !9
  %4579 = icmp ne i32 %4578, 0
  br i1 %4579, label %4580, label %4673

4580:                                             ; preds = %4555
  %4581 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4581, ptr %36, align 4, !tbaa !9
  %4582 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4582, ptr %37, align 4, !tbaa !9
  store i32 8, ptr %38, align 4, !tbaa !9
  %4583 = load i32, ptr %38, align 4, !tbaa !9
  %4584 = load i32, ptr %37, align 4, !tbaa !9
  %4585 = add i32 %4584, %4583
  store i32 %4585, ptr %37, align 4, !tbaa !9
  %4586 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %4586, ptr %18, align 4, !tbaa !9
  %4587 = load ptr, ptr %9, align 8, !tbaa !5
  %4588 = getelementptr inbounds %struct.w2c_hermes, ptr %4587, i32 0, i32 6
  %4589 = load i32, ptr %36, align 4, !tbaa !9
  %4590 = zext i32 %4589 to i64
  %4591 = add i64 %4590, 24
  %4592 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4588, i64 noundef %4591, i32 noundef %4592)
  %4593 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4593, ptr %36, align 4, !tbaa !9
  store i32 1960, ptr %37, align 4, !tbaa !9
  %4594 = load i32, ptr %37, align 4, !tbaa !9
  %4595 = load i32, ptr %36, align 4, !tbaa !9
  %4596 = add i32 %4595, %4594
  store i32 %4596, ptr %36, align 4, !tbaa !9
  %4597 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4597, ptr %37, align 4, !tbaa !9
  %4598 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4598, ptr %38, align 4, !tbaa !9
  %4599 = load ptr, ptr %9, align 8, !tbaa !5
  %4600 = getelementptr inbounds %struct.w2c_hermes, ptr %4599, i32 0, i32 6
  %4601 = load i32, ptr %38, align 4, !tbaa !9
  %4602 = zext i32 %4601 to i64
  %4603 = add i64 %4602, 1960
  %4604 = call i32 @i32_load(ptr noundef %4600, i64 noundef %4603)
  store i32 %4604, ptr %38, align 4, !tbaa !9
  %4605 = load ptr, ptr %9, align 8, !tbaa !5
  %4606 = getelementptr inbounds %struct.w2c_hermes, ptr %4605, i32 0, i32 6
  %4607 = load i32, ptr %38, align 4, !tbaa !9
  %4608 = zext i32 %4607 to i64
  %4609 = add i64 %4608, 12
  %4610 = call i32 @i32_load(ptr noundef %4606, i64 noundef %4609)
  store i32 %4610, ptr %38, align 4, !tbaa !9
  %4611 = load i32, ptr %38, align 4, !tbaa !9
  %4612 = load ptr, ptr %9, align 8, !tbaa !5
  %4613 = getelementptr inbounds %struct.w2c_hermes, ptr %4612, i32 0, i32 7
  %4614 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4613, i32 0, i32 2
  %4615 = load i32, ptr %4614, align 4, !tbaa !18
  %4616 = icmp ult i32 %4611, %4615
  br i1 %4616, label %4617, label %4640

4617:                                             ; preds = %4580
  %4618 = load ptr, ptr %9, align 8, !tbaa !5
  %4619 = getelementptr inbounds %struct.w2c_hermes, ptr %4618, i32 0, i32 7
  %4620 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4619, i32 0, i32 0
  %4621 = load ptr, ptr %4620, align 8, !tbaa !19
  %4622 = load i32, ptr %38, align 4, !tbaa !9
  %4623 = zext i32 %4622 to i64
  %4624 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4621, i64 %4623
  %4625 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4624, i32 0, i32 1
  %4626 = load ptr, ptr %4625, align 8, !tbaa !20
  %4627 = icmp ne ptr %4626, null
  br i1 %4627, label %4628, label %4640

4628:                                             ; preds = %4617
  %4629 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !5
  %4630 = load ptr, ptr %9, align 8, !tbaa !5
  %4631 = getelementptr inbounds %struct.w2c_hermes, ptr %4630, i32 0, i32 7
  %4632 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4631, i32 0, i32 0
  %4633 = load ptr, ptr %4632, align 8, !tbaa !19
  %4634 = load i32, ptr %38, align 4, !tbaa !9
  %4635 = zext i32 %4634 to i64
  %4636 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4633, i64 %4635
  %4637 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4636, i32 0, i32 0
  %4638 = load ptr, ptr %4637, align 8, !tbaa !22
  %4639 = call zeroext i1 @func_types_eq(ptr noundef %4629, ptr noundef %4638)
  br label %4640

4640:                                             ; preds = %4628, %4617, %4580
  %4641 = phi i1 [ false, %4617 ], [ false, %4580 ], [ %4639, %4628 ]
  %4642 = xor i1 %4641, true
  %4643 = xor i1 %4642, true
  %4644 = zext i1 %4643 to i32
  %4645 = sext i32 %4644 to i64
  %4646 = call i64 @llvm.expect.i64(i64 %4645, i64 1)
  %4647 = icmp ne i64 %4646, 0
  br i1 %4647, label %4650, label %4648

4648:                                             ; preds = %4640
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4649:                                             ; No predecessors!
  br label %4650

4650:                                             ; preds = %4649, %4640
  %4651 = phi i1 [ true, %4640 ], [ false, %4649 ]
  %4652 = zext i1 %4651 to i32
  %4653 = load ptr, ptr %9, align 8, !tbaa !5
  %4654 = getelementptr inbounds %struct.w2c_hermes, ptr %4653, i32 0, i32 7
  %4655 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4654, i32 0, i32 0
  %4656 = load ptr, ptr %4655, align 8, !tbaa !19
  %4657 = load i32, ptr %38, align 4, !tbaa !9
  %4658 = zext i32 %4657 to i64
  %4659 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4656, i64 %4658
  %4660 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4659, i32 0, i32 1
  %4661 = load ptr, ptr %4660, align 8, !tbaa !20
  %4662 = load ptr, ptr %9, align 8, !tbaa !5
  %4663 = getelementptr inbounds %struct.w2c_hermes, ptr %4662, i32 0, i32 7
  %4664 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4663, i32 0, i32 0
  %4665 = load ptr, ptr %4664, align 8, !tbaa !19
  %4666 = load i32, ptr %38, align 4, !tbaa !9
  %4667 = zext i32 %4666 to i64
  %4668 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4665, i64 %4667
  %4669 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4668, i32 0, i32 2
  %4670 = load ptr, ptr %4669, align 8, !tbaa !23
  %4671 = load i32, ptr %36, align 4, !tbaa !9
  %4672 = load i32, ptr %37, align 4, !tbaa !9
  call void %4661(ptr noundef %4670, i32 noundef %4671, i32 noundef %4672)
  br label %4689

4673:                                             ; preds = %4555
  %4674 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4674, ptr %36, align 4, !tbaa !9
  %4675 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4675, ptr %37, align 4, !tbaa !9
  %4676 = load ptr, ptr %9, align 8, !tbaa !5
  %4677 = getelementptr inbounds %struct.w2c_hermes, ptr %4676, i32 0, i32 6
  %4678 = load i32, ptr %36, align 4, !tbaa !9
  %4679 = zext i32 %4678 to i64
  %4680 = add i64 %4679, 24
  %4681 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4677, i64 noundef %4680, i32 noundef %4681)
  %4682 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4682, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %4683 = load ptr, ptr %9, align 8, !tbaa !5
  %4684 = getelementptr inbounds %struct.w2c_hermes, ptr %4683, i32 0, i32 6
  %4685 = load i32, ptr %36, align 4, !tbaa !9
  %4686 = zext i32 %4685 to i64
  %4687 = add i64 %4686, 1976
  %4688 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4684, i64 noundef %4687, i32 noundef %4688)
  br label %4689

4689:                                             ; preds = %4673, %4650
  %4690 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4690, ptr %36, align 4, !tbaa !9
  %4691 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4691, ptr %37, align 4, !tbaa !9
  %4692 = load ptr, ptr %9, align 8, !tbaa !5
  %4693 = getelementptr inbounds %struct.w2c_hermes, ptr %4692, i32 0, i32 6
  %4694 = load i32, ptr %36, align 4, !tbaa !9
  %4695 = zext i32 %4694 to i64
  %4696 = add i64 %4695, 2000
  %4697 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4693, i64 noundef %4696, i32 noundef %4697)
  br label %4698

4698:                                             ; preds = %4689, %4554, %4325
  %4699 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4699, ptr %36, align 4, !tbaa !9
  store i32 271340, ptr %37, align 4, !tbaa !9
  %4700 = load ptr, ptr %9, align 8, !tbaa !5
  %4701 = getelementptr inbounds %struct.w2c_hermes, ptr %4700, i32 0, i32 6
  %4702 = load i32, ptr %36, align 4, !tbaa !9
  %4703 = zext i32 %4702 to i64
  %4704 = add i64 %4703, 1936
  %4705 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4701, i64 noundef %4704, i32 noundef %4705)
  %4706 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4706, ptr %36, align 4, !tbaa !9
  %4707 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4707, ptr %37, align 4, !tbaa !9
  store i32 1936, ptr %38, align 4, !tbaa !9
  %4708 = load i32, ptr %38, align 4, !tbaa !9
  %4709 = load i32, ptr %37, align 4, !tbaa !9
  %4710 = add i32 %4709, %4708
  store i32 %4710, ptr %37, align 4, !tbaa !9
  %4711 = load ptr, ptr %9, align 8, !tbaa !5
  %4712 = getelementptr inbounds %struct.w2c_hermes, ptr %4711, i32 0, i32 6
  %4713 = load i32, ptr %36, align 4, !tbaa !9
  %4714 = zext i32 %4713 to i64
  %4715 = add i64 %4714, 1952
  %4716 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4712, i64 noundef %4715, i32 noundef %4716)
  %4717 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4717, ptr %36, align 4, !tbaa !9
  %4718 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4718, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %4719 = load i32, ptr %38, align 4, !tbaa !9
  %4720 = load i32, ptr %37, align 4, !tbaa !9
  %4721 = add i32 %4720, %4719
  store i32 %4721, ptr %37, align 4, !tbaa !9
  %4722 = load ptr, ptr %9, align 8, !tbaa !5
  %4723 = getelementptr inbounds %struct.w2c_hermes, ptr %4722, i32 0, i32 6
  %4724 = load i32, ptr %36, align 4, !tbaa !9
  %4725 = zext i32 %4724 to i64
  %4726 = add i64 %4725, 1940
  %4727 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %4723, i64 noundef %4726, i32 noundef %4727)
  %4728 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %4728, ptr %36, align 4, !tbaa !9
  %4729 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4729, ptr %37, align 4, !tbaa !9
  store i32 1984, ptr %38, align 4, !tbaa !9
  %4730 = load i32, ptr %38, align 4, !tbaa !9
  %4731 = load i32, ptr %37, align 4, !tbaa !9
  %4732 = add i32 %4731, %4730
  store i32 %4732, ptr %37, align 4, !tbaa !9
  %4733 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4733, ptr %38, align 4, !tbaa !9
  store i32 1936, ptr %39, align 4, !tbaa !9
  %4734 = load i32, ptr %39, align 4, !tbaa !9
  %4735 = load i32, ptr %38, align 4, !tbaa !9
  %4736 = add i32 %4735, %4734
  store i32 %4736, ptr %38, align 4, !tbaa !9
  %4737 = load ptr, ptr %9, align 8, !tbaa !5
  %4738 = load i32, ptr %36, align 4, !tbaa !9
  %4739 = load i32, ptr %37, align 4, !tbaa !9
  %4740 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseCJSModuleNames0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x29(ptr noundef %4737, i32 noundef %4738, i32 noundef %4739, i32 noundef %4740)
  %4741 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4741, ptr %36, align 4, !tbaa !9
  %4742 = load ptr, ptr %9, align 8, !tbaa !5
  %4743 = getelementptr inbounds %struct.w2c_hermes, ptr %4742, i32 0, i32 6
  %4744 = load i32, ptr %36, align 4, !tbaa !9
  %4745 = zext i32 %4744 to i64
  %4746 = add i64 %4745, 1952
  %4747 = call i32 @i32_load(ptr noundef %4743, i64 noundef %4746)
  store i32 %4747, ptr %36, align 4, !tbaa !9
  %4748 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4748, ptr %18, align 4, !tbaa !9
  %4749 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4749, ptr %37, align 4, !tbaa !9
  store i32 1936, ptr %38, align 4, !tbaa !9
  %4750 = load i32, ptr %38, align 4, !tbaa !9
  %4751 = load i32, ptr %37, align 4, !tbaa !9
  %4752 = add i32 %4751, %4750
  store i32 %4752, ptr %37, align 4, !tbaa !9
  %4753 = load i32, ptr %36, align 4, !tbaa !9
  %4754 = load i32, ptr %37, align 4, !tbaa !9
  %4755 = icmp eq i32 %4753, %4754
  %4756 = zext i1 %4755 to i32
  store i32 %4756, ptr %36, align 4, !tbaa !9
  %4757 = load i32, ptr %36, align 4, !tbaa !9
  %4758 = icmp ne i32 %4757, 0
  br i1 %4758, label %4759, label %4775

4759:                                             ; preds = %4698
  %4760 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4760, ptr %36, align 4, !tbaa !9
  store i32 1936, ptr %37, align 4, !tbaa !9
  %4761 = load i32, ptr %37, align 4, !tbaa !9
  %4762 = load i32, ptr %36, align 4, !tbaa !9
  %4763 = add i32 %4762, %4761
  store i32 %4763, ptr %36, align 4, !tbaa !9
  %4764 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4764, ptr %18, align 4, !tbaa !9
  %4765 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4765, ptr %36, align 4, !tbaa !9
  %4766 = load ptr, ptr %9, align 8, !tbaa !5
  %4767 = getelementptr inbounds %struct.w2c_hermes, ptr %4766, i32 0, i32 6
  %4768 = load i32, ptr %36, align 4, !tbaa !9
  %4769 = zext i32 %4768 to i64
  %4770 = add i64 %4769, 1936
  %4771 = call i32 @i32_load(ptr noundef %4767, i64 noundef %4770)
  store i32 %4771, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %4772 = load i32, ptr %37, align 4, !tbaa !9
  %4773 = load i32, ptr %36, align 4, !tbaa !9
  %4774 = add i32 %4773, %4772
  store i32 %4774, ptr %36, align 4, !tbaa !9
  br label %4794

4775:                                             ; preds = %4698
  %4776 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4776, ptr %36, align 4, !tbaa !9
  %4777 = load i32, ptr %36, align 4, !tbaa !9
  %4778 = icmp ne i32 %4777, 0
  %4779 = xor i1 %4778, true
  %4780 = zext i1 %4779 to i32
  store i32 %4780, ptr %36, align 4, !tbaa !9
  %4781 = load i32, ptr %36, align 4, !tbaa !9
  %4782 = icmp ne i32 %4781, 0
  br i1 %4782, label %4783, label %4784

4783:                                             ; preds = %4775
  br label %4864

4784:                                             ; preds = %4775
  %4785 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4785, ptr %36, align 4, !tbaa !9
  %4786 = load ptr, ptr %9, align 8, !tbaa !5
  %4787 = getelementptr inbounds %struct.w2c_hermes, ptr %4786, i32 0, i32 6
  %4788 = load i32, ptr %36, align 4, !tbaa !9
  %4789 = zext i32 %4788 to i64
  %4790 = call i32 @i32_load(ptr noundef %4787, i64 noundef %4789)
  store i32 %4790, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %4791 = load i32, ptr %37, align 4, !tbaa !9
  %4792 = load i32, ptr %36, align 4, !tbaa !9
  %4793 = add i32 %4792, %4791
  store i32 %4793, ptr %36, align 4, !tbaa !9
  br label %4794

4794:                                             ; preds = %4784, %4759
  %4795 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4795, ptr %19, align 4, !tbaa !9
  %4796 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4796, ptr %36, align 4, !tbaa !9
  %4797 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4797, ptr %37, align 4, !tbaa !9
  %4798 = load ptr, ptr %9, align 8, !tbaa !5
  %4799 = getelementptr inbounds %struct.w2c_hermes, ptr %4798, i32 0, i32 6
  %4800 = load i32, ptr %37, align 4, !tbaa !9
  %4801 = zext i32 %4800 to i64
  %4802 = call i32 @i32_load(ptr noundef %4799, i64 noundef %4801)
  store i32 %4802, ptr %37, align 4, !tbaa !9
  %4803 = load i32, ptr %37, align 4, !tbaa !9
  %4804 = load ptr, ptr %9, align 8, !tbaa !5
  %4805 = getelementptr inbounds %struct.w2c_hermes, ptr %4804, i32 0, i32 7
  %4806 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4805, i32 0, i32 2
  %4807 = load i32, ptr %4806, align 4, !tbaa !18
  %4808 = icmp ult i32 %4803, %4807
  br i1 %4808, label %4809, label %4832

4809:                                             ; preds = %4794
  %4810 = load ptr, ptr %9, align 8, !tbaa !5
  %4811 = getelementptr inbounds %struct.w2c_hermes, ptr %4810, i32 0, i32 7
  %4812 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4811, i32 0, i32 0
  %4813 = load ptr, ptr %4812, align 8, !tbaa !19
  %4814 = load i32, ptr %37, align 4, !tbaa !9
  %4815 = zext i32 %4814 to i64
  %4816 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4813, i64 %4815
  %4817 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4816, i32 0, i32 1
  %4818 = load ptr, ptr %4817, align 8, !tbaa !20
  %4819 = icmp ne ptr %4818, null
  br i1 %4819, label %4820, label %4832

4820:                                             ; preds = %4809
  %4821 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %4822 = load ptr, ptr %9, align 8, !tbaa !5
  %4823 = getelementptr inbounds %struct.w2c_hermes, ptr %4822, i32 0, i32 7
  %4824 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4823, i32 0, i32 0
  %4825 = load ptr, ptr %4824, align 8, !tbaa !19
  %4826 = load i32, ptr %37, align 4, !tbaa !9
  %4827 = zext i32 %4826 to i64
  %4828 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4825, i64 %4827
  %4829 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4828, i32 0, i32 0
  %4830 = load ptr, ptr %4829, align 8, !tbaa !22
  %4831 = call zeroext i1 @func_types_eq(ptr noundef %4821, ptr noundef %4830)
  br label %4832

4832:                                             ; preds = %4820, %4809, %4794
  %4833 = phi i1 [ false, %4809 ], [ false, %4794 ], [ %4831, %4820 ]
  %4834 = xor i1 %4833, true
  %4835 = xor i1 %4834, true
  %4836 = zext i1 %4835 to i32
  %4837 = sext i32 %4836 to i64
  %4838 = call i64 @llvm.expect.i64(i64 %4837, i64 1)
  %4839 = icmp ne i64 %4838, 0
  br i1 %4839, label %4842, label %4840

4840:                                             ; preds = %4832
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4841:                                             ; No predecessors!
  br label %4842

4842:                                             ; preds = %4841, %4832
  %4843 = phi i1 [ true, %4832 ], [ false, %4841 ]
  %4844 = zext i1 %4843 to i32
  %4845 = load ptr, ptr %9, align 8, !tbaa !5
  %4846 = getelementptr inbounds %struct.w2c_hermes, ptr %4845, i32 0, i32 7
  %4847 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4846, i32 0, i32 0
  %4848 = load ptr, ptr %4847, align 8, !tbaa !19
  %4849 = load i32, ptr %37, align 4, !tbaa !9
  %4850 = zext i32 %4849 to i64
  %4851 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4848, i64 %4850
  %4852 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4851, i32 0, i32 1
  %4853 = load ptr, ptr %4852, align 8, !tbaa !20
  %4854 = load ptr, ptr %9, align 8, !tbaa !5
  %4855 = getelementptr inbounds %struct.w2c_hermes, ptr %4854, i32 0, i32 7
  %4856 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4855, i32 0, i32 0
  %4857 = load ptr, ptr %4856, align 8, !tbaa !19
  %4858 = load i32, ptr %37, align 4, !tbaa !9
  %4859 = zext i32 %4858 to i64
  %4860 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4857, i64 %4859
  %4861 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4860, i32 0, i32 2
  %4862 = load ptr, ptr %4861, align 8, !tbaa !23
  %4863 = load i32, ptr %36, align 4, !tbaa !9
  call void %4853(ptr noundef %4862, i32 noundef %4863)
  br label %4864

4864:                                             ; preds = %4842, %4783
  %4865 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4865, ptr %36, align 4, !tbaa !9
  %4866 = load ptr, ptr %9, align 8, !tbaa !5
  %4867 = getelementptr inbounds %struct.w2c_hermes, ptr %4866, i32 0, i32 6
  %4868 = load i32, ptr %36, align 4, !tbaa !9
  %4869 = zext i32 %4868 to i64
  %4870 = add i64 %4869, 2000
  %4871 = call i32 @i32_load(ptr noundef %4867, i64 noundef %4870)
  store i32 %4871, ptr %36, align 4, !tbaa !9
  %4872 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4872, ptr %18, align 4, !tbaa !9
  %4873 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4873, ptr %37, align 4, !tbaa !9
  store i32 1984, ptr %38, align 4, !tbaa !9
  %4874 = load i32, ptr %38, align 4, !tbaa !9
  %4875 = load i32, ptr %37, align 4, !tbaa !9
  %4876 = add i32 %4875, %4874
  store i32 %4876, ptr %37, align 4, !tbaa !9
  %4877 = load i32, ptr %36, align 4, !tbaa !9
  %4878 = load i32, ptr %37, align 4, !tbaa !9
  %4879 = icmp eq i32 %4877, %4878
  %4880 = zext i1 %4879 to i32
  store i32 %4880, ptr %36, align 4, !tbaa !9
  %4881 = load i32, ptr %36, align 4, !tbaa !9
  %4882 = icmp ne i32 %4881, 0
  br i1 %4882, label %4883, label %4899

4883:                                             ; preds = %4864
  %4884 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4884, ptr %36, align 4, !tbaa !9
  store i32 1984, ptr %37, align 4, !tbaa !9
  %4885 = load i32, ptr %37, align 4, !tbaa !9
  %4886 = load i32, ptr %36, align 4, !tbaa !9
  %4887 = add i32 %4886, %4885
  store i32 %4887, ptr %36, align 4, !tbaa !9
  %4888 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4888, ptr %18, align 4, !tbaa !9
  %4889 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4889, ptr %36, align 4, !tbaa !9
  %4890 = load ptr, ptr %9, align 8, !tbaa !5
  %4891 = getelementptr inbounds %struct.w2c_hermes, ptr %4890, i32 0, i32 6
  %4892 = load i32, ptr %36, align 4, !tbaa !9
  %4893 = zext i32 %4892 to i64
  %4894 = add i64 %4893, 1984
  %4895 = call i32 @i32_load(ptr noundef %4891, i64 noundef %4894)
  store i32 %4895, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %4896 = load i32, ptr %37, align 4, !tbaa !9
  %4897 = load i32, ptr %36, align 4, !tbaa !9
  %4898 = add i32 %4897, %4896
  store i32 %4898, ptr %36, align 4, !tbaa !9
  br label %4918

4899:                                             ; preds = %4864
  %4900 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4900, ptr %36, align 4, !tbaa !9
  %4901 = load i32, ptr %36, align 4, !tbaa !9
  %4902 = icmp ne i32 %4901, 0
  %4903 = xor i1 %4902, true
  %4904 = zext i1 %4903 to i32
  store i32 %4904, ptr %36, align 4, !tbaa !9
  %4905 = load i32, ptr %36, align 4, !tbaa !9
  %4906 = icmp ne i32 %4905, 0
  br i1 %4906, label %4907, label %4908

4907:                                             ; preds = %4899
  br label %4988

4908:                                             ; preds = %4899
  %4909 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4909, ptr %36, align 4, !tbaa !9
  %4910 = load ptr, ptr %9, align 8, !tbaa !5
  %4911 = getelementptr inbounds %struct.w2c_hermes, ptr %4910, i32 0, i32 6
  %4912 = load i32, ptr %36, align 4, !tbaa !9
  %4913 = zext i32 %4912 to i64
  %4914 = call i32 @i32_load(ptr noundef %4911, i64 noundef %4913)
  store i32 %4914, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %4915 = load i32, ptr %37, align 4, !tbaa !9
  %4916 = load i32, ptr %36, align 4, !tbaa !9
  %4917 = add i32 %4916, %4915
  store i32 %4917, ptr %36, align 4, !tbaa !9
  br label %4918

4918:                                             ; preds = %4908, %4883
  %4919 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4919, ptr %19, align 4, !tbaa !9
  %4920 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %4920, ptr %36, align 4, !tbaa !9
  %4921 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %4921, ptr %37, align 4, !tbaa !9
  %4922 = load ptr, ptr %9, align 8, !tbaa !5
  %4923 = getelementptr inbounds %struct.w2c_hermes, ptr %4922, i32 0, i32 6
  %4924 = load i32, ptr %37, align 4, !tbaa !9
  %4925 = zext i32 %4924 to i64
  %4926 = call i32 @i32_load(ptr noundef %4923, i64 noundef %4925)
  store i32 %4926, ptr %37, align 4, !tbaa !9
  %4927 = load i32, ptr %37, align 4, !tbaa !9
  %4928 = load ptr, ptr %9, align 8, !tbaa !5
  %4929 = getelementptr inbounds %struct.w2c_hermes, ptr %4928, i32 0, i32 7
  %4930 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4929, i32 0, i32 2
  %4931 = load i32, ptr %4930, align 4, !tbaa !18
  %4932 = icmp ult i32 %4927, %4931
  br i1 %4932, label %4933, label %4956

4933:                                             ; preds = %4918
  %4934 = load ptr, ptr %9, align 8, !tbaa !5
  %4935 = getelementptr inbounds %struct.w2c_hermes, ptr %4934, i32 0, i32 7
  %4936 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4935, i32 0, i32 0
  %4937 = load ptr, ptr %4936, align 8, !tbaa !19
  %4938 = load i32, ptr %37, align 4, !tbaa !9
  %4939 = zext i32 %4938 to i64
  %4940 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4937, i64 %4939
  %4941 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4940, i32 0, i32 1
  %4942 = load ptr, ptr %4941, align 8, !tbaa !20
  %4943 = icmp ne ptr %4942, null
  br i1 %4943, label %4944, label %4956

4944:                                             ; preds = %4933
  %4945 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %4946 = load ptr, ptr %9, align 8, !tbaa !5
  %4947 = getelementptr inbounds %struct.w2c_hermes, ptr %4946, i32 0, i32 7
  %4948 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4947, i32 0, i32 0
  %4949 = load ptr, ptr %4948, align 8, !tbaa !19
  %4950 = load i32, ptr %37, align 4, !tbaa !9
  %4951 = zext i32 %4950 to i64
  %4952 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4949, i64 %4951
  %4953 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4952, i32 0, i32 0
  %4954 = load ptr, ptr %4953, align 8, !tbaa !22
  %4955 = call zeroext i1 @func_types_eq(ptr noundef %4945, ptr noundef %4954)
  br label %4956

4956:                                             ; preds = %4944, %4933, %4918
  %4957 = phi i1 [ false, %4933 ], [ false, %4918 ], [ %4955, %4944 ]
  %4958 = xor i1 %4957, true
  %4959 = xor i1 %4958, true
  %4960 = zext i1 %4959 to i32
  %4961 = sext i32 %4960 to i64
  %4962 = call i64 @llvm.expect.i64(i64 %4961, i64 1)
  %4963 = icmp ne i64 %4962, 0
  br i1 %4963, label %4966, label %4964

4964:                                             ; preds = %4956
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

4965:                                             ; No predecessors!
  br label %4966

4966:                                             ; preds = %4965, %4956
  %4967 = phi i1 [ true, %4956 ], [ false, %4965 ]
  %4968 = zext i1 %4967 to i32
  %4969 = load ptr, ptr %9, align 8, !tbaa !5
  %4970 = getelementptr inbounds %struct.w2c_hermes, ptr %4969, i32 0, i32 7
  %4971 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4970, i32 0, i32 0
  %4972 = load ptr, ptr %4971, align 8, !tbaa !19
  %4973 = load i32, ptr %37, align 4, !tbaa !9
  %4974 = zext i32 %4973 to i64
  %4975 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4972, i64 %4974
  %4976 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4975, i32 0, i32 1
  %4977 = load ptr, ptr %4976, align 8, !tbaa !20
  %4978 = load ptr, ptr %9, align 8, !tbaa !5
  %4979 = getelementptr inbounds %struct.w2c_hermes, ptr %4978, i32 0, i32 7
  %4980 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %4979, i32 0, i32 0
  %4981 = load ptr, ptr %4980, align 8, !tbaa !19
  %4982 = load i32, ptr %37, align 4, !tbaa !9
  %4983 = zext i32 %4982 to i64
  %4984 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4981, i64 %4983
  %4985 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %4984, i32 0, i32 2
  %4986 = load ptr, ptr %4985, align 8, !tbaa !23
  %4987 = load i32, ptr %36, align 4, !tbaa !9
  call void %4977(ptr noundef %4986, i32 noundef %4987)
  br label %4988

4988:                                             ; preds = %4966, %4907
  %4989 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4989, ptr %36, align 4, !tbaa !9
  %4990 = load ptr, ptr %9, align 8, !tbaa !5
  %4991 = getelementptr inbounds %struct.w2c_hermes, ptr %4990, i32 0, i32 6
  %4992 = load i32, ptr %36, align 4, !tbaa !9
  %4993 = zext i32 %4992 to i64
  %4994 = add i64 %4993, 1976
  %4995 = call i32 @i32_load(ptr noundef %4991, i64 noundef %4994)
  store i32 %4995, ptr %36, align 4, !tbaa !9
  %4996 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %4996, ptr %18, align 4, !tbaa !9
  %4997 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %4997, ptr %37, align 4, !tbaa !9
  store i32 1960, ptr %38, align 4, !tbaa !9
  %4998 = load i32, ptr %38, align 4, !tbaa !9
  %4999 = load i32, ptr %37, align 4, !tbaa !9
  %5000 = add i32 %4999, %4998
  store i32 %5000, ptr %37, align 4, !tbaa !9
  %5001 = load i32, ptr %36, align 4, !tbaa !9
  %5002 = load i32, ptr %37, align 4, !tbaa !9
  %5003 = icmp eq i32 %5001, %5002
  %5004 = zext i1 %5003 to i32
  store i32 %5004, ptr %36, align 4, !tbaa !9
  %5005 = load i32, ptr %36, align 4, !tbaa !9
  %5006 = icmp ne i32 %5005, 0
  br i1 %5006, label %5007, label %5023

5007:                                             ; preds = %4988
  %5008 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5008, ptr %36, align 4, !tbaa !9
  store i32 1960, ptr %37, align 4, !tbaa !9
  %5009 = load i32, ptr %37, align 4, !tbaa !9
  %5010 = load i32, ptr %36, align 4, !tbaa !9
  %5011 = add i32 %5010, %5009
  store i32 %5011, ptr %36, align 4, !tbaa !9
  %5012 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5012, ptr %18, align 4, !tbaa !9
  %5013 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5013, ptr %36, align 4, !tbaa !9
  %5014 = load ptr, ptr %9, align 8, !tbaa !5
  %5015 = getelementptr inbounds %struct.w2c_hermes, ptr %5014, i32 0, i32 6
  %5016 = load i32, ptr %36, align 4, !tbaa !9
  %5017 = zext i32 %5016 to i64
  %5018 = add i64 %5017, 1960
  %5019 = call i32 @i32_load(ptr noundef %5015, i64 noundef %5018)
  store i32 %5019, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %5020 = load i32, ptr %37, align 4, !tbaa !9
  %5021 = load i32, ptr %36, align 4, !tbaa !9
  %5022 = add i32 %5021, %5020
  store i32 %5022, ptr %36, align 4, !tbaa !9
  br label %5042

5023:                                             ; preds = %4988
  %5024 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5024, ptr %36, align 4, !tbaa !9
  %5025 = load i32, ptr %36, align 4, !tbaa !9
  %5026 = icmp ne i32 %5025, 0
  %5027 = xor i1 %5026, true
  %5028 = zext i1 %5027 to i32
  store i32 %5028, ptr %36, align 4, !tbaa !9
  %5029 = load i32, ptr %36, align 4, !tbaa !9
  %5030 = icmp ne i32 %5029, 0
  br i1 %5030, label %5031, label %5032

5031:                                             ; preds = %5023
  br label %5112

5032:                                             ; preds = %5023
  %5033 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5033, ptr %36, align 4, !tbaa !9
  %5034 = load ptr, ptr %9, align 8, !tbaa !5
  %5035 = getelementptr inbounds %struct.w2c_hermes, ptr %5034, i32 0, i32 6
  %5036 = load i32, ptr %36, align 4, !tbaa !9
  %5037 = zext i32 %5036 to i64
  %5038 = call i32 @i32_load(ptr noundef %5035, i64 noundef %5037)
  store i32 %5038, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %5039 = load i32, ptr %37, align 4, !tbaa !9
  %5040 = load i32, ptr %36, align 4, !tbaa !9
  %5041 = add i32 %5040, %5039
  store i32 %5041, ptr %36, align 4, !tbaa !9
  br label %5042

5042:                                             ; preds = %5032, %5007
  %5043 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5043, ptr %19, align 4, !tbaa !9
  %5044 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5044, ptr %36, align 4, !tbaa !9
  %5045 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5045, ptr %37, align 4, !tbaa !9
  %5046 = load ptr, ptr %9, align 8, !tbaa !5
  %5047 = getelementptr inbounds %struct.w2c_hermes, ptr %5046, i32 0, i32 6
  %5048 = load i32, ptr %37, 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 %37, align 4, !tbaa !9
  %5051 = load i32, ptr %37, align 4, !tbaa !9
  %5052 = load ptr, ptr %9, align 8, !tbaa !5
  %5053 = getelementptr inbounds %struct.w2c_hermes, ptr %5052, i32 0, i32 7
  %5054 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5053, i32 0, i32 2
  %5055 = load i32, ptr %5054, align 4, !tbaa !18
  %5056 = icmp ult i32 %5051, %5055
  br i1 %5056, label %5057, label %5080

5057:                                             ; preds = %5042
  %5058 = load ptr, ptr %9, align 8, !tbaa !5
  %5059 = getelementptr inbounds %struct.w2c_hermes, ptr %5058, i32 0, i32 7
  %5060 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5059, i32 0, i32 0
  %5061 = load ptr, ptr %5060, align 8, !tbaa !19
  %5062 = load i32, ptr %37, align 4, !tbaa !9
  %5063 = zext i32 %5062 to i64
  %5064 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5061, i64 %5063
  %5065 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5064, i32 0, i32 1
  %5066 = load ptr, ptr %5065, align 8, !tbaa !20
  %5067 = icmp ne ptr %5066, null
  br i1 %5067, label %5068, label %5080

5068:                                             ; preds = %5057
  %5069 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %5070 = load ptr, ptr %9, align 8, !tbaa !5
  %5071 = getelementptr inbounds %struct.w2c_hermes, ptr %5070, i32 0, i32 7
  %5072 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5071, i32 0, i32 0
  %5073 = load ptr, ptr %5072, align 8, !tbaa !19
  %5074 = load i32, ptr %37, align 4, !tbaa !9
  %5075 = zext i32 %5074 to i64
  %5076 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5073, i64 %5075
  %5077 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5076, i32 0, i32 0
  %5078 = load ptr, ptr %5077, align 8, !tbaa !22
  %5079 = call zeroext i1 @func_types_eq(ptr noundef %5069, ptr noundef %5078)
  br label %5080

5080:                                             ; preds = %5068, %5057, %5042
  %5081 = phi i1 [ false, %5057 ], [ false, %5042 ], [ %5079, %5068 ]
  %5082 = xor i1 %5081, true
  %5083 = xor i1 %5082, true
  %5084 = zext i1 %5083 to i32
  %5085 = sext i32 %5084 to i64
  %5086 = call i64 @llvm.expect.i64(i64 %5085, i64 1)
  %5087 = icmp ne i64 %5086, 0
  br i1 %5087, label %5090, label %5088

5088:                                             ; preds = %5080
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

5089:                                             ; No predecessors!
  br label %5090

5090:                                             ; preds = %5089, %5080
  %5091 = phi i1 [ true, %5080 ], [ false, %5089 ]
  %5092 = zext i1 %5091 to i32
  %5093 = load ptr, ptr %9, align 8, !tbaa !5
  %5094 = getelementptr inbounds %struct.w2c_hermes, ptr %5093, i32 0, i32 7
  %5095 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5094, i32 0, i32 0
  %5096 = load ptr, ptr %5095, align 8, !tbaa !19
  %5097 = load i32, ptr %37, align 4, !tbaa !9
  %5098 = zext i32 %5097 to i64
  %5099 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5096, i64 %5098
  %5100 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5099, i32 0, i32 1
  %5101 = load ptr, ptr %5100, align 8, !tbaa !20
  %5102 = load ptr, ptr %9, align 8, !tbaa !5
  %5103 = getelementptr inbounds %struct.w2c_hermes, ptr %5102, i32 0, i32 7
  %5104 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5103, i32 0, i32 0
  %5105 = load ptr, ptr %5104, align 8, !tbaa !19
  %5106 = load i32, ptr %37, align 4, !tbaa !9
  %5107 = zext i32 %5106 to i64
  %5108 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5105, i64 %5107
  %5109 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5108, i32 0, i32 2
  %5110 = load ptr, ptr %5109, align 8, !tbaa !23
  %5111 = load i32, ptr %36, align 4, !tbaa !9
  call void %5101(ptr noundef %5110, i32 noundef %5111)
  br label %5112

5112:                                             ; preds = %5090, %5031, %4309
  %5113 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5113, ptr %36, align 4, !tbaa !9
  store i32 536, ptr %37, align 4, !tbaa !9
  %5114 = load i32, ptr %37, align 4, !tbaa !9
  %5115 = load i32, ptr %36, align 4, !tbaa !9
  %5116 = add i32 %5115, %5114
  store i32 %5116, ptr %36, align 4, !tbaa !9
  %5117 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5117, ptr %18, align 4, !tbaa !9
  %5118 = load ptr, ptr %9, align 8, !tbaa !5
  %5119 = getelementptr inbounds %struct.w2c_hermes, ptr %5118, i32 0, i32 6
  %5120 = load i32, ptr %36, align 4, !tbaa !9
  %5121 = zext i32 %5120 to i64
  %5122 = call i64 @i64_load(ptr noundef %5119, i64 noundef %5121)
  store i64 %5122, ptr %42, align 8, !tbaa !11
  %5123 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %5123, ptr %35, align 8, !tbaa !11
  %5124 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5124, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %5125 = load ptr, ptr %9, align 8, !tbaa !5
  %5126 = getelementptr inbounds %struct.w2c_hermes, ptr %5125, i32 0, i32 6
  %5127 = load i32, ptr %36, align 4, !tbaa !9
  %5128 = zext i32 %5127 to i64
  %5129 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5126, i64 noundef %5128, i64 noundef %5129)
  %5130 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5130, ptr %36, align 4, !tbaa !9
  store i32 1780, ptr %37, align 4, !tbaa !9
  %5131 = load i32, ptr %37, align 4, !tbaa !9
  %5132 = load i32, ptr %36, align 4, !tbaa !9
  %5133 = add i32 %5132, %5131
  store i32 %5133, ptr %36, align 4, !tbaa !9
  %5134 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %5134, ptr %43, align 8, !tbaa !11
  %5135 = load ptr, ptr %9, align 8, !tbaa !5
  %5136 = getelementptr inbounds %struct.w2c_hermes, ptr %5135, i32 0, i32 6
  %5137 = load i32, ptr %36, align 4, !tbaa !9
  %5138 = zext i32 %5137 to i64
  %5139 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5136, i64 noundef %5138, i64 noundef %5139)
  %5140 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5140, ptr %36, align 4, !tbaa !9
  store i32 1800, ptr %37, align 4, !tbaa !9
  %5141 = load i32, ptr %37, align 4, !tbaa !9
  %5142 = load i32, ptr %36, align 4, !tbaa !9
  %5143 = add i32 %5142, %5141
  store i32 %5143, ptr %36, align 4, !tbaa !9
  %5144 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5144, ptr %37, align 4, !tbaa !9
  store i32 556, ptr %38, align 4, !tbaa !9
  %5145 = load i32, ptr %38, align 4, !tbaa !9
  %5146 = load i32, ptr %37, align 4, !tbaa !9
  %5147 = add i32 %5146, %5145
  store i32 %5147, ptr %37, align 4, !tbaa !9
  %5148 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5148, ptr %18, align 4, !tbaa !9
  %5149 = load ptr, ptr %9, align 8, !tbaa !5
  %5150 = getelementptr inbounds %struct.w2c_hermes, ptr %5149, i32 0, i32 6
  %5151 = load i32, ptr %37, align 4, !tbaa !9
  %5152 = zext i32 %5151 to i64
  %5153 = call i64 @i64_load(ptr noundef %5150, i64 noundef %5152)
  store i64 %5153, ptr %43, align 8, !tbaa !11
  %5154 = load ptr, ptr %9, align 8, !tbaa !5
  %5155 = getelementptr inbounds %struct.w2c_hermes, ptr %5154, i32 0, i32 6
  %5156 = load i32, ptr %36, align 4, !tbaa !9
  %5157 = zext i32 %5156 to i64
  %5158 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5155, i64 noundef %5157, i64 noundef %5158)
  %5159 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5159, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %5160 = load ptr, ptr %9, align 8, !tbaa !5
  %5161 = getelementptr inbounds %struct.w2c_hermes, ptr %5160, i32 0, i32 6
  %5162 = load i32, ptr %36, align 4, !tbaa !9
  %5163 = zext i32 %5162 to i64
  %5164 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5161, i64 noundef %5163, i64 noundef %5164)
  %5165 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5165, ptr %36, align 4, !tbaa !9
  %5166 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5166, ptr %37, align 4, !tbaa !9
  %5167 = load ptr, ptr %9, align 8, !tbaa !5
  %5168 = getelementptr inbounds %struct.w2c_hermes, ptr %5167, i32 0, i32 6
  %5169 = load i32, ptr %37, align 4, !tbaa !9
  %5170 = zext i32 %5169 to i64
  %5171 = add i64 %5170, 520
  %5172 = call i64 @i64_load(ptr noundef %5168, i64 noundef %5171)
  store i64 %5172, ptr %43, align 8, !tbaa !11
  %5173 = load ptr, ptr %9, align 8, !tbaa !5
  %5174 = getelementptr inbounds %struct.w2c_hermes, ptr %5173, i32 0, i32 6
  %5175 = load i32, ptr %36, align 4, !tbaa !9
  %5176 = zext i32 %5175 to i64
  %5177 = add i64 %5176, 1764
  %5178 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5174, i64 noundef %5177, i64 noundef %5178)
  %5179 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5179, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %5180 = load ptr, ptr %9, align 8, !tbaa !5
  %5181 = getelementptr inbounds %struct.w2c_hermes, ptr %5180, i32 0, i32 6
  %5182 = load i32, ptr %36, align 4, !tbaa !9
  %5183 = zext i32 %5182 to i64
  %5184 = add i64 %5183, 520
  %5185 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5181, i64 noundef %5184, i64 noundef %5185)
  %5186 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5186, ptr %36, align 4, !tbaa !9
  %5187 = load ptr, ptr %9, align 8, !tbaa !5
  %5188 = getelementptr inbounds %struct.w2c_hermes, ptr %5187, i32 0, i32 6
  %5189 = load i32, ptr %36, align 4, !tbaa !9
  %5190 = zext i32 %5189 to i64
  %5191 = add i64 %5190, 528
  %5192 = call i64 @i64_load(ptr noundef %5188, i64 noundef %5191)
  store i64 %5192, ptr %42, align 8, !tbaa !11
  %5193 = load i64, ptr %42, align 8, !tbaa !11
  store i64 %5193, ptr %35, align 8, !tbaa !11
  %5194 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5194, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %5195 = load ptr, ptr %9, align 8, !tbaa !5
  %5196 = getelementptr inbounds %struct.w2c_hermes, ptr %5195, i32 0, i32 6
  %5197 = load i32, ptr %36, align 4, !tbaa !9
  %5198 = zext i32 %5197 to i64
  %5199 = add i64 %5198, 528
  %5200 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5196, i64 noundef %5199, i64 noundef %5200)
  %5201 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5201, ptr %36, align 4, !tbaa !9
  %5202 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %5202, ptr %43, align 8, !tbaa !11
  %5203 = load ptr, ptr %9, align 8, !tbaa !5
  %5204 = getelementptr inbounds %struct.w2c_hermes, ptr %5203, i32 0, i32 6
  %5205 = load i32, ptr %36, align 4, !tbaa !9
  %5206 = zext i32 %5205 to i64
  %5207 = add i64 %5206, 1772
  %5208 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5204, i64 noundef %5207, i64 noundef %5208)
  %5209 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5209, ptr %36, align 4, !tbaa !9
  %5210 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5210, ptr %37, align 4, !tbaa !9
  %5211 = load ptr, ptr %9, align 8, !tbaa !5
  %5212 = getelementptr inbounds %struct.w2c_hermes, ptr %5211, i32 0, i32 6
  %5213 = load i32, ptr %37, align 4, !tbaa !9
  %5214 = zext i32 %5213 to i64
  %5215 = add i64 %5214, 544
  %5216 = call i32 @i32_load16_u(ptr noundef %5212, i64 noundef %5215)
  store i32 %5216, ptr %37, align 4, !tbaa !9
  %5217 = load ptr, ptr %9, align 8, !tbaa !5
  %5218 = getelementptr inbounds %struct.w2c_hermes, ptr %5217, i32 0, i32 6
  %5219 = load i32, ptr %36, align 4, !tbaa !9
  %5220 = zext i32 %5219 to i64
  %5221 = add i64 %5220, 1788
  %5222 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %5218, i64 noundef %5221, i32 noundef %5222)
  %5223 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5223, ptr %36, align 4, !tbaa !9
  %5224 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5224, ptr %37, align 4, !tbaa !9
  %5225 = load ptr, ptr %9, align 8, !tbaa !5
  %5226 = getelementptr inbounds %struct.w2c_hermes, ptr %5225, i32 0, i32 6
  %5227 = load i32, ptr %37, align 4, !tbaa !9
  %5228 = zext i32 %5227 to i64
  %5229 = add i64 %5228, 548
  %5230 = call i64 @i64_load(ptr noundef %5226, i64 noundef %5229)
  store i64 %5230, ptr %43, align 8, !tbaa !11
  %5231 = load ptr, ptr %9, align 8, !tbaa !5
  %5232 = getelementptr inbounds %struct.w2c_hermes, ptr %5231, i32 0, i32 6
  %5233 = load i32, ptr %36, align 4, !tbaa !9
  %5234 = zext i32 %5233 to i64
  %5235 = add i64 %5234, 1792
  %5236 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5232, i64 noundef %5235, i64 noundef %5236)
  %5237 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5237, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %5238 = load ptr, ptr %9, align 8, !tbaa !5
  %5239 = getelementptr inbounds %struct.w2c_hermes, ptr %5238, i32 0, i32 6
  %5240 = load i32, ptr %36, align 4, !tbaa !9
  %5241 = zext i32 %5240 to i64
  %5242 = add i64 %5241, 548
  %5243 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5239, i64 noundef %5242, i64 noundef %5243)
  %5244 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5244, ptr %36, align 4, !tbaa !9
  store i32 1808, ptr %37, align 4, !tbaa !9
  %5245 = load i32, ptr %37, align 4, !tbaa !9
  %5246 = load i32, ptr %36, align 4, !tbaa !9
  %5247 = add i32 %5246, %5245
  store i32 %5247, ptr %36, align 4, !tbaa !9
  %5248 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5248, ptr %37, align 4, !tbaa !9
  store i32 564, ptr %38, align 4, !tbaa !9
  %5249 = load i32, ptr %38, align 4, !tbaa !9
  %5250 = load i32, ptr %37, align 4, !tbaa !9
  %5251 = add i32 %5250, %5249
  store i32 %5251, ptr %37, align 4, !tbaa !9
  %5252 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5252, ptr %18, align 4, !tbaa !9
  %5253 = load ptr, ptr %9, align 8, !tbaa !5
  %5254 = getelementptr inbounds %struct.w2c_hermes, ptr %5253, i32 0, i32 6
  %5255 = load i32, ptr %37, align 4, !tbaa !9
  %5256 = zext i32 %5255 to i64
  %5257 = call i32 @i32_load(ptr noundef %5254, i64 noundef %5256)
  store i32 %5257, ptr %37, align 4, !tbaa !9
  %5258 = load ptr, ptr %9, align 8, !tbaa !5
  %5259 = getelementptr inbounds %struct.w2c_hermes, ptr %5258, i32 0, i32 6
  %5260 = load i32, ptr %36, align 4, !tbaa !9
  %5261 = zext i32 %5260 to i64
  %5262 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5259, i64 noundef %5261, i32 noundef %5262)
  %5263 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5263, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5264 = load ptr, ptr %9, align 8, !tbaa !5
  %5265 = getelementptr inbounds %struct.w2c_hermes, ptr %5264, i32 0, i32 6
  %5266 = load i32, ptr %36, align 4, !tbaa !9
  %5267 = zext i32 %5266 to i64
  %5268 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5265, i64 noundef %5267, i32 noundef %5268)
  %5269 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5269, ptr %36, align 4, !tbaa !9
  store i32 568, ptr %37, align 4, !tbaa !9
  %5270 = load i32, ptr %37, align 4, !tbaa !9
  %5271 = load i32, ptr %36, align 4, !tbaa !9
  %5272 = add i32 %5271, %5270
  store i32 %5272, ptr %36, align 4, !tbaa !9
  %5273 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5273, ptr %18, align 4, !tbaa !9
  %5274 = load ptr, ptr %9, align 8, !tbaa !5
  %5275 = getelementptr inbounds %struct.w2c_hermes, ptr %5274, i32 0, i32 6
  %5276 = load i32, ptr %36, align 4, !tbaa !9
  %5277 = zext i32 %5276 to i64
  %5278 = call i32 @i32_load(ptr noundef %5275, i64 noundef %5277)
  store i32 %5278, ptr %36, align 4, !tbaa !9
  %5279 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5279, ptr %19, align 4, !tbaa !9
  %5280 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5280, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5281 = load ptr, ptr %9, align 8, !tbaa !5
  %5282 = getelementptr inbounds %struct.w2c_hermes, ptr %5281, i32 0, i32 6
  %5283 = load i32, ptr %36, align 4, !tbaa !9
  %5284 = zext i32 %5283 to i64
  %5285 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5282, i64 noundef %5284, i32 noundef %5285)
  %5286 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5286, ptr %36, align 4, !tbaa !9
  store i32 1812, ptr %37, align 4, !tbaa !9
  %5287 = load i32, ptr %37, align 4, !tbaa !9
  %5288 = load i32, ptr %36, align 4, !tbaa !9
  %5289 = add i32 %5288, %5287
  store i32 %5289, ptr %36, align 4, !tbaa !9
  %5290 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5290, ptr %37, align 4, !tbaa !9
  %5291 = load ptr, ptr %9, align 8, !tbaa !5
  %5292 = getelementptr inbounds %struct.w2c_hermes, ptr %5291, i32 0, i32 6
  %5293 = load i32, ptr %36, align 4, !tbaa !9
  %5294 = zext i32 %5293 to i64
  %5295 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5292, i64 noundef %5294, i32 noundef %5295)
  %5296 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5296, ptr %36, align 4, !tbaa !9
  store i32 572, ptr %37, align 4, !tbaa !9
  %5297 = load i32, ptr %37, align 4, !tbaa !9
  %5298 = load i32, ptr %36, align 4, !tbaa !9
  %5299 = add i32 %5298, %5297
  store i32 %5299, ptr %36, align 4, !tbaa !9
  %5300 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5300, ptr %18, align 4, !tbaa !9
  %5301 = load ptr, ptr %9, align 8, !tbaa !5
  %5302 = getelementptr inbounds %struct.w2c_hermes, ptr %5301, i32 0, i32 6
  %5303 = load i32, ptr %36, align 4, !tbaa !9
  %5304 = zext i32 %5303 to i64
  %5305 = call i32 @i32_load(ptr noundef %5302, i64 noundef %5304)
  store i32 %5305, ptr %36, align 4, !tbaa !9
  %5306 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5306, ptr %19, align 4, !tbaa !9
  %5307 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5307, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5308 = load ptr, ptr %9, align 8, !tbaa !5
  %5309 = getelementptr inbounds %struct.w2c_hermes, ptr %5308, i32 0, i32 6
  %5310 = load i32, ptr %36, align 4, !tbaa !9
  %5311 = zext i32 %5310 to i64
  %5312 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5309, i64 noundef %5311, i32 noundef %5312)
  %5313 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5313, ptr %36, align 4, !tbaa !9
  store i32 1816, ptr %37, align 4, !tbaa !9
  %5314 = load i32, ptr %37, align 4, !tbaa !9
  %5315 = load i32, ptr %36, align 4, !tbaa !9
  %5316 = add i32 %5315, %5314
  store i32 %5316, ptr %36, align 4, !tbaa !9
  %5317 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5317, ptr %37, align 4, !tbaa !9
  %5318 = load ptr, ptr %9, align 8, !tbaa !5
  %5319 = getelementptr inbounds %struct.w2c_hermes, ptr %5318, i32 0, i32 6
  %5320 = load i32, ptr %36, align 4, !tbaa !9
  %5321 = zext i32 %5320 to i64
  %5322 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5319, i64 noundef %5321, i32 noundef %5322)
  %5323 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5323, ptr %36, align 4, !tbaa !9
  store i32 576, ptr %37, align 4, !tbaa !9
  %5324 = load i32, ptr %37, align 4, !tbaa !9
  %5325 = load i32, ptr %36, align 4, !tbaa !9
  %5326 = add i32 %5325, %5324
  store i32 %5326, ptr %36, align 4, !tbaa !9
  %5327 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5327, ptr %18, align 4, !tbaa !9
  %5328 = load ptr, ptr %9, align 8, !tbaa !5
  %5329 = getelementptr inbounds %struct.w2c_hermes, ptr %5328, i32 0, i32 6
  %5330 = load i32, ptr %36, align 4, !tbaa !9
  %5331 = zext i32 %5330 to i64
  %5332 = call i32 @i32_load(ptr noundef %5329, i64 noundef %5331)
  store i32 %5332, ptr %36, align 4, !tbaa !9
  %5333 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5333, ptr %19, align 4, !tbaa !9
  %5334 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5334, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5335 = load ptr, ptr %9, align 8, !tbaa !5
  %5336 = getelementptr inbounds %struct.w2c_hermes, ptr %5335, i32 0, i32 6
  %5337 = load i32, ptr %36, align 4, !tbaa !9
  %5338 = zext i32 %5337 to i64
  %5339 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5336, i64 noundef %5338, i32 noundef %5339)
  %5340 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5340, ptr %36, align 4, !tbaa !9
  store i32 1820, ptr %37, align 4, !tbaa !9
  %5341 = load i32, ptr %37, align 4, !tbaa !9
  %5342 = load i32, ptr %36, align 4, !tbaa !9
  %5343 = add i32 %5342, %5341
  store i32 %5343, ptr %36, align 4, !tbaa !9
  %5344 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5344, ptr %37, align 4, !tbaa !9
  %5345 = load ptr, ptr %9, align 8, !tbaa !5
  %5346 = getelementptr inbounds %struct.w2c_hermes, ptr %5345, i32 0, i32 6
  %5347 = load i32, ptr %36, align 4, !tbaa !9
  %5348 = zext i32 %5347 to i64
  %5349 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5346, i64 noundef %5348, i32 noundef %5349)
  %5350 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5350, ptr %36, align 4, !tbaa !9
  store i32 580, ptr %37, align 4, !tbaa !9
  %5351 = load i32, ptr %37, align 4, !tbaa !9
  %5352 = load i32, ptr %36, align 4, !tbaa !9
  %5353 = add i32 %5352, %5351
  store i32 %5353, ptr %36, align 4, !tbaa !9
  %5354 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5354, ptr %18, align 4, !tbaa !9
  %5355 = load ptr, ptr %9, align 8, !tbaa !5
  %5356 = getelementptr inbounds %struct.w2c_hermes, ptr %5355, i32 0, i32 6
  %5357 = load i32, ptr %36, align 4, !tbaa !9
  %5358 = zext i32 %5357 to i64
  %5359 = call i32 @i32_load(ptr noundef %5356, i64 noundef %5358)
  store i32 %5359, ptr %36, align 4, !tbaa !9
  %5360 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5360, ptr %19, align 4, !tbaa !9
  %5361 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5361, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5362 = load ptr, ptr %9, align 8, !tbaa !5
  %5363 = getelementptr inbounds %struct.w2c_hermes, ptr %5362, i32 0, i32 6
  %5364 = load i32, ptr %36, align 4, !tbaa !9
  %5365 = zext i32 %5364 to i64
  %5366 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5363, i64 noundef %5365, i32 noundef %5366)
  %5367 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5367, ptr %36, align 4, !tbaa !9
  store i32 1824, ptr %37, align 4, !tbaa !9
  %5368 = load i32, ptr %37, align 4, !tbaa !9
  %5369 = load i32, ptr %36, align 4, !tbaa !9
  %5370 = add i32 %5369, %5368
  store i32 %5370, ptr %36, align 4, !tbaa !9
  %5371 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5371, ptr %37, align 4, !tbaa !9
  %5372 = load ptr, ptr %9, align 8, !tbaa !5
  %5373 = getelementptr inbounds %struct.w2c_hermes, ptr %5372, i32 0, i32 6
  %5374 = load i32, ptr %36, align 4, !tbaa !9
  %5375 = zext i32 %5374 to i64
  %5376 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5373, i64 noundef %5375, i32 noundef %5376)
  %5377 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5377, ptr %36, align 4, !tbaa !9
  store i32 584, ptr %37, align 4, !tbaa !9
  %5378 = load i32, ptr %37, align 4, !tbaa !9
  %5379 = load i32, ptr %36, align 4, !tbaa !9
  %5380 = add i32 %5379, %5378
  store i32 %5380, ptr %36, align 4, !tbaa !9
  %5381 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5381, ptr %18, align 4, !tbaa !9
  %5382 = load ptr, ptr %9, align 8, !tbaa !5
  %5383 = getelementptr inbounds %struct.w2c_hermes, ptr %5382, i32 0, i32 6
  %5384 = load i32, ptr %36, 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 %36, align 4, !tbaa !9
  %5387 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5387, ptr %19, align 4, !tbaa !9
  %5388 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5388, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5389 = load ptr, ptr %9, align 8, !tbaa !5
  %5390 = getelementptr inbounds %struct.w2c_hermes, ptr %5389, i32 0, i32 6
  %5391 = load i32, ptr %36, align 4, !tbaa !9
  %5392 = zext i32 %5391 to i64
  %5393 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5390, i64 noundef %5392, i32 noundef %5393)
  %5394 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5394, ptr %36, align 4, !tbaa !9
  store i32 1828, ptr %37, align 4, !tbaa !9
  %5395 = load i32, ptr %37, align 4, !tbaa !9
  %5396 = load i32, ptr %36, align 4, !tbaa !9
  %5397 = add i32 %5396, %5395
  store i32 %5397, ptr %36, align 4, !tbaa !9
  %5398 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5398, ptr %37, align 4, !tbaa !9
  %5399 = load ptr, ptr %9, align 8, !tbaa !5
  %5400 = getelementptr inbounds %struct.w2c_hermes, ptr %5399, i32 0, i32 6
  %5401 = load i32, ptr %36, align 4, !tbaa !9
  %5402 = zext i32 %5401 to i64
  %5403 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5400, i64 noundef %5402, i32 noundef %5403)
  %5404 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5404, ptr %36, align 4, !tbaa !9
  %5405 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5405, ptr %37, align 4, !tbaa !9
  %5406 = load ptr, ptr %9, align 8, !tbaa !5
  %5407 = getelementptr inbounds %struct.w2c_hermes, ptr %5406, i32 0, i32 6
  %5408 = load i32, ptr %37, align 4, !tbaa !9
  %5409 = zext i32 %5408 to i64
  %5410 = add i64 %5409, 588
  %5411 = call i32 @i32_load(ptr noundef %5407, i64 noundef %5410)
  store i32 %5411, ptr %37, align 4, !tbaa !9
  %5412 = load ptr, ptr %9, align 8, !tbaa !5
  %5413 = getelementptr inbounds %struct.w2c_hermes, ptr %5412, i32 0, i32 6
  %5414 = load i32, ptr %36, align 4, !tbaa !9
  %5415 = zext i32 %5414 to i64
  %5416 = add i64 %5415, 1832
  %5417 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5413, i64 noundef %5416, i32 noundef %5417)
  %5418 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5418, ptr %36, align 4, !tbaa !9
  store i32 1836, ptr %37, align 4, !tbaa !9
  %5419 = load i32, ptr %37, align 4, !tbaa !9
  %5420 = load i32, ptr %36, align 4, !tbaa !9
  %5421 = add i32 %5420, %5419
  store i32 %5421, ptr %36, align 4, !tbaa !9
  %5422 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5422, ptr %37, align 4, !tbaa !9
  store i32 592, ptr %38, align 4, !tbaa !9
  %5423 = load i32, ptr %38, align 4, !tbaa !9
  %5424 = load i32, ptr %37, align 4, !tbaa !9
  %5425 = add i32 %5424, %5423
  store i32 %5425, ptr %37, align 4, !tbaa !9
  %5426 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5426, ptr %18, align 4, !tbaa !9
  %5427 = load ptr, ptr %9, align 8, !tbaa !5
  %5428 = getelementptr inbounds %struct.w2c_hermes, ptr %5427, i32 0, i32 6
  %5429 = load i32, ptr %37, align 4, !tbaa !9
  %5430 = zext i32 %5429 to i64
  %5431 = call i32 @i32_load(ptr noundef %5428, i64 noundef %5430)
  store i32 %5431, ptr %37, align 4, !tbaa !9
  %5432 = load ptr, ptr %9, align 8, !tbaa !5
  %5433 = getelementptr inbounds %struct.w2c_hermes, ptr %5432, i32 0, i32 6
  %5434 = load i32, ptr %36, align 4, !tbaa !9
  %5435 = zext i32 %5434 to i64
  %5436 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5433, i64 noundef %5435, i32 noundef %5436)
  %5437 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5437, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5438 = load ptr, ptr %9, align 8, !tbaa !5
  %5439 = getelementptr inbounds %struct.w2c_hermes, ptr %5438, i32 0, i32 6
  %5440 = load i32, ptr %36, align 4, !tbaa !9
  %5441 = zext i32 %5440 to i64
  %5442 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5439, i64 noundef %5441, i32 noundef %5442)
  %5443 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5443, ptr %36, align 4, !tbaa !9
  store i32 596, ptr %37, align 4, !tbaa !9
  %5444 = load i32, ptr %37, align 4, !tbaa !9
  %5445 = load i32, ptr %36, align 4, !tbaa !9
  %5446 = add i32 %5445, %5444
  store i32 %5446, ptr %36, align 4, !tbaa !9
  %5447 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5447, ptr %18, align 4, !tbaa !9
  %5448 = load ptr, ptr %9, align 8, !tbaa !5
  %5449 = getelementptr inbounds %struct.w2c_hermes, ptr %5448, i32 0, i32 6
  %5450 = load i32, ptr %36, align 4, !tbaa !9
  %5451 = zext i32 %5450 to i64
  %5452 = call i32 @i32_load(ptr noundef %5449, i64 noundef %5451)
  store i32 %5452, ptr %36, align 4, !tbaa !9
  %5453 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5453, ptr %19, align 4, !tbaa !9
  %5454 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5454, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5455 = load ptr, ptr %9, align 8, !tbaa !5
  %5456 = getelementptr inbounds %struct.w2c_hermes, ptr %5455, i32 0, i32 6
  %5457 = load i32, ptr %36, align 4, !tbaa !9
  %5458 = zext i32 %5457 to i64
  %5459 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5456, i64 noundef %5458, i32 noundef %5459)
  %5460 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5460, ptr %36, align 4, !tbaa !9
  store i32 1840, ptr %37, align 4, !tbaa !9
  %5461 = load i32, ptr %37, align 4, !tbaa !9
  %5462 = load i32, ptr %36, align 4, !tbaa !9
  %5463 = add i32 %5462, %5461
  store i32 %5463, ptr %36, align 4, !tbaa !9
  %5464 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5464, ptr %37, align 4, !tbaa !9
  %5465 = load ptr, ptr %9, align 8, !tbaa !5
  %5466 = getelementptr inbounds %struct.w2c_hermes, ptr %5465, i32 0, i32 6
  %5467 = load i32, ptr %36, align 4, !tbaa !9
  %5468 = zext i32 %5467 to i64
  %5469 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5466, i64 noundef %5468, i32 noundef %5469)
  %5470 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5470, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5471 = load ptr, ptr %9, align 8, !tbaa !5
  %5472 = getelementptr inbounds %struct.w2c_hermes, ptr %5471, i32 0, i32 6
  %5473 = load i32, ptr %36, align 4, !tbaa !9
  %5474 = zext i32 %5473 to i64
  %5475 = add i64 %5474, 588
  %5476 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5472, i64 noundef %5475, i32 noundef %5476)
  %5477 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5477, ptr %36, align 4, !tbaa !9
  %5478 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5478, ptr %37, align 4, !tbaa !9
  %5479 = load ptr, ptr %9, align 8, !tbaa !5
  %5480 = getelementptr inbounds %struct.w2c_hermes, ptr %5479, i32 0, i32 6
  %5481 = load i32, ptr %37, align 4, !tbaa !9
  %5482 = zext i32 %5481 to i64
  %5483 = add i64 %5482, 600
  %5484 = call i32 @i32_load(ptr noundef %5480, i64 noundef %5483)
  store i32 %5484, ptr %37, align 4, !tbaa !9
  %5485 = load ptr, ptr %9, align 8, !tbaa !5
  %5486 = getelementptr inbounds %struct.w2c_hermes, ptr %5485, i32 0, i32 6
  %5487 = load i32, ptr %36, align 4, !tbaa !9
  %5488 = zext i32 %5487 to i64
  %5489 = add i64 %5488, 1844
  %5490 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5486, i64 noundef %5489, i32 noundef %5490)
  %5491 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5491, ptr %36, align 4, !tbaa !9
  store i32 1848, ptr %37, align 4, !tbaa !9
  %5492 = load i32, ptr %37, align 4, !tbaa !9
  %5493 = load i32, ptr %36, align 4, !tbaa !9
  %5494 = add i32 %5493, %5492
  store i32 %5494, ptr %36, align 4, !tbaa !9
  %5495 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5495, ptr %37, align 4, !tbaa !9
  store i32 604, ptr %38, align 4, !tbaa !9
  %5496 = load i32, ptr %38, align 4, !tbaa !9
  %5497 = load i32, ptr %37, align 4, !tbaa !9
  %5498 = add i32 %5497, %5496
  store i32 %5498, ptr %37, align 4, !tbaa !9
  %5499 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5499, ptr %18, align 4, !tbaa !9
  %5500 = load ptr, ptr %9, align 8, !tbaa !5
  %5501 = getelementptr inbounds %struct.w2c_hermes, ptr %5500, i32 0, i32 6
  %5502 = load i32, ptr %37, align 4, !tbaa !9
  %5503 = zext i32 %5502 to i64
  %5504 = call i32 @i32_load(ptr noundef %5501, i64 noundef %5503)
  store i32 %5504, ptr %37, align 4, !tbaa !9
  %5505 = load ptr, ptr %9, align 8, !tbaa !5
  %5506 = getelementptr inbounds %struct.w2c_hermes, ptr %5505, i32 0, i32 6
  %5507 = load i32, ptr %36, align 4, !tbaa !9
  %5508 = zext i32 %5507 to i64
  %5509 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5506, i64 noundef %5508, i32 noundef %5509)
  %5510 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5510, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5511 = load ptr, ptr %9, align 8, !tbaa !5
  %5512 = getelementptr inbounds %struct.w2c_hermes, ptr %5511, i32 0, i32 6
  %5513 = load i32, ptr %36, align 4, !tbaa !9
  %5514 = zext i32 %5513 to i64
  %5515 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5512, i64 noundef %5514, i32 noundef %5515)
  %5516 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5516, ptr %36, align 4, !tbaa !9
  store i32 608, ptr %37, align 4, !tbaa !9
  %5517 = load i32, ptr %37, align 4, !tbaa !9
  %5518 = load i32, ptr %36, align 4, !tbaa !9
  %5519 = add i32 %5518, %5517
  store i32 %5519, ptr %36, align 4, !tbaa !9
  %5520 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5520, ptr %18, align 4, !tbaa !9
  %5521 = load ptr, ptr %9, align 8, !tbaa !5
  %5522 = getelementptr inbounds %struct.w2c_hermes, ptr %5521, i32 0, i32 6
  %5523 = load i32, ptr %36, align 4, !tbaa !9
  %5524 = zext i32 %5523 to i64
  %5525 = call i32 @i32_load(ptr noundef %5522, i64 noundef %5524)
  store i32 %5525, ptr %36, align 4, !tbaa !9
  %5526 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5526, ptr %19, align 4, !tbaa !9
  %5527 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5527, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5528 = load ptr, ptr %9, align 8, !tbaa !5
  %5529 = getelementptr inbounds %struct.w2c_hermes, ptr %5528, i32 0, i32 6
  %5530 = load i32, ptr %36, align 4, !tbaa !9
  %5531 = zext i32 %5530 to i64
  %5532 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5529, i64 noundef %5531, i32 noundef %5532)
  %5533 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5533, ptr %36, align 4, !tbaa !9
  store i32 1852, ptr %37, align 4, !tbaa !9
  %5534 = load i32, ptr %37, align 4, !tbaa !9
  %5535 = load i32, ptr %36, align 4, !tbaa !9
  %5536 = add i32 %5535, %5534
  store i32 %5536, ptr %36, align 4, !tbaa !9
  %5537 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %5537, ptr %37, align 4, !tbaa !9
  %5538 = load ptr, ptr %9, align 8, !tbaa !5
  %5539 = getelementptr inbounds %struct.w2c_hermes, ptr %5538, i32 0, i32 6
  %5540 = load i32, ptr %36, align 4, !tbaa !9
  %5541 = zext i32 %5540 to i64
  %5542 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5539, i64 noundef %5541, i32 noundef %5542)
  %5543 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5543, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %5544 = load ptr, ptr %9, align 8, !tbaa !5
  %5545 = getelementptr inbounds %struct.w2c_hermes, ptr %5544, i32 0, i32 6
  %5546 = load i32, ptr %36, align 4, !tbaa !9
  %5547 = zext i32 %5546 to i64
  %5548 = add i64 %5547, 600
  %5549 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5545, i64 noundef %5548, i32 noundef %5549)
  %5550 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5550, ptr %36, align 4, !tbaa !9
  store i32 1856, ptr %37, align 4, !tbaa !9
  %5551 = load i32, ptr %37, align 4, !tbaa !9
  %5552 = load i32, ptr %36, align 4, !tbaa !9
  %5553 = add i32 %5552, %5551
  store i32 %5553, ptr %36, align 4, !tbaa !9
  %5554 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5554, ptr %37, align 4, !tbaa !9
  store i32 1764, ptr %38, align 4, !tbaa !9
  %5555 = load i32, ptr %38, align 4, !tbaa !9
  %5556 = load i32, ptr %37, align 4, !tbaa !9
  %5557 = add i32 %5556, %5555
  store i32 %5557, ptr %37, align 4, !tbaa !9
  %5558 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5558, ptr %38, align 4, !tbaa !9
  %5559 = load ptr, ptr %9, align 8, !tbaa !5
  %5560 = getelementptr inbounds %struct.w2c_hermes, ptr %5559, i32 0, i32 6
  %5561 = load i32, ptr %38, align 4, !tbaa !9
  %5562 = zext i32 %5561 to i64
  %5563 = add i64 %5562, 4
  %5564 = call i32 @i32_load8_u(ptr noundef %5560, i64 noundef %5563)
  store i32 %5564, ptr %38, align 4, !tbaa !9
  %5565 = load ptr, ptr %9, align 8, !tbaa !5
  %5566 = load i32, ptr %36, align 4, !tbaa !9
  %5567 = load i32, ptr %37, align 4, !tbaa !9
  %5568 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x3A0x3AtoTable0x28hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x2C0x20bool0x29(ptr noundef %5565, i32 noundef %5566, i32 noundef %5567, i32 noundef %5568)
  %5569 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5569, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %5570 = load i32, ptr %37, align 4, !tbaa !9
  %5571 = load i32, ptr %36, align 4, !tbaa !9
  %5572 = add i32 %5571, %5570
  store i32 %5572, ptr %36, align 4, !tbaa !9
  %5573 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5573, ptr %37, align 4, !tbaa !9
  store i32 1856, ptr %38, align 4, !tbaa !9
  %5574 = load i32, ptr %38, align 4, !tbaa !9
  %5575 = load i32, ptr %37, align 4, !tbaa !9
  %5576 = add i32 %5575, %5574
  store i32 %5576, ptr %37, align 4, !tbaa !9
  %5577 = load ptr, ptr %9, align 8, !tbaa !5
  %5578 = load i32, ptr %36, align 4, !tbaa !9
  %5579 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AinitializeStringTable0x28hermes0x3A0x3Ahbc0x3A0x3AStringLiteralTable0x29(ptr noundef %5577, i32 noundef %5578, i32 noundef %5579)
  %5580 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5580, ptr %36, align 4, !tbaa !9
  store i32 1856, ptr %37, align 4, !tbaa !9
  %5581 = load i32, ptr %37, align 4, !tbaa !9
  %5582 = load i32, ptr %36, align 4, !tbaa !9
  %5583 = add i32 %5582, %5581
  store i32 %5583, ptr %36, align 4, !tbaa !9
  %5584 = load ptr, ptr %9, align 8, !tbaa !5
  %5585 = load i32, ptr %36, align 4, !tbaa !9
  %5586 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef %5584, i32 noundef %5585)
  store i32 %5586, ptr %36, align 4, !tbaa !9
  %5587 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5587, ptr %36, align 4, !tbaa !9
  %5588 = load ptr, ptr %9, align 8, !tbaa !5
  %5589 = getelementptr inbounds %struct.w2c_hermes, ptr %5588, i32 0, i32 6
  %5590 = load i32, ptr %36, align 4, !tbaa !9
  %5591 = zext i32 %5590 to i64
  %5592 = add i64 %5591, 1844
  %5593 = call i32 @i32_load(ptr noundef %5589, i64 noundef %5592)
  store i32 %5593, ptr %36, align 4, !tbaa !9
  %5594 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5594, ptr %18, align 4, !tbaa !9
  %5595 = load i32, ptr %36, align 4, !tbaa !9
  %5596 = icmp ne i32 %5595, 0
  br i1 %5596, label %5597, label %5609

5597:                                             ; preds = %5112
  %5598 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5598, ptr %36, align 4, !tbaa !9
  %5599 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5599, ptr %37, align 4, !tbaa !9
  %5600 = load ptr, ptr %9, align 8, !tbaa !5
  %5601 = getelementptr inbounds %struct.w2c_hermes, ptr %5600, i32 0, i32 6
  %5602 = load i32, ptr %36, align 4, !tbaa !9
  %5603 = zext i32 %5602 to i64
  %5604 = add i64 %5603, 1848
  %5605 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5601, i64 noundef %5604, i32 noundef %5605)
  %5606 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5606, ptr %36, align 4, !tbaa !9
  %5607 = load ptr, ptr %9, align 8, !tbaa !5
  %5608 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %5607, i32 noundef %5608)
  br label %5609

5609:                                             ; preds = %5597, %5112
  %5610 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5610, ptr %36, align 4, !tbaa !9
  store i32 1764, ptr %37, align 4, !tbaa !9
  %5611 = load i32, ptr %37, align 4, !tbaa !9
  %5612 = load i32, ptr %36, align 4, !tbaa !9
  %5613 = add i32 %5612, %5611
  store i32 %5613, ptr %36, align 4, !tbaa !9
  %5614 = load ptr, ptr %9, align 8, !tbaa !5
  %5615 = load i32, ptr %36, align 4, !tbaa !9
  %5616 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef %5614, i32 noundef %5615)
  store i32 %5616, ptr %36, align 4, !tbaa !9
  %5617 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5617, ptr %36, align 4, !tbaa !9
  %5618 = load ptr, ptr %9, align 8, !tbaa !5
  %5619 = getelementptr inbounds %struct.w2c_hermes, ptr %5618, i32 0, i32 6
  %5620 = load i32, ptr %36, align 4, !tbaa !9
  %5621 = zext i32 %5620 to i64
  %5622 = add i64 %5621, 600
  %5623 = call i32 @i32_load(ptr noundef %5619, i64 noundef %5622)
  store i32 %5623, ptr %36, align 4, !tbaa !9
  %5624 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5624, ptr %18, align 4, !tbaa !9
  %5625 = load i32, ptr %36, align 4, !tbaa !9
  %5626 = icmp ne i32 %5625, 0
  br i1 %5626, label %5627, label %5639

5627:                                             ; preds = %5609
  %5628 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5628, ptr %36, align 4, !tbaa !9
  %5629 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5629, ptr %37, align 4, !tbaa !9
  %5630 = load ptr, ptr %9, align 8, !tbaa !5
  %5631 = getelementptr inbounds %struct.w2c_hermes, ptr %5630, i32 0, i32 6
  %5632 = load i32, ptr %36, align 4, !tbaa !9
  %5633 = zext i32 %5632 to i64
  %5634 = add i64 %5633, 604
  %5635 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5631, i64 noundef %5634, i32 noundef %5635)
  %5636 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5636, ptr %36, align 4, !tbaa !9
  %5637 = load ptr, ptr %9, align 8, !tbaa !5
  %5638 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %5637, i32 noundef %5638)
  br label %5639

5639:                                             ; preds = %5627, %5609
  %5640 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5640, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %5641 = load i32, ptr %37, align 4, !tbaa !9
  %5642 = load i32, ptr %36, align 4, !tbaa !9
  %5643 = add i32 %5642, %5641
  store i32 %5643, ptr %36, align 4, !tbaa !9
  %5644 = load ptr, ptr %9, align 8, !tbaa !5
  %5645 = load i32, ptr %36, align 4, !tbaa !9
  %5646 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef %5644, i32 noundef %5645)
  store i32 %5646, ptr %36, align 4, !tbaa !9
  %5647 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5647, ptr %36, align 4, !tbaa !9
  %5648 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %5648, ptr %37, align 4, !tbaa !9
  %5649 = load ptr, ptr %9, align 8, !tbaa !5
  %5650 = getelementptr inbounds %struct.w2c_hermes, ptr %5649, i32 0, i32 6
  %5651 = load i32, ptr %37, align 4, !tbaa !9
  %5652 = zext i32 %5651 to i64
  %5653 = add i64 %5652, 4
  %5654 = call i32 @i32_load8_u(ptr noundef %5650, i64 noundef %5653)
  store i32 %5654, ptr %37, align 4, !tbaa !9
  %5655 = load ptr, ptr %9, align 8, !tbaa !5
  %5656 = getelementptr inbounds %struct.w2c_hermes, ptr %5655, i32 0, i32 6
  %5657 = load i32, ptr %36, align 4, !tbaa !9
  %5658 = zext i32 %5657 to i64
  %5659 = add i64 %5658, 532
  %5660 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %5656, i64 noundef %5659, i32 noundef %5660)
  %5661 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5661, ptr %36, align 4, !tbaa !9
  %5662 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5662, ptr %37, align 4, !tbaa !9
  store i32 2232, ptr %38, align 4, !tbaa !9
  %5663 = load i32, ptr %38, align 4, !tbaa !9
  %5664 = load i32, ptr %37, align 4, !tbaa !9
  %5665 = add i32 %5664, %5663
  store i32 %5665, ptr %37, align 4, !tbaa !9
  %5666 = load ptr, ptr %9, align 8, !tbaa !5
  %5667 = getelementptr inbounds %struct.w2c_hermes, ptr %5666, i32 0, i32 6
  %5668 = load i32, ptr %36, align 4, !tbaa !9
  %5669 = zext i32 %5668 to i64
  %5670 = add i64 %5669, 536
  %5671 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5667, i64 noundef %5670, i32 noundef %5671)
  %5672 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5672, ptr %36, align 4, !tbaa !9
  %5673 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5673, ptr %37, align 4, !tbaa !9
  store i32 2232, ptr %38, align 4, !tbaa !9
  %5674 = load i32, ptr %38, align 4, !tbaa !9
  %5675 = load i32, ptr %37, align 4, !tbaa !9
  %5676 = add i32 %5675, %5674
  store i32 %5676, ptr %37, align 4, !tbaa !9
  %5677 = load ptr, ptr %9, align 8, !tbaa !5
  %5678 = getelementptr inbounds %struct.w2c_hermes, ptr %5677, i32 0, i32 6
  %5679 = load i32, ptr %36, align 4, !tbaa !9
  %5680 = zext i32 %5679 to i64
  %5681 = add i64 %5680, 528
  %5682 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5678, i64 noundef %5681, i32 noundef %5682)
  %5683 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5683, ptr %36, align 4, !tbaa !9
  %5684 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5684, ptr %37, align 4, !tbaa !9
  store i32 2192, ptr %38, align 4, !tbaa !9
  %5685 = load i32, ptr %38, align 4, !tbaa !9
  %5686 = load i32, ptr %37, align 4, !tbaa !9
  %5687 = add i32 %5686, %5685
  store i32 %5687, ptr %37, align 4, !tbaa !9
  %5688 = load ptr, ptr %9, align 8, !tbaa !5
  %5689 = getelementptr inbounds %struct.w2c_hermes, ptr %5688, i32 0, i32 6
  %5690 = load i32, ptr %36, align 4, !tbaa !9
  %5691 = zext i32 %5690 to i64
  %5692 = add i64 %5691, 524
  %5693 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5689, i64 noundef %5692, i32 noundef %5693)
  %5694 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5694, ptr %36, align 4, !tbaa !9
  %5695 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5695, ptr %37, align 4, !tbaa !9
  %5696 = load ptr, ptr %9, align 8, !tbaa !5
  %5697 = getelementptr inbounds %struct.w2c_hermes, ptr %5696, i32 0, i32 6
  %5698 = load i32, ptr %36, align 4, !tbaa !9
  %5699 = zext i32 %5698 to i64
  %5700 = add i64 %5699, 520
  %5701 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5697, i64 noundef %5700, i32 noundef %5701)
  store i32 0, ptr %36, align 4, !tbaa !9
  %5702 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5702, ptr %18, align 4, !tbaa !9
  %5703 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5703, ptr %36, align 4, !tbaa !9
  store i32 540, ptr %37, align 4, !tbaa !9
  %5704 = load i32, ptr %37, align 4, !tbaa !9
  %5705 = load i32, ptr %36, align 4, !tbaa !9
  %5706 = add i32 %5705, %5704
  store i32 %5706, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 192, ptr %38, align 4, !tbaa !9
  %5707 = load ptr, ptr %9, align 8, !tbaa !5
  %5708 = load i32, ptr %36, align 4, !tbaa !9
  %5709 = load i32, ptr %37, align 4, !tbaa !9
  %5710 = load i32, ptr %38, align 4, !tbaa !9
  %5711 = call i32 @w2c_hermes_0x5F_memset(ptr noundef %5707, i32 noundef %5708, i32 noundef %5709, i32 noundef %5710)
  store i32 %5711, ptr %36, align 4, !tbaa !9
  %5712 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5712, ptr %36, align 4, !tbaa !9
  %5713 = load ptr, ptr %9, align 8, !tbaa !5
  %5714 = getelementptr inbounds %struct.w2c_hermes, ptr %5713, i32 0, i32 6
  %5715 = load i32, ptr %36, align 4, !tbaa !9
  %5716 = zext i32 %5715 to i64
  %5717 = add i64 %5716, 44
  %5718 = call i32 @i32_load(ptr noundef %5714, i64 noundef %5717)
  store i32 %5718, ptr %36, align 4, !tbaa !9
  %5719 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5719, ptr %30, align 4, !tbaa !9
  %5720 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %5720, ptr %37, align 4, !tbaa !9
  store i32 40, ptr %38, align 4, !tbaa !9
  %5721 = load i32, ptr %38, align 4, !tbaa !9
  %5722 = load i32, ptr %37, align 4, !tbaa !9
  %5723 = add i32 %5722, %5721
  store i32 %5723, ptr %37, align 4, !tbaa !9
  %5724 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5724, ptr %33, align 4, !tbaa !9
  %5725 = load i32, ptr %36, align 4, !tbaa !9
  %5726 = load i32, ptr %37, align 4, !tbaa !9
  %5727 = icmp eq i32 %5725, %5726
  %5728 = zext i1 %5727 to i32
  store i32 %5728, ptr %36, align 4, !tbaa !9
  %5729 = load i32, ptr %36, align 4, !tbaa !9
  %5730 = icmp ne i32 %5729, 0
  br i1 %5730, label %5731, label %5734

5731:                                             ; preds = %5639
  store i32 0, ptr %36, align 4, !tbaa !9
  %5732 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5732, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %5733 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5733, ptr %20, align 4, !tbaa !9
  br label %7452

5734:                                             ; preds = %5639
  %5735 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5735, ptr %36, align 4, !tbaa !9
  store i32 552, ptr %37, align 4, !tbaa !9
  %5736 = load i32, ptr %37, align 4, !tbaa !9
  %5737 = load i32, ptr %36, align 4, !tbaa !9
  %5738 = add i32 %5737, %5736
  store i32 %5738, ptr %36, align 4, !tbaa !9
  %5739 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5739, ptr %27, align 4, !tbaa !9
  %5740 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5740, ptr %36, align 4, !tbaa !9
  store i32 132, ptr %37, align 4, !tbaa !9
  %5741 = load i32, ptr %37, align 4, !tbaa !9
  %5742 = load i32, ptr %36, align 4, !tbaa !9
  %5743 = add i32 %5742, %5741
  store i32 %5743, ptr %36, align 4, !tbaa !9
  %5744 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5744, ptr %23, align 4, !tbaa !9
  %5745 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5745, ptr %36, align 4, !tbaa !9
  store i32 668, ptr %37, align 4, !tbaa !9
  %5746 = load i32, ptr %37, align 4, !tbaa !9
  %5747 = load i32, ptr %36, align 4, !tbaa !9
  %5748 = add i32 %5747, %5746
  store i32 %5748, ptr %36, align 4, !tbaa !9
  %5749 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5749, ptr %29, align 4, !tbaa !9
  %5750 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5750, ptr %36, align 4, !tbaa !9
  store i32 616, ptr %37, align 4, !tbaa !9
  %5751 = load i32, ptr %37, align 4, !tbaa !9
  %5752 = load i32, ptr %36, align 4, !tbaa !9
  %5753 = add i32 %5752, %5751
  store i32 %5753, ptr %36, align 4, !tbaa !9
  %5754 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5754, ptr %32, align 4, !tbaa !9
  %5755 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5755, ptr %36, align 4, !tbaa !9
  store i32 416, ptr %37, align 4, !tbaa !9
  %5756 = load i32, ptr %37, align 4, !tbaa !9
  %5757 = load i32, ptr %36, align 4, !tbaa !9
  %5758 = add i32 %5757, %5756
  store i32 %5758, ptr %36, align 4, !tbaa !9
  %5759 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5759, ptr %25, align 4, !tbaa !9
  br label %5760

5760:                                             ; preds = %7294, %5734
  %5761 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5761, ptr %36, align 4, !tbaa !9
  %5762 = load ptr, ptr %9, align 8, !tbaa !5
  %5763 = getelementptr inbounds %struct.w2c_hermes, ptr %5762, i32 0, i32 6
  %5764 = load i32, ptr %36, align 4, !tbaa !9
  %5765 = zext i32 %5764 to i64
  %5766 = add i64 %5765, 524
  %5767 = call i32 @i32_load(ptr noundef %5763, i64 noundef %5766)
  store i32 %5767, ptr %36, align 4, !tbaa !9
  %5768 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5768, ptr %18, align 4, !tbaa !9
  %5769 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5769, ptr %36, align 4, !tbaa !9
  %5770 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %5770, ptr %37, align 4, !tbaa !9
  %5771 = load ptr, ptr %9, align 8, !tbaa !5
  %5772 = getelementptr inbounds %struct.w2c_hermes, ptr %5771, i32 0, i32 6
  %5773 = load i32, ptr %36, align 4, !tbaa !9
  %5774 = zext i32 %5773 to i64
  %5775 = add i64 %5774, 120
  %5776 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5772, i64 noundef %5775, i32 noundef %5776)
  %5777 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5777, ptr %36, align 4, !tbaa !9
  %5778 = load ptr, ptr %9, align 8, !tbaa !5
  %5779 = getelementptr inbounds %struct.w2c_hermes, ptr %5778, i32 0, i32 6
  %5780 = load i32, ptr %36, align 4, !tbaa !9
  %5781 = zext i32 %5780 to i64
  %5782 = add i64 %5781, 16
  %5783 = call i32 @i32_load(ptr noundef %5779, i64 noundef %5782)
  store i32 %5783, ptr %36, align 4, !tbaa !9
  %5784 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5784, ptr %18, align 4, !tbaa !9
  %5785 = load i32, ptr %36, align 4, !tbaa !9
  %5786 = icmp ne i32 %5785, 0
  %5787 = xor i1 %5786, true
  %5788 = zext i1 %5787 to i32
  store i32 %5788, ptr %36, align 4, !tbaa !9
  %5789 = load i32, ptr %36, align 4, !tbaa !9
  %5790 = icmp ne i32 %5789, 0
  br i1 %5790, label %5791, label %5792

5791:                                             ; preds = %5760
  br label %13020

5792:                                             ; preds = %5760
  %5793 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5793, ptr %36, align 4, !tbaa !9
  %5794 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5794, ptr %37, align 4, !tbaa !9
  store i32 120, ptr %38, align 4, !tbaa !9
  %5795 = load i32, ptr %38, align 4, !tbaa !9
  %5796 = load i32, ptr %37, align 4, !tbaa !9
  %5797 = add i32 %5796, %5795
  store i32 %5797, ptr %37, align 4, !tbaa !9
  %5798 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5798, ptr %38, align 4, !tbaa !9
  %5799 = load ptr, ptr %9, align 8, !tbaa !5
  %5800 = getelementptr inbounds %struct.w2c_hermes, ptr %5799, i32 0, i32 6
  %5801 = load i32, ptr %38, align 4, !tbaa !9
  %5802 = zext i32 %5801 to i64
  %5803 = call i32 @i32_load(ptr noundef %5800, i64 noundef %5802)
  store i32 %5803, ptr %38, align 4, !tbaa !9
  %5804 = load ptr, ptr %9, align 8, !tbaa !5
  %5805 = getelementptr inbounds %struct.w2c_hermes, ptr %5804, i32 0, i32 6
  %5806 = load i32, ptr %38, align 4, !tbaa !9
  %5807 = zext i32 %5806 to i64
  %5808 = add i64 %5807, 24
  %5809 = call i32 @i32_load(ptr noundef %5805, i64 noundef %5808)
  store i32 %5809, ptr %38, align 4, !tbaa !9
  %5810 = load i32, ptr %38, align 4, !tbaa !9
  %5811 = load ptr, ptr %9, align 8, !tbaa !5
  %5812 = getelementptr inbounds %struct.w2c_hermes, ptr %5811, i32 0, i32 7
  %5813 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5812, i32 0, i32 2
  %5814 = load i32, ptr %5813, align 4, !tbaa !18
  %5815 = icmp ult i32 %5810, %5814
  br i1 %5815, label %5816, label %5839

5816:                                             ; preds = %5792
  %5817 = load ptr, ptr %9, align 8, !tbaa !5
  %5818 = getelementptr inbounds %struct.w2c_hermes, ptr %5817, i32 0, i32 7
  %5819 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5818, i32 0, i32 0
  %5820 = load ptr, ptr %5819, align 8, !tbaa !19
  %5821 = load i32, ptr %38, align 4, !tbaa !9
  %5822 = zext i32 %5821 to i64
  %5823 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5820, i64 %5822
  %5824 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5823, i32 0, i32 1
  %5825 = load ptr, ptr %5824, align 8, !tbaa !20
  %5826 = icmp ne ptr %5825, null
  br i1 %5826, label %5827, label %5839

5827:                                             ; preds = %5816
  %5828 = load ptr, ptr @w2c_hermes_t5, align 8, !tbaa !5
  %5829 = load ptr, ptr %9, align 8, !tbaa !5
  %5830 = getelementptr inbounds %struct.w2c_hermes, ptr %5829, i32 0, i32 7
  %5831 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5830, i32 0, i32 0
  %5832 = load ptr, ptr %5831, align 8, !tbaa !19
  %5833 = load i32, ptr %38, align 4, !tbaa !9
  %5834 = zext i32 %5833 to i64
  %5835 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5832, i64 %5834
  %5836 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5835, i32 0, i32 0
  %5837 = load ptr, ptr %5836, align 8, !tbaa !22
  %5838 = call zeroext i1 @func_types_eq(ptr noundef %5828, ptr noundef %5837)
  br label %5839

5839:                                             ; preds = %5827, %5816, %5792
  %5840 = phi i1 [ false, %5816 ], [ false, %5792 ], [ %5838, %5827 ]
  %5841 = xor i1 %5840, true
  %5842 = xor i1 %5841, true
  %5843 = zext i1 %5842 to i32
  %5844 = sext i32 %5843 to i64
  %5845 = call i64 @llvm.expect.i64(i64 %5844, i64 1)
  %5846 = icmp ne i64 %5845, 0
  br i1 %5846, label %5849, label %5847

5847:                                             ; preds = %5839
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

5848:                                             ; No predecessors!
  br label %5849

5849:                                             ; preds = %5848, %5839
  %5850 = phi i1 [ true, %5839 ], [ false, %5848 ]
  %5851 = zext i1 %5850 to i32
  %5852 = load ptr, ptr %9, align 8, !tbaa !5
  %5853 = getelementptr inbounds %struct.w2c_hermes, ptr %5852, i32 0, i32 7
  %5854 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5853, i32 0, i32 0
  %5855 = load ptr, ptr %5854, align 8, !tbaa !19
  %5856 = load i32, ptr %38, align 4, !tbaa !9
  %5857 = zext i32 %5856 to i64
  %5858 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5855, i64 %5857
  %5859 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5858, i32 0, i32 1
  %5860 = load ptr, ptr %5859, align 8, !tbaa !20
  %5861 = load ptr, ptr %9, align 8, !tbaa !5
  %5862 = getelementptr inbounds %struct.w2c_hermes, ptr %5861, i32 0, i32 7
  %5863 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %5862, i32 0, i32 0
  %5864 = load ptr, ptr %5863, align 8, !tbaa !19
  %5865 = load i32, ptr %38, align 4, !tbaa !9
  %5866 = zext i32 %5865 to i64
  %5867 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5864, i64 %5866
  %5868 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %5867, i32 0, i32 2
  %5869 = load ptr, ptr %5868, align 8, !tbaa !23
  %5870 = load i32, ptr %36, align 4, !tbaa !9
  %5871 = load i32, ptr %37, align 4, !tbaa !9
  %5872 = call i32 %5860(ptr noundef %5869, i32 noundef %5870, i32 noundef %5871)
  store i32 %5872, ptr %36, align 4, !tbaa !9
  %5873 = load i32, ptr %36, align 4, !tbaa !9
  %5874 = icmp ne i32 %5873, 0
  %5875 = xor i1 %5874, true
  %5876 = zext i1 %5875 to i32
  store i32 %5876, ptr %36, align 4, !tbaa !9
  %5877 = load i32, ptr %36, align 4, !tbaa !9
  %5878 = icmp ne i32 %5877, 0
  br i1 %5878, label %5879, label %5880

5879:                                             ; preds = %5849
  br label %7278

5880:                                             ; preds = %5849
  %5881 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %5881, ptr %36, align 4, !tbaa !9
  %5882 = load ptr, ptr %9, align 8, !tbaa !5
  %5883 = getelementptr inbounds %struct.w2c_hermes, ptr %5882, i32 0, i32 6
  %5884 = load i32, ptr %36, align 4, !tbaa !9
  %5885 = zext i32 %5884 to i64
  %5886 = add i64 %5885, 52
  %5887 = call i32 @i32_load(ptr noundef %5883, i64 noundef %5886)
  store i32 %5887, ptr %36, align 4, !tbaa !9
  %5888 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5888, ptr %26, align 4, !tbaa !9
  %5889 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %5889, ptr %37, align 4, !tbaa !9
  store i32 48, ptr %38, align 4, !tbaa !9
  %5890 = load i32, ptr %38, align 4, !tbaa !9
  %5891 = load i32, ptr %37, align 4, !tbaa !9
  %5892 = add i32 %5891, %5890
  store i32 %5892, ptr %37, align 4, !tbaa !9
  %5893 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5893, ptr %31, align 4, !tbaa !9
  %5894 = load i32, ptr %36, align 4, !tbaa !9
  %5895 = load i32, ptr %37, align 4, !tbaa !9
  %5896 = icmp eq i32 %5894, %5895
  %5897 = zext i1 %5896 to i32
  store i32 %5897, ptr %36, align 4, !tbaa !9
  %5898 = load i32, ptr %36, align 4, !tbaa !9
  %5899 = icmp ne i32 %5898, 0
  br i1 %5899, label %5900, label %5901

5900:                                             ; preds = %5880
  br label %7278

5901:                                             ; preds = %5880
  br label %5902

5902:                                             ; preds = %7276, %5901
  %5903 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %5903, ptr %36, align 4, !tbaa !9
  %5904 = load ptr, ptr %9, align 8, !tbaa !5
  %5905 = getelementptr inbounds %struct.w2c_hermes, ptr %5904, i32 0, i32 6
  %5906 = load i32, ptr %36, align 4, !tbaa !9
  %5907 = zext i32 %5906 to i64
  %5908 = add i64 %5907, 40
  %5909 = call i32 @i32_load(ptr noundef %5905, i64 noundef %5908)
  store i32 %5909, ptr %36, align 4, !tbaa !9
  %5910 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5910, ptr %14, align 4, !tbaa !9
  %5911 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %5911, ptr %37, align 4, !tbaa !9
  store i32 36, ptr %38, align 4, !tbaa !9
  %5912 = load i32, ptr %38, align 4, !tbaa !9
  %5913 = load i32, ptr %37, align 4, !tbaa !9
  %5914 = add i32 %5913, %5912
  store i32 %5914, ptr %37, align 4, !tbaa !9
  %5915 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5915, ptr %22, align 4, !tbaa !9
  %5916 = load i32, ptr %36, align 4, !tbaa !9
  %5917 = load i32, ptr %37, align 4, !tbaa !9
  %5918 = icmp ne i32 %5916, %5917
  %5919 = zext i1 %5918 to i32
  store i32 %5919, ptr %36, align 4, !tbaa !9
  %5920 = load i32, ptr %36, align 4, !tbaa !9
  %5921 = icmp ne i32 %5920, 0
  br i1 %5921, label %5922, label %7260

5922:                                             ; preds = %5902
  br label %5923

5923:                                             ; preds = %7258, %5922
  %5924 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5924, ptr %36, align 4, !tbaa !9
  %5925 = load i32, ptr %36, align 4, !tbaa !9
  %5926 = icmp ne i32 %5925, 0
  br i1 %5926, label %5927, label %6803

5927:                                             ; preds = %5923
  %5928 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5928, ptr %36, align 4, !tbaa !9
  %5929 = load ptr, ptr %9, align 8, !tbaa !5
  %5930 = getelementptr inbounds %struct.w2c_hermes, ptr %5929, i32 0, i32 6
  %5931 = load i32, ptr %36, align 4, !tbaa !9
  %5932 = zext i32 %5931 to i64
  %5933 = add i64 %5932, 8
  %5934 = call i32 @i32_load8_u(ptr noundef %5930, i64 noundef %5933)
  store i32 %5934, ptr %36, align 4, !tbaa !9
  %5935 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5935, ptr %18, align 4, !tbaa !9
  store i32 106, ptr %37, align 4, !tbaa !9
  %5936 = load i32, ptr %36, align 4, !tbaa !9
  %5937 = load i32, ptr %37, align 4, !tbaa !9
  %5938 = icmp ne i32 %5936, %5937
  %5939 = zext i1 %5938 to i32
  store i32 %5939, ptr %36, align 4, !tbaa !9
  %5940 = load i32, ptr %36, align 4, !tbaa !9
  %5941 = icmp ne i32 %5940, 0
  br i1 %5941, label %5942, label %6138

5942:                                             ; preds = %5927
  %5943 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5943, ptr %36, align 4, !tbaa !9
  store i32 54, ptr %37, align 4, !tbaa !9
  %5944 = load i32, ptr %36, align 4, !tbaa !9
  %5945 = load i32, ptr %37, align 4, !tbaa !9
  %5946 = icmp ne i32 %5944, %5945
  %5947 = zext i1 %5946 to i32
  store i32 %5947, ptr %36, align 4, !tbaa !9
  %5948 = load i32, ptr %36, align 4, !tbaa !9
  %5949 = icmp ne i32 %5948, 0
  br i1 %5949, label %5950, label %5951

5950:                                             ; preds = %5942
  br label %7242

5951:                                             ; preds = %5942
  %5952 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5952, ptr %36, align 4, !tbaa !9
  store i64 34359738368, ptr %43, align 8, !tbaa !11
  %5953 = load ptr, ptr %9, align 8, !tbaa !5
  %5954 = getelementptr inbounds %struct.w2c_hermes, ptr %5953, i32 0, i32 6
  %5955 = load i32, ptr %36, align 4, !tbaa !9
  %5956 = zext i32 %5955 to i64
  %5957 = add i64 %5956, 124
  %5958 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %5954, i64 noundef %5957, i64 noundef %5958)
  %5959 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5959, ptr %36, align 4, !tbaa !9
  %5960 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %5960, ptr %37, align 4, !tbaa !9
  %5961 = load ptr, ptr %9, align 8, !tbaa !5
  %5962 = getelementptr inbounds %struct.w2c_hermes, ptr %5961, i32 0, i32 6
  %5963 = load i32, ptr %36, align 4, !tbaa !9
  %5964 = zext i32 %5963 to i64
  %5965 = add i64 %5964, 120
  %5966 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %5962, i64 noundef %5965, i32 noundef %5966)
  store i32 0, ptr %36, align 4, !tbaa !9
  %5967 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5967, ptr %18, align 4, !tbaa !9
  %5968 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5968, ptr %36, align 4, !tbaa !9
  %5969 = load ptr, ptr %9, align 8, !tbaa !5
  %5970 = load i32, ptr %36, align 4, !tbaa !9
  %5971 = call i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetNumOperands0x280x290x20const(ptr noundef %5969, i32 noundef %5970)
  store i32 %5971, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %5972 = load i32, ptr %37, align 4, !tbaa !9
  %5973 = load i32, ptr %36, align 4, !tbaa !9
  %5974 = sub i32 %5973, %5972
  store i32 %5974, ptr %36, align 4, !tbaa !9
  %5975 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5975, ptr %21, align 4, !tbaa !9
  %5976 = load i32, ptr %36, align 4, !tbaa !9
  %5977 = icmp ne i32 %5976, 0
  %5978 = xor i1 %5977, true
  %5979 = zext i1 %5978 to i32
  store i32 %5979, ptr %36, align 4, !tbaa !9
  %5980 = load i32, ptr %36, align 4, !tbaa !9
  %5981 = icmp ne i32 %5980, 0
  br i1 %5981, label %5982, label %5991

5982:                                             ; preds = %5951
  %5983 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %5983, ptr %36, align 4, !tbaa !9
  %5984 = load ptr, ptr %9, align 8, !tbaa !5
  %5985 = getelementptr inbounds %struct.w2c_hermes, ptr %5984, i32 0, i32 6
  %5986 = load i32, ptr %36, align 4, !tbaa !9
  %5987 = zext i32 %5986 to i64
  %5988 = add i64 %5987, 124
  %5989 = call i32 @i32_load(ptr noundef %5985, i64 noundef %5988)
  store i32 %5989, ptr %36, align 4, !tbaa !9
  %5990 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %5990, ptr %19, align 4, !tbaa !9
  br label %6965

5991:                                             ; preds = %5951
  br label %5992

5992:                                             ; preds = %6136, %5991
  %5993 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %5993, ptr %36, align 4, !tbaa !9
  %5994 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %5994, ptr %37, align 4, !tbaa !9
  store i32 1, ptr %38, align 4, !tbaa !9
  %5995 = load i32, ptr %38, align 4, !tbaa !9
  %5996 = load i32, ptr %37, align 4, !tbaa !9
  %5997 = add i32 %5996, %5995
  store i32 %5997, ptr %37, align 4, !tbaa !9
  %5998 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %5998, ptr %18, align 4, !tbaa !9
  %5999 = load ptr, ptr %9, align 8, !tbaa !5
  %6000 = load i32, ptr %36, align 4, !tbaa !9
  %6001 = load i32, ptr %37, align 4, !tbaa !9
  %6002 = call i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetOperand0x28unsigned0x20int0x290x20const(ptr noundef %5999, i32 noundef %6000, i32 noundef %6001)
  store i32 %6002, ptr %36, align 4, !tbaa !9
  %6003 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6003, ptr %19, align 4, !tbaa !9
  %6004 = load i32, ptr %36, align 4, !tbaa !9
  %6005 = icmp ne i32 %6004, 0
  %6006 = xor i1 %6005, true
  %6007 = zext i1 %6006 to i32
  store i32 %6007, ptr %36, align 4, !tbaa !9
  %6008 = load i32, ptr %36, align 4, !tbaa !9
  %6009 = icmp ne i32 %6008, 0
  br i1 %6009, label %6010, label %6011

6010:                                             ; preds = %5992
  br label %6821

6011:                                             ; preds = %5992
  %6012 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6012, ptr %36, align 4, !tbaa !9
  %6013 = load ptr, ptr %9, align 8, !tbaa !5
  %6014 = getelementptr inbounds %struct.w2c_hermes, ptr %6013, i32 0, i32 6
  %6015 = load i32, ptr %36, align 4, !tbaa !9
  %6016 = zext i32 %6015 to i64
  %6017 = call i32 @i32_load8_u(ptr noundef %6014, i64 noundef %6016)
  store i32 %6017, ptr %36, align 4, !tbaa !9
  store i32 109, ptr %37, align 4, !tbaa !9
  %6018 = load i32, ptr %37, align 4, !tbaa !9
  %6019 = load i32, ptr %36, align 4, !tbaa !9
  %6020 = sub i32 %6019, %6018
  store i32 %6020, ptr %36, align 4, !tbaa !9
  store i32 255, ptr %37, align 4, !tbaa !9
  %6021 = load i32, ptr %37, align 4, !tbaa !9
  %6022 = load i32, ptr %36, align 4, !tbaa !9
  %6023 = and i32 %6022, %6021
  store i32 %6023, ptr %36, align 4, !tbaa !9
  store i32 11, ptr %37, align 4, !tbaa !9
  %6024 = load i32, ptr %36, align 4, !tbaa !9
  %6025 = load i32, ptr %37, align 4, !tbaa !9
  %6026 = icmp uge i32 %6024, %6025
  %6027 = zext i1 %6026 to i32
  store i32 %6027, ptr %36, align 4, !tbaa !9
  %6028 = load i32, ptr %36, align 4, !tbaa !9
  %6029 = icmp ne i32 %6028, 0
  br i1 %6029, label %6030, label %6031

6030:                                             ; preds = %6011
  br label %6839

6031:                                             ; preds = %6011
  %6032 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6032, ptr %36, align 4, !tbaa !9
  %6033 = load ptr, ptr %9, align 8, !tbaa !5
  %6034 = getelementptr inbounds %struct.w2c_hermes, ptr %6033, i32 0, i32 6
  %6035 = load i32, ptr %36, align 4, !tbaa !9
  %6036 = zext i32 %6035 to i64
  %6037 = add i64 %6036, 124
  %6038 = call i32 @i32_load(ptr noundef %6034, i64 noundef %6037)
  store i32 %6038, ptr %36, align 4, !tbaa !9
  %6039 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6039, ptr %20, align 4, !tbaa !9
  %6040 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6040, ptr %37, align 4, !tbaa !9
  %6041 = load ptr, ptr %9, align 8, !tbaa !5
  %6042 = getelementptr inbounds %struct.w2c_hermes, ptr %6041, i32 0, i32 6
  %6043 = load i32, ptr %37, align 4, !tbaa !9
  %6044 = zext i32 %6043 to i64
  %6045 = add i64 %6044, 128
  %6046 = call i32 @i32_load(ptr noundef %6042, i64 noundef %6045)
  store i32 %6046, ptr %37, align 4, !tbaa !9
  %6047 = load i32, ptr %36, align 4, !tbaa !9
  %6048 = load i32, ptr %37, align 4, !tbaa !9
  %6049 = icmp uge i32 %6047, %6048
  %6050 = zext i1 %6049 to i32
  store i32 %6050, ptr %36, align 4, !tbaa !9
  %6051 = load i32, ptr %36, align 4, !tbaa !9
  %6052 = icmp ne i32 %6051, 0
  br i1 %6052, label %6053, label %6072

6053:                                             ; preds = %6031
  %6054 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6054, ptr %36, align 4, !tbaa !9
  store i32 120, ptr %37, align 4, !tbaa !9
  %6055 = load i32, ptr %37, align 4, !tbaa !9
  %6056 = load i32, ptr %36, align 4, !tbaa !9
  %6057 = add i32 %6056, %6055
  store i32 %6057, ptr %36, align 4, !tbaa !9
  %6058 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %6058, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  store i32 4, ptr %39, align 4, !tbaa !9
  %6059 = load ptr, ptr %9, align 8, !tbaa !5
  %6060 = load i32, ptr %36, align 4, !tbaa !9
  %6061 = load i32, ptr %37, align 4, !tbaa !9
  %6062 = load i32, ptr %38, align 4, !tbaa !9
  %6063 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %6059, i32 noundef %6060, i32 noundef %6061, i32 noundef %6062, i32 noundef %6063)
  %6064 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6064, ptr %36, align 4, !tbaa !9
  %6065 = load ptr, ptr %9, align 8, !tbaa !5
  %6066 = getelementptr inbounds %struct.w2c_hermes, ptr %6065, i32 0, i32 6
  %6067 = load i32, ptr %36, align 4, !tbaa !9
  %6068 = zext i32 %6067 to i64
  %6069 = add i64 %6068, 124
  %6070 = call i32 @i32_load(ptr noundef %6066, i64 noundef %6069)
  store i32 %6070, ptr %36, align 4, !tbaa !9
  %6071 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6071, ptr %20, align 4, !tbaa !9
  br label %6072

6072:                                             ; preds = %6053, %6031
  %6073 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6073, ptr %36, align 4, !tbaa !9
  %6074 = load ptr, ptr %9, align 8, !tbaa !5
  %6075 = getelementptr inbounds %struct.w2c_hermes, ptr %6074, i32 0, i32 6
  %6076 = load i32, ptr %36, align 4, !tbaa !9
  %6077 = zext i32 %6076 to i64
  %6078 = add i64 %6077, 120
  %6079 = call i32 @i32_load(ptr noundef %6075, i64 noundef %6078)
  store i32 %6079, ptr %36, align 4, !tbaa !9
  %6080 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6080, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %6081 = load i32, ptr %38, align 4, !tbaa !9
  %6082 = and i32 %6081, 31
  %6083 = load i32, ptr %37, align 4, !tbaa !9
  %6084 = shl i32 %6083, %6082
  store i32 %6084, ptr %37, align 4, !tbaa !9
  %6085 = load i32, ptr %37, align 4, !tbaa !9
  %6086 = load i32, ptr %36, align 4, !tbaa !9
  %6087 = add i32 %6086, %6085
  store i32 %6087, ptr %36, align 4, !tbaa !9
  %6088 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6088, ptr %37, align 4, !tbaa !9
  %6089 = load ptr, ptr %9, align 8, !tbaa !5
  %6090 = getelementptr inbounds %struct.w2c_hermes, ptr %6089, i32 0, i32 6
  %6091 = load i32, ptr %36, align 4, !tbaa !9
  %6092 = zext i32 %6091 to i64
  %6093 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6090, i64 noundef %6092, i32 noundef %6093)
  %6094 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6094, ptr %36, align 4, !tbaa !9
  %6095 = load ptr, ptr %9, align 8, !tbaa !5
  %6096 = getelementptr inbounds %struct.w2c_hermes, ptr %6095, i32 0, i32 6
  %6097 = load i32, ptr %36, align 4, !tbaa !9
  %6098 = zext i32 %6097 to i64
  %6099 = add i64 %6098, 124
  %6100 = call i32 @i32_load(ptr noundef %6096, i64 noundef %6099)
  store i32 %6100, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6101 = load i32, ptr %37, align 4, !tbaa !9
  %6102 = load i32, ptr %36, align 4, !tbaa !9
  %6103 = add i32 %6102, %6101
  store i32 %6103, ptr %36, align 4, !tbaa !9
  %6104 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6104, ptr %19, align 4, !tbaa !9
  %6105 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6105, ptr %37, align 4, !tbaa !9
  %6106 = load ptr, ptr %9, align 8, !tbaa !5
  %6107 = getelementptr inbounds %struct.w2c_hermes, ptr %6106, i32 0, i32 6
  %6108 = load i32, ptr %37, align 4, !tbaa !9
  %6109 = zext i32 %6108 to i64
  %6110 = add i64 %6109, 128
  %6111 = call i32 @i32_load(ptr noundef %6107, i64 noundef %6110)
  store i32 %6111, ptr %37, align 4, !tbaa !9
  %6112 = load i32, ptr %36, align 4, !tbaa !9
  %6113 = load i32, ptr %37, align 4, !tbaa !9
  %6114 = icmp ugt i32 %6112, %6113
  %6115 = zext i1 %6114 to i32
  store i32 %6115, ptr %36, align 4, !tbaa !9
  %6116 = load i32, ptr %36, align 4, !tbaa !9
  %6117 = icmp ne i32 %6116, 0
  br i1 %6117, label %6118, label %6119

6118:                                             ; preds = %6072
  br label %6857

6119:                                             ; preds = %6072
  %6120 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6120, ptr %36, align 4, !tbaa !9
  %6121 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6121, ptr %37, align 4, !tbaa !9
  %6122 = load ptr, ptr %9, align 8, !tbaa !5
  %6123 = getelementptr inbounds %struct.w2c_hermes, ptr %6122, i32 0, i32 6
  %6124 = load i32, ptr %36, align 4, !tbaa !9
  %6125 = zext i32 %6124 to i64
  %6126 = add i64 %6125, 124
  %6127 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6123, i64 noundef %6126, i32 noundef %6127)
  %6128 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6128, ptr %36, align 4, !tbaa !9
  %6129 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6129, ptr %37, align 4, !tbaa !9
  %6130 = load i32, ptr %36, align 4, !tbaa !9
  %6131 = load i32, ptr %37, align 4, !tbaa !9
  %6132 = icmp ne i32 %6130, %6131
  %6133 = zext i1 %6132 to i32
  store i32 %6133, ptr %36, align 4, !tbaa !9
  %6134 = load i32, ptr %36, align 4, !tbaa !9
  %6135 = icmp ne i32 %6134, 0
  br i1 %6135, label %6136, label %6137

6136:                                             ; preds = %6119
  br label %5992

6137:                                             ; preds = %6119
  br label %6965

6138:                                             ; preds = %5927
  %6139 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6139, ptr %36, align 4, !tbaa !9
  %6140 = load ptr, ptr %9, align 8, !tbaa !5
  %6141 = load i32, ptr %36, align 4, !tbaa !9
  %6142 = call i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetNumOperands0x280x290x20const(ptr noundef %6140, i32 noundef %6141)
  store i32 %6142, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6143 = load i32, ptr %37, align 4, !tbaa !9
  %6144 = load i32, ptr %36, align 4, !tbaa !9
  %6145 = sub i32 %6144, %6143
  store i32 %6145, ptr %36, align 4, !tbaa !9
  %6146 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6146, ptr %18, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %6147 = load i32, ptr %36, align 4, !tbaa !9
  %6148 = load i32, ptr %37, align 4, !tbaa !9
  %6149 = icmp ult i32 %6147, %6148
  %6150 = zext i1 %6149 to i32
  store i32 %6150, ptr %36, align 4, !tbaa !9
  %6151 = load i32, ptr %36, align 4, !tbaa !9
  %6152 = icmp ne i32 %6151, 0
  br i1 %6152, label %6153, label %6154

6153:                                             ; preds = %6138
  br label %7242

6154:                                             ; preds = %6138
  %6155 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6155, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6156 = load i32, ptr %37, align 4, !tbaa !9
  %6157 = and i32 %6156, 31
  %6158 = load i32, ptr %36, align 4, !tbaa !9
  %6159 = lshr i32 %6158, %6157
  store i32 %6159, ptr %36, align 4, !tbaa !9
  %6160 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6160, ptr %21, align 4, !tbaa !9
  %6161 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6161, ptr %36, align 4, !tbaa !9
  store i64 34359738368, ptr %43, align 8, !tbaa !11
  %6162 = load ptr, ptr %9, align 8, !tbaa !5
  %6163 = getelementptr inbounds %struct.w2c_hermes, ptr %6162, i32 0, i32 6
  %6164 = load i32, ptr %36, align 4, !tbaa !9
  %6165 = zext i32 %6164 to i64
  %6166 = add i64 %6165, 124
  %6167 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6163, i64 noundef %6166, i64 noundef %6167)
  %6168 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6168, ptr %36, align 4, !tbaa !9
  %6169 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %6169, ptr %37, align 4, !tbaa !9
  %6170 = load ptr, ptr %9, align 8, !tbaa !5
  %6171 = getelementptr inbounds %struct.w2c_hermes, ptr %6170, i32 0, i32 6
  %6172 = load i32, ptr %36, align 4, !tbaa !9
  %6173 = zext i32 %6172 to i64
  %6174 = add i64 %6173, 120
  %6175 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6171, i64 noundef %6174, i32 noundef %6175)
  %6176 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6176, ptr %36, align 4, !tbaa !9
  store i64 34359738368, ptr %43, align 8, !tbaa !11
  %6177 = load ptr, ptr %9, align 8, !tbaa !5
  %6178 = getelementptr inbounds %struct.w2c_hermes, ptr %6177, i32 0, i32 6
  %6179 = load i32, ptr %36, align 4, !tbaa !9
  %6180 = zext i32 %6179 to i64
  %6181 = add i64 %6180, 408
  %6182 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6178, i64 noundef %6181, i64 noundef %6182)
  %6183 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6183, ptr %36, align 4, !tbaa !9
  %6184 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %6184, ptr %37, align 4, !tbaa !9
  %6185 = load ptr, ptr %9, align 8, !tbaa !5
  %6186 = getelementptr inbounds %struct.w2c_hermes, ptr %6185, i32 0, i32 6
  %6187 = load i32, ptr %36, align 4, !tbaa !9
  %6188 = zext i32 %6187 to i64
  %6189 = add i64 %6188, 404
  %6190 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6186, i64 noundef %6189, i32 noundef %6190)
  store i32 0, ptr %36, align 4, !tbaa !9
  %6191 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6191, ptr %18, align 4, !tbaa !9
  br label %6192

6192:                                             ; preds = %6439, %6154
  %6193 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6193, ptr %36, align 4, !tbaa !9
  store i32 1664, ptr %37, align 4, !tbaa !9
  %6194 = load i32, ptr %37, align 4, !tbaa !9
  %6195 = load i32, ptr %36, align 4, !tbaa !9
  %6196 = add i32 %6195, %6194
  store i32 %6196, ptr %36, align 4, !tbaa !9
  %6197 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6197, ptr %37, align 4, !tbaa !9
  %6198 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6198, ptr %38, align 4, !tbaa !9
  %6199 = load ptr, ptr %9, align 8, !tbaa !5
  %6200 = load i32, ptr %36, align 4, !tbaa !9
  %6201 = load i32, ptr %37, align 4, !tbaa !9
  %6202 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AHBCAllocObjectFromBufferInst0x3A0x3AgetKeyValuePair0x28unsigned0x20int0x290x20const(ptr noundef %6199, i32 noundef %6200, i32 noundef %6201, i32 noundef %6202)
  %6203 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6203, ptr %36, align 4, !tbaa !9
  %6204 = load ptr, ptr %9, align 8, !tbaa !5
  %6205 = getelementptr inbounds %struct.w2c_hermes, ptr %6204, i32 0, i32 6
  %6206 = load i32, ptr %36, align 4, !tbaa !9
  %6207 = zext i32 %6206 to i64
  %6208 = add i64 %6207, 1664
  %6209 = call i32 @i32_load(ptr noundef %6205, i64 noundef %6208)
  store i32 %6209, ptr %36, align 4, !tbaa !9
  %6210 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6210, ptr %20, align 4, !tbaa !9
  %6211 = load i32, ptr %36, align 4, !tbaa !9
  %6212 = icmp ne i32 %6211, 0
  %6213 = xor i1 %6212, true
  %6214 = zext i1 %6213 to i32
  store i32 %6214, ptr %36, align 4, !tbaa !9
  %6215 = load i32, ptr %36, align 4, !tbaa !9
  %6216 = icmp ne i32 %6215, 0
  br i1 %6216, label %6217, label %6218

6217:                                             ; preds = %6192
  br label %6875

6218:                                             ; preds = %6192
  %6219 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6219, ptr %36, align 4, !tbaa !9
  %6220 = load ptr, ptr %9, align 8, !tbaa !5
  %6221 = getelementptr inbounds %struct.w2c_hermes, ptr %6220, i32 0, i32 6
  %6222 = load i32, ptr %36, align 4, !tbaa !9
  %6223 = zext i32 %6222 to i64
  %6224 = add i64 %6223, 124
  %6225 = call i32 @i32_load(ptr noundef %6221, i64 noundef %6224)
  store i32 %6225, ptr %36, align 4, !tbaa !9
  %6226 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6226, ptr %19, align 4, !tbaa !9
  %6227 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6227, ptr %37, align 4, !tbaa !9
  %6228 = load ptr, ptr %9, align 8, !tbaa !5
  %6229 = getelementptr inbounds %struct.w2c_hermes, ptr %6228, i32 0, i32 6
  %6230 = load i32, ptr %37, align 4, !tbaa !9
  %6231 = zext i32 %6230 to i64
  %6232 = add i64 %6231, 128
  %6233 = call i32 @i32_load(ptr noundef %6229, i64 noundef %6232)
  store i32 %6233, ptr %37, align 4, !tbaa !9
  %6234 = load i32, ptr %36, align 4, !tbaa !9
  %6235 = load i32, ptr %37, align 4, !tbaa !9
  %6236 = icmp uge i32 %6234, %6235
  %6237 = zext i1 %6236 to i32
  store i32 %6237, ptr %36, align 4, !tbaa !9
  %6238 = load i32, ptr %36, align 4, !tbaa !9
  %6239 = icmp ne i32 %6238, 0
  br i1 %6239, label %6240, label %6259

6240:                                             ; preds = %6218
  %6241 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6241, ptr %36, align 4, !tbaa !9
  store i32 120, ptr %37, align 4, !tbaa !9
  %6242 = load i32, ptr %37, align 4, !tbaa !9
  %6243 = load i32, ptr %36, align 4, !tbaa !9
  %6244 = add i32 %6243, %6242
  store i32 %6244, ptr %36, align 4, !tbaa !9
  %6245 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %6245, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  store i32 4, ptr %39, align 4, !tbaa !9
  %6246 = load ptr, ptr %9, align 8, !tbaa !5
  %6247 = load i32, ptr %36, align 4, !tbaa !9
  %6248 = load i32, ptr %37, align 4, !tbaa !9
  %6249 = load i32, ptr %38, align 4, !tbaa !9
  %6250 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %6246, i32 noundef %6247, i32 noundef %6248, i32 noundef %6249, i32 noundef %6250)
  %6251 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6251, ptr %36, align 4, !tbaa !9
  %6252 = load ptr, ptr %9, align 8, !tbaa !5
  %6253 = getelementptr inbounds %struct.w2c_hermes, ptr %6252, i32 0, i32 6
  %6254 = load i32, ptr %36, align 4, !tbaa !9
  %6255 = zext i32 %6254 to i64
  %6256 = add i64 %6255, 124
  %6257 = call i32 @i32_load(ptr noundef %6253, i64 noundef %6256)
  store i32 %6257, ptr %36, align 4, !tbaa !9
  %6258 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6258, ptr %19, align 4, !tbaa !9
  br label %6259

6259:                                             ; preds = %6240, %6218
  %6260 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6260, ptr %36, align 4, !tbaa !9
  %6261 = load ptr, ptr %9, align 8, !tbaa !5
  %6262 = getelementptr inbounds %struct.w2c_hermes, ptr %6261, i32 0, i32 6
  %6263 = load i32, ptr %36, align 4, !tbaa !9
  %6264 = zext i32 %6263 to i64
  %6265 = add i64 %6264, 120
  %6266 = call i32 @i32_load(ptr noundef %6262, i64 noundef %6265)
  store i32 %6266, ptr %36, align 4, !tbaa !9
  %6267 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6267, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %6268 = load i32, ptr %38, align 4, !tbaa !9
  %6269 = and i32 %6268, 31
  %6270 = load i32, ptr %37, align 4, !tbaa !9
  %6271 = shl i32 %6270, %6269
  store i32 %6271, ptr %37, align 4, !tbaa !9
  %6272 = load i32, ptr %37, align 4, !tbaa !9
  %6273 = load i32, ptr %36, align 4, !tbaa !9
  %6274 = add i32 %6273, %6272
  store i32 %6274, ptr %36, align 4, !tbaa !9
  %6275 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6275, ptr %37, align 4, !tbaa !9
  %6276 = load ptr, ptr %9, align 8, !tbaa !5
  %6277 = getelementptr inbounds %struct.w2c_hermes, ptr %6276, i32 0, i32 6
  %6278 = load i32, ptr %36, align 4, !tbaa !9
  %6279 = zext i32 %6278 to i64
  %6280 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6277, i64 noundef %6279, i32 noundef %6280)
  %6281 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6281, ptr %36, align 4, !tbaa !9
  %6282 = load ptr, ptr %9, align 8, !tbaa !5
  %6283 = getelementptr inbounds %struct.w2c_hermes, ptr %6282, i32 0, i32 6
  %6284 = load i32, ptr %36, align 4, !tbaa !9
  %6285 = zext i32 %6284 to i64
  %6286 = add i64 %6285, 124
  %6287 = call i32 @i32_load(ptr noundef %6283, i64 noundef %6286)
  store i32 %6287, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6288 = load i32, ptr %37, align 4, !tbaa !9
  %6289 = load i32, ptr %36, align 4, !tbaa !9
  %6290 = add i32 %6289, %6288
  store i32 %6290, ptr %36, align 4, !tbaa !9
  %6291 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6291, ptr %19, align 4, !tbaa !9
  %6292 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6292, ptr %37, align 4, !tbaa !9
  %6293 = load ptr, ptr %9, align 8, !tbaa !5
  %6294 = getelementptr inbounds %struct.w2c_hermes, ptr %6293, i32 0, i32 6
  %6295 = load i32, ptr %37, align 4, !tbaa !9
  %6296 = zext i32 %6295 to i64
  %6297 = add i64 %6296, 128
  %6298 = call i32 @i32_load(ptr noundef %6294, i64 noundef %6297)
  store i32 %6298, ptr %37, align 4, !tbaa !9
  %6299 = load i32, ptr %36, align 4, !tbaa !9
  %6300 = load i32, ptr %37, align 4, !tbaa !9
  %6301 = icmp ugt i32 %6299, %6300
  %6302 = zext i1 %6301 to i32
  store i32 %6302, ptr %36, align 4, !tbaa !9
  %6303 = load i32, ptr %36, align 4, !tbaa !9
  %6304 = icmp ne i32 %6303, 0
  br i1 %6304, label %6305, label %6306

6305:                                             ; preds = %6259
  br label %6893

6306:                                             ; preds = %6259
  %6307 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6307, ptr %36, align 4, !tbaa !9
  %6308 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6308, ptr %37, align 4, !tbaa !9
  %6309 = load ptr, ptr %9, align 8, !tbaa !5
  %6310 = getelementptr inbounds %struct.w2c_hermes, ptr %6309, i32 0, i32 6
  %6311 = load i32, ptr %36, align 4, !tbaa !9
  %6312 = zext i32 %6311 to i64
  %6313 = add i64 %6312, 124
  %6314 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6310, i64 noundef %6313, i32 noundef %6314)
  %6315 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6315, ptr %36, align 4, !tbaa !9
  %6316 = load ptr, ptr %9, align 8, !tbaa !5
  %6317 = getelementptr inbounds %struct.w2c_hermes, ptr %6316, i32 0, i32 6
  %6318 = load i32, ptr %36, align 4, !tbaa !9
  %6319 = zext i32 %6318 to i64
  %6320 = add i64 %6319, 1668
  %6321 = call i32 @i32_load(ptr noundef %6317, i64 noundef %6320)
  store i32 %6321, ptr %36, align 4, !tbaa !9
  %6322 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6322, ptr %20, align 4, !tbaa !9
  %6323 = load i32, ptr %36, align 4, !tbaa !9
  %6324 = icmp ne i32 %6323, 0
  %6325 = xor i1 %6324, true
  %6326 = zext i1 %6325 to i32
  store i32 %6326, ptr %36, align 4, !tbaa !9
  %6327 = load i32, ptr %36, align 4, !tbaa !9
  %6328 = icmp ne i32 %6327, 0
  br i1 %6328, label %6329, label %6330

6329:                                             ; preds = %6306
  br label %6911

6330:                                             ; preds = %6306
  %6331 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6331, ptr %36, align 4, !tbaa !9
  %6332 = load ptr, ptr %9, align 8, !tbaa !5
  %6333 = getelementptr inbounds %struct.w2c_hermes, ptr %6332, i32 0, i32 6
  %6334 = load i32, ptr %36, align 4, !tbaa !9
  %6335 = zext i32 %6334 to i64
  %6336 = add i64 %6335, 408
  %6337 = call i32 @i32_load(ptr noundef %6333, i64 noundef %6336)
  store i32 %6337, ptr %36, align 4, !tbaa !9
  %6338 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6338, ptr %19, align 4, !tbaa !9
  %6339 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6339, ptr %37, align 4, !tbaa !9
  %6340 = load ptr, ptr %9, align 8, !tbaa !5
  %6341 = getelementptr inbounds %struct.w2c_hermes, ptr %6340, i32 0, i32 6
  %6342 = load i32, ptr %37, align 4, !tbaa !9
  %6343 = zext i32 %6342 to i64
  %6344 = add i64 %6343, 412
  %6345 = call i32 @i32_load(ptr noundef %6341, i64 noundef %6344)
  store i32 %6345, ptr %37, align 4, !tbaa !9
  %6346 = load i32, ptr %36, align 4, !tbaa !9
  %6347 = load i32, ptr %37, align 4, !tbaa !9
  %6348 = icmp uge i32 %6346, %6347
  %6349 = zext i1 %6348 to i32
  store i32 %6349, ptr %36, align 4, !tbaa !9
  %6350 = load i32, ptr %36, align 4, !tbaa !9
  %6351 = icmp ne i32 %6350, 0
  br i1 %6351, label %6352, label %6371

6352:                                             ; preds = %6330
  %6353 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6353, ptr %36, align 4, !tbaa !9
  store i32 404, ptr %37, align 4, !tbaa !9
  %6354 = load i32, ptr %37, align 4, !tbaa !9
  %6355 = load i32, ptr %36, align 4, !tbaa !9
  %6356 = add i32 %6355, %6354
  store i32 %6356, ptr %36, align 4, !tbaa !9
  %6357 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %6357, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  store i32 4, ptr %39, align 4, !tbaa !9
  %6358 = load ptr, ptr %9, align 8, !tbaa !5
  %6359 = load i32, ptr %36, align 4, !tbaa !9
  %6360 = load i32, ptr %37, align 4, !tbaa !9
  %6361 = load i32, ptr %38, align 4, !tbaa !9
  %6362 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %6358, i32 noundef %6359, i32 noundef %6360, i32 noundef %6361, i32 noundef %6362)
  %6363 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6363, ptr %36, align 4, !tbaa !9
  %6364 = load ptr, ptr %9, align 8, !tbaa !5
  %6365 = getelementptr inbounds %struct.w2c_hermes, ptr %6364, i32 0, i32 6
  %6366 = load i32, ptr %36, align 4, !tbaa !9
  %6367 = zext i32 %6366 to i64
  %6368 = add i64 %6367, 408
  %6369 = call i32 @i32_load(ptr noundef %6365, i64 noundef %6368)
  store i32 %6369, ptr %36, align 4, !tbaa !9
  %6370 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6370, ptr %19, align 4, !tbaa !9
  br label %6371

6371:                                             ; preds = %6352, %6330
  %6372 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6372, ptr %36, align 4, !tbaa !9
  %6373 = load ptr, ptr %9, align 8, !tbaa !5
  %6374 = getelementptr inbounds %struct.w2c_hermes, ptr %6373, i32 0, i32 6
  %6375 = load i32, ptr %36, align 4, !tbaa !9
  %6376 = zext i32 %6375 to i64
  %6377 = add i64 %6376, 404
  %6378 = call i32 @i32_load(ptr noundef %6374, i64 noundef %6377)
  store i32 %6378, ptr %36, align 4, !tbaa !9
  %6379 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6379, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %6380 = load i32, ptr %38, align 4, !tbaa !9
  %6381 = and i32 %6380, 31
  %6382 = load i32, ptr %37, align 4, !tbaa !9
  %6383 = shl i32 %6382, %6381
  store i32 %6383, ptr %37, align 4, !tbaa !9
  %6384 = load i32, ptr %37, align 4, !tbaa !9
  %6385 = load i32, ptr %36, align 4, !tbaa !9
  %6386 = add i32 %6385, %6384
  store i32 %6386, ptr %36, align 4, !tbaa !9
  %6387 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6387, ptr %37, align 4, !tbaa !9
  %6388 = load ptr, ptr %9, align 8, !tbaa !5
  %6389 = getelementptr inbounds %struct.w2c_hermes, ptr %6388, i32 0, i32 6
  %6390 = load i32, ptr %36, align 4, !tbaa !9
  %6391 = zext i32 %6390 to i64
  %6392 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6389, i64 noundef %6391, i32 noundef %6392)
  %6393 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6393, ptr %36, align 4, !tbaa !9
  %6394 = load ptr, ptr %9, align 8, !tbaa !5
  %6395 = getelementptr inbounds %struct.w2c_hermes, ptr %6394, i32 0, i32 6
  %6396 = load i32, ptr %36, align 4, !tbaa !9
  %6397 = zext i32 %6396 to i64
  %6398 = add i64 %6397, 408
  %6399 = call i32 @i32_load(ptr noundef %6395, i64 noundef %6398)
  store i32 %6399, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6400 = load i32, ptr %37, align 4, !tbaa !9
  %6401 = load i32, ptr %36, align 4, !tbaa !9
  %6402 = add i32 %6401, %6400
  store i32 %6402, ptr %36, align 4, !tbaa !9
  %6403 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6403, ptr %19, align 4, !tbaa !9
  %6404 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6404, ptr %37, align 4, !tbaa !9
  %6405 = load ptr, ptr %9, align 8, !tbaa !5
  %6406 = getelementptr inbounds %struct.w2c_hermes, ptr %6405, i32 0, i32 6
  %6407 = load i32, ptr %37, align 4, !tbaa !9
  %6408 = zext i32 %6407 to i64
  %6409 = add i64 %6408, 412
  %6410 = call i32 @i32_load(ptr noundef %6406, i64 noundef %6409)
  store i32 %6410, ptr %37, align 4, !tbaa !9
  %6411 = load i32, ptr %36, align 4, !tbaa !9
  %6412 = load i32, ptr %37, align 4, !tbaa !9
  %6413 = icmp ugt i32 %6411, %6412
  %6414 = zext i1 %6413 to i32
  store i32 %6414, ptr %36, align 4, !tbaa !9
  %6415 = load i32, ptr %36, align 4, !tbaa !9
  %6416 = icmp ne i32 %6415, 0
  br i1 %6416, label %6417, label %6418

6417:                                             ; preds = %6371
  br label %6929

6418:                                             ; preds = %6371
  %6419 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6419, ptr %36, align 4, !tbaa !9
  %6420 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6420, ptr %37, align 4, !tbaa !9
  %6421 = load ptr, ptr %9, align 8, !tbaa !5
  %6422 = getelementptr inbounds %struct.w2c_hermes, ptr %6421, i32 0, i32 6
  %6423 = load i32, ptr %36, align 4, !tbaa !9
  %6424 = zext i32 %6423 to i64
  %6425 = add i64 %6424, 408
  %6426 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6422, i64 noundef %6425, i32 noundef %6426)
  %6427 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6427, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6428 = load i32, ptr %37, align 4, !tbaa !9
  %6429 = load i32, ptr %36, align 4, !tbaa !9
  %6430 = add i32 %6429, %6428
  store i32 %6430, ptr %36, align 4, !tbaa !9
  %6431 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6431, ptr %18, align 4, !tbaa !9
  %6432 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6432, ptr %37, align 4, !tbaa !9
  %6433 = load i32, ptr %36, align 4, !tbaa !9
  %6434 = load i32, ptr %37, align 4, !tbaa !9
  %6435 = icmp ne i32 %6433, %6434
  %6436 = zext i1 %6435 to i32
  store i32 %6436, ptr %36, align 4, !tbaa !9
  %6437 = load i32, ptr %36, align 4, !tbaa !9
  %6438 = icmp ne i32 %6437, 0
  br i1 %6438, label %6439, label %6440

6439:                                             ; preds = %6418
  br label %6192

6440:                                             ; preds = %6418
  %6441 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6441, ptr %36, align 4, !tbaa !9
  %6442 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6442, ptr %37, align 4, !tbaa !9
  %6443 = load ptr, ptr %9, align 8, !tbaa !5
  %6444 = getelementptr inbounds %struct.w2c_hermes, ptr %6443, i32 0, i32 6
  %6445 = load i32, ptr %37, align 4, !tbaa !9
  %6446 = zext i32 %6445 to i64
  %6447 = add i64 %6446, 120
  %6448 = call i64 @i64_load(ptr noundef %6444, i64 noundef %6447)
  store i64 %6448, ptr %43, align 8, !tbaa !11
  %6449 = load i64, ptr %43, align 8, !tbaa !11
  store i64 %6449, ptr %35, align 8, !tbaa !11
  %6450 = load ptr, ptr %9, align 8, !tbaa !5
  %6451 = getelementptr inbounds %struct.w2c_hermes, ptr %6450, i32 0, i32 6
  %6452 = load i32, ptr %36, align 4, !tbaa !9
  %6453 = zext i32 %6452 to i64
  %6454 = add i64 %6453, 1664
  %6455 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6451, i64 noundef %6454, i64 noundef %6455)
  %6456 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6456, ptr %36, align 4, !tbaa !9
  %6457 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %6457, ptr %43, align 8, !tbaa !11
  %6458 = load ptr, ptr %9, align 8, !tbaa !5
  %6459 = getelementptr inbounds %struct.w2c_hermes, ptr %6458, i32 0, i32 6
  %6460 = load i32, ptr %36, align 4, !tbaa !9
  %6461 = zext i32 %6460 to i64
  %6462 = add i64 %6461, 104
  %6463 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6459, i64 noundef %6462, i64 noundef %6463)
  %6464 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6464, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %6465 = load i32, ptr %37, align 4, !tbaa !9
  %6466 = load i32, ptr %36, align 4, !tbaa !9
  %6467 = add i32 %6466, %6465
  store i32 %6467, ptr %36, align 4, !tbaa !9
  %6468 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %6468, ptr %37, align 4, !tbaa !9
  %6469 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6469, ptr %38, align 4, !tbaa !9
  store i32 104, ptr %39, align 4, !tbaa !9
  %6470 = load i32, ptr %39, align 4, !tbaa !9
  %6471 = load i32, ptr %38, align 4, !tbaa !9
  %6472 = add i32 %6471, %6470
  store i32 %6472, ptr %38, align 4, !tbaa !9
  store i32 1, ptr %39, align 4, !tbaa !9
  %6473 = load ptr, ptr %9, align 8, !tbaa !5
  %6474 = load i32, ptr %36, align 4, !tbaa !9
  %6475 = load i32, ptr %37, align 4, !tbaa !9
  %6476 = load i32, ptr %38, align 4, !tbaa !9
  %6477 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef %6473, i32 noundef %6474, i32 noundef %6475, i32 noundef %6476, i32 noundef %6477)
  %6478 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6478, ptr %36, align 4, !tbaa !9
  %6479 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6479, ptr %37, align 4, !tbaa !9
  %6480 = load ptr, ptr %9, align 8, !tbaa !5
  %6481 = getelementptr inbounds %struct.w2c_hermes, ptr %6480, i32 0, i32 6
  %6482 = load i32, ptr %37, align 4, !tbaa !9
  %6483 = zext i32 %6482 to i64
  %6484 = add i64 %6483, 404
  %6485 = call i64 @i64_load(ptr noundef %6481, i64 noundef %6484)
  store i64 %6485, ptr %43, align 8, !tbaa !11
  %6486 = load i64, ptr %43, align 8, !tbaa !11
  store i64 %6486, ptr %35, align 8, !tbaa !11
  %6487 = load ptr, ptr %9, align 8, !tbaa !5
  %6488 = getelementptr inbounds %struct.w2c_hermes, ptr %6487, i32 0, i32 6
  %6489 = load i32, ptr %36, align 4, !tbaa !9
  %6490 = zext i32 %6489 to i64
  %6491 = add i64 %6490, 496
  %6492 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6488, i64 noundef %6491, i64 noundef %6492)
  %6493 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6493, ptr %36, align 4, !tbaa !9
  %6494 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %6494, ptr %43, align 8, !tbaa !11
  %6495 = load ptr, ptr %9, align 8, !tbaa !5
  %6496 = getelementptr inbounds %struct.w2c_hermes, ptr %6495, i32 0, i32 6
  %6497 = load i32, ptr %36, align 4, !tbaa !9
  %6498 = zext i32 %6497 to i64
  %6499 = add i64 %6498, 96
  %6500 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6496, i64 noundef %6499, i64 noundef %6500)
  %6501 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6501, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %6502 = load i32, ptr %37, align 4, !tbaa !9
  %6503 = load i32, ptr %36, align 4, !tbaa !9
  %6504 = add i32 %6503, %6502
  store i32 %6504, ptr %36, align 4, !tbaa !9
  %6505 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %6505, ptr %37, align 4, !tbaa !9
  %6506 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6506, ptr %38, align 4, !tbaa !9
  store i32 96, ptr %39, align 4, !tbaa !9
  %6507 = load i32, ptr %39, align 4, !tbaa !9
  %6508 = load i32, ptr %38, align 4, !tbaa !9
  %6509 = add i32 %6508, %6507
  store i32 %6509, ptr %38, align 4, !tbaa !9
  store i32 0, ptr %39, align 4, !tbaa !9
  %6510 = load ptr, ptr %9, align 8, !tbaa !5
  %6511 = load i32, ptr %36, align 4, !tbaa !9
  %6512 = load i32, ptr %37, align 4, !tbaa !9
  %6513 = load i32, ptr %38, align 4, !tbaa !9
  %6514 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef %6510, i32 noundef %6511, i32 noundef %6512, i32 noundef %6513, i32 noundef %6514)
  %6515 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6515, ptr %36, align 4, !tbaa !9
  %6516 = load ptr, ptr %9, align 8, !tbaa !5
  %6517 = getelementptr inbounds %struct.w2c_hermes, ptr %6516, i32 0, i32 6
  %6518 = load i32, ptr %36, align 4, !tbaa !9
  %6519 = zext i32 %6518 to i64
  %6520 = add i64 %6519, 660
  %6521 = call i32 @i32_load(ptr noundef %6517, i64 noundef %6520)
  store i32 %6521, ptr %36, align 4, !tbaa !9
  %6522 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6522, ptr %37, align 4, !tbaa !9
  %6523 = load ptr, ptr %9, align 8, !tbaa !5
  %6524 = getelementptr inbounds %struct.w2c_hermes, ptr %6523, i32 0, i32 6
  %6525 = load i32, ptr %37, align 4, !tbaa !9
  %6526 = zext i32 %6525 to i64
  %6527 = add i64 %6526, 656
  %6528 = call i32 @i32_load(ptr noundef %6524, i64 noundef %6527)
  store i32 %6528, ptr %37, align 4, !tbaa !9
  %6529 = load i32, ptr %37, align 4, !tbaa !9
  %6530 = load i32, ptr %36, align 4, !tbaa !9
  %6531 = sub i32 %6530, %6529
  store i32 %6531, ptr %36, align 4, !tbaa !9
  %6532 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6532, ptr %37, align 4, !tbaa !9
  %6533 = load ptr, ptr %9, align 8, !tbaa !5
  %6534 = getelementptr inbounds %struct.w2c_hermes, ptr %6533, i32 0, i32 6
  %6535 = load i32, ptr %37, align 4, !tbaa !9
  %6536 = zext i32 %6535 to i64
  %6537 = add i64 %6536, 712
  %6538 = call i32 @i32_load(ptr noundef %6534, i64 noundef %6537)
  store i32 %6538, ptr %37, align 4, !tbaa !9
  %6539 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6539, ptr %38, align 4, !tbaa !9
  %6540 = load ptr, ptr %9, align 8, !tbaa !5
  %6541 = getelementptr inbounds %struct.w2c_hermes, ptr %6540, i32 0, i32 6
  %6542 = load i32, ptr %38, align 4, !tbaa !9
  %6543 = zext i32 %6542 to i64
  %6544 = add i64 %6543, 708
  %6545 = call i32 @i32_load(ptr noundef %6541, i64 noundef %6544)
  store i32 %6545, ptr %38, align 4, !tbaa !9
  %6546 = load i32, ptr %38, align 4, !tbaa !9
  %6547 = load i32, ptr %37, align 4, !tbaa !9
  %6548 = sub i32 %6547, %6546
  store i32 %6548, ptr %37, align 4, !tbaa !9
  %6549 = load i32, ptr %36, align 4, !tbaa !9
  %6550 = load i32, ptr %37, align 4, !tbaa !9
  %6551 = icmp ne i32 %6549, %6550
  %6552 = zext i1 %6551 to i32
  store i32 %6552, ptr %36, align 4, !tbaa !9
  %6553 = load i32, ptr %36, align 4, !tbaa !9
  %6554 = icmp ne i32 %6553, 0
  br i1 %6554, label %6555, label %6556

6555:                                             ; preds = %6440
  br label %6947

6556:                                             ; preds = %6440
  %6557 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6557, ptr %36, align 4, !tbaa !9
  %6558 = load ptr, ptr %9, align 8, !tbaa !5
  %6559 = getelementptr inbounds %struct.w2c_hermes, ptr %6558, i32 0, i32 6
  %6560 = load i32, ptr %36, align 4, !tbaa !9
  %6561 = zext i32 %6560 to i64
  %6562 = add i64 %6561, 724
  %6563 = call i32 @i32_load(ptr noundef %6559, i64 noundef %6562)
  store i32 %6563, ptr %36, align 4, !tbaa !9
  %6564 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6564, ptr %18, align 4, !tbaa !9
  %6565 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6565, ptr %37, align 4, !tbaa !9
  %6566 = load ptr, ptr %9, align 8, !tbaa !5
  %6567 = getelementptr inbounds %struct.w2c_hermes, ptr %6566, i32 0, i32 6
  %6568 = load i32, ptr %37, align 4, !tbaa !9
  %6569 = zext i32 %6568 to i64
  %6570 = add i64 %6569, 728
  %6571 = call i32 @i32_load(ptr noundef %6567, i64 noundef %6570)
  store i32 %6571, ptr %37, align 4, !tbaa !9
  %6572 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6572, ptr %20, align 4, !tbaa !9
  %6573 = load i32, ptr %36, align 4, !tbaa !9
  %6574 = load i32, ptr %37, align 4, !tbaa !9
  %6575 = icmp ult i32 %6573, %6574
  %6576 = zext i1 %6575 to i32
  store i32 %6576, ptr %36, align 4, !tbaa !9
  %6577 = load i32, ptr %36, align 4, !tbaa !9
  %6578 = icmp ne i32 %6577, 0
  br i1 %6578, label %6579, label %6598

6579:                                             ; preds = %6556
  %6580 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6580, ptr %36, align 4, !tbaa !9
  %6581 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6581, ptr %37, align 4, !tbaa !9
  %6582 = load ptr, ptr %9, align 8, !tbaa !5
  %6583 = getelementptr inbounds %struct.w2c_hermes, ptr %6582, i32 0, i32 6
  %6584 = load i32, ptr %36, align 4, !tbaa !9
  %6585 = zext i32 %6584 to i64
  %6586 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6583, i64 noundef %6585, i32 noundef %6586)
  %6587 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6587, ptr %36, align 4, !tbaa !9
  %6588 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6588, ptr %37, align 4, !tbaa !9
  store i32 4, ptr %38, align 4, !tbaa !9
  %6589 = load i32, ptr %38, align 4, !tbaa !9
  %6590 = load i32, ptr %37, align 4, !tbaa !9
  %6591 = add i32 %6590, %6589
  store i32 %6591, ptr %37, align 4, !tbaa !9
  %6592 = load ptr, ptr %9, align 8, !tbaa !5
  %6593 = getelementptr inbounds %struct.w2c_hermes, ptr %6592, i32 0, i32 6
  %6594 = load i32, ptr %36, align 4, !tbaa !9
  %6595 = zext i32 %6594 to i64
  %6596 = add i64 %6595, 724
  %6597 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6593, i64 noundef %6596, i32 noundef %6597)
  br label %6762

6598:                                             ; preds = %6556
  %6599 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6599, ptr %36, align 4, !tbaa !9
  %6600 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6600, ptr %37, align 4, !tbaa !9
  %6601 = load ptr, ptr %9, align 8, !tbaa !5
  %6602 = getelementptr inbounds %struct.w2c_hermes, ptr %6601, i32 0, i32 6
  %6603 = load i32, ptr %37, align 4, !tbaa !9
  %6604 = zext i32 %6603 to i64
  %6605 = add i64 %6604, 720
  %6606 = call i32 @i32_load(ptr noundef %6602, i64 noundef %6605)
  store i32 %6606, ptr %37, align 4, !tbaa !9
  %6607 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6607, ptr %19, align 4, !tbaa !9
  %6608 = load i32, ptr %37, align 4, !tbaa !9
  %6609 = load i32, ptr %36, align 4, !tbaa !9
  %6610 = sub i32 %6609, %6608
  store i32 %6610, ptr %36, align 4, !tbaa !9
  %6611 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6611, ptr %21, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %6612 = load i32, ptr %36, align 4, !tbaa !9
  %6613 = load i32, ptr %37, align 4, !tbaa !9
  %6614 = and i32 %6613, 31
  %6615 = ashr i32 %6612, %6614
  store i32 %6615, ptr %36, align 4, !tbaa !9
  %6616 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6616, ptr %24, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %6617 = load i32, ptr %37, align 4, !tbaa !9
  %6618 = load i32, ptr %36, align 4, !tbaa !9
  %6619 = add i32 %6618, %6617
  store i32 %6619, ptr %36, align 4, !tbaa !9
  %6620 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6620, ptr %18, align 4, !tbaa !9
  store i32 1073741824, ptr %37, align 4, !tbaa !9
  %6621 = load i32, ptr %36, align 4, !tbaa !9
  %6622 = load i32, ptr %37, align 4, !tbaa !9
  %6623 = icmp uge i32 %6621, %6622
  %6624 = zext i1 %6623 to i32
  store i32 %6624, ptr %36, align 4, !tbaa !9
  %6625 = load i32, ptr %36, align 4, !tbaa !9
  %6626 = icmp ne i32 %6625, 0
  br i1 %6626, label %6627, label %6628

6627:                                             ; preds = %6598
  br label %7450

6628:                                             ; preds = %6598
  store i32 1073741823, ptr %36, align 4, !tbaa !9
  %6629 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6629, ptr %37, align 4, !tbaa !9
  %6630 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6630, ptr %38, align 4, !tbaa !9
  %6631 = load i32, ptr %38, align 4, !tbaa !9
  %6632 = load i32, ptr %37, align 4, !tbaa !9
  %6633 = sub i32 %6632, %6631
  store i32 %6633, ptr %37, align 4, !tbaa !9
  %6634 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6634, ptr %20, align 4, !tbaa !9
  store i32 1, ptr %38, align 4, !tbaa !9
  %6635 = load i32, ptr %37, align 4, !tbaa !9
  %6636 = load i32, ptr %38, align 4, !tbaa !9
  %6637 = and i32 %6636, 31
  %6638 = ashr i32 %6635, %6637
  store i32 %6638, ptr %37, align 4, !tbaa !9
  %6639 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6639, ptr %28, align 4, !tbaa !9
  %6640 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6640, ptr %38, align 4, !tbaa !9
  %6641 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6641, ptr %39, align 4, !tbaa !9
  %6642 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %6642, ptr %40, align 4, !tbaa !9
  %6643 = load i32, ptr %39, align 4, !tbaa !9
  %6644 = load i32, ptr %40, align 4, !tbaa !9
  %6645 = icmp ult i32 %6643, %6644
  %6646 = zext i1 %6645 to i32
  store i32 %6646, ptr %39, align 4, !tbaa !9
  %6647 = load i32, ptr %39, align 4, !tbaa !9
  %6648 = icmp ne i32 %6647, 0
  br i1 %6648, label %6649, label %6651

6649:                                             ; preds = %6628
  %6650 = load i32, ptr %37, align 4, !tbaa !9
  br label %6653

6651:                                             ; preds = %6628
  %6652 = load i32, ptr %38, align 4, !tbaa !9
  br label %6653

6653:                                             ; preds = %6651, %6649
  %6654 = phi i32 [ %6650, %6649 ], [ %6652, %6651 ]
  store i32 %6654, ptr %37, align 4, !tbaa !9
  %6655 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6655, ptr %38, align 4, !tbaa !9
  store i32 2147483644, ptr %39, align 4, !tbaa !9
  %6656 = load i32, ptr %38, align 4, !tbaa !9
  %6657 = load i32, ptr %39, align 4, !tbaa !9
  %6658 = icmp uge i32 %6656, %6657
  %6659 = zext i1 %6658 to i32
  store i32 %6659, ptr %38, align 4, !tbaa !9
  %6660 = load i32, ptr %38, align 4, !tbaa !9
  %6661 = icmp ne i32 %6660, 0
  br i1 %6661, label %6662, label %6664

6662:                                             ; preds = %6653
  %6663 = load i32, ptr %36, align 4, !tbaa !9
  br label %6666

6664:                                             ; preds = %6653
  %6665 = load i32, ptr %37, align 4, !tbaa !9
  br label %6666

6666:                                             ; preds = %6664, %6662
  %6667 = phi i32 [ %6663, %6662 ], [ %6665, %6664 ]
  store i32 %6667, ptr %36, align 4, !tbaa !9
  %6668 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6668, ptr %18, align 4, !tbaa !9
  %6669 = load i32, ptr %36, align 4, !tbaa !9
  %6670 = icmp ne i32 %6669, 0
  br i1 %6670, label %6671, label %6689

6671:                                             ; preds = %6666
  %6672 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6672, ptr %36, align 4, !tbaa !9
  store i32 1073741824, ptr %37, align 4, !tbaa !9
  %6673 = load i32, ptr %36, align 4, !tbaa !9
  %6674 = load i32, ptr %37, align 4, !tbaa !9
  %6675 = icmp uge i32 %6673, %6674
  %6676 = zext i1 %6675 to i32
  store i32 %6676, ptr %36, align 4, !tbaa !9
  %6677 = load i32, ptr %36, align 4, !tbaa !9
  %6678 = icmp ne i32 %6677, 0
  br i1 %6678, label %6679, label %6680

6679:                                             ; preds = %6671
  br label %7448

6680:                                             ; preds = %6671
  %6681 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6681, ptr %36, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %6682 = load i32, ptr %37, align 4, !tbaa !9
  %6683 = and i32 %6682, 31
  %6684 = load i32, ptr %36, align 4, !tbaa !9
  %6685 = shl i32 %6684, %6683
  store i32 %6685, ptr %36, align 4, !tbaa !9
  %6686 = load ptr, ptr %9, align 8, !tbaa !5
  %6687 = load i32, ptr %36, align 4, !tbaa !9
  %6688 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %6686, i32 noundef %6687)
  store i32 %6688, ptr %36, align 4, !tbaa !9
  br label %6690

6689:                                             ; preds = %6666
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %6690

6690:                                             ; preds = %6689, %6680
  %6691 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6691, ptr %20, align 4, !tbaa !9
  %6692 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %6692, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %6693 = load i32, ptr %38, align 4, !tbaa !9
  %6694 = and i32 %6693, 31
  %6695 = load i32, ptr %37, align 4, !tbaa !9
  %6696 = shl i32 %6695, %6694
  store i32 %6696, ptr %37, align 4, !tbaa !9
  %6697 = load i32, ptr %37, align 4, !tbaa !9
  %6698 = load i32, ptr %36, align 4, !tbaa !9
  %6699 = add i32 %6698, %6697
  store i32 %6699, ptr %36, align 4, !tbaa !9
  %6700 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6700, ptr %24, align 4, !tbaa !9
  %6701 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %6701, ptr %37, align 4, !tbaa !9
  %6702 = load ptr, ptr %9, align 8, !tbaa !5
  %6703 = getelementptr inbounds %struct.w2c_hermes, ptr %6702, i32 0, i32 6
  %6704 = load i32, ptr %36, align 4, !tbaa !9
  %6705 = zext i32 %6704 to i64
  %6706 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6703, i64 noundef %6705, i32 noundef %6706)
  %6707 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6707, ptr %36, align 4, !tbaa !9
  %6708 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6708, ptr %37, align 4, !tbaa !9
  %6709 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6709, ptr %38, align 4, !tbaa !9
  %6710 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %6710, ptr %39, align 4, !tbaa !9
  %6711 = load ptr, ptr %9, align 8, !tbaa !5
  %6712 = load i32, ptr %37, align 4, !tbaa !9
  %6713 = load i32, ptr %38, align 4, !tbaa !9
  %6714 = load i32, ptr %39, align 4, !tbaa !9
  %6715 = call i32 @w2c_hermes_memmove(ptr noundef %6711, i32 noundef %6712, i32 noundef %6713, i32 noundef %6714)
  store i32 %6715, ptr %37, align 4, !tbaa !9
  %6716 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6716, ptr %20, align 4, !tbaa !9
  %6717 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6717, ptr %38, align 4, !tbaa !9
  store i32 2, ptr %39, align 4, !tbaa !9
  %6718 = load i32, ptr %39, align 4, !tbaa !9
  %6719 = and i32 %6718, 31
  %6720 = load i32, ptr %38, align 4, !tbaa !9
  %6721 = shl i32 %6720, %6719
  store i32 %6721, ptr %38, align 4, !tbaa !9
  %6722 = load i32, ptr %38, align 4, !tbaa !9
  %6723 = load i32, ptr %37, align 4, !tbaa !9
  %6724 = add i32 %6723, %6722
  store i32 %6724, ptr %37, align 4, !tbaa !9
  %6725 = load ptr, ptr %9, align 8, !tbaa !5
  %6726 = getelementptr inbounds %struct.w2c_hermes, ptr %6725, i32 0, i32 6
  %6727 = load i32, ptr %36, align 4, !tbaa !9
  %6728 = zext i32 %6727 to i64
  %6729 = add i64 %6728, 728
  %6730 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6726, i64 noundef %6729, i32 noundef %6730)
  %6731 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6731, ptr %36, align 4, !tbaa !9
  %6732 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %6732, ptr %37, align 4, !tbaa !9
  store i32 4, ptr %38, align 4, !tbaa !9
  %6733 = load i32, ptr %38, align 4, !tbaa !9
  %6734 = load i32, ptr %37, align 4, !tbaa !9
  %6735 = add i32 %6734, %6733
  store i32 %6735, ptr %37, align 4, !tbaa !9
  %6736 = load ptr, ptr %9, align 8, !tbaa !5
  %6737 = getelementptr inbounds %struct.w2c_hermes, ptr %6736, i32 0, i32 6
  %6738 = load i32, ptr %36, align 4, !tbaa !9
  %6739 = zext i32 %6738 to i64
  %6740 = add i64 %6739, 724
  %6741 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6737, i64 noundef %6740, i32 noundef %6741)
  %6742 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6742, ptr %36, align 4, !tbaa !9
  %6743 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %6743, ptr %37, align 4, !tbaa !9
  %6744 = load ptr, ptr %9, align 8, !tbaa !5
  %6745 = getelementptr inbounds %struct.w2c_hermes, ptr %6744, i32 0, i32 6
  %6746 = load i32, ptr %36, align 4, !tbaa !9
  %6747 = zext i32 %6746 to i64
  %6748 = add i64 %6747, 720
  %6749 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6745, i64 noundef %6748, i32 noundef %6749)
  %6750 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6750, ptr %36, align 4, !tbaa !9
  %6751 = load i32, ptr %36, align 4, !tbaa !9
  %6752 = icmp ne i32 %6751, 0
  %6753 = xor i1 %6752, true
  %6754 = zext i1 %6753 to i32
  store i32 %6754, ptr %36, align 4, !tbaa !9
  %6755 = load i32, ptr %36, align 4, !tbaa !9
  %6756 = icmp ne i32 %6755, 0
  br i1 %6756, label %6757, label %6758

6757:                                             ; preds = %6690
  br label %6762

6758:                                             ; preds = %6690
  %6759 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6759, ptr %36, align 4, !tbaa !9
  %6760 = load ptr, ptr %9, align 8, !tbaa !5
  %6761 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %6760, i32 noundef %6761)
  br label %6762

6762:                                             ; preds = %6758, %6757, %6579
  %6763 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %6763, ptr %36, align 4, !tbaa !9
  %6764 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6764, ptr %37, align 4, !tbaa !9
  %6765 = load ptr, ptr %9, align 8, !tbaa !5
  %6766 = getelementptr inbounds %struct.w2c_hermes, ptr %6765, i32 0, i32 6
  %6767 = load i32, ptr %37, align 4, !tbaa !9
  %6768 = zext i32 %6767 to i64
  %6769 = add i64 %6768, 404
  %6770 = call i32 @i32_load(ptr noundef %6766, i64 noundef %6769)
  store i32 %6770, ptr %37, align 4, !tbaa !9
  %6771 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %6771, ptr %18, align 4, !tbaa !9
  %6772 = load i32, ptr %36, align 4, !tbaa !9
  %6773 = load i32, ptr %37, align 4, !tbaa !9
  %6774 = icmp ne i32 %6772, %6773
  %6775 = zext i1 %6774 to i32
  store i32 %6775, ptr %36, align 4, !tbaa !9
  %6776 = load i32, ptr %36, align 4, !tbaa !9
  %6777 = icmp ne i32 %6776, 0
  br i1 %6777, label %6778, label %6782

6778:                                             ; preds = %6762
  %6779 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6779, ptr %36, align 4, !tbaa !9
  %6780 = load ptr, ptr %9, align 8, !tbaa !5
  %6781 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %6780, i32 noundef %6781)
  br label %6782

6782:                                             ; preds = %6778, %6762
  %6783 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6783, ptr %36, align 4, !tbaa !9
  %6784 = load ptr, ptr %9, align 8, !tbaa !5
  %6785 = getelementptr inbounds %struct.w2c_hermes, ptr %6784, i32 0, i32 6
  %6786 = load i32, ptr %36, align 4, !tbaa !9
  %6787 = zext i32 %6786 to i64
  %6788 = add i64 %6787, 120
  %6789 = call i32 @i32_load(ptr noundef %6785, i64 noundef %6788)
  store i32 %6789, ptr %36, align 4, !tbaa !9
  %6790 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6790, ptr %18, align 4, !tbaa !9
  %6791 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %6791, ptr %37, align 4, !tbaa !9
  %6792 = load i32, ptr %36, align 4, !tbaa !9
  %6793 = load i32, ptr %37, align 4, !tbaa !9
  %6794 = icmp eq i32 %6792, %6793
  %6795 = zext i1 %6794 to i32
  store i32 %6795, ptr %36, align 4, !tbaa !9
  %6796 = load i32, ptr %36, align 4, !tbaa !9
  %6797 = icmp ne i32 %6796, 0
  br i1 %6797, label %6798, label %6799

6798:                                             ; preds = %6782
  br label %7242

6799:                                             ; preds = %6782
  %6800 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %6800, ptr %36, align 4, !tbaa !9
  %6801 = load ptr, ptr %9, align 8, !tbaa !5
  %6802 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %6801, i32 noundef %6802)
  br label %7242

6803:                                             ; preds = %5923
  store i32 0, ptr %36, align 4, !tbaa !9
  %6804 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6804, ptr %17, align 4, !tbaa !9
  store i32 147142, ptr %37, align 4, !tbaa !9
  %6805 = load i32, ptr %37, align 4, !tbaa !9
  %6806 = load i32, ptr %36, align 4, !tbaa !9
  %6807 = add i32 %6806, %6805
  store i32 %6807, ptr %36, align 4, !tbaa !9
  %6808 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6808, ptr %37, align 4, !tbaa !9
  store i32 82611, ptr %38, align 4, !tbaa !9
  %6809 = load i32, ptr %38, align 4, !tbaa !9
  %6810 = load i32, ptr %37, align 4, !tbaa !9
  %6811 = add i32 %6810, %6809
  store i32 %6811, ptr %37, align 4, !tbaa !9
  store i32 106, ptr %38, align 4, !tbaa !9
  %6812 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6812, ptr %39, align 4, !tbaa !9
  store i32 28119, ptr %40, align 4, !tbaa !9
  %6813 = load i32, ptr %40, align 4, !tbaa !9
  %6814 = load i32, ptr %39, align 4, !tbaa !9
  %6815 = add i32 %6814, %6813
  store i32 %6815, ptr %39, align 4, !tbaa !9
  %6816 = load ptr, ptr %9, align 8, !tbaa !5
  %6817 = load i32, ptr %36, align 4, !tbaa !9
  %6818 = load i32, ptr %37, align 4, !tbaa !9
  %6819 = load i32, ptr %38, align 4, !tbaa !9
  %6820 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6816, i32 noundef %6817, i32 noundef %6818, i32 noundef %6819, i32 noundef %6820)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6821:                                             ; preds = %6010
  store i32 0, ptr %36, align 4, !tbaa !9
  %6822 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6822, ptr %17, align 4, !tbaa !9
  store i32 147142, ptr %37, align 4, !tbaa !9
  %6823 = load i32, ptr %37, align 4, !tbaa !9
  %6824 = load i32, ptr %36, align 4, !tbaa !9
  %6825 = add i32 %6824, %6823
  store i32 %6825, ptr %36, align 4, !tbaa !9
  %6826 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6826, ptr %37, align 4, !tbaa !9
  store i32 82611, ptr %38, align 4, !tbaa !9
  %6827 = load i32, ptr %38, align 4, !tbaa !9
  %6828 = load i32, ptr %37, align 4, !tbaa !9
  %6829 = add i32 %6828, %6827
  store i32 %6829, ptr %37, align 4, !tbaa !9
  store i32 106, ptr %38, align 4, !tbaa !9
  %6830 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6830, ptr %39, align 4, !tbaa !9
  store i32 28119, ptr %40, align 4, !tbaa !9
  %6831 = load i32, ptr %40, align 4, !tbaa !9
  %6832 = load i32, ptr %39, align 4, !tbaa !9
  %6833 = add i32 %6832, %6831
  store i32 %6833, ptr %39, align 4, !tbaa !9
  %6834 = load ptr, ptr %9, align 8, !tbaa !5
  %6835 = load i32, ptr %36, align 4, !tbaa !9
  %6836 = load i32, ptr %37, align 4, !tbaa !9
  %6837 = load i32, ptr %38, align 4, !tbaa !9
  %6838 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6834, i32 noundef %6835, i32 noundef %6836, i32 noundef %6837, i32 noundef %6838)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6839:                                             ; preds = %6030
  store i32 0, ptr %36, align 4, !tbaa !9
  %6840 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6840, ptr %17, align 4, !tbaa !9
  store i32 205012, ptr %37, align 4, !tbaa !9
  %6841 = load i32, ptr %37, align 4, !tbaa !9
  %6842 = load i32, ptr %36, align 4, !tbaa !9
  %6843 = add i32 %6842, %6841
  store i32 %6843, ptr %36, align 4, !tbaa !9
  %6844 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6844, ptr %37, align 4, !tbaa !9
  store i32 82611, ptr %38, align 4, !tbaa !9
  %6845 = load i32, ptr %38, align 4, !tbaa !9
  %6846 = load i32, ptr %37, align 4, !tbaa !9
  %6847 = add i32 %6846, %6845
  store i32 %6847, ptr %37, align 4, !tbaa !9
  store i32 255, ptr %38, align 4, !tbaa !9
  %6848 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6848, ptr %39, align 4, !tbaa !9
  store i32 24720, ptr %40, align 4, !tbaa !9
  %6849 = load i32, ptr %40, align 4, !tbaa !9
  %6850 = load i32, ptr %39, align 4, !tbaa !9
  %6851 = add i32 %6850, %6849
  store i32 %6851, ptr %39, align 4, !tbaa !9
  %6852 = load ptr, ptr %9, align 8, !tbaa !5
  %6853 = load i32, ptr %36, align 4, !tbaa !9
  %6854 = load i32, ptr %37, align 4, !tbaa !9
  %6855 = load i32, ptr %38, align 4, !tbaa !9
  %6856 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6852, i32 noundef %6853, i32 noundef %6854, i32 noundef %6855, i32 noundef %6856)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6857:                                             ; preds = %6118
  store i32 0, ptr %36, align 4, !tbaa !9
  %6858 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6858, ptr %17, align 4, !tbaa !9
  store i32 117789, ptr %37, align 4, !tbaa !9
  %6859 = load i32, ptr %37, align 4, !tbaa !9
  %6860 = load i32, ptr %36, align 4, !tbaa !9
  %6861 = add i32 %6860, %6859
  store i32 %6861, ptr %36, align 4, !tbaa !9
  %6862 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6862, ptr %37, align 4, !tbaa !9
  store i32 79572, ptr %38, align 4, !tbaa !9
  %6863 = load i32, ptr %38, align 4, !tbaa !9
  %6864 = load i32, ptr %37, align 4, !tbaa !9
  %6865 = add i32 %6864, %6863
  store i32 %6865, ptr %37, align 4, !tbaa !9
  store i32 74, ptr %38, align 4, !tbaa !9
  %6866 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6866, ptr %39, align 4, !tbaa !9
  store i32 88407, ptr %40, align 4, !tbaa !9
  %6867 = load i32, ptr %40, align 4, !tbaa !9
  %6868 = load i32, ptr %39, align 4, !tbaa !9
  %6869 = add i32 %6868, %6867
  store i32 %6869, ptr %39, align 4, !tbaa !9
  %6870 = load ptr, ptr %9, align 8, !tbaa !5
  %6871 = load i32, ptr %36, align 4, !tbaa !9
  %6872 = load i32, ptr %37, align 4, !tbaa !9
  %6873 = load i32, ptr %38, align 4, !tbaa !9
  %6874 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6870, i32 noundef %6871, i32 noundef %6872, i32 noundef %6873, i32 noundef %6874)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6875:                                             ; preds = %6217
  store i32 0, ptr %36, align 4, !tbaa !9
  %6876 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6876, ptr %17, align 4, !tbaa !9
  store i32 147142, ptr %37, align 4, !tbaa !9
  %6877 = load i32, ptr %37, align 4, !tbaa !9
  %6878 = load i32, ptr %36, align 4, !tbaa !9
  %6879 = add i32 %6878, %6877
  store i32 %6879, ptr %36, align 4, !tbaa !9
  %6880 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6880, ptr %37, align 4, !tbaa !9
  store i32 82611, ptr %38, align 4, !tbaa !9
  %6881 = load i32, ptr %38, align 4, !tbaa !9
  %6882 = load i32, ptr %37, align 4, !tbaa !9
  %6883 = add i32 %6882, %6881
  store i32 %6883, ptr %37, align 4, !tbaa !9
  store i32 106, ptr %38, align 4, !tbaa !9
  %6884 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6884, ptr %39, align 4, !tbaa !9
  store i32 28119, ptr %40, align 4, !tbaa !9
  %6885 = load i32, ptr %40, align 4, !tbaa !9
  %6886 = load i32, ptr %39, align 4, !tbaa !9
  %6887 = add i32 %6886, %6885
  store i32 %6887, ptr %39, align 4, !tbaa !9
  %6888 = load ptr, ptr %9, align 8, !tbaa !5
  %6889 = load i32, ptr %36, align 4, !tbaa !9
  %6890 = load i32, ptr %37, align 4, !tbaa !9
  %6891 = load i32, ptr %38, align 4, !tbaa !9
  %6892 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6888, i32 noundef %6889, i32 noundef %6890, i32 noundef %6891, i32 noundef %6892)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6893:                                             ; preds = %6305
  store i32 0, ptr %36, align 4, !tbaa !9
  %6894 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6894, ptr %17, align 4, !tbaa !9
  store i32 117789, ptr %37, align 4, !tbaa !9
  %6895 = load i32, ptr %37, align 4, !tbaa !9
  %6896 = load i32, ptr %36, align 4, !tbaa !9
  %6897 = add i32 %6896, %6895
  store i32 %6897, ptr %36, align 4, !tbaa !9
  %6898 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6898, ptr %37, align 4, !tbaa !9
  store i32 79572, ptr %38, align 4, !tbaa !9
  %6899 = load i32, ptr %38, align 4, !tbaa !9
  %6900 = load i32, ptr %37, align 4, !tbaa !9
  %6901 = add i32 %6900, %6899
  store i32 %6901, ptr %37, align 4, !tbaa !9
  store i32 74, ptr %38, align 4, !tbaa !9
  %6902 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6902, ptr %39, align 4, !tbaa !9
  store i32 88407, ptr %40, align 4, !tbaa !9
  %6903 = load i32, ptr %40, align 4, !tbaa !9
  %6904 = load i32, ptr %39, align 4, !tbaa !9
  %6905 = add i32 %6904, %6903
  store i32 %6905, ptr %39, align 4, !tbaa !9
  %6906 = load ptr, ptr %9, align 8, !tbaa !5
  %6907 = load i32, ptr %36, align 4, !tbaa !9
  %6908 = load i32, ptr %37, align 4, !tbaa !9
  %6909 = load i32, ptr %38, align 4, !tbaa !9
  %6910 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6906, i32 noundef %6907, i32 noundef %6908, i32 noundef %6909, i32 noundef %6910)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6911:                                             ; preds = %6329
  store i32 0, ptr %36, align 4, !tbaa !9
  %6912 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6912, ptr %17, align 4, !tbaa !9
  store i32 147142, ptr %37, align 4, !tbaa !9
  %6913 = load i32, ptr %37, align 4, !tbaa !9
  %6914 = load i32, ptr %36, align 4, !tbaa !9
  %6915 = add i32 %6914, %6913
  store i32 %6915, ptr %36, align 4, !tbaa !9
  %6916 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6916, ptr %37, align 4, !tbaa !9
  store i32 82611, ptr %38, align 4, !tbaa !9
  %6917 = load i32, ptr %38, align 4, !tbaa !9
  %6918 = load i32, ptr %37, align 4, !tbaa !9
  %6919 = add i32 %6918, %6917
  store i32 %6919, ptr %37, align 4, !tbaa !9
  store i32 106, ptr %38, align 4, !tbaa !9
  %6920 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6920, ptr %39, align 4, !tbaa !9
  store i32 28119, ptr %40, align 4, !tbaa !9
  %6921 = load i32, ptr %40, align 4, !tbaa !9
  %6922 = load i32, ptr %39, align 4, !tbaa !9
  %6923 = add i32 %6922, %6921
  store i32 %6923, ptr %39, align 4, !tbaa !9
  %6924 = load ptr, ptr %9, align 8, !tbaa !5
  %6925 = load i32, ptr %36, align 4, !tbaa !9
  %6926 = load i32, ptr %37, align 4, !tbaa !9
  %6927 = load i32, ptr %38, align 4, !tbaa !9
  %6928 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6924, i32 noundef %6925, i32 noundef %6926, i32 noundef %6927, i32 noundef %6928)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6929:                                             ; preds = %6417
  store i32 0, ptr %36, align 4, !tbaa !9
  %6930 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6930, ptr %17, align 4, !tbaa !9
  store i32 117789, ptr %37, align 4, !tbaa !9
  %6931 = load i32, ptr %37, align 4, !tbaa !9
  %6932 = load i32, ptr %36, align 4, !tbaa !9
  %6933 = add i32 %6932, %6931
  store i32 %6933, ptr %36, align 4, !tbaa !9
  %6934 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6934, ptr %37, align 4, !tbaa !9
  store i32 79572, ptr %38, align 4, !tbaa !9
  %6935 = load i32, ptr %38, align 4, !tbaa !9
  %6936 = load i32, ptr %37, align 4, !tbaa !9
  %6937 = add i32 %6936, %6935
  store i32 %6937, ptr %37, align 4, !tbaa !9
  store i32 74, ptr %38, align 4, !tbaa !9
  %6938 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6938, ptr %39, align 4, !tbaa !9
  store i32 88407, ptr %40, align 4, !tbaa !9
  %6939 = load i32, ptr %40, align 4, !tbaa !9
  %6940 = load i32, ptr %39, align 4, !tbaa !9
  %6941 = add i32 %6940, %6939
  store i32 %6941, ptr %39, align 4, !tbaa !9
  %6942 = load ptr, ptr %9, align 8, !tbaa !5
  %6943 = load i32, ptr %36, align 4, !tbaa !9
  %6944 = load i32, ptr %37, align 4, !tbaa !9
  %6945 = load i32, ptr %38, align 4, !tbaa !9
  %6946 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6942, i32 noundef %6943, i32 noundef %6944, i32 noundef %6945, i32 noundef %6946)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6947:                                             ; preds = %6555
  store i32 0, ptr %36, align 4, !tbaa !9
  %6948 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %6948, ptr %17, align 4, !tbaa !9
  store i32 163974, ptr %37, align 4, !tbaa !9
  %6949 = load i32, ptr %37, align 4, !tbaa !9
  %6950 = load i32, ptr %36, align 4, !tbaa !9
  %6951 = add i32 %6950, %6949
  store i32 %6951, ptr %36, align 4, !tbaa !9
  %6952 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6952, ptr %37, align 4, !tbaa !9
  store i32 62752, ptr %38, align 4, !tbaa !9
  %6953 = load i32, ptr %38, align 4, !tbaa !9
  %6954 = load i32, ptr %37, align 4, !tbaa !9
  %6955 = add i32 %6954, %6953
  store i32 %6955, ptr %37, align 4, !tbaa !9
  store i32 372, ptr %38, align 4, !tbaa !9
  %6956 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6956, ptr %39, align 4, !tbaa !9
  store i32 48945, ptr %40, align 4, !tbaa !9
  %6957 = load i32, ptr %40, align 4, !tbaa !9
  %6958 = load i32, ptr %39, align 4, !tbaa !9
  %6959 = add i32 %6958, %6957
  store i32 %6959, ptr %39, align 4, !tbaa !9
  %6960 = load ptr, ptr %9, align 8, !tbaa !5
  %6961 = load i32, ptr %36, align 4, !tbaa !9
  %6962 = load i32, ptr %37, align 4, !tbaa !9
  %6963 = load i32, ptr %38, align 4, !tbaa !9
  %6964 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %6960, i32 noundef %6961, i32 noundef %6962, i32 noundef %6963, i32 noundef %6964)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

6965:                                             ; preds = %6137, %5982
  %6966 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6966, ptr %36, align 4, !tbaa !9
  %6967 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %6967, ptr %37, align 4, !tbaa !9
  %6968 = load ptr, ptr %9, align 8, !tbaa !5
  %6969 = getelementptr inbounds %struct.w2c_hermes, ptr %6968, i32 0, i32 6
  %6970 = load i32, ptr %36, align 4, !tbaa !9
  %6971 = zext i32 %6970 to i64
  %6972 = add i64 %6971, 408
  %6973 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6969, i64 noundef %6972, i32 noundef %6973)
  %6974 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6974, ptr %36, align 4, !tbaa !9
  %6975 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6975, ptr %37, align 4, !tbaa !9
  %6976 = load ptr, ptr %9, align 8, !tbaa !5
  %6977 = getelementptr inbounds %struct.w2c_hermes, ptr %6976, i32 0, i32 6
  %6978 = load i32, ptr %37, align 4, !tbaa !9
  %6979 = zext i32 %6978 to i64
  %6980 = add i64 %6979, 120
  %6981 = call i32 @i32_load(ptr noundef %6977, i64 noundef %6980)
  store i32 %6981, ptr %37, align 4, !tbaa !9
  %6982 = load ptr, ptr %9, align 8, !tbaa !5
  %6983 = getelementptr inbounds %struct.w2c_hermes, ptr %6982, i32 0, i32 6
  %6984 = load i32, ptr %36, align 4, !tbaa !9
  %6985 = zext i32 %6984 to i64
  %6986 = add i64 %6985, 404
  %6987 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %6983, i64 noundef %6986, i32 noundef %6987)
  %6988 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6988, ptr %36, align 4, !tbaa !9
  %6989 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %6989, ptr %37, align 4, !tbaa !9
  %6990 = load ptr, ptr %9, align 8, !tbaa !5
  %6991 = getelementptr inbounds %struct.w2c_hermes, ptr %6990, i32 0, i32 6
  %6992 = load i32, ptr %37, align 4, !tbaa !9
  %6993 = zext i32 %6992 to i64
  %6994 = add i64 %6993, 404
  %6995 = call i64 @i64_load(ptr noundef %6991, i64 noundef %6994)
  store i64 %6995, ptr %43, align 8, !tbaa !11
  %6996 = load ptr, ptr %9, align 8, !tbaa !5
  %6997 = getelementptr inbounds %struct.w2c_hermes, ptr %6996, i32 0, i32 6
  %6998 = load i32, ptr %36, align 4, !tbaa !9
  %6999 = zext i32 %6998 to i64
  %7000 = add i64 %6999, 88
  %7001 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %6997, i64 noundef %7000, i64 noundef %7001)
  %7002 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7002, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %7003 = load i32, ptr %37, align 4, !tbaa !9
  %7004 = load i32, ptr %36, align 4, !tbaa !9
  %7005 = add i32 %7004, %7003
  store i32 %7005, ptr %36, align 4, !tbaa !9
  %7006 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %7006, ptr %37, align 4, !tbaa !9
  %7007 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7007, ptr %38, align 4, !tbaa !9
  store i32 88, ptr %39, align 4, !tbaa !9
  %7008 = load i32, ptr %39, align 4, !tbaa !9
  %7009 = load i32, ptr %38, align 4, !tbaa !9
  %7010 = add i32 %7009, %7008
  store i32 %7010, ptr %38, align 4, !tbaa !9
  store i32 0, ptr %39, align 4, !tbaa !9
  %7011 = load ptr, ptr %9, align 8, !tbaa !5
  %7012 = load i32, ptr %36, align 4, !tbaa !9
  %7013 = load i32, ptr %37, align 4, !tbaa !9
  %7014 = load i32, ptr %38, align 4, !tbaa !9
  %7015 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef %7011, i32 noundef %7012, i32 noundef %7013, i32 noundef %7014, i32 noundef %7015)
  %7016 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7016, ptr %36, align 4, !tbaa !9
  %7017 = load ptr, ptr %9, align 8, !tbaa !5
  %7018 = getelementptr inbounds %struct.w2c_hermes, ptr %7017, i32 0, i32 6
  %7019 = load i32, ptr %36, align 4, !tbaa !9
  %7020 = zext i32 %7019 to i64
  %7021 = add i64 %7020, 608
  %7022 = call i32 @i32_load(ptr noundef %7018, i64 noundef %7021)
  store i32 %7022, ptr %36, align 4, !tbaa !9
  %7023 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7023, ptr %18, align 4, !tbaa !9
  %7024 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7024, ptr %37, align 4, !tbaa !9
  %7025 = load ptr, ptr %9, align 8, !tbaa !5
  %7026 = getelementptr inbounds %struct.w2c_hermes, ptr %7025, i32 0, i32 6
  %7027 = load i32, ptr %37, align 4, !tbaa !9
  %7028 = zext i32 %7027 to i64
  %7029 = add i64 %7028, 612
  %7030 = call i32 @i32_load(ptr noundef %7026, i64 noundef %7029)
  store i32 %7030, ptr %37, align 4, !tbaa !9
  %7031 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7031, ptr %20, align 4, !tbaa !9
  %7032 = load i32, ptr %36, align 4, !tbaa !9
  %7033 = load i32, ptr %37, align 4, !tbaa !9
  %7034 = icmp ult i32 %7032, %7033
  %7035 = zext i1 %7034 to i32
  store i32 %7035, ptr %36, align 4, !tbaa !9
  %7036 = load i32, ptr %36, align 4, !tbaa !9
  %7037 = icmp ne i32 %7036, 0
  br i1 %7037, label %7038, label %7057

7038:                                             ; preds = %6965
  %7039 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7039, ptr %36, align 4, !tbaa !9
  %7040 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7040, ptr %37, align 4, !tbaa !9
  %7041 = load ptr, ptr %9, align 8, !tbaa !5
  %7042 = getelementptr inbounds %struct.w2c_hermes, ptr %7041, i32 0, i32 6
  %7043 = load i32, ptr %36, align 4, !tbaa !9
  %7044 = zext i32 %7043 to i64
  %7045 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7042, i64 noundef %7044, i32 noundef %7045)
  %7046 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7046, ptr %36, align 4, !tbaa !9
  %7047 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7047, ptr %37, align 4, !tbaa !9
  store i32 4, ptr %38, align 4, !tbaa !9
  %7048 = load i32, ptr %38, align 4, !tbaa !9
  %7049 = load i32, ptr %37, align 4, !tbaa !9
  %7050 = add i32 %7049, %7048
  store i32 %7050, ptr %37, align 4, !tbaa !9
  %7051 = load ptr, ptr %9, align 8, !tbaa !5
  %7052 = getelementptr inbounds %struct.w2c_hermes, ptr %7051, i32 0, i32 6
  %7053 = load i32, ptr %36, align 4, !tbaa !9
  %7054 = zext i32 %7053 to i64
  %7055 = add i64 %7054, 608
  %7056 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7052, i64 noundef %7055, i32 noundef %7056)
  br label %7221

7057:                                             ; preds = %6965
  %7058 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7058, ptr %36, align 4, !tbaa !9
  %7059 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7059, ptr %37, align 4, !tbaa !9
  %7060 = load ptr, ptr %9, align 8, !tbaa !5
  %7061 = getelementptr inbounds %struct.w2c_hermes, ptr %7060, i32 0, i32 6
  %7062 = load i32, ptr %37, align 4, !tbaa !9
  %7063 = zext i32 %7062 to i64
  %7064 = add i64 %7063, 604
  %7065 = call i32 @i32_load(ptr noundef %7061, i64 noundef %7064)
  store i32 %7065, ptr %37, align 4, !tbaa !9
  %7066 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7066, ptr %19, align 4, !tbaa !9
  %7067 = load i32, ptr %37, align 4, !tbaa !9
  %7068 = load i32, ptr %36, align 4, !tbaa !9
  %7069 = sub i32 %7068, %7067
  store i32 %7069, ptr %36, align 4, !tbaa !9
  %7070 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7070, ptr %21, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %7071 = load i32, ptr %36, align 4, !tbaa !9
  %7072 = load i32, ptr %37, align 4, !tbaa !9
  %7073 = and i32 %7072, 31
  %7074 = ashr i32 %7071, %7073
  store i32 %7074, ptr %36, align 4, !tbaa !9
  %7075 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7075, ptr %24, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %7076 = load i32, ptr %37, align 4, !tbaa !9
  %7077 = load i32, ptr %36, align 4, !tbaa !9
  %7078 = add i32 %7077, %7076
  store i32 %7078, ptr %36, align 4, !tbaa !9
  %7079 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7079, ptr %18, align 4, !tbaa !9
  store i32 1073741824, ptr %37, align 4, !tbaa !9
  %7080 = load i32, ptr %36, align 4, !tbaa !9
  %7081 = load i32, ptr %37, align 4, !tbaa !9
  %7082 = icmp uge i32 %7080, %7081
  %7083 = zext i1 %7082 to i32
  store i32 %7083, ptr %36, align 4, !tbaa !9
  %7084 = load i32, ptr %36, align 4, !tbaa !9
  %7085 = icmp ne i32 %7084, 0
  br i1 %7085, label %7086, label %7087

7086:                                             ; preds = %7057
  br label %7450

7087:                                             ; preds = %7057
  store i32 1073741823, ptr %36, align 4, !tbaa !9
  %7088 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7088, ptr %37, align 4, !tbaa !9
  %7089 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7089, ptr %38, align 4, !tbaa !9
  %7090 = load i32, ptr %38, align 4, !tbaa !9
  %7091 = load i32, ptr %37, align 4, !tbaa !9
  %7092 = sub i32 %7091, %7090
  store i32 %7092, ptr %37, align 4, !tbaa !9
  %7093 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7093, ptr %20, align 4, !tbaa !9
  store i32 1, ptr %38, align 4, !tbaa !9
  %7094 = load i32, ptr %37, align 4, !tbaa !9
  %7095 = load i32, ptr %38, align 4, !tbaa !9
  %7096 = and i32 %7095, 31
  %7097 = ashr i32 %7094, %7096
  store i32 %7097, ptr %37, align 4, !tbaa !9
  %7098 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7098, ptr %28, align 4, !tbaa !9
  %7099 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7099, ptr %38, align 4, !tbaa !9
  %7100 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7100, ptr %39, align 4, !tbaa !9
  %7101 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %7101, ptr %40, align 4, !tbaa !9
  %7102 = load i32, ptr %39, align 4, !tbaa !9
  %7103 = load i32, ptr %40, align 4, !tbaa !9
  %7104 = icmp ult i32 %7102, %7103
  %7105 = zext i1 %7104 to i32
  store i32 %7105, ptr %39, align 4, !tbaa !9
  %7106 = load i32, ptr %39, align 4, !tbaa !9
  %7107 = icmp ne i32 %7106, 0
  br i1 %7107, label %7108, label %7110

7108:                                             ; preds = %7087
  %7109 = load i32, ptr %37, align 4, !tbaa !9
  br label %7112

7110:                                             ; preds = %7087
  %7111 = load i32, ptr %38, align 4, !tbaa !9
  br label %7112

7112:                                             ; preds = %7110, %7108
  %7113 = phi i32 [ %7109, %7108 ], [ %7111, %7110 ]
  store i32 %7113, ptr %37, align 4, !tbaa !9
  %7114 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7114, ptr %38, align 4, !tbaa !9
  store i32 2147483644, ptr %39, align 4, !tbaa !9
  %7115 = load i32, ptr %38, align 4, !tbaa !9
  %7116 = load i32, ptr %39, align 4, !tbaa !9
  %7117 = icmp uge i32 %7115, %7116
  %7118 = zext i1 %7117 to i32
  store i32 %7118, ptr %38, align 4, !tbaa !9
  %7119 = load i32, ptr %38, align 4, !tbaa !9
  %7120 = icmp ne i32 %7119, 0
  br i1 %7120, label %7121, label %7123

7121:                                             ; preds = %7112
  %7122 = load i32, ptr %36, align 4, !tbaa !9
  br label %7125

7123:                                             ; preds = %7112
  %7124 = load i32, ptr %37, align 4, !tbaa !9
  br label %7125

7125:                                             ; preds = %7123, %7121
  %7126 = phi i32 [ %7122, %7121 ], [ %7124, %7123 ]
  store i32 %7126, ptr %36, align 4, !tbaa !9
  %7127 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7127, ptr %18, align 4, !tbaa !9
  %7128 = load i32, ptr %36, align 4, !tbaa !9
  %7129 = icmp ne i32 %7128, 0
  br i1 %7129, label %7130, label %7148

7130:                                             ; preds = %7125
  %7131 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7131, ptr %36, align 4, !tbaa !9
  store i32 1073741824, ptr %37, align 4, !tbaa !9
  %7132 = load i32, ptr %36, align 4, !tbaa !9
  %7133 = load i32, ptr %37, align 4, !tbaa !9
  %7134 = icmp uge i32 %7132, %7133
  %7135 = zext i1 %7134 to i32
  store i32 %7135, ptr %36, align 4, !tbaa !9
  %7136 = load i32, ptr %36, align 4, !tbaa !9
  %7137 = icmp ne i32 %7136, 0
  br i1 %7137, label %7138, label %7139

7138:                                             ; preds = %7130
  br label %7448

7139:                                             ; preds = %7130
  %7140 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7140, ptr %36, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %7141 = load i32, ptr %37, align 4, !tbaa !9
  %7142 = and i32 %7141, 31
  %7143 = load i32, ptr %36, align 4, !tbaa !9
  %7144 = shl i32 %7143, %7142
  store i32 %7144, ptr %36, align 4, !tbaa !9
  %7145 = load ptr, ptr %9, align 8, !tbaa !5
  %7146 = load i32, ptr %36, align 4, !tbaa !9
  %7147 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %7145, i32 noundef %7146)
  store i32 %7147, ptr %36, align 4, !tbaa !9
  br label %7149

7148:                                             ; preds = %7125
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %7149

7149:                                             ; preds = %7148, %7139
  %7150 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7150, ptr %20, align 4, !tbaa !9
  %7151 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7151, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %7152 = load i32, ptr %38, align 4, !tbaa !9
  %7153 = and i32 %7152, 31
  %7154 = load i32, ptr %37, align 4, !tbaa !9
  %7155 = shl i32 %7154, %7153
  store i32 %7155, ptr %37, align 4, !tbaa !9
  %7156 = load i32, ptr %37, align 4, !tbaa !9
  %7157 = load i32, ptr %36, align 4, !tbaa !9
  %7158 = add i32 %7157, %7156
  store i32 %7158, ptr %36, align 4, !tbaa !9
  %7159 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7159, ptr %24, align 4, !tbaa !9
  %7160 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7160, ptr %37, align 4, !tbaa !9
  %7161 = load ptr, ptr %9, align 8, !tbaa !5
  %7162 = getelementptr inbounds %struct.w2c_hermes, ptr %7161, i32 0, i32 6
  %7163 = load i32, ptr %36, align 4, !tbaa !9
  %7164 = zext i32 %7163 to i64
  %7165 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7162, i64 noundef %7164, i32 noundef %7165)
  %7166 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7166, ptr %36, align 4, !tbaa !9
  %7167 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7167, ptr %37, align 4, !tbaa !9
  %7168 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7168, ptr %38, align 4, !tbaa !9
  %7169 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7169, ptr %39, align 4, !tbaa !9
  %7170 = load ptr, ptr %9, align 8, !tbaa !5
  %7171 = load i32, ptr %37, align 4, !tbaa !9
  %7172 = load i32, ptr %38, align 4, !tbaa !9
  %7173 = load i32, ptr %39, align 4, !tbaa !9
  %7174 = call i32 @w2c_hermes_memmove(ptr noundef %7170, i32 noundef %7171, i32 noundef %7172, i32 noundef %7173)
  store i32 %7174, ptr %37, align 4, !tbaa !9
  %7175 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7175, ptr %20, align 4, !tbaa !9
  %7176 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7176, ptr %38, align 4, !tbaa !9
  store i32 2, ptr %39, align 4, !tbaa !9
  %7177 = load i32, ptr %39, align 4, !tbaa !9
  %7178 = and i32 %7177, 31
  %7179 = load i32, ptr %38, align 4, !tbaa !9
  %7180 = shl i32 %7179, %7178
  store i32 %7180, ptr %38, align 4, !tbaa !9
  %7181 = load i32, ptr %38, align 4, !tbaa !9
  %7182 = load i32, ptr %37, align 4, !tbaa !9
  %7183 = add i32 %7182, %7181
  store i32 %7183, ptr %37, align 4, !tbaa !9
  %7184 = load ptr, ptr %9, align 8, !tbaa !5
  %7185 = getelementptr inbounds %struct.w2c_hermes, ptr %7184, i32 0, i32 6
  %7186 = load i32, ptr %36, align 4, !tbaa !9
  %7187 = zext i32 %7186 to i64
  %7188 = add i64 %7187, 612
  %7189 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7185, i64 noundef %7188, i32 noundef %7189)
  %7190 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7190, ptr %36, align 4, !tbaa !9
  %7191 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %7191, ptr %37, align 4, !tbaa !9
  store i32 4, ptr %38, align 4, !tbaa !9
  %7192 = load i32, ptr %38, align 4, !tbaa !9
  %7193 = load i32, ptr %37, align 4, !tbaa !9
  %7194 = add i32 %7193, %7192
  store i32 %7194, ptr %37, align 4, !tbaa !9
  %7195 = load ptr, ptr %9, align 8, !tbaa !5
  %7196 = getelementptr inbounds %struct.w2c_hermes, ptr %7195, i32 0, i32 6
  %7197 = load i32, ptr %36, align 4, !tbaa !9
  %7198 = zext i32 %7197 to i64
  %7199 = add i64 %7198, 608
  %7200 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7196, i64 noundef %7199, i32 noundef %7200)
  %7201 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7201, ptr %36, align 4, !tbaa !9
  %7202 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7202, ptr %37, align 4, !tbaa !9
  %7203 = load ptr, ptr %9, align 8, !tbaa !5
  %7204 = getelementptr inbounds %struct.w2c_hermes, ptr %7203, i32 0, i32 6
  %7205 = load i32, ptr %36, align 4, !tbaa !9
  %7206 = zext i32 %7205 to i64
  %7207 = add i64 %7206, 604
  %7208 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7204, i64 noundef %7207, i32 noundef %7208)
  %7209 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7209, ptr %36, align 4, !tbaa !9
  %7210 = load i32, ptr %36, align 4, !tbaa !9
  %7211 = icmp ne i32 %7210, 0
  %7212 = xor i1 %7211, true
  %7213 = zext i1 %7212 to i32
  store i32 %7213, ptr %36, align 4, !tbaa !9
  %7214 = load i32, ptr %36, align 4, !tbaa !9
  %7215 = icmp ne i32 %7214, 0
  br i1 %7215, label %7216, label %7217

7216:                                             ; preds = %7149
  br label %7221

7217:                                             ; preds = %7149
  %7218 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7218, ptr %36, align 4, !tbaa !9
  %7219 = load ptr, ptr %9, align 8, !tbaa !5
  %7220 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %7219, i32 noundef %7220)
  br label %7221

7221:                                             ; preds = %7217, %7216, %7038
  %7222 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7222, ptr %36, align 4, !tbaa !9
  %7223 = load ptr, ptr %9, align 8, !tbaa !5
  %7224 = getelementptr inbounds %struct.w2c_hermes, ptr %7223, i32 0, i32 6
  %7225 = load i32, ptr %36, align 4, !tbaa !9
  %7226 = zext i32 %7225 to i64
  %7227 = add i64 %7226, 120
  %7228 = call i32 @i32_load(ptr noundef %7224, i64 noundef %7227)
  store i32 %7228, ptr %36, align 4, !tbaa !9
  %7229 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7229, ptr %18, align 4, !tbaa !9
  %7230 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %7230, ptr %37, align 4, !tbaa !9
  %7231 = load i32, ptr %36, align 4, !tbaa !9
  %7232 = load i32, ptr %37, align 4, !tbaa !9
  %7233 = icmp eq i32 %7231, %7232
  %7234 = zext i1 %7233 to i32
  store i32 %7234, ptr %36, align 4, !tbaa !9
  %7235 = load i32, ptr %36, align 4, !tbaa !9
  %7236 = icmp ne i32 %7235, 0
  br i1 %7236, label %7237, label %7238

7237:                                             ; preds = %7221
  br label %7242

7238:                                             ; preds = %7221
  %7239 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7239, ptr %36, align 4, !tbaa !9
  %7240 = load ptr, ptr %9, align 8, !tbaa !5
  %7241 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %7240, i32 noundef %7241)
  br label %7242

7242:                                             ; preds = %7238, %7237, %6799, %6798, %6153, %5950
  %7243 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7243, ptr %36, align 4, !tbaa !9
  %7244 = load ptr, ptr %9, align 8, !tbaa !5
  %7245 = getelementptr inbounds %struct.w2c_hermes, ptr %7244, i32 0, i32 6
  %7246 = load i32, ptr %36, align 4, !tbaa !9
  %7247 = zext i32 %7246 to i64
  %7248 = add i64 %7247, 4
  %7249 = call i32 @i32_load(ptr noundef %7245, i64 noundef %7248)
  store i32 %7249, ptr %36, align 4, !tbaa !9
  %7250 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7250, ptr %14, align 4, !tbaa !9
  %7251 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7251, ptr %37, align 4, !tbaa !9
  %7252 = load i32, ptr %36, align 4, !tbaa !9
  %7253 = load i32, ptr %37, align 4, !tbaa !9
  %7254 = icmp ne i32 %7252, %7253
  %7255 = zext i1 %7254 to i32
  store i32 %7255, ptr %36, align 4, !tbaa !9
  %7256 = load i32, ptr %36, align 4, !tbaa !9
  %7257 = icmp ne i32 %7256, 0
  br i1 %7257, label %7258, label %7259

7258:                                             ; preds = %7242
  br label %5923

7259:                                             ; preds = %7242
  br label %7260

7260:                                             ; preds = %7259, %5902
  %7261 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %7261, ptr %36, align 4, !tbaa !9
  %7262 = load ptr, ptr %9, align 8, !tbaa !5
  %7263 = getelementptr inbounds %struct.w2c_hermes, ptr %7262, i32 0, i32 6
  %7264 = load i32, ptr %36, align 4, !tbaa !9
  %7265 = zext i32 %7264 to i64
  %7266 = add i64 %7265, 4
  %7267 = call i32 @i32_load(ptr noundef %7263, i64 noundef %7266)
  store i32 %7267, ptr %36, align 4, !tbaa !9
  %7268 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7268, ptr %26, align 4, !tbaa !9
  %7269 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %7269, ptr %37, align 4, !tbaa !9
  %7270 = load i32, ptr %36, align 4, !tbaa !9
  %7271 = load i32, ptr %37, align 4, !tbaa !9
  %7272 = icmp ne i32 %7270, %7271
  %7273 = zext i1 %7272 to i32
  store i32 %7273, ptr %36, align 4, !tbaa !9
  %7274 = load i32, ptr %36, align 4, !tbaa !9
  %7275 = icmp ne i32 %7274, 0
  br i1 %7275, label %7276, label %7277

7276:                                             ; preds = %7260
  br label %5902

7277:                                             ; preds = %7260
  br label %7278

7278:                                             ; preds = %7277, %5900, %5879
  %7279 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %7279, ptr %36, align 4, !tbaa !9
  %7280 = load ptr, ptr %9, align 8, !tbaa !5
  %7281 = getelementptr inbounds %struct.w2c_hermes, ptr %7280, i32 0, i32 6
  %7282 = load i32, ptr %36, align 4, !tbaa !9
  %7283 = zext i32 %7282 to i64
  %7284 = add i64 %7283, 4
  %7285 = call i32 @i32_load(ptr noundef %7281, i64 noundef %7284)
  store i32 %7285, ptr %36, align 4, !tbaa !9
  %7286 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7286, ptr %30, align 4, !tbaa !9
  %7287 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %7287, ptr %37, align 4, !tbaa !9
  %7288 = load i32, ptr %36, align 4, !tbaa !9
  %7289 = load i32, ptr %37, align 4, !tbaa !9
  %7290 = icmp ne i32 %7288, %7289
  %7291 = zext i1 %7290 to i32
  store i32 %7291, ptr %36, align 4, !tbaa !9
  %7292 = load i32, ptr %36, align 4, !tbaa !9
  %7293 = icmp ne i32 %7292, 0
  br i1 %7293, label %7294, label %7295

7294:                                             ; preds = %7278
  br label %5760

7295:                                             ; preds = %7278
  %7296 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7296, ptr %36, align 4, !tbaa !9
  %7297 = load ptr, ptr %9, align 8, !tbaa !5
  %7298 = getelementptr inbounds %struct.w2c_hermes, ptr %7297, i32 0, i32 6
  %7299 = load i32, ptr %36, align 4, !tbaa !9
  %7300 = zext i32 %7299 to i64
  %7301 = add i64 %7300, 556
  %7302 = call i32 @i32_load(ptr noundef %7298, i64 noundef %7301)
  store i32 %7302, ptr %36, align 4, !tbaa !9
  %7303 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7303, ptr %14, align 4, !tbaa !9
  %7304 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7304, ptr %37, align 4, !tbaa !9
  %7305 = load ptr, ptr %9, align 8, !tbaa !5
  %7306 = getelementptr inbounds %struct.w2c_hermes, ptr %7305, i32 0, i32 6
  %7307 = load i32, ptr %37, align 4, !tbaa !9
  %7308 = zext i32 %7307 to i64
  %7309 = add i64 %7308, 568
  %7310 = call i32 @i32_load(ptr noundef %7306, i64 noundef %7309)
  store i32 %7310, ptr %37, align 4, !tbaa !9
  %7311 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7311, ptr %19, align 4, !tbaa !9
  store i32 341, ptr %38, align 4, !tbaa !9
  %7312 = load i32, ptr %38, align 4, !tbaa !9
  %7313 = icmp eq i32 %7312, 0
  %7314 = xor i1 %7313, true
  %7315 = xor i1 %7314, true
  %7316 = zext i1 %7315 to i32
  %7317 = sext i32 %7316 to i64
  %7318 = call i64 @llvm.expect.i64(i64 %7317, i64 0)
  %7319 = icmp ne i64 %7318, 0
  br i1 %7319, label %7320, label %7322

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

7321:                                             ; No predecessors!
  br label %7326

7322:                                             ; preds = %7295
  %7323 = load i32, ptr %37, align 4, !tbaa !9
  %7324 = load i32, ptr %38, align 4, !tbaa !9
  %7325 = udiv i32 %7323, %7324
  br label %7326

7326:                                             ; preds = %7322, %7321
  %7327 = phi i32 [ 0, %7321 ], [ %7325, %7322 ]
  store i32 %7327, ptr %37, align 4, !tbaa !9
  %7328 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7328, ptr %21, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %7329 = load i32, ptr %38, align 4, !tbaa !9
  %7330 = and i32 %7329, 31
  %7331 = load i32, ptr %37, align 4, !tbaa !9
  %7332 = shl i32 %7331, %7330
  store i32 %7332, ptr %37, align 4, !tbaa !9
  %7333 = load i32, ptr %37, align 4, !tbaa !9
  %7334 = load i32, ptr %36, align 4, !tbaa !9
  %7335 = add i32 %7334, %7333
  store i32 %7335, ptr %36, align 4, !tbaa !9
  %7336 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7336, ptr %18, align 4, !tbaa !9
  %7337 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7337, ptr %36, align 4, !tbaa !9
  %7338 = load ptr, ptr %9, align 8, !tbaa !5
  %7339 = getelementptr inbounds %struct.w2c_hermes, ptr %7338, i32 0, i32 6
  %7340 = load i32, ptr %36, align 4, !tbaa !9
  %7341 = zext i32 %7340 to i64
  %7342 = add i64 %7341, 560
  %7343 = call i32 @i32_load(ptr noundef %7339, i64 noundef %7342)
  store i32 %7343, ptr %36, align 4, !tbaa !9
  %7344 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7344, ptr %20, align 4, !tbaa !9
  %7345 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7345, ptr %37, align 4, !tbaa !9
  %7346 = load i32, ptr %36, align 4, !tbaa !9
  %7347 = load i32, ptr %37, align 4, !tbaa !9
  %7348 = icmp eq i32 %7346, %7347
  %7349 = zext i1 %7348 to i32
  store i32 %7349, ptr %36, align 4, !tbaa !9
  %7350 = load i32, ptr %36, align 4, !tbaa !9
  %7351 = icmp ne i32 %7350, 0
  br i1 %7351, label %7352, label %7353

7352:                                             ; preds = %7326
  br label %7452

7353:                                             ; preds = %7326
  %7354 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7354, ptr %36, align 4, !tbaa !9
  %7355 = load ptr, ptr %9, align 8, !tbaa !5
  %7356 = getelementptr inbounds %struct.w2c_hermes, ptr %7355, i32 0, i32 6
  %7357 = load i32, ptr %36, align 4, !tbaa !9
  %7358 = zext i32 %7357 to i64
  %7359 = call i32 @i32_load(ptr noundef %7356, i64 noundef %7358)
  store i32 %7359, ptr %36, align 4, !tbaa !9
  %7360 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7360, ptr %20, align 4, !tbaa !9
  %7361 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7361, ptr %36, align 4, !tbaa !9
  %7362 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7362, ptr %37, align 4, !tbaa !9
  %7363 = load ptr, ptr %9, align 8, !tbaa !5
  %7364 = getelementptr inbounds %struct.w2c_hermes, ptr %7363, i32 0, i32 6
  %7365 = load i32, ptr %36, align 4, !tbaa !9
  %7366 = zext i32 %7365 to i64
  %7367 = add i64 %7366, 2760
  %7368 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7364, i64 noundef %7367, i32 noundef %7368)
  %7369 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7369, ptr %36, align 4, !tbaa !9
  %7370 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7370, ptr %37, align 4, !tbaa !9
  %7371 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7371, ptr %38, align 4, !tbaa !9
  %7372 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7372, ptr %39, align 4, !tbaa !9
  store i32 341, ptr %40, align 4, !tbaa !9
  %7373 = load i32, ptr %40, align 4, !tbaa !9
  %7374 = load i32, ptr %39, align 4, !tbaa !9
  %7375 = mul i32 %7374, %7373
  store i32 %7375, ptr %39, align 4, !tbaa !9
  %7376 = load i32, ptr %39, align 4, !tbaa !9
  %7377 = load i32, ptr %38, align 4, !tbaa !9
  %7378 = sub i32 %7377, %7376
  store i32 %7378, ptr %38, align 4, !tbaa !9
  store i32 12, ptr %39, align 4, !tbaa !9
  %7379 = load i32, ptr %39, align 4, !tbaa !9
  %7380 = load i32, ptr %38, align 4, !tbaa !9
  %7381 = mul i32 %7380, %7379
  store i32 %7381, ptr %38, align 4, !tbaa !9
  %7382 = load i32, ptr %38, align 4, !tbaa !9
  %7383 = load i32, ptr %37, align 4, !tbaa !9
  %7384 = add i32 %7383, %7382
  store i32 %7384, ptr %37, align 4, !tbaa !9
  %7385 = load ptr, ptr %9, align 8, !tbaa !5
  %7386 = getelementptr inbounds %struct.w2c_hermes, ptr %7385, i32 0, i32 6
  %7387 = load i32, ptr %36, align 4, !tbaa !9
  %7388 = zext i32 %7387 to i64
  %7389 = add i64 %7388, 2764
  %7390 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7386, i64 noundef %7389, i32 noundef %7390)
  %7391 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7391, ptr %36, align 4, !tbaa !9
  %7392 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7392, ptr %37, align 4, !tbaa !9
  %7393 = load ptr, ptr %9, align 8, !tbaa !5
  %7394 = getelementptr inbounds %struct.w2c_hermes, ptr %7393, i32 0, i32 6
  %7395 = load i32, ptr %37, align 4, !tbaa !9
  %7396 = zext i32 %7395 to i64
  %7397 = add i64 %7396, 572
  %7398 = call i32 @i32_load(ptr noundef %7394, i64 noundef %7397)
  store i32 %7398, ptr %37, align 4, !tbaa !9
  %7399 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7399, ptr %38, align 4, !tbaa !9
  %7400 = load i32, ptr %38, align 4, !tbaa !9
  %7401 = load i32, ptr %37, align 4, !tbaa !9
  %7402 = add i32 %7401, %7400
  store i32 %7402, ptr %37, align 4, !tbaa !9
  %7403 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7403, ptr %19, align 4, !tbaa !9
  store i32 341, ptr %38, align 4, !tbaa !9
  %7404 = load i32, ptr %38, align 4, !tbaa !9
  %7405 = icmp eq i32 %7404, 0
  %7406 = xor i1 %7405, true
  %7407 = xor i1 %7406, true
  %7408 = zext i1 %7407 to i32
  %7409 = sext i32 %7408 to i64
  %7410 = call i64 @llvm.expect.i64(i64 %7409, i64 0)
  %7411 = icmp ne i64 %7410, 0
  br i1 %7411, label %7412, label %7414

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

7413:                                             ; No predecessors!
  br label %7418

7414:                                             ; preds = %7353
  %7415 = load i32, ptr %37, align 4, !tbaa !9
  %7416 = load i32, ptr %38, align 4, !tbaa !9
  %7417 = udiv i32 %7415, %7416
  br label %7418

7418:                                             ; preds = %7414, %7413
  %7419 = phi i32 [ 0, %7413 ], [ %7417, %7414 ]
  store i32 %7419, ptr %37, align 4, !tbaa !9
  %7420 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7420, ptr %20, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %7421 = load i32, ptr %38, align 4, !tbaa !9
  %7422 = and i32 %7421, 31
  %7423 = load i32, ptr %37, align 4, !tbaa !9
  %7424 = shl i32 %7423, %7422
  store i32 %7424, ptr %37, align 4, !tbaa !9
  %7425 = load i32, ptr %37, align 4, !tbaa !9
  %7426 = load i32, ptr %36, align 4, !tbaa !9
  %7427 = add i32 %7426, %7425
  store i32 %7427, ptr %36, align 4, !tbaa !9
  %7428 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7428, ptr %18, align 4, !tbaa !9
  %7429 = load ptr, ptr %9, align 8, !tbaa !5
  %7430 = getelementptr inbounds %struct.w2c_hermes, ptr %7429, i32 0, i32 6
  %7431 = load i32, ptr %36, align 4, !tbaa !9
  %7432 = zext i32 %7431 to i64
  %7433 = call i32 @i32_load(ptr noundef %7430, i64 noundef %7432)
  store i32 %7433, ptr %36, align 4, !tbaa !9
  %7434 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7434, ptr %37, align 4, !tbaa !9
  %7435 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7435, ptr %38, align 4, !tbaa !9
  store i32 341, ptr %39, align 4, !tbaa !9
  %7436 = load i32, ptr %39, align 4, !tbaa !9
  %7437 = load i32, ptr %38, align 4, !tbaa !9
  %7438 = mul i32 %7437, %7436
  store i32 %7438, ptr %38, align 4, !tbaa !9
  %7439 = load i32, ptr %38, align 4, !tbaa !9
  %7440 = load i32, ptr %37, align 4, !tbaa !9
  %7441 = sub i32 %7440, %7439
  store i32 %7441, ptr %37, align 4, !tbaa !9
  store i32 12, ptr %38, align 4, !tbaa !9
  %7442 = load i32, ptr %38, align 4, !tbaa !9
  %7443 = load i32, ptr %37, align 4, !tbaa !9
  %7444 = mul i32 %7443, %7442
  store i32 %7444, ptr %37, align 4, !tbaa !9
  %7445 = load i32, ptr %37, align 4, !tbaa !9
  %7446 = load i32, ptr %36, align 4, !tbaa !9
  %7447 = add i32 %7446, %7445
  store i32 %7447, ptr %36, align 4, !tbaa !9
  br label %7504

7448:                                             ; preds = %7138, %6679, %1797
  %7449 = load ptr, ptr %9, align 8, !tbaa !5
  call void @w2c_hermes_std0x3A0x3A_0x5Fthrow_bad_array_new_length0x5Babi0x3Av150070x5D0x280x29(ptr noundef %7449)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

7450:                                             ; preds = %7086, %6627, %2217, %1902, %1745, %1530
  %7451 = load ptr, ptr %9, align 8, !tbaa !5
  call void @w2c_hermes_abort(ptr noundef %7451)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

7452:                                             ; preds = %7352, %5731
  %7453 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7453, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %7454 = load ptr, ptr %9, align 8, !tbaa !5
  %7455 = getelementptr inbounds %struct.w2c_hermes, ptr %7454, i32 0, i32 6
  %7456 = load i32, ptr %36, align 4, !tbaa !9
  %7457 = zext i32 %7456 to i64
  %7458 = add i64 %7457, 2764
  %7459 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7455, i64 noundef %7458, i32 noundef %7459)
  %7460 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7460, ptr %36, align 4, !tbaa !9
  %7461 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7461, ptr %37, align 4, !tbaa !9
  %7462 = load ptr, ptr %9, align 8, !tbaa !5
  %7463 = getelementptr inbounds %struct.w2c_hermes, ptr %7462, i32 0, i32 6
  %7464 = load i32, ptr %36, align 4, !tbaa !9
  %7465 = zext i32 %7464 to i64
  %7466 = add i64 %7465, 2760
  %7467 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7463, i64 noundef %7466, i32 noundef %7467)
  %7468 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7468, ptr %36, align 4, !tbaa !9
  %7469 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7469, ptr %37, align 4, !tbaa !9
  %7470 = load ptr, ptr %9, align 8, !tbaa !5
  %7471 = getelementptr inbounds %struct.w2c_hermes, ptr %7470, i32 0, i32 6
  %7472 = load i32, ptr %37, align 4, !tbaa !9
  %7473 = zext i32 %7472 to i64
  %7474 = add i64 %7473, 572
  %7475 = call i32 @i32_load(ptr noundef %7471, i64 noundef %7474)
  store i32 %7475, ptr %37, align 4, !tbaa !9
  %7476 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7476, ptr %38, align 4, !tbaa !9
  %7477 = load i32, ptr %38, align 4, !tbaa !9
  %7478 = load i32, ptr %37, align 4, !tbaa !9
  %7479 = add i32 %7478, %7477
  store i32 %7479, ptr %37, align 4, !tbaa !9
  store i32 341, ptr %38, align 4, !tbaa !9
  %7480 = load i32, ptr %38, align 4, !tbaa !9
  %7481 = icmp eq i32 %7480, 0
  %7482 = xor i1 %7481, true
  %7483 = xor i1 %7482, true
  %7484 = zext i1 %7483 to i32
  %7485 = sext i32 %7484 to i64
  %7486 = call i64 @llvm.expect.i64(i64 %7485, i64 0)
  %7487 = icmp ne i64 %7486, 0
  br i1 %7487, label %7488, label %7490

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

7489:                                             ; No predecessors!
  br label %7494

7490:                                             ; preds = %7452
  %7491 = load i32, ptr %37, align 4, !tbaa !9
  %7492 = load i32, ptr %38, align 4, !tbaa !9
  %7493 = udiv i32 %7491, %7492
  br label %7494

7494:                                             ; preds = %7490, %7489
  %7495 = phi i32 [ 0, %7489 ], [ %7493, %7490 ]
  store i32 %7495, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %7496 = load i32, ptr %38, align 4, !tbaa !9
  %7497 = and i32 %7496, 31
  %7498 = load i32, ptr %37, align 4, !tbaa !9
  %7499 = shl i32 %7498, %7497
  store i32 %7499, ptr %37, align 4, !tbaa !9
  %7500 = load i32, ptr %37, align 4, !tbaa !9
  %7501 = load i32, ptr %36, align 4, !tbaa !9
  %7502 = add i32 %7501, %7500
  store i32 %7502, ptr %36, align 4, !tbaa !9
  %7503 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7503, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %7504

7504:                                             ; preds = %7494, %7418
  %7505 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7505, ptr %14, align 4, !tbaa !9
  %7506 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7506, ptr %36, align 4, !tbaa !9
  %7507 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7507, ptr %37, align 4, !tbaa !9
  %7508 = load ptr, ptr %9, align 8, !tbaa !5
  %7509 = getelementptr inbounds %struct.w2c_hermes, ptr %7508, i32 0, i32 6
  %7510 = load i32, ptr %36, align 4, !tbaa !9
  %7511 = zext i32 %7510 to i64
  %7512 = add i64 %7511, 2756
  %7513 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7509, i64 noundef %7512, i32 noundef %7513)
  %7514 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7514, ptr %36, align 4, !tbaa !9
  %7515 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %7515, ptr %37, align 4, !tbaa !9
  %7516 = load ptr, ptr %9, align 8, !tbaa !5
  %7517 = getelementptr inbounds %struct.w2c_hermes, ptr %7516, i32 0, i32 6
  %7518 = load i32, ptr %36, align 4, !tbaa !9
  %7519 = zext i32 %7518 to i64
  %7520 = add i64 %7519, 2752
  %7521 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7517, i64 noundef %7520, i32 noundef %7521)
  %7522 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7522, ptr %36, align 4, !tbaa !9
  %7523 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7523, ptr %37, align 4, !tbaa !9
  %7524 = load ptr, ptr %9, align 8, !tbaa !5
  %7525 = getelementptr inbounds %struct.w2c_hermes, ptr %7524, i32 0, i32 6
  %7526 = load i32, ptr %37, align 4, !tbaa !9
  %7527 = zext i32 %7526 to i64
  %7528 = add i64 %7527, 2760
  %7529 = call i64 @i64_load(ptr noundef %7525, i64 noundef %7528)
  store i64 %7529, ptr %43, align 8, !tbaa !11
  %7530 = load ptr, ptr %9, align 8, !tbaa !5
  %7531 = getelementptr inbounds %struct.w2c_hermes, ptr %7530, i32 0, i32 6
  %7532 = load i32, ptr %36, align 4, !tbaa !9
  %7533 = zext i32 %7532 to i64
  %7534 = add i64 %7533, 80
  %7535 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7531, i64 noundef %7534, i64 noundef %7535)
  %7536 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7536, ptr %36, align 4, !tbaa !9
  %7537 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7537, ptr %37, align 4, !tbaa !9
  %7538 = load ptr, ptr %9, align 8, !tbaa !5
  %7539 = getelementptr inbounds %struct.w2c_hermes, ptr %7538, i32 0, i32 6
  %7540 = load i32, ptr %37, align 4, !tbaa !9
  %7541 = zext i32 %7540 to i64
  %7542 = add i64 %7541, 2752
  %7543 = call i64 @i64_load(ptr noundef %7539, i64 noundef %7542)
  store i64 %7543, ptr %43, align 8, !tbaa !11
  %7544 = load ptr, ptr %9, align 8, !tbaa !5
  %7545 = getelementptr inbounds %struct.w2c_hermes, ptr %7544, i32 0, i32 6
  %7546 = load i32, ptr %36, align 4, !tbaa !9
  %7547 = zext i32 %7546 to i64
  %7548 = add i64 %7547, 72
  %7549 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7545, i64 noundef %7548, i64 noundef %7549)
  %7550 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7550, ptr %36, align 4, !tbaa !9
  store i32 120, ptr %37, align 4, !tbaa !9
  %7551 = load i32, ptr %37, align 4, !tbaa !9
  %7552 = load i32, ptr %36, align 4, !tbaa !9
  %7553 = add i32 %7552, %7551
  store i32 %7553, ptr %36, align 4, !tbaa !9
  %7554 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7554, ptr %37, align 4, !tbaa !9
  store i32 80, ptr %38, align 4, !tbaa !9
  %7555 = load i32, ptr %38, align 4, !tbaa !9
  %7556 = load i32, ptr %37, align 4, !tbaa !9
  %7557 = add i32 %7556, %7555
  store i32 %7557, ptr %37, align 4, !tbaa !9
  %7558 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7558, ptr %38, align 4, !tbaa !9
  store i32 72, ptr %39, align 4, !tbaa !9
  %7559 = load i32, ptr %39, align 4, !tbaa !9
  %7560 = load i32, ptr %38, align 4, !tbaa !9
  %7561 = add i32 %7560, %7559
  store i32 %7561, ptr %38, align 4, !tbaa !9
  %7562 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7562, ptr %39, align 4, !tbaa !9
  %7563 = load ptr, ptr %9, align 8, !tbaa !5
  %7564 = getelementptr inbounds %struct.w2c_hermes, ptr %7563, i32 0, i32 6
  %7565 = load i32, ptr %39, align 4, !tbaa !9
  %7566 = zext i32 %7565 to i64
  %7567 = add i64 %7566, 532
  %7568 = call i32 @i32_load8_u(ptr noundef %7564, i64 noundef %7567)
  store i32 %7568, ptr %39, align 4, !tbaa !9
  %7569 = load ptr, ptr %9, align 8, !tbaa !5
  %7570 = load i32, ptr %36, align 4, !tbaa !9
  %7571 = load i32, ptr %37, align 4, !tbaa !9
  %7572 = load i32, ptr %38, align 4, !tbaa !9
  %7573 = load i32, ptr %39, align 4, !tbaa !9
  %7574 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef %7569, i32 noundef %7570, i32 noundef %7571, i32 noundef %7572, i32 noundef %7573)
  store i32 %7574, ptr %36, align 4, !tbaa !9
  %7575 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7575, ptr %18, align 4, !tbaa !9
  %7576 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7576, ptr %36, align 4, !tbaa !9
  %7577 = load ptr, ptr %9, align 8, !tbaa !5
  %7578 = getelementptr inbounds %struct.w2c_hermes, ptr %7577, i32 0, i32 6
  %7579 = load i32, ptr %36, align 4, !tbaa !9
  %7580 = zext i32 %7579 to i64
  %7581 = add i64 %7580, 620
  %7582 = call i32 @i32_load(ptr noundef %7578, i64 noundef %7581)
  store i32 %7582, ptr %36, align 4, !tbaa !9
  %7583 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7583, ptr %19, align 4, !tbaa !9
  %7584 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7584, ptr %37, align 4, !tbaa !9
  %7585 = load ptr, ptr %9, align 8, !tbaa !5
  %7586 = getelementptr inbounds %struct.w2c_hermes, ptr %7585, i32 0, i32 6
  %7587 = load i32, ptr %37, align 4, !tbaa !9
  %7588 = zext i32 %7587 to i64
  %7589 = add i64 %7588, 632
  %7590 = call i32 @i32_load(ptr noundef %7586, i64 noundef %7589)
  store i32 %7590, ptr %37, align 4, !tbaa !9
  %7591 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7591, ptr %14, align 4, !tbaa !9
  store i32 341, ptr %38, align 4, !tbaa !9
  %7592 = load i32, ptr %38, align 4, !tbaa !9
  %7593 = icmp eq i32 %7592, 0
  %7594 = xor i1 %7593, true
  %7595 = xor i1 %7594, true
  %7596 = zext i1 %7595 to i32
  %7597 = sext i32 %7596 to i64
  %7598 = call i64 @llvm.expect.i64(i64 %7597, i64 0)
  %7599 = icmp ne i64 %7598, 0
  br i1 %7599, label %7600, label %7602

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

7601:                                             ; No predecessors!
  br label %7606

7602:                                             ; preds = %7504
  %7603 = load i32, ptr %37, align 4, !tbaa !9
  %7604 = load i32, ptr %38, align 4, !tbaa !9
  %7605 = udiv i32 %7603, %7604
  br label %7606

7606:                                             ; preds = %7602, %7601
  %7607 = phi i32 [ 0, %7601 ], [ %7605, %7602 ]
  store i32 %7607, ptr %37, align 4, !tbaa !9
  %7608 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7608, ptr %21, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %7609 = load i32, ptr %38, align 4, !tbaa !9
  %7610 = and i32 %7609, 31
  %7611 = load i32, ptr %37, align 4, !tbaa !9
  %7612 = shl i32 %7611, %7610
  store i32 %7612, ptr %37, align 4, !tbaa !9
  %7613 = load i32, ptr %37, align 4, !tbaa !9
  %7614 = load i32, ptr %36, align 4, !tbaa !9
  %7615 = add i32 %7614, %7613
  store i32 %7615, ptr %36, align 4, !tbaa !9
  %7616 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7616, ptr %20, align 4, !tbaa !9
  %7617 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7617, ptr %36, align 4, !tbaa !9
  %7618 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7618, ptr %37, align 4, !tbaa !9
  %7619 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7619, ptr %38, align 4, !tbaa !9
  %7620 = load ptr, ptr %9, align 8, !tbaa !5
  %7621 = getelementptr inbounds %struct.w2c_hermes, ptr %7620, i32 0, i32 6
  %7622 = load i32, ptr %38, align 4, !tbaa !9
  %7623 = zext i32 %7622 to i64
  %7624 = add i64 %7623, 624
  %7625 = call i32 @i32_load(ptr noundef %7621, i64 noundef %7624)
  store i32 %7625, ptr %38, align 4, !tbaa !9
  %7626 = load i32, ptr %37, align 4, !tbaa !9
  %7627 = load i32, ptr %38, align 4, !tbaa !9
  %7628 = icmp eq i32 %7626, %7627
  %7629 = zext i1 %7628 to i32
  store i32 %7629, ptr %37, align 4, !tbaa !9
  %7630 = load i32, ptr %37, align 4, !tbaa !9
  %7631 = icmp ne i32 %7630, 0
  br i1 %7631, label %7632, label %7684

7632:                                             ; preds = %7606
  %7633 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7633, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  %7634 = load ptr, ptr %9, align 8, !tbaa !5
  %7635 = getelementptr inbounds %struct.w2c_hermes, ptr %7634, i32 0, i32 6
  %7636 = load i32, ptr %37, align 4, !tbaa !9
  %7637 = zext i32 %7636 to i64
  %7638 = add i64 %7637, 2748
  %7639 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7635, i64 noundef %7638, i32 noundef %7639)
  %7640 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7640, ptr %37, align 4, !tbaa !9
  %7641 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7641, ptr %38, align 4, !tbaa !9
  %7642 = load ptr, ptr %9, align 8, !tbaa !5
  %7643 = getelementptr inbounds %struct.w2c_hermes, ptr %7642, i32 0, i32 6
  %7644 = load i32, ptr %37, align 4, !tbaa !9
  %7645 = zext i32 %7644 to i64
  %7646 = add i64 %7645, 2744
  %7647 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7643, i64 noundef %7646, i32 noundef %7647)
  %7648 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7648, ptr %37, align 4, !tbaa !9
  %7649 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7649, ptr %38, align 4, !tbaa !9
  %7650 = load ptr, ptr %9, align 8, !tbaa !5
  %7651 = getelementptr inbounds %struct.w2c_hermes, ptr %7650, i32 0, i32 6
  %7652 = load i32, ptr %38, align 4, !tbaa !9
  %7653 = zext i32 %7652 to i64
  %7654 = add i64 %7653, 636
  %7655 = call i32 @i32_load(ptr noundef %7651, i64 noundef %7654)
  store i32 %7655, ptr %38, align 4, !tbaa !9
  %7656 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7656, ptr %39, align 4, !tbaa !9
  %7657 = load i32, ptr %39, align 4, !tbaa !9
  %7658 = load i32, ptr %38, align 4, !tbaa !9
  %7659 = add i32 %7658, %7657
  store i32 %7659, ptr %38, align 4, !tbaa !9
  store i32 341, ptr %39, align 4, !tbaa !9
  %7660 = load i32, ptr %39, align 4, !tbaa !9
  %7661 = icmp eq i32 %7660, 0
  %7662 = xor i1 %7661, true
  %7663 = xor i1 %7662, true
  %7664 = zext i1 %7663 to i32
  %7665 = sext i32 %7664 to i64
  %7666 = call i64 @llvm.expect.i64(i64 %7665, i64 0)
  %7667 = icmp ne i64 %7666, 0
  br i1 %7667, label %7668, label %7670

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

7669:                                             ; No predecessors!
  br label %7674

7670:                                             ; preds = %7632
  %7671 = load i32, ptr %38, align 4, !tbaa !9
  %7672 = load i32, ptr %39, align 4, !tbaa !9
  %7673 = udiv i32 %7671, %7672
  br label %7674

7674:                                             ; preds = %7670, %7669
  %7675 = phi i32 [ 0, %7669 ], [ %7673, %7670 ]
  store i32 %7675, ptr %38, align 4, !tbaa !9
  store i32 2, ptr %39, align 4, !tbaa !9
  %7676 = load i32, ptr %39, align 4, !tbaa !9
  %7677 = and i32 %7676, 31
  %7678 = load i32, ptr %38, align 4, !tbaa !9
  %7679 = shl i32 %7678, %7677
  store i32 %7679, ptr %38, align 4, !tbaa !9
  %7680 = load i32, ptr %38, align 4, !tbaa !9
  %7681 = load i32, ptr %37, align 4, !tbaa !9
  %7682 = add i32 %7681, %7680
  store i32 %7682, ptr %37, align 4, !tbaa !9
  %7683 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7683, ptr %19, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  br label %7779

7684:                                             ; preds = %7606
  %7685 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7685, ptr %37, align 4, !tbaa !9
  %7686 = load ptr, ptr %9, align 8, !tbaa !5
  %7687 = getelementptr inbounds %struct.w2c_hermes, ptr %7686, i32 0, i32 6
  %7688 = load i32, ptr %37, align 4, !tbaa !9
  %7689 = zext i32 %7688 to i64
  %7690 = call i32 @i32_load(ptr noundef %7687, i64 noundef %7689)
  store i32 %7690, ptr %37, align 4, !tbaa !9
  %7691 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7691, ptr %22, align 4, !tbaa !9
  %7692 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7692, ptr %37, align 4, !tbaa !9
  %7693 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7693, ptr %38, align 4, !tbaa !9
  %7694 = load ptr, ptr %9, align 8, !tbaa !5
  %7695 = getelementptr inbounds %struct.w2c_hermes, ptr %7694, i32 0, i32 6
  %7696 = load i32, ptr %37, align 4, !tbaa !9
  %7697 = zext i32 %7696 to i64
  %7698 = add i64 %7697, 2744
  %7699 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7695, i64 noundef %7698, i32 noundef %7699)
  %7700 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7700, ptr %37, align 4, !tbaa !9
  %7701 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7701, ptr %38, align 4, !tbaa !9
  %7702 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7702, ptr %39, align 4, !tbaa !9
  %7703 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7703, ptr %40, align 4, !tbaa !9
  store i32 341, ptr %41, align 4, !tbaa !9
  %7704 = load i32, ptr %41, align 4, !tbaa !9
  %7705 = load i32, ptr %40, align 4, !tbaa !9
  %7706 = mul i32 %7705, %7704
  store i32 %7706, ptr %40, align 4, !tbaa !9
  %7707 = load i32, ptr %40, align 4, !tbaa !9
  %7708 = load i32, ptr %39, align 4, !tbaa !9
  %7709 = sub i32 %7708, %7707
  store i32 %7709, ptr %39, align 4, !tbaa !9
  store i32 12, ptr %40, align 4, !tbaa !9
  %7710 = load i32, ptr %40, align 4, !tbaa !9
  %7711 = load i32, ptr %39, align 4, !tbaa !9
  %7712 = mul i32 %7711, %7710
  store i32 %7712, ptr %39, align 4, !tbaa !9
  %7713 = load i32, ptr %39, align 4, !tbaa !9
  %7714 = load i32, ptr %38, align 4, !tbaa !9
  %7715 = add i32 %7714, %7713
  store i32 %7715, ptr %38, align 4, !tbaa !9
  %7716 = load ptr, ptr %9, align 8, !tbaa !5
  %7717 = getelementptr inbounds %struct.w2c_hermes, ptr %7716, i32 0, i32 6
  %7718 = load i32, ptr %37, align 4, !tbaa !9
  %7719 = zext i32 %7718 to i64
  %7720 = add i64 %7719, 2748
  %7721 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7717, i64 noundef %7720, i32 noundef %7721)
  %7722 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7722, ptr %37, align 4, !tbaa !9
  %7723 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7723, ptr %38, align 4, !tbaa !9
  %7724 = load ptr, ptr %9, align 8, !tbaa !5
  %7725 = getelementptr inbounds %struct.w2c_hermes, ptr %7724, i32 0, i32 6
  %7726 = load i32, ptr %38, align 4, !tbaa !9
  %7727 = zext i32 %7726 to i64
  %7728 = add i64 %7727, 636
  %7729 = call i32 @i32_load(ptr noundef %7725, i64 noundef %7728)
  store i32 %7729, ptr %38, align 4, !tbaa !9
  %7730 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7730, ptr %39, align 4, !tbaa !9
  %7731 = load i32, ptr %39, align 4, !tbaa !9
  %7732 = load i32, ptr %38, align 4, !tbaa !9
  %7733 = add i32 %7732, %7731
  store i32 %7733, ptr %38, align 4, !tbaa !9
  %7734 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %7734, ptr %14, align 4, !tbaa !9
  store i32 341, ptr %39, align 4, !tbaa !9
  %7735 = load i32, ptr %39, align 4, !tbaa !9
  %7736 = icmp eq i32 %7735, 0
  %7737 = xor i1 %7736, true
  %7738 = xor i1 %7737, true
  %7739 = zext i1 %7738 to i32
  %7740 = sext i32 %7739 to i64
  %7741 = call i64 @llvm.expect.i64(i64 %7740, i64 0)
  %7742 = icmp ne i64 %7741, 0
  br i1 %7742, label %7743, label %7745

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

7744:                                             ; No predecessors!
  br label %7749

7745:                                             ; preds = %7684
  %7746 = load i32, ptr %38, align 4, !tbaa !9
  %7747 = load i32, ptr %39, align 4, !tbaa !9
  %7748 = udiv i32 %7746, %7747
  br label %7749

7749:                                             ; preds = %7745, %7744
  %7750 = phi i32 [ 0, %7744 ], [ %7748, %7745 ]
  store i32 %7750, ptr %38, align 4, !tbaa !9
  %7751 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %7751, ptr %20, align 4, !tbaa !9
  store i32 2, ptr %39, align 4, !tbaa !9
  %7752 = load i32, ptr %39, align 4, !tbaa !9
  %7753 = and i32 %7752, 31
  %7754 = load i32, ptr %38, align 4, !tbaa !9
  %7755 = shl i32 %7754, %7753
  store i32 %7755, ptr %38, align 4, !tbaa !9
  %7756 = load i32, ptr %38, align 4, !tbaa !9
  %7757 = load i32, ptr %37, align 4, !tbaa !9
  %7758 = add i32 %7757, %7756
  store i32 %7758, ptr %37, align 4, !tbaa !9
  %7759 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7759, ptr %19, align 4, !tbaa !9
  %7760 = load ptr, ptr %9, align 8, !tbaa !5
  %7761 = getelementptr inbounds %struct.w2c_hermes, ptr %7760, i32 0, i32 6
  %7762 = load i32, ptr %37, align 4, !tbaa !9
  %7763 = zext i32 %7762 to i64
  %7764 = call i32 @i32_load(ptr noundef %7761, i64 noundef %7763)
  store i32 %7764, ptr %37, align 4, !tbaa !9
  %7765 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7765, ptr %38, align 4, !tbaa !9
  %7766 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7766, ptr %39, align 4, !tbaa !9
  store i32 341, ptr %40, align 4, !tbaa !9
  %7767 = load i32, ptr %40, align 4, !tbaa !9
  %7768 = load i32, ptr %39, align 4, !tbaa !9
  %7769 = mul i32 %7768, %7767
  store i32 %7769, ptr %39, align 4, !tbaa !9
  %7770 = load i32, ptr %39, align 4, !tbaa !9
  %7771 = load i32, ptr %38, align 4, !tbaa !9
  %7772 = sub i32 %7771, %7770
  store i32 %7772, ptr %38, align 4, !tbaa !9
  store i32 12, ptr %39, align 4, !tbaa !9
  %7773 = load i32, ptr %39, align 4, !tbaa !9
  %7774 = load i32, ptr %38, align 4, !tbaa !9
  %7775 = mul i32 %7774, %7773
  store i32 %7775, ptr %38, align 4, !tbaa !9
  %7776 = load i32, ptr %38, align 4, !tbaa !9
  %7777 = load i32, ptr %37, align 4, !tbaa !9
  %7778 = add i32 %7777, %7776
  store i32 %7778, ptr %37, align 4, !tbaa !9
  br label %7779

7779:                                             ; preds = %7749, %7674
  %7780 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7780, ptr %21, align 4, !tbaa !9
  %7781 = load ptr, ptr %9, align 8, !tbaa !5
  %7782 = getelementptr inbounds %struct.w2c_hermes, ptr %7781, i32 0, i32 6
  %7783 = load i32, ptr %36, align 4, !tbaa !9
  %7784 = zext i32 %7783 to i64
  %7785 = add i64 %7784, 2740
  %7786 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7782, i64 noundef %7785, i32 noundef %7786)
  %7787 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7787, ptr %36, align 4, !tbaa !9
  %7788 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %7788, ptr %37, align 4, !tbaa !9
  %7789 = load ptr, ptr %9, align 8, !tbaa !5
  %7790 = getelementptr inbounds %struct.w2c_hermes, ptr %7789, i32 0, i32 6
  %7791 = load i32, ptr %36, align 4, !tbaa !9
  %7792 = zext i32 %7791 to i64
  %7793 = add i64 %7792, 2736
  %7794 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7790, i64 noundef %7793, i32 noundef %7794)
  %7795 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7795, ptr %36, align 4, !tbaa !9
  %7796 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7796, ptr %37, align 4, !tbaa !9
  %7797 = load ptr, ptr %9, align 8, !tbaa !5
  %7798 = getelementptr inbounds %struct.w2c_hermes, ptr %7797, i32 0, i32 6
  %7799 = load i32, ptr %37, align 4, !tbaa !9
  %7800 = zext i32 %7799 to i64
  %7801 = add i64 %7800, 2744
  %7802 = call i64 @i64_load(ptr noundef %7798, i64 noundef %7801)
  store i64 %7802, ptr %43, align 8, !tbaa !11
  %7803 = load ptr, ptr %9, align 8, !tbaa !5
  %7804 = getelementptr inbounds %struct.w2c_hermes, ptr %7803, i32 0, i32 6
  %7805 = load i32, ptr %36, align 4, !tbaa !9
  %7806 = zext i32 %7805 to i64
  %7807 = add i64 %7806, 64
  %7808 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7804, i64 noundef %7807, i64 noundef %7808)
  %7809 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7809, ptr %36, align 4, !tbaa !9
  %7810 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7810, ptr %37, align 4, !tbaa !9
  %7811 = load ptr, ptr %9, align 8, !tbaa !5
  %7812 = getelementptr inbounds %struct.w2c_hermes, ptr %7811, i32 0, i32 6
  %7813 = load i32, ptr %37, align 4, !tbaa !9
  %7814 = zext i32 %7813 to i64
  %7815 = add i64 %7814, 2736
  %7816 = call i64 @i64_load(ptr noundef %7812, i64 noundef %7815)
  store i64 %7816, ptr %43, align 8, !tbaa !11
  %7817 = load ptr, ptr %9, align 8, !tbaa !5
  %7818 = getelementptr inbounds %struct.w2c_hermes, ptr %7817, i32 0, i32 6
  %7819 = load i32, ptr %36, align 4, !tbaa !9
  %7820 = zext i32 %7819 to i64
  %7821 = add i64 %7820, 56
  %7822 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %7818, i64 noundef %7821, i64 noundef %7822)
  %7823 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7823, ptr %36, align 4, !tbaa !9
  store i32 404, ptr %37, align 4, !tbaa !9
  %7824 = load i32, ptr %37, align 4, !tbaa !9
  %7825 = load i32, ptr %36, align 4, !tbaa !9
  %7826 = add i32 %7825, %7824
  store i32 %7826, ptr %36, align 4, !tbaa !9
  %7827 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7827, ptr %37, align 4, !tbaa !9
  store i32 -64, ptr %38, align 4, !tbaa !9
  %7828 = load i32, ptr %38, align 4, !tbaa !9
  %7829 = load i32, ptr %37, align 4, !tbaa !9
  %7830 = sub i32 %7829, %7828
  store i32 %7830, ptr %37, align 4, !tbaa !9
  %7831 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7831, ptr %38, align 4, !tbaa !9
  store i32 56, ptr %39, align 4, !tbaa !9
  %7832 = load i32, ptr %39, align 4, !tbaa !9
  %7833 = load i32, ptr %38, align 4, !tbaa !9
  %7834 = add i32 %7833, %7832
  store i32 %7834, ptr %38, align 4, !tbaa !9
  %7835 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7835, ptr %39, align 4, !tbaa !9
  %7836 = load ptr, ptr %9, align 8, !tbaa !5
  %7837 = getelementptr inbounds %struct.w2c_hermes, ptr %7836, i32 0, i32 6
  %7838 = load i32, ptr %39, align 4, !tbaa !9
  %7839 = zext i32 %7838 to i64
  %7840 = add i64 %7839, 532
  %7841 = call i32 @i32_load8_u(ptr noundef %7837, i64 noundef %7840)
  store i32 %7841, ptr %39, align 4, !tbaa !9
  %7842 = load ptr, ptr %9, align 8, !tbaa !5
  %7843 = load i32, ptr %36, align 4, !tbaa !9
  %7844 = load i32, ptr %37, align 4, !tbaa !9
  %7845 = load i32, ptr %38, align 4, !tbaa !9
  %7846 = load i32, ptr %39, align 4, !tbaa !9
  %7847 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef %7842, i32 noundef %7843, i32 noundef %7844, i32 noundef %7845, i32 noundef %7846)
  store i32 %7847, ptr %36, align 4, !tbaa !9
  %7848 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7848, ptr %19, align 4, !tbaa !9
  %7849 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7849, ptr %36, align 4, !tbaa !9
  %7850 = load ptr, ptr %9, align 8, !tbaa !5
  %7851 = getelementptr inbounds %struct.w2c_hermes, ptr %7850, i32 0, i32 6
  %7852 = load i32, ptr %36, align 4, !tbaa !9
  %7853 = zext i32 %7852 to i64
  %7854 = add i64 %7853, 672
  %7855 = call i32 @i32_load(ptr noundef %7851, i64 noundef %7854)
  store i32 %7855, ptr %36, align 4, !tbaa !9
  %7856 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7856, ptr %14, align 4, !tbaa !9
  %7857 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7857, ptr %37, align 4, !tbaa !9
  %7858 = load ptr, ptr %9, align 8, !tbaa !5
  %7859 = getelementptr inbounds %struct.w2c_hermes, ptr %7858, i32 0, i32 6
  %7860 = load i32, ptr %37, align 4, !tbaa !9
  %7861 = zext i32 %7860 to i64
  %7862 = add i64 %7861, 684
  %7863 = call i32 @i32_load(ptr noundef %7859, i64 noundef %7862)
  store i32 %7863, ptr %37, align 4, !tbaa !9
  %7864 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7864, ptr %20, align 4, !tbaa !9
  store i32 341, ptr %38, align 4, !tbaa !9
  %7865 = load i32, ptr %38, align 4, !tbaa !9
  %7866 = icmp eq i32 %7865, 0
  %7867 = xor i1 %7866, true
  %7868 = xor i1 %7867, true
  %7869 = zext i1 %7868 to i32
  %7870 = sext i32 %7869 to i64
  %7871 = call i64 @llvm.expect.i64(i64 %7870, i64 0)
  %7872 = icmp ne i64 %7871, 0
  br i1 %7872, label %7873, label %7875

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

7874:                                             ; No predecessors!
  br label %7879

7875:                                             ; preds = %7779
  %7876 = load i32, ptr %37, align 4, !tbaa !9
  %7877 = load i32, ptr %38, align 4, !tbaa !9
  %7878 = udiv i32 %7876, %7877
  br label %7879

7879:                                             ; preds = %7875, %7874
  %7880 = phi i32 [ 0, %7874 ], [ %7878, %7875 ]
  store i32 %7880, ptr %37, align 4, !tbaa !9
  %7881 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7881, ptr %22, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %7882 = load i32, ptr %38, align 4, !tbaa !9
  %7883 = and i32 %7882, 31
  %7884 = load i32, ptr %37, align 4, !tbaa !9
  %7885 = shl i32 %7884, %7883
  store i32 %7885, ptr %37, align 4, !tbaa !9
  %7886 = load i32, ptr %37, align 4, !tbaa !9
  %7887 = load i32, ptr %36, align 4, !tbaa !9
  %7888 = add i32 %7887, %7886
  store i32 %7888, ptr %36, align 4, !tbaa !9
  %7889 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %7889, ptr %21, align 4, !tbaa !9
  %7890 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7890, ptr %36, align 4, !tbaa !9
  %7891 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7891, ptr %37, align 4, !tbaa !9
  %7892 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7892, ptr %38, align 4, !tbaa !9
  %7893 = load ptr, ptr %9, align 8, !tbaa !5
  %7894 = getelementptr inbounds %struct.w2c_hermes, ptr %7893, i32 0, i32 6
  %7895 = load i32, ptr %38, align 4, !tbaa !9
  %7896 = zext i32 %7895 to i64
  %7897 = add i64 %7896, 676
  %7898 = call i32 @i32_load(ptr noundef %7894, i64 noundef %7897)
  store i32 %7898, ptr %38, align 4, !tbaa !9
  %7899 = load i32, ptr %37, align 4, !tbaa !9
  %7900 = load i32, ptr %38, align 4, !tbaa !9
  %7901 = icmp eq i32 %7899, %7900
  %7902 = zext i1 %7901 to i32
  store i32 %7902, ptr %37, align 4, !tbaa !9
  %7903 = load i32, ptr %37, align 4, !tbaa !9
  %7904 = icmp ne i32 %7903, 0
  br i1 %7904, label %7905, label %7957

7905:                                             ; preds = %7879
  %7906 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7906, ptr %37, align 4, !tbaa !9
  store i32 0, ptr %38, align 4, !tbaa !9
  %7907 = load ptr, ptr %9, align 8, !tbaa !5
  %7908 = getelementptr inbounds %struct.w2c_hermes, ptr %7907, i32 0, i32 6
  %7909 = load i32, ptr %37, align 4, !tbaa !9
  %7910 = zext i32 %7909 to i64
  %7911 = add i64 %7910, 2732
  %7912 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7908, i64 noundef %7911, i32 noundef %7912)
  %7913 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7913, ptr %37, align 4, !tbaa !9
  %7914 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7914, ptr %38, align 4, !tbaa !9
  %7915 = load ptr, ptr %9, align 8, !tbaa !5
  %7916 = getelementptr inbounds %struct.w2c_hermes, ptr %7915, i32 0, i32 6
  %7917 = load i32, ptr %37, align 4, !tbaa !9
  %7918 = zext i32 %7917 to i64
  %7919 = add i64 %7918, 2728
  %7920 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7916, i64 noundef %7919, i32 noundef %7920)
  %7921 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7921, ptr %37, align 4, !tbaa !9
  %7922 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7922, ptr %38, align 4, !tbaa !9
  %7923 = load ptr, ptr %9, align 8, !tbaa !5
  %7924 = getelementptr inbounds %struct.w2c_hermes, ptr %7923, i32 0, i32 6
  %7925 = load i32, ptr %38, align 4, !tbaa !9
  %7926 = zext i32 %7925 to i64
  %7927 = add i64 %7926, 688
  %7928 = call i32 @i32_load(ptr noundef %7924, i64 noundef %7927)
  store i32 %7928, ptr %38, align 4, !tbaa !9
  %7929 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7929, ptr %39, align 4, !tbaa !9
  %7930 = load i32, ptr %39, align 4, !tbaa !9
  %7931 = load i32, ptr %38, align 4, !tbaa !9
  %7932 = add i32 %7931, %7930
  store i32 %7932, ptr %38, align 4, !tbaa !9
  store i32 341, ptr %39, align 4, !tbaa !9
  %7933 = load i32, ptr %39, align 4, !tbaa !9
  %7934 = icmp eq i32 %7933, 0
  %7935 = xor i1 %7934, true
  %7936 = xor i1 %7935, true
  %7937 = zext i1 %7936 to i32
  %7938 = sext i32 %7937 to i64
  %7939 = call i64 @llvm.expect.i64(i64 %7938, i64 0)
  %7940 = icmp ne i64 %7939, 0
  br i1 %7940, label %7941, label %7943

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

7942:                                             ; No predecessors!
  br label %7947

7943:                                             ; preds = %7905
  %7944 = load i32, ptr %38, align 4, !tbaa !9
  %7945 = load i32, ptr %39, align 4, !tbaa !9
  %7946 = udiv i32 %7944, %7945
  br label %7947

7947:                                             ; preds = %7943, %7942
  %7948 = phi i32 [ 0, %7942 ], [ %7946, %7943 ]
  store i32 %7948, ptr %38, align 4, !tbaa !9
  store i32 2, ptr %39, align 4, !tbaa !9
  %7949 = load i32, ptr %39, align 4, !tbaa !9
  %7950 = and i32 %7949, 31
  %7951 = load i32, ptr %38, align 4, !tbaa !9
  %7952 = shl i32 %7951, %7950
  store i32 %7952, ptr %38, align 4, !tbaa !9
  %7953 = load i32, ptr %38, align 4, !tbaa !9
  %7954 = load i32, ptr %37, align 4, !tbaa !9
  %7955 = add i32 %7954, %7953
  store i32 %7955, ptr %37, align 4, !tbaa !9
  %7956 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7956, ptr %14, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  br label %8052

7957:                                             ; preds = %7879
  %7958 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7958, ptr %37, align 4, !tbaa !9
  %7959 = load ptr, ptr %9, align 8, !tbaa !5
  %7960 = getelementptr inbounds %struct.w2c_hermes, ptr %7959, i32 0, i32 6
  %7961 = load i32, ptr %37, align 4, !tbaa !9
  %7962 = zext i32 %7961 to i64
  %7963 = call i32 @i32_load(ptr noundef %7960, i64 noundef %7962)
  store i32 %7963, ptr %37, align 4, !tbaa !9
  %7964 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %7964, ptr %23, align 4, !tbaa !9
  %7965 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7965, ptr %37, align 4, !tbaa !9
  %7966 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %7966, ptr %38, align 4, !tbaa !9
  %7967 = load ptr, ptr %9, align 8, !tbaa !5
  %7968 = getelementptr inbounds %struct.w2c_hermes, ptr %7967, i32 0, i32 6
  %7969 = load i32, ptr %37, align 4, !tbaa !9
  %7970 = zext i32 %7969 to i64
  %7971 = add i64 %7970, 2728
  %7972 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7968, i64 noundef %7971, i32 noundef %7972)
  %7973 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7973, ptr %37, align 4, !tbaa !9
  %7974 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %7974, ptr %38, align 4, !tbaa !9
  %7975 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %7975, ptr %39, align 4, !tbaa !9
  %7976 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %7976, ptr %40, align 4, !tbaa !9
  store i32 341, ptr %41, align 4, !tbaa !9
  %7977 = load i32, ptr %41, align 4, !tbaa !9
  %7978 = load i32, ptr %40, align 4, !tbaa !9
  %7979 = mul i32 %7978, %7977
  store i32 %7979, ptr %40, align 4, !tbaa !9
  %7980 = load i32, ptr %40, align 4, !tbaa !9
  %7981 = load i32, ptr %39, align 4, !tbaa !9
  %7982 = sub i32 %7981, %7980
  store i32 %7982, ptr %39, align 4, !tbaa !9
  store i32 12, ptr %40, align 4, !tbaa !9
  %7983 = load i32, ptr %40, align 4, !tbaa !9
  %7984 = load i32, ptr %39, align 4, !tbaa !9
  %7985 = mul i32 %7984, %7983
  store i32 %7985, ptr %39, align 4, !tbaa !9
  %7986 = load i32, ptr %39, align 4, !tbaa !9
  %7987 = load i32, ptr %38, align 4, !tbaa !9
  %7988 = add i32 %7987, %7986
  store i32 %7988, ptr %38, align 4, !tbaa !9
  %7989 = load ptr, ptr %9, align 8, !tbaa !5
  %7990 = getelementptr inbounds %struct.w2c_hermes, ptr %7989, i32 0, i32 6
  %7991 = load i32, ptr %37, align 4, !tbaa !9
  %7992 = zext i32 %7991 to i64
  %7993 = add i64 %7992, 2732
  %7994 = load i32, ptr %38, align 4, !tbaa !9
  call void @i32_store(ptr noundef %7990, i64 noundef %7993, i32 noundef %7994)
  %7995 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %7995, ptr %37, align 4, !tbaa !9
  %7996 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %7996, ptr %38, align 4, !tbaa !9
  %7997 = load ptr, ptr %9, align 8, !tbaa !5
  %7998 = getelementptr inbounds %struct.w2c_hermes, ptr %7997, i32 0, i32 6
  %7999 = load i32, ptr %38, align 4, !tbaa !9
  %8000 = zext i32 %7999 to i64
  %8001 = add i64 %8000, 688
  %8002 = call i32 @i32_load(ptr noundef %7998, i64 noundef %8001)
  store i32 %8002, ptr %38, align 4, !tbaa !9
  %8003 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8003, ptr %39, align 4, !tbaa !9
  %8004 = load i32, ptr %39, align 4, !tbaa !9
  %8005 = load i32, ptr %38, align 4, !tbaa !9
  %8006 = add i32 %8005, %8004
  store i32 %8006, ptr %38, align 4, !tbaa !9
  %8007 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %8007, ptr %20, align 4, !tbaa !9
  store i32 341, ptr %39, align 4, !tbaa !9
  %8008 = load i32, ptr %39, align 4, !tbaa !9
  %8009 = icmp eq i32 %8008, 0
  %8010 = xor i1 %8009, true
  %8011 = xor i1 %8010, true
  %8012 = zext i1 %8011 to i32
  %8013 = sext i32 %8012 to i64
  %8014 = call i64 @llvm.expect.i64(i64 %8013, i64 0)
  %8015 = icmp ne i64 %8014, 0
  br i1 %8015, label %8016, label %8018

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

8017:                                             ; No predecessors!
  br label %8022

8018:                                             ; preds = %7957
  %8019 = load i32, ptr %38, align 4, !tbaa !9
  %8020 = load i32, ptr %39, align 4, !tbaa !9
  %8021 = udiv i32 %8019, %8020
  br label %8022

8022:                                             ; preds = %8018, %8017
  %8023 = phi i32 [ 0, %8017 ], [ %8021, %8018 ]
  store i32 %8023, ptr %38, align 4, !tbaa !9
  %8024 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %8024, ptr %21, align 4, !tbaa !9
  store i32 2, ptr %39, align 4, !tbaa !9
  %8025 = load i32, ptr %39, align 4, !tbaa !9
  %8026 = and i32 %8025, 31
  %8027 = load i32, ptr %38, align 4, !tbaa !9
  %8028 = shl i32 %8027, %8026
  store i32 %8028, ptr %38, align 4, !tbaa !9
  %8029 = load i32, ptr %38, align 4, !tbaa !9
  %8030 = load i32, ptr %37, align 4, !tbaa !9
  %8031 = add i32 %8030, %8029
  store i32 %8031, ptr %37, align 4, !tbaa !9
  %8032 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8032, ptr %14, align 4, !tbaa !9
  %8033 = load ptr, ptr %9, align 8, !tbaa !5
  %8034 = getelementptr inbounds %struct.w2c_hermes, ptr %8033, i32 0, i32 6
  %8035 = load i32, ptr %37, align 4, !tbaa !9
  %8036 = zext i32 %8035 to i64
  %8037 = call i32 @i32_load(ptr noundef %8034, i64 noundef %8036)
  store i32 %8037, ptr %37, align 4, !tbaa !9
  %8038 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8038, ptr %38, align 4, !tbaa !9
  %8039 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8039, ptr %39, align 4, !tbaa !9
  store i32 341, ptr %40, align 4, !tbaa !9
  %8040 = load i32, ptr %40, align 4, !tbaa !9
  %8041 = load i32, ptr %39, align 4, !tbaa !9
  %8042 = mul i32 %8041, %8040
  store i32 %8042, ptr %39, align 4, !tbaa !9
  %8043 = load i32, ptr %39, align 4, !tbaa !9
  %8044 = load i32, ptr %38, align 4, !tbaa !9
  %8045 = sub i32 %8044, %8043
  store i32 %8045, ptr %38, align 4, !tbaa !9
  store i32 12, ptr %39, align 4, !tbaa !9
  %8046 = load i32, ptr %39, align 4, !tbaa !9
  %8047 = load i32, ptr %38, align 4, !tbaa !9
  %8048 = mul i32 %8047, %8046
  store i32 %8048, ptr %38, align 4, !tbaa !9
  %8049 = load i32, ptr %38, align 4, !tbaa !9
  %8050 = load i32, ptr %37, align 4, !tbaa !9
  %8051 = add i32 %8050, %8049
  store i32 %8051, ptr %37, align 4, !tbaa !9
  br label %8052

8052:                                             ; preds = %8022, %7947
  %8053 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8053, ptr %22, align 4, !tbaa !9
  %8054 = load ptr, ptr %9, align 8, !tbaa !5
  %8055 = getelementptr inbounds %struct.w2c_hermes, ptr %8054, i32 0, i32 6
  %8056 = load i32, ptr %36, align 4, !tbaa !9
  %8057 = zext i32 %8056 to i64
  %8058 = add i64 %8057, 2724
  %8059 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8055, i64 noundef %8058, i32 noundef %8059)
  %8060 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8060, ptr %36, align 4, !tbaa !9
  %8061 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8061, ptr %37, align 4, !tbaa !9
  %8062 = load ptr, ptr %9, align 8, !tbaa !5
  %8063 = getelementptr inbounds %struct.w2c_hermes, ptr %8062, i32 0, i32 6
  %8064 = load i32, ptr %36, align 4, !tbaa !9
  %8065 = zext i32 %8064 to i64
  %8066 = add i64 %8065, 2720
  %8067 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8063, i64 noundef %8066, i32 noundef %8067)
  %8068 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8068, ptr %36, align 4, !tbaa !9
  %8069 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8069, ptr %37, align 4, !tbaa !9
  %8070 = load ptr, ptr %9, align 8, !tbaa !5
  %8071 = getelementptr inbounds %struct.w2c_hermes, ptr %8070, i32 0, i32 6
  %8072 = load i32, ptr %37, align 4, !tbaa !9
  %8073 = zext i32 %8072 to i64
  %8074 = add i64 %8073, 2728
  %8075 = call i64 @i64_load(ptr noundef %8071, i64 noundef %8074)
  store i64 %8075, ptr %43, align 8, !tbaa !11
  %8076 = load ptr, ptr %9, align 8, !tbaa !5
  %8077 = getelementptr inbounds %struct.w2c_hermes, ptr %8076, i32 0, i32 6
  %8078 = load i32, ptr %36, align 4, !tbaa !9
  %8079 = zext i32 %8078 to i64
  %8080 = add i64 %8079, 48
  %8081 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8077, i64 noundef %8080, i64 noundef %8081)
  %8082 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8082, ptr %36, align 4, !tbaa !9
  %8083 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8083, ptr %37, align 4, !tbaa !9
  %8084 = load ptr, ptr %9, align 8, !tbaa !5
  %8085 = getelementptr inbounds %struct.w2c_hermes, ptr %8084, i32 0, i32 6
  %8086 = load i32, ptr %37, align 4, !tbaa !9
  %8087 = zext i32 %8086 to i64
  %8088 = add i64 %8087, 2720
  %8089 = call i64 @i64_load(ptr noundef %8085, i64 noundef %8088)
  store i64 %8089, ptr %43, align 8, !tbaa !11
  %8090 = load ptr, ptr %9, align 8, !tbaa !5
  %8091 = getelementptr inbounds %struct.w2c_hermes, ptr %8090, i32 0, i32 6
  %8092 = load i32, ptr %36, align 4, !tbaa !9
  %8093 = zext i32 %8092 to i64
  %8094 = add i64 %8093, 40
  %8095 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8091, i64 noundef %8094, i64 noundef %8095)
  %8096 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8096, ptr %36, align 4, !tbaa !9
  store i32 1664, ptr %37, align 4, !tbaa !9
  %8097 = load i32, ptr %37, align 4, !tbaa !9
  %8098 = load i32, ptr %36, align 4, !tbaa !9
  %8099 = add i32 %8098, %8097
  store i32 %8099, ptr %36, align 4, !tbaa !9
  %8100 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8100, ptr %37, align 4, !tbaa !9
  store i32 48, ptr %38, align 4, !tbaa !9
  %8101 = load i32, ptr %38, align 4, !tbaa !9
  %8102 = load i32, ptr %37, align 4, !tbaa !9
  %8103 = add i32 %8102, %8101
  store i32 %8103, ptr %37, align 4, !tbaa !9
  %8104 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8104, ptr %38, align 4, !tbaa !9
  store i32 40, ptr %39, align 4, !tbaa !9
  %8105 = load i32, ptr %39, align 4, !tbaa !9
  %8106 = load i32, ptr %38, align 4, !tbaa !9
  %8107 = add i32 %8106, %8105
  store i32 %8107, ptr %38, align 4, !tbaa !9
  %8108 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8108, ptr %39, align 4, !tbaa !9
  %8109 = load ptr, ptr %9, align 8, !tbaa !5
  %8110 = getelementptr inbounds %struct.w2c_hermes, ptr %8109, i32 0, i32 6
  %8111 = load i32, ptr %39, align 4, !tbaa !9
  %8112 = zext i32 %8111 to i64
  %8113 = add i64 %8112, 532
  %8114 = call i32 @i32_load8_u(ptr noundef %8110, i64 noundef %8113)
  store i32 %8114, ptr %39, align 4, !tbaa !9
  %8115 = load ptr, ptr %9, align 8, !tbaa !5
  %8116 = load i32, ptr %36, align 4, !tbaa !9
  %8117 = load i32, ptr %37, align 4, !tbaa !9
  %8118 = load i32, ptr %38, align 4, !tbaa !9
  %8119 = load i32, ptr %39, align 4, !tbaa !9
  %8120 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef %8115, i32 noundef %8116, i32 noundef %8117, i32 noundef %8118, i32 noundef %8119)
  store i32 %8120, ptr %36, align 4, !tbaa !9
  %8121 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8121, ptr %14, align 4, !tbaa !9
  %8122 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8122, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %8123 = load ptr, ptr %9, align 8, !tbaa !5
  %8124 = getelementptr inbounds %struct.w2c_hermes, ptr %8123, i32 0, i32 6
  %8125 = load i32, ptr %36, align 4, !tbaa !9
  %8126 = zext i32 %8125 to i64
  %8127 = add i64 %8126, 504
  %8128 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8124, i64 noundef %8127, i64 noundef %8128)
  %8129 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8129, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %8130 = load ptr, ptr %9, align 8, !tbaa !5
  %8131 = getelementptr inbounds %struct.w2c_hermes, ptr %8130, i32 0, i32 6
  %8132 = load i32, ptr %36, align 4, !tbaa !9
  %8133 = zext i32 %8132 to i64
  %8134 = add i64 %8133, 496
  %8135 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %8131, i64 noundef %8134, i64 noundef %8135)
  %8136 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8136, ptr %36, align 4, !tbaa !9
  %8137 = load ptr, ptr %9, align 8, !tbaa !5
  %8138 = getelementptr inbounds %struct.w2c_hermes, ptr %8137, i32 0, i32 6
  %8139 = load i32, ptr %36, align 4, !tbaa !9
  %8140 = zext i32 %8139 to i64
  %8141 = add i64 %8140, 24
  %8142 = call i32 @i32_load8_u(ptr noundef %8138, i64 noundef %8141)
  store i32 %8142, ptr %36, align 4, !tbaa !9
  %8143 = load i32, ptr %36, align 4, !tbaa !9
  %8144 = icmp ne i32 %8143, 0
  br i1 %8144, label %8145, label %8471

8145:                                             ; preds = %8052
  %8146 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8146, ptr %36, align 4, !tbaa !9
  %8147 = load ptr, ptr %9, align 8, !tbaa !5
  %8148 = getelementptr inbounds %struct.w2c_hermes, ptr %8147, i32 0, i32 6
  %8149 = load i32, ptr %36, align 4, !tbaa !9
  %8150 = zext i32 %8149 to i64
  %8151 = add i64 %8150, 608
  %8152 = call i32 @i32_load(ptr noundef %8148, i64 noundef %8151)
  store i32 %8152, ptr %36, align 4, !tbaa !9
  %8153 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8153, ptr %20, align 4, !tbaa !9
  %8154 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8154, ptr %37, align 4, !tbaa !9
  %8155 = load ptr, ptr %9, align 8, !tbaa !5
  %8156 = getelementptr inbounds %struct.w2c_hermes, ptr %8155, i32 0, i32 6
  %8157 = load i32, ptr %37, align 4, !tbaa !9
  %8158 = zext i32 %8157 to i64
  %8159 = add i64 %8158, 604
  %8160 = call i32 @i32_load(ptr noundef %8156, i64 noundef %8159)
  store i32 %8160, ptr %37, align 4, !tbaa !9
  %8161 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8161, ptr %21, align 4, !tbaa !9
  %8162 = load i32, ptr %36, align 4, !tbaa !9
  %8163 = load i32, ptr %37, align 4, !tbaa !9
  %8164 = icmp eq i32 %8162, %8163
  %8165 = zext i1 %8164 to i32
  store i32 %8165, ptr %36, align 4, !tbaa !9
  %8166 = load i32, ptr %36, align 4, !tbaa !9
  %8167 = icmp ne i32 %8166, 0
  br i1 %8167, label %8168, label %8169

8168:                                             ; preds = %8145
  br label %8507

8169:                                             ; preds = %8145
  %8170 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8170, ptr %36, align 4, !tbaa !9
  %8171 = load ptr, ptr %9, align 8, !tbaa !5
  %8172 = getelementptr inbounds %struct.w2c_hermes, ptr %8171, i32 0, i32 6
  %8173 = load i32, ptr %36, align 4, !tbaa !9
  %8174 = zext i32 %8173 to i64
  %8175 = add i64 %8174, 4
  %8176 = call i32 @i32_load(ptr noundef %8172, i64 noundef %8175)
  store i32 %8176, ptr %36, align 4, !tbaa !9
  %8177 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8177, ptr %37, align 4, !tbaa !9
  %8178 = load ptr, ptr %9, align 8, !tbaa !5
  %8179 = getelementptr inbounds %struct.w2c_hermes, ptr %8178, i32 0, i32 6
  %8180 = load i32, ptr %37, align 4, !tbaa !9
  %8181 = zext i32 %8180 to i64
  %8182 = call i32 @i32_load(ptr noundef %8179, i64 noundef %8181)
  store i32 %8182, ptr %37, align 4, !tbaa !9
  %8183 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8183, ptr %24, align 4, !tbaa !9
  %8184 = load i32, ptr %37, align 4, !tbaa !9
  %8185 = load i32, ptr %36, align 4, !tbaa !9
  %8186 = sub i32 %8185, %8184
  store i32 %8186, ptr %36, align 4, !tbaa !9
  store i32 3, ptr %37, align 4, !tbaa !9
  %8187 = load i32, ptr %36, align 4, !tbaa !9
  %8188 = load i32, ptr %37, align 4, !tbaa !9
  %8189 = and i32 %8188, 31
  %8190 = ashr i32 %8187, %8189
  store i32 %8190, ptr %36, align 4, !tbaa !9
  %8191 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8191, ptr %27, align 4, !tbaa !9
  %8192 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8192, ptr %36, align 4, !tbaa !9
  %8193 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8193, ptr %37, align 4, !tbaa !9
  %8194 = load i32, ptr %37, align 4, !tbaa !9
  %8195 = load i32, ptr %36, align 4, !tbaa !9
  %8196 = sub i32 %8195, %8194
  store i32 %8196, ptr %36, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %8197 = load i32, ptr %36, align 4, !tbaa !9
  %8198 = load i32, ptr %37, align 4, !tbaa !9
  %8199 = and i32 %8198, 31
  %8200 = ashr i32 %8197, %8199
  store i32 %8200, ptr %36, align 4, !tbaa !9
  %8201 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8201, ptr %28, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %8202 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8202, ptr %21, align 4, !tbaa !9
  br label %8203

8203:                                             ; preds = %8469, %8169
  %8204 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8204, ptr %36, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %8205 = load i32, ptr %37, align 4, !tbaa !9
  %8206 = and i32 %8205, 31
  %8207 = load i32, ptr %36, align 4, !tbaa !9
  %8208 = shl i32 %8207, %8206
  store i32 %8208, ptr %36, align 4, !tbaa !9
  %8209 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8209, ptr %25, align 4, !tbaa !9
  %8210 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8210, ptr %37, align 4, !tbaa !9
  %8211 = load ptr, ptr %9, align 8, !tbaa !5
  %8212 = getelementptr inbounds %struct.w2c_hermes, ptr %8211, i32 0, i32 6
  %8213 = load i32, ptr %37, align 4, !tbaa !9
  %8214 = zext i32 %8213 to i64
  %8215 = add i64 %8214, 604
  %8216 = call i32 @i32_load(ptr noundef %8212, i64 noundef %8215)
  store i32 %8216, ptr %37, align 4, !tbaa !9
  %8217 = load i32, ptr %37, align 4, !tbaa !9
  %8218 = load i32, ptr %36, align 4, !tbaa !9
  %8219 = add i32 %8218, %8217
  store i32 %8219, ptr %36, align 4, !tbaa !9
  %8220 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8220, ptr %22, align 4, !tbaa !9
  %8221 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8221, ptr %36, align 4, !tbaa !9
  %8222 = load ptr, ptr %9, align 8, !tbaa !5
  %8223 = getelementptr inbounds %struct.w2c_hermes, ptr %8222, i32 0, i32 6
  %8224 = load i32, ptr %36, align 4, !tbaa !9
  %8225 = zext i32 %8224 to i64
  %8226 = add i64 %8225, 508
  %8227 = call i32 @i32_load(ptr noundef %8223, i64 noundef %8226)
  store i32 %8227, ptr %36, align 4, !tbaa !9
  %8228 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8228, ptr %23, align 4, !tbaa !9
  %8229 = load i32, ptr %36, align 4, !tbaa !9
  %8230 = icmp ne i32 %8229, 0
  %8231 = xor i1 %8230, true
  %8232 = zext i1 %8231 to i32
  store i32 %8232, ptr %36, align 4, !tbaa !9
  %8233 = load i32, ptr %36, align 4, !tbaa !9
  %8234 = icmp ne i32 %8233, 0
  br i1 %8234, label %8235, label %8236

8235:                                             ; preds = %8203
  br label %8391

8236:                                             ; preds = %8203
  %8237 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %8237, ptr %36, align 4, !tbaa !9
  %8238 = load ptr, ptr %9, align 8, !tbaa !5
  %8239 = getelementptr inbounds %struct.w2c_hermes, ptr %8238, i32 0, i32 6
  %8240 = load i32, ptr %36, align 4, !tbaa !9
  %8241 = zext i32 %8240 to i64
  %8242 = call i32 @i32_load(ptr noundef %8239, i64 noundef %8241)
  store i32 %8242, ptr %36, align 4, !tbaa !9
  %8243 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8243, ptr %20, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %8244 = load i32, ptr %37, align 4, !tbaa !9
  %8245 = load i32, ptr %36, align 4, !tbaa !9
  %8246 = add i32 %8245, %8244
  store i32 %8246, ptr %36, align 4, !tbaa !9
  %8247 = load i32, ptr %36, align 4, !tbaa !9
  switch i32 %8247, label %8253 [
    i32 0, label %8248
    i32 1, label %8249
    i32 2, label %8250
    i32 3, label %8251
    i32 4, label %8252
  ]

8248:                                             ; preds = %8236
  br label %8254

8249:                                             ; preds = %8236
  br label %8272

8250:                                             ; preds = %8236
  br label %8272

8251:                                             ; preds = %8236
  br label %8272

8252:                                             ; preds = %8236
  br label %8254

8253:                                             ; preds = %8236
  br label %8272

8254:                                             ; preds = %8252, %8248
  store i32 0, ptr %36, align 4, !tbaa !9
  %8255 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8255, ptr %17, align 4, !tbaa !9
  store i32 204136, ptr %37, align 4, !tbaa !9
  %8256 = load i32, ptr %37, align 4, !tbaa !9
  %8257 = load i32, ptr %36, align 4, !tbaa !9
  %8258 = add i32 %8257, %8256
  store i32 %8258, ptr %36, align 4, !tbaa !9
  %8259 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8259, ptr %37, align 4, !tbaa !9
  store i32 81389, ptr %38, align 4, !tbaa !9
  %8260 = load i32, ptr %38, align 4, !tbaa !9
  %8261 = load i32, ptr %37, align 4, !tbaa !9
  %8262 = add i32 %8261, %8260
  store i32 %8262, ptr %37, align 4, !tbaa !9
  store i32 597, ptr %38, align 4, !tbaa !9
  %8263 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8263, ptr %39, align 4, !tbaa !9
  store i32 48929, ptr %40, align 4, !tbaa !9
  %8264 = load i32, ptr %40, align 4, !tbaa !9
  %8265 = load i32, ptr %39, align 4, !tbaa !9
  %8266 = add i32 %8265, %8264
  store i32 %8266, ptr %39, align 4, !tbaa !9
  %8267 = load ptr, ptr %9, align 8, !tbaa !5
  %8268 = load i32, ptr %36, align 4, !tbaa !9
  %8269 = load i32, ptr %37, align 4, !tbaa !9
  %8270 = load i32, ptr %38, align 4, !tbaa !9
  %8271 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8267, i32 noundef %8268, i32 noundef %8269, i32 noundef %8270, i32 noundef %8271)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8272:                                             ; preds = %8253, %8251, %8250, %8249
  %8273 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8273, ptr %36, align 4, !tbaa !9
  %8274 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8274, ptr %37, align 4, !tbaa !9
  %8275 = load ptr, ptr %9, align 8, !tbaa !5
  %8276 = getelementptr inbounds %struct.w2c_hermes, ptr %8275, i32 0, i32 6
  %8277 = load i32, ptr %37, align 4, !tbaa !9
  %8278 = zext i32 %8277 to i64
  %8279 = add i64 %8278, 496
  %8280 = call i32 @i32_load(ptr noundef %8276, i64 noundef %8279)
  store i32 %8280, ptr %37, align 4, !tbaa !9
  %8281 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8281, ptr %29, align 4, !tbaa !9
  %8282 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8282, ptr %38, align 4, !tbaa !9
  store i32 1, ptr %39, align 4, !tbaa !9
  %8283 = load i32, ptr %39, align 4, !tbaa !9
  %8284 = load i32, ptr %38, align 4, !tbaa !9
  %8285 = sub i32 %8284, %8283
  store i32 %8285, ptr %38, align 4, !tbaa !9
  %8286 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %8286, ptr %32, align 4, !tbaa !9
  %8287 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8287, ptr %39, align 4, !tbaa !9
  store i32 4, ptr %40, align 4, !tbaa !9
  %8288 = load i32, ptr %40, align 4, !tbaa !9
  %8289 = and i32 %8288, 31
  %8290 = load i32, ptr %39, align 4, !tbaa !9
  %8291 = lshr i32 %8290, %8289
  store i32 %8291, ptr %39, align 4, !tbaa !9
  %8292 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8292, ptr %40, align 4, !tbaa !9
  store i32 9, ptr %41, align 4, !tbaa !9
  %8293 = load i32, ptr %41, align 4, !tbaa !9
  %8294 = and i32 %8293, 31
  %8295 = load i32, ptr %40, align 4, !tbaa !9
  %8296 = lshr i32 %8295, %8294
  store i32 %8296, ptr %40, align 4, !tbaa !9
  %8297 = load i32, ptr %40, align 4, !tbaa !9
  %8298 = load i32, ptr %39, align 4, !tbaa !9
  %8299 = xor i32 %8298, %8297
  store i32 %8299, ptr %39, align 4, !tbaa !9
  %8300 = load i32, ptr %39, align 4, !tbaa !9
  %8301 = load i32, ptr %38, align 4, !tbaa !9
  %8302 = and i32 %8301, %8300
  store i32 %8302, ptr %38, align 4, !tbaa !9
  %8303 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %8303, ptr %26, align 4, !tbaa !9
  store i32 12, ptr %39, align 4, !tbaa !9
  %8304 = load i32, ptr %39, align 4, !tbaa !9
  %8305 = load i32, ptr %38, align 4, !tbaa !9
  %8306 = mul i32 %8305, %8304
  store i32 %8306, ptr %38, align 4, !tbaa !9
  %8307 = load i32, ptr %38, align 4, !tbaa !9
  %8308 = load i32, ptr %37, align 4, !tbaa !9
  %8309 = add i32 %8308, %8307
  store i32 %8309, ptr %37, align 4, !tbaa !9
  %8310 = load ptr, ptr %9, align 8, !tbaa !5
  %8311 = getelementptr inbounds %struct.w2c_hermes, ptr %8310, i32 0, i32 6
  %8312 = load i32, ptr %37, align 4, !tbaa !9
  %8313 = zext i32 %8312 to i64
  %8314 = call i32 @i32_load(ptr noundef %8311, i64 noundef %8313)
  store i32 %8314, ptr %37, align 4, !tbaa !9
  %8315 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8315, ptr %23, align 4, !tbaa !9
  %8316 = load i32, ptr %36, align 4, !tbaa !9
  %8317 = load i32, ptr %37, align 4, !tbaa !9
  %8318 = icmp ne i32 %8316, %8317
  %8319 = zext i1 %8318 to i32
  store i32 %8319, ptr %36, align 4, !tbaa !9
  %8320 = load i32, ptr %36, align 4, !tbaa !9
  %8321 = icmp ne i32 %8320, 0
  br i1 %8321, label %8322, label %8373

8322:                                             ; preds = %8272
  store i32 1, ptr %36, align 4, !tbaa !9
  %8323 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8323, ptr %31, align 4, !tbaa !9
  br label %8324

8324:                                             ; preds = %8371, %8322
  %8325 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8325, ptr %36, align 4, !tbaa !9
  store i32 -4, ptr %37, align 4, !tbaa !9
  %8326 = load i32, ptr %36, align 4, !tbaa !9
  %8327 = load i32, ptr %37, align 4, !tbaa !9
  %8328 = icmp eq i32 %8326, %8327
  %8329 = zext i1 %8328 to i32
  store i32 %8329, ptr %36, align 4, !tbaa !9
  %8330 = load i32, ptr %36, align 4, !tbaa !9
  %8331 = icmp ne i32 %8330, 0
  br i1 %8331, label %8332, label %8333

8332:                                             ; preds = %8324
  br label %8391

8333:                                             ; preds = %8324
  %8334 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %8334, ptr %36, align 4, !tbaa !9
  %8335 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %8335, ptr %37, align 4, !tbaa !9
  %8336 = load i32, ptr %37, align 4, !tbaa !9
  %8337 = load i32, ptr %36, align 4, !tbaa !9
  %8338 = add i32 %8337, %8336
  store i32 %8338, ptr %36, align 4, !tbaa !9
  %8339 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8339, ptr %23, align 4, !tbaa !9
  %8340 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %8340, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %8341 = load i32, ptr %37, align 4, !tbaa !9
  %8342 = load i32, ptr %36, align 4, !tbaa !9
  %8343 = add i32 %8342, %8341
  store i32 %8343, ptr %36, align 4, !tbaa !9
  %8344 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8344, ptr %31, align 4, !tbaa !9
  %8345 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8345, ptr %36, align 4, !tbaa !9
  %8346 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8346, ptr %37, align 4, !tbaa !9
  %8347 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %8347, ptr %38, align 4, !tbaa !9
  %8348 = load i32, ptr %38, align 4, !tbaa !9
  %8349 = load i32, ptr %37, align 4, !tbaa !9
  %8350 = and i32 %8349, %8348
  store i32 %8350, ptr %37, align 4, !tbaa !9
  %8351 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8351, ptr %26, align 4, !tbaa !9
  store i32 12, ptr %38, align 4, !tbaa !9
  %8352 = load i32, ptr %38, align 4, !tbaa !9
  %8353 = load i32, ptr %37, align 4, !tbaa !9
  %8354 = mul i32 %8353, %8352
  store i32 %8354, ptr %37, align 4, !tbaa !9
  %8355 = load i32, ptr %37, align 4, !tbaa !9
  %8356 = load i32, ptr %36, align 4, !tbaa !9
  %8357 = add i32 %8356, %8355
  store i32 %8357, ptr %36, align 4, !tbaa !9
  %8358 = load ptr, ptr %9, align 8, !tbaa !5
  %8359 = getelementptr inbounds %struct.w2c_hermes, ptr %8358, i32 0, i32 6
  %8360 = load i32, ptr %36, align 4, !tbaa !9
  %8361 = zext i32 %8360 to i64
  %8362 = call i32 @i32_load(ptr noundef %8359, i64 noundef %8361)
  store i32 %8362, ptr %36, align 4, !tbaa !9
  %8363 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8363, ptr %23, align 4, !tbaa !9
  %8364 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8364, ptr %37, align 4, !tbaa !9
  %8365 = load i32, ptr %36, align 4, !tbaa !9
  %8366 = load i32, ptr %37, align 4, !tbaa !9
  %8367 = icmp ne i32 %8365, %8366
  %8368 = zext i1 %8367 to i32
  store i32 %8368, ptr %36, align 4, !tbaa !9
  %8369 = load i32, ptr %36, align 4, !tbaa !9
  %8370 = icmp ne i32 %8369, 0
  br i1 %8370, label %8371, label %8372

8371:                                             ; preds = %8333
  br label %8324

8372:                                             ; preds = %8333
  br label %8373

8373:                                             ; preds = %8372, %8272
  store i32 0, ptr %36, align 4, !tbaa !9
  %8374 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8374, ptr %17, align 4, !tbaa !9
  store i32 173379, ptr %37, align 4, !tbaa !9
  %8375 = load i32, ptr %37, align 4, !tbaa !9
  %8376 = load i32, ptr %36, align 4, !tbaa !9
  %8377 = add i32 %8376, %8375
  store i32 %8377, ptr %36, align 4, !tbaa !9
  %8378 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8378, ptr %37, align 4, !tbaa !9
  store i32 62752, ptr %38, align 4, !tbaa !9
  %8379 = load i32, ptr %38, align 4, !tbaa !9
  %8380 = load i32, ptr %37, align 4, !tbaa !9
  %8381 = add i32 %8380, %8379
  store i32 %8381, ptr %37, align 4, !tbaa !9
  store i32 289, ptr %38, align 4, !tbaa !9
  %8382 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8382, ptr %39, align 4, !tbaa !9
  store i32 91294, ptr %40, align 4, !tbaa !9
  %8383 = load i32, ptr %40, align 4, !tbaa !9
  %8384 = load i32, ptr %39, align 4, !tbaa !9
  %8385 = add i32 %8384, %8383
  store i32 %8385, ptr %39, align 4, !tbaa !9
  %8386 = load ptr, ptr %9, align 8, !tbaa !5
  %8387 = load i32, ptr %36, align 4, !tbaa !9
  %8388 = load i32, ptr %37, align 4, !tbaa !9
  %8389 = load i32, ptr %38, align 4, !tbaa !9
  %8390 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8386, i32 noundef %8387, i32 noundef %8388, i32 noundef %8389, i32 noundef %8390)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8391:                                             ; preds = %8332, %8235
  %8392 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %8392, ptr %36, align 4, !tbaa !9
  %8393 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8393, ptr %37, align 4, !tbaa !9
  %8394 = load ptr, ptr %9, align 8, !tbaa !5
  %8395 = getelementptr inbounds %struct.w2c_hermes, ptr %8394, i32 0, i32 6
  %8396 = load i32, ptr %37, align 4, !tbaa !9
  %8397 = zext i32 %8396 to i64
  %8398 = add i64 %8397, 592
  %8399 = call i32 @i32_load(ptr noundef %8395, i64 noundef %8398)
  store i32 %8399, ptr %37, align 4, !tbaa !9
  %8400 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8400, ptr %38, align 4, !tbaa !9
  %8401 = load i32, ptr %38, align 4, !tbaa !9
  %8402 = load i32, ptr %37, align 4, !tbaa !9
  %8403 = add i32 %8402, %8401
  store i32 %8403, ptr %37, align 4, !tbaa !9
  %8404 = load ptr, ptr %9, align 8, !tbaa !5
  %8405 = getelementptr inbounds %struct.w2c_hermes, ptr %8404, i32 0, i32 6
  %8406 = load i32, ptr %37, align 4, !tbaa !9
  %8407 = zext i32 %8406 to i64
  %8408 = call i32 @i32_load(ptr noundef %8405, i64 noundef %8407)
  store i32 %8408, ptr %37, align 4, !tbaa !9
  %8409 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8409, ptr %20, align 4, !tbaa !9
  %8410 = load i32, ptr %36, align 4, !tbaa !9
  %8411 = load i32, ptr %37, align 4, !tbaa !9
  %8412 = icmp ule i32 %8410, %8411
  %8413 = zext i1 %8412 to i32
  store i32 %8413, ptr %36, align 4, !tbaa !9
  %8414 = load i32, ptr %36, align 4, !tbaa !9
  %8415 = icmp ne i32 %8414, 0
  br i1 %8415, label %8416, label %8417

8416:                                             ; preds = %8391
  br label %8489

8417:                                             ; preds = %8391
  %8418 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %8418, ptr %36, align 4, !tbaa !9
  %8419 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8419, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %8420 = load i32, ptr %38, align 4, !tbaa !9
  %8421 = and i32 %8420, 31
  %8422 = load i32, ptr %37, align 4, !tbaa !9
  %8423 = shl i32 %8422, %8421
  store i32 %8423, ptr %37, align 4, !tbaa !9
  %8424 = load i32, ptr %37, align 4, !tbaa !9
  %8425 = load i32, ptr %36, align 4, !tbaa !9
  %8426 = add i32 %8425, %8424
  store i32 %8426, ptr %36, align 4, !tbaa !9
  %8427 = load ptr, ptr %9, align 8, !tbaa !5
  %8428 = getelementptr inbounds %struct.w2c_hermes, ptr %8427, i32 0, i32 6
  %8429 = load i32, ptr %36, align 4, !tbaa !9
  %8430 = zext i32 %8429 to i64
  %8431 = call i32 @i32_load(ptr noundef %8428, i64 noundef %8430)
  store i32 %8431, ptr %36, align 4, !tbaa !9
  %8432 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8432, ptr %20, align 4, !tbaa !9
  %8433 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8433, ptr %36, align 4, !tbaa !9
  store i32 496, ptr %37, align 4, !tbaa !9
  %8434 = load i32, ptr %37, align 4, !tbaa !9
  %8435 = load i32, ptr %36, align 4, !tbaa !9
  %8436 = add i32 %8435, %8434
  store i32 %8436, ptr %36, align 4, !tbaa !9
  %8437 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %8437, ptr %37, align 4, !tbaa !9
  %8438 = load ptr, ptr %9, align 8, !tbaa !5
  %8439 = load i32, ptr %36, align 4, !tbaa !9
  %8440 = load i32, ptr %37, align 4, !tbaa !9
  %8441 = call i32 @w2c_hermes_llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x3A0x3AFindAndConstruct0x28hermes0x3A0x3AInstruction0x20const0x2A0x20const0x260x29(ptr noundef %8438, i32 noundef %8439, i32 noundef %8440)
  store i32 %8441, ptr %36, align 4, !tbaa !9
  %8442 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8442, ptr %22, align 4, !tbaa !9
  %8443 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8443, ptr %37, align 4, !tbaa !9
  %8444 = load ptr, ptr %9, align 8, !tbaa !5
  %8445 = getelementptr inbounds %struct.w2c_hermes, ptr %8444, i32 0, i32 6
  %8446 = load i32, ptr %36, align 4, !tbaa !9
  %8447 = zext i32 %8446 to i64
  %8448 = add i64 %8447, 4
  %8449 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8445, i64 noundef %8448, i32 noundef %8449)
  %8450 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %8450, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %8451 = load ptr, ptr %9, align 8, !tbaa !5
  %8452 = getelementptr inbounds %struct.w2c_hermes, ptr %8451, i32 0, i32 6
  %8453 = load i32, ptr %36, align 4, !tbaa !9
  %8454 = zext i32 %8453 to i64
  %8455 = add i64 %8454, 8
  %8456 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8452, i64 noundef %8455, i32 noundef %8456)
  %8457 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8457, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %8458 = load i32, ptr %37, align 4, !tbaa !9
  %8459 = load i32, ptr %36, align 4, !tbaa !9
  %8460 = add i32 %8459, %8458
  store i32 %8460, ptr %36, align 4, !tbaa !9
  %8461 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8461, ptr %21, align 4, !tbaa !9
  %8462 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %8462, ptr %37, align 4, !tbaa !9
  %8463 = load i32, ptr %36, align 4, !tbaa !9
  %8464 = load i32, ptr %37, align 4, !tbaa !9
  %8465 = icmp ne i32 %8463, %8464
  %8466 = zext i1 %8465 to i32
  store i32 %8466, ptr %36, align 4, !tbaa !9
  %8467 = load i32, ptr %36, align 4, !tbaa !9
  %8468 = icmp ne i32 %8467, 0
  br i1 %8468, label %8469, label %8470

8469:                                             ; preds = %8417
  br label %8203

8470:                                             ; preds = %8417
  br label %8507

8471:                                             ; preds = %8052
  store i32 0, ptr %36, align 4, !tbaa !9
  %8472 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8472, ptr %17, align 4, !tbaa !9
  store i32 176361, ptr %37, align 4, !tbaa !9
  %8473 = load i32, ptr %37, align 4, !tbaa !9
  %8474 = load i32, ptr %36, align 4, !tbaa !9
  %8475 = add i32 %8474, %8473
  store i32 %8475, ptr %36, align 4, !tbaa !9
  %8476 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8476, ptr %37, align 4, !tbaa !9
  store i32 85237, ptr %38, align 4, !tbaa !9
  %8477 = load i32, ptr %38, align 4, !tbaa !9
  %8478 = load i32, ptr %37, align 4, !tbaa !9
  %8479 = add i32 %8478, %8477
  store i32 %8479, ptr %37, align 4, !tbaa !9
  store i32 64, ptr %38, align 4, !tbaa !9
  %8480 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8480, ptr %39, align 4, !tbaa !9
  store i32 103485, ptr %40, align 4, !tbaa !9
  %8481 = load i32, ptr %40, align 4, !tbaa !9
  %8482 = load i32, ptr %39, align 4, !tbaa !9
  %8483 = add i32 %8482, %8481
  store i32 %8483, ptr %39, align 4, !tbaa !9
  %8484 = load ptr, ptr %9, align 8, !tbaa !5
  %8485 = load i32, ptr %36, align 4, !tbaa !9
  %8486 = load i32, ptr %37, align 4, !tbaa !9
  %8487 = load i32, ptr %38, align 4, !tbaa !9
  %8488 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8484, i32 noundef %8485, i32 noundef %8486, i32 noundef %8487, i32 noundef %8488)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8489:                                             ; preds = %8416
  store i32 0, ptr %36, align 4, !tbaa !9
  %8490 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8490, ptr %17, align 4, !tbaa !9
  store i32 202939, ptr %37, align 4, !tbaa !9
  %8491 = load i32, ptr %37, align 4, !tbaa !9
  %8492 = load i32, ptr %36, align 4, !tbaa !9
  %8493 = add i32 %8492, %8491
  store i32 %8493, ptr %36, align 4, !tbaa !9
  %8494 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8494, ptr %37, align 4, !tbaa !9
  store i32 82833, ptr %38, align 4, !tbaa !9
  %8495 = load i32, ptr %38, align 4, !tbaa !9
  %8496 = load i32, ptr %37, align 4, !tbaa !9
  %8497 = add i32 %8496, %8495
  store i32 %8497, ptr %37, align 4, !tbaa !9
  store i32 241, ptr %38, align 4, !tbaa !9
  %8498 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8498, ptr %39, align 4, !tbaa !9
  store i32 108367, ptr %40, align 4, !tbaa !9
  %8499 = load i32, ptr %40, align 4, !tbaa !9
  %8500 = load i32, ptr %39, align 4, !tbaa !9
  %8501 = add i32 %8500, %8499
  store i32 %8501, ptr %39, align 4, !tbaa !9
  %8502 = load ptr, ptr %9, align 8, !tbaa !5
  %8503 = load i32, ptr %36, align 4, !tbaa !9
  %8504 = load i32, ptr %37, align 4, !tbaa !9
  %8505 = load i32, ptr %38, align 4, !tbaa !9
  %8506 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8502, i32 noundef %8503, i32 noundef %8504, i32 noundef %8505, i32 noundef %8506)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8507:                                             ; preds = %8470, %8168
  %8508 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8508, ptr %36, align 4, !tbaa !9
  %8509 = load ptr, ptr %9, align 8, !tbaa !5
  %8510 = getelementptr inbounds %struct.w2c_hermes, ptr %8509, i32 0, i32 6
  %8511 = load i32, ptr %36, align 4, !tbaa !9
  %8512 = zext i32 %8511 to i64
  %8513 = add i64 %8512, 24
  %8514 = call i32 @i32_load8_u(ptr noundef %8510, i64 noundef %8513)
  store i32 %8514, ptr %36, align 4, !tbaa !9
  %8515 = load i32, ptr %36, align 4, !tbaa !9
  %8516 = icmp ne i32 %8515, 0
  br i1 %8516, label %8517, label %8922

8517:                                             ; preds = %8507
  %8518 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8518, ptr %36, align 4, !tbaa !9
  %8519 = load ptr, ptr %9, align 8, !tbaa !5
  %8520 = getelementptr inbounds %struct.w2c_hermes, ptr %8519, i32 0, i32 6
  %8521 = load i32, ptr %36, align 4, !tbaa !9
  %8522 = zext i32 %8521 to i64
  %8523 = add i64 %8522, 24
  %8524 = call i32 @i32_load8_u(ptr noundef %8520, i64 noundef %8523)
  store i32 %8524, ptr %36, align 4, !tbaa !9
  %8525 = load i32, ptr %36, align 4, !tbaa !9
  %8526 = icmp ne i32 %8525, 0
  %8527 = xor i1 %8526, true
  %8528 = zext i1 %8527 to i32
  store i32 %8528, ptr %36, align 4, !tbaa !9
  %8529 = load i32, ptr %36, align 4, !tbaa !9
  %8530 = icmp ne i32 %8529, 0
  br i1 %8530, label %8531, label %8532

8531:                                             ; preds = %8517
  br label %8940

8532:                                             ; preds = %8517
  %8533 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8533, ptr %36, align 4, !tbaa !9
  %8534 = load ptr, ptr %9, align 8, !tbaa !5
  %8535 = getelementptr inbounds %struct.w2c_hermes, ptr %8534, i32 0, i32 6
  %8536 = load i32, ptr %36, align 4, !tbaa !9
  %8537 = zext i32 %8536 to i64
  %8538 = add i64 %8537, 724
  %8539 = call i32 @i32_load(ptr noundef %8535, i64 noundef %8538)
  store i32 %8539, ptr %36, align 4, !tbaa !9
  %8540 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8540, ptr %20, align 4, !tbaa !9
  %8541 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8541, ptr %37, align 4, !tbaa !9
  %8542 = load ptr, ptr %9, align 8, !tbaa !5
  %8543 = getelementptr inbounds %struct.w2c_hermes, ptr %8542, i32 0, i32 6
  %8544 = load i32, ptr %37, align 4, !tbaa !9
  %8545 = zext i32 %8544 to i64
  %8546 = add i64 %8545, 720
  %8547 = call i32 @i32_load(ptr noundef %8543, i64 noundef %8546)
  store i32 %8547, ptr %37, align 4, !tbaa !9
  %8548 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8548, ptr %21, align 4, !tbaa !9
  %8549 = load i32, ptr %36, align 4, !tbaa !9
  %8550 = load i32, ptr %37, align 4, !tbaa !9
  %8551 = icmp eq i32 %8549, %8550
  %8552 = zext i1 %8551 to i32
  store i32 %8552, ptr %36, align 4, !tbaa !9
  %8553 = load i32, ptr %36, align 4, !tbaa !9
  %8554 = icmp ne i32 %8553, 0
  br i1 %8554, label %8555, label %8556

8555:                                             ; preds = %8532
  br label %8994

8556:                                             ; preds = %8532
  %8557 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8557, ptr %36, align 4, !tbaa !9
  %8558 = load ptr, ptr %9, align 8, !tbaa !5
  %8559 = getelementptr inbounds %struct.w2c_hermes, ptr %8558, i32 0, i32 6
  %8560 = load i32, ptr %36, align 4, !tbaa !9
  %8561 = zext i32 %8560 to i64
  %8562 = add i64 %8561, 4
  %8563 = call i32 @i32_load(ptr noundef %8559, i64 noundef %8562)
  store i32 %8563, ptr %36, align 4, !tbaa !9
  %8564 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %8564, ptr %37, align 4, !tbaa !9
  %8565 = load ptr, ptr %9, align 8, !tbaa !5
  %8566 = getelementptr inbounds %struct.w2c_hermes, ptr %8565, i32 0, i32 6
  %8567 = load i32, ptr %37, align 4, !tbaa !9
  %8568 = zext i32 %8567 to i64
  %8569 = call i32 @i32_load(ptr noundef %8566, i64 noundef %8568)
  store i32 %8569, ptr %37, align 4, !tbaa !9
  %8570 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8570, ptr %28, align 4, !tbaa !9
  %8571 = load i32, ptr %37, align 4, !tbaa !9
  %8572 = load i32, ptr %36, align 4, !tbaa !9
  %8573 = sub i32 %8572, %8571
  store i32 %8573, ptr %36, align 4, !tbaa !9
  store i32 3, ptr %37, align 4, !tbaa !9
  %8574 = load i32, ptr %36, align 4, !tbaa !9
  %8575 = load i32, ptr %37, align 4, !tbaa !9
  %8576 = and i32 %8575, 31
  %8577 = ashr i32 %8574, %8576
  store i32 %8577, ptr %36, align 4, !tbaa !9
  %8578 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8578, ptr %27, align 4, !tbaa !9
  %8579 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8579, ptr %36, align 4, !tbaa !9
  %8580 = load ptr, ptr %9, align 8, !tbaa !5
  %8581 = getelementptr inbounds %struct.w2c_hermes, ptr %8580, i32 0, i32 6
  %8582 = load i32, ptr %36, align 4, !tbaa !9
  %8583 = zext i32 %8582 to i64
  %8584 = add i64 %8583, 4
  %8585 = call i32 @i32_load(ptr noundef %8581, i64 noundef %8584)
  store i32 %8585, ptr %36, align 4, !tbaa !9
  %8586 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %8586, ptr %37, align 4, !tbaa !9
  %8587 = load ptr, ptr %9, align 8, !tbaa !5
  %8588 = getelementptr inbounds %struct.w2c_hermes, ptr %8587, i32 0, i32 6
  %8589 = load i32, ptr %37, align 4, !tbaa !9
  %8590 = zext i32 %8589 to i64
  %8591 = call i32 @i32_load(ptr noundef %8588, i64 noundef %8590)
  store i32 %8591, ptr %37, align 4, !tbaa !9
  %8592 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8592, ptr %26, align 4, !tbaa !9
  %8593 = load i32, ptr %37, align 4, !tbaa !9
  %8594 = load i32, ptr %36, align 4, !tbaa !9
  %8595 = sub i32 %8594, %8593
  store i32 %8595, ptr %36, align 4, !tbaa !9
  store i32 3, ptr %37, align 4, !tbaa !9
  %8596 = load i32, ptr %36, align 4, !tbaa !9
  %8597 = load i32, ptr %37, align 4, !tbaa !9
  %8598 = and i32 %8597, 31
  %8599 = ashr i32 %8596, %8598
  store i32 %8599, ptr %36, align 4, !tbaa !9
  %8600 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8600, ptr %24, align 4, !tbaa !9
  %8601 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8601, ptr %36, align 4, !tbaa !9
  %8602 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8602, ptr %37, align 4, !tbaa !9
  %8603 = load i32, ptr %37, align 4, !tbaa !9
  %8604 = load i32, ptr %36, align 4, !tbaa !9
  %8605 = sub i32 %8604, %8603
  store i32 %8605, ptr %36, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %8606 = load i32, ptr %36, align 4, !tbaa !9
  %8607 = load i32, ptr %37, align 4, !tbaa !9
  %8608 = and i32 %8607, 31
  %8609 = ashr i32 %8606, %8608
  store i32 %8609, ptr %36, align 4, !tbaa !9
  %8610 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8610, ptr %29, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %8611 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8611, ptr %21, align 4, !tbaa !9
  br label %8612

8612:                                             ; preds = %8920, %8556
  %8613 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8613, ptr %36, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %8614 = load i32, ptr %37, align 4, !tbaa !9
  %8615 = and i32 %8614, 31
  %8616 = load i32, ptr %36, align 4, !tbaa !9
  %8617 = shl i32 %8616, %8615
  store i32 %8617, ptr %36, align 4, !tbaa !9
  %8618 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8618, ptr %23, align 4, !tbaa !9
  %8619 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8619, ptr %37, align 4, !tbaa !9
  %8620 = load ptr, ptr %9, align 8, !tbaa !5
  %8621 = getelementptr inbounds %struct.w2c_hermes, ptr %8620, i32 0, i32 6
  %8622 = load i32, ptr %37, align 4, !tbaa !9
  %8623 = zext i32 %8622 to i64
  %8624 = add i64 %8623, 720
  %8625 = call i32 @i32_load(ptr noundef %8621, i64 noundef %8624)
  store i32 %8625, ptr %37, align 4, !tbaa !9
  %8626 = load i32, ptr %37, align 4, !tbaa !9
  %8627 = load i32, ptr %36, align 4, !tbaa !9
  %8628 = add i32 %8627, %8626
  store i32 %8628, ptr %36, align 4, !tbaa !9
  %8629 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8629, ptr %22, align 4, !tbaa !9
  %8630 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8630, ptr %36, align 4, !tbaa !9
  %8631 = load ptr, ptr %9, align 8, !tbaa !5
  %8632 = getelementptr inbounds %struct.w2c_hermes, ptr %8631, i32 0, i32 6
  %8633 = load i32, ptr %36, align 4, !tbaa !9
  %8634 = zext i32 %8633 to i64
  %8635 = add i64 %8634, 508
  %8636 = call i32 @i32_load(ptr noundef %8632, i64 noundef %8635)
  store i32 %8636, ptr %36, align 4, !tbaa !9
  %8637 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8637, ptr %25, align 4, !tbaa !9
  %8638 = load i32, ptr %36, align 4, !tbaa !9
  %8639 = icmp ne i32 %8638, 0
  %8640 = xor i1 %8639, true
  %8641 = zext i1 %8640 to i32
  store i32 %8641, ptr %36, align 4, !tbaa !9
  %8642 = load i32, ptr %36, align 4, !tbaa !9
  %8643 = icmp ne i32 %8642, 0
  br i1 %8643, label %8644, label %8645

8644:                                             ; preds = %8612
  br label %8800

8645:                                             ; preds = %8612
  %8646 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %8646, ptr %36, align 4, !tbaa !9
  %8647 = load ptr, ptr %9, align 8, !tbaa !5
  %8648 = getelementptr inbounds %struct.w2c_hermes, ptr %8647, i32 0, i32 6
  %8649 = load i32, ptr %36, align 4, !tbaa !9
  %8650 = zext i32 %8649 to i64
  %8651 = call i32 @i32_load(ptr noundef %8648, i64 noundef %8650)
  store i32 %8651, ptr %36, align 4, !tbaa !9
  %8652 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8652, ptr %20, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %8653 = load i32, ptr %37, align 4, !tbaa !9
  %8654 = load i32, ptr %36, align 4, !tbaa !9
  %8655 = add i32 %8654, %8653
  store i32 %8655, ptr %36, align 4, !tbaa !9
  %8656 = load i32, ptr %36, align 4, !tbaa !9
  switch i32 %8656, label %8662 [
    i32 0, label %8657
    i32 1, label %8658
    i32 2, label %8659
    i32 3, label %8660
    i32 4, label %8661
  ]

8657:                                             ; preds = %8645
  br label %8663

8658:                                             ; preds = %8645
  br label %8681

8659:                                             ; preds = %8645
  br label %8681

8660:                                             ; preds = %8645
  br label %8681

8661:                                             ; preds = %8645
  br label %8663

8662:                                             ; preds = %8645
  br label %8681

8663:                                             ; preds = %8661, %8657
  store i32 0, ptr %36, align 4, !tbaa !9
  %8664 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8664, ptr %17, align 4, !tbaa !9
  store i32 204136, ptr %37, align 4, !tbaa !9
  %8665 = load i32, ptr %37, align 4, !tbaa !9
  %8666 = load i32, ptr %36, align 4, !tbaa !9
  %8667 = add i32 %8666, %8665
  store i32 %8667, ptr %36, align 4, !tbaa !9
  %8668 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8668, ptr %37, align 4, !tbaa !9
  store i32 81389, ptr %38, align 4, !tbaa !9
  %8669 = load i32, ptr %38, align 4, !tbaa !9
  %8670 = load i32, ptr %37, align 4, !tbaa !9
  %8671 = add i32 %8670, %8669
  store i32 %8671, ptr %37, align 4, !tbaa !9
  store i32 597, ptr %38, align 4, !tbaa !9
  %8672 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8672, ptr %39, align 4, !tbaa !9
  store i32 48929, ptr %40, align 4, !tbaa !9
  %8673 = load i32, ptr %40, align 4, !tbaa !9
  %8674 = load i32, ptr %39, align 4, !tbaa !9
  %8675 = add i32 %8674, %8673
  store i32 %8675, ptr %39, align 4, !tbaa !9
  %8676 = load ptr, ptr %9, align 8, !tbaa !5
  %8677 = load i32, ptr %36, align 4, !tbaa !9
  %8678 = load i32, ptr %37, align 4, !tbaa !9
  %8679 = load i32, ptr %38, align 4, !tbaa !9
  %8680 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8676, i32 noundef %8677, i32 noundef %8678, i32 noundef %8679, i32 noundef %8680)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8681:                                             ; preds = %8662, %8660, %8659, %8658
  %8682 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8682, ptr %36, align 4, !tbaa !9
  %8683 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8683, ptr %37, align 4, !tbaa !9
  %8684 = load ptr, ptr %9, align 8, !tbaa !5
  %8685 = getelementptr inbounds %struct.w2c_hermes, ptr %8684, i32 0, i32 6
  %8686 = load i32, ptr %37, align 4, !tbaa !9
  %8687 = zext i32 %8686 to i64
  %8688 = add i64 %8687, 496
  %8689 = call i32 @i32_load(ptr noundef %8685, i64 noundef %8688)
  store i32 %8689, ptr %37, align 4, !tbaa !9
  %8690 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8690, ptr %31, align 4, !tbaa !9
  %8691 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8691, ptr %38, align 4, !tbaa !9
  store i32 1, ptr %39, align 4, !tbaa !9
  %8692 = load i32, ptr %39, align 4, !tbaa !9
  %8693 = load i32, ptr %38, align 4, !tbaa !9
  %8694 = sub i32 %8693, %8692
  store i32 %8694, ptr %38, align 4, !tbaa !9
  %8695 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %8695, ptr %30, align 4, !tbaa !9
  %8696 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8696, ptr %39, align 4, !tbaa !9
  store i32 4, ptr %40, align 4, !tbaa !9
  %8697 = load i32, ptr %40, align 4, !tbaa !9
  %8698 = and i32 %8697, 31
  %8699 = load i32, ptr %39, align 4, !tbaa !9
  %8700 = lshr i32 %8699, %8698
  store i32 %8700, ptr %39, align 4, !tbaa !9
  %8701 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8701, ptr %40, align 4, !tbaa !9
  store i32 9, ptr %41, align 4, !tbaa !9
  %8702 = load i32, ptr %41, align 4, !tbaa !9
  %8703 = and i32 %8702, 31
  %8704 = load i32, ptr %40, align 4, !tbaa !9
  %8705 = lshr i32 %8704, %8703
  store i32 %8705, ptr %40, align 4, !tbaa !9
  %8706 = load i32, ptr %40, align 4, !tbaa !9
  %8707 = load i32, ptr %39, align 4, !tbaa !9
  %8708 = xor i32 %8707, %8706
  store i32 %8708, ptr %39, align 4, !tbaa !9
  %8709 = load i32, ptr %39, align 4, !tbaa !9
  %8710 = load i32, ptr %38, align 4, !tbaa !9
  %8711 = and i32 %8710, %8709
  store i32 %8711, ptr %38, align 4, !tbaa !9
  %8712 = load i32, ptr %38, align 4, !tbaa !9
  store i32 %8712, ptr %32, align 4, !tbaa !9
  store i32 12, ptr %39, align 4, !tbaa !9
  %8713 = load i32, ptr %39, align 4, !tbaa !9
  %8714 = load i32, ptr %38, align 4, !tbaa !9
  %8715 = mul i32 %8714, %8713
  store i32 %8715, ptr %38, align 4, !tbaa !9
  %8716 = load i32, ptr %38, align 4, !tbaa !9
  %8717 = load i32, ptr %37, align 4, !tbaa !9
  %8718 = add i32 %8717, %8716
  store i32 %8718, ptr %37, align 4, !tbaa !9
  %8719 = load ptr, ptr %9, align 8, !tbaa !5
  %8720 = getelementptr inbounds %struct.w2c_hermes, ptr %8719, i32 0, i32 6
  %8721 = load i32, ptr %37, align 4, !tbaa !9
  %8722 = zext i32 %8721 to i64
  %8723 = call i32 @i32_load(ptr noundef %8720, i64 noundef %8722)
  store i32 %8723, ptr %37, align 4, !tbaa !9
  %8724 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8724, ptr %25, align 4, !tbaa !9
  %8725 = load i32, ptr %36, align 4, !tbaa !9
  %8726 = load i32, ptr %37, align 4, !tbaa !9
  %8727 = icmp ne i32 %8725, %8726
  %8728 = zext i1 %8727 to i32
  store i32 %8728, ptr %36, align 4, !tbaa !9
  %8729 = load i32, ptr %36, align 4, !tbaa !9
  %8730 = icmp ne i32 %8729, 0
  br i1 %8730, label %8731, label %8782

8731:                                             ; preds = %8681
  store i32 1, ptr %36, align 4, !tbaa !9
  %8732 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8732, ptr %34, align 4, !tbaa !9
  br label %8733

8733:                                             ; preds = %8780, %8731
  %8734 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8734, ptr %36, align 4, !tbaa !9
  store i32 -4, ptr %37, align 4, !tbaa !9
  %8735 = load i32, ptr %36, align 4, !tbaa !9
  %8736 = load i32, ptr %37, align 4, !tbaa !9
  %8737 = icmp eq i32 %8735, %8736
  %8738 = zext i1 %8737 to i32
  store i32 %8738, ptr %36, align 4, !tbaa !9
  %8739 = load i32, ptr %36, align 4, !tbaa !9
  %8740 = icmp ne i32 %8739, 0
  br i1 %8740, label %8741, label %8742

8741:                                             ; preds = %8733
  br label %8800

8742:                                             ; preds = %8733
  %8743 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %8743, ptr %36, align 4, !tbaa !9
  %8744 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %8744, ptr %37, align 4, !tbaa !9
  %8745 = load i32, ptr %37, align 4, !tbaa !9
  %8746 = load i32, ptr %36, align 4, !tbaa !9
  %8747 = add i32 %8746, %8745
  store i32 %8747, ptr %36, align 4, !tbaa !9
  %8748 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8748, ptr %25, align 4, !tbaa !9
  %8749 = load i32, ptr %34, align 4, !tbaa !9
  store i32 %8749, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %8750 = load i32, ptr %37, align 4, !tbaa !9
  %8751 = load i32, ptr %36, align 4, !tbaa !9
  %8752 = add i32 %8751, %8750
  store i32 %8752, ptr %36, align 4, !tbaa !9
  %8753 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8753, ptr %34, align 4, !tbaa !9
  %8754 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %8754, ptr %36, align 4, !tbaa !9
  %8755 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %8755, ptr %37, align 4, !tbaa !9
  %8756 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %8756, ptr %38, align 4, !tbaa !9
  %8757 = load i32, ptr %38, align 4, !tbaa !9
  %8758 = load i32, ptr %37, align 4, !tbaa !9
  %8759 = and i32 %8758, %8757
  store i32 %8759, ptr %37, align 4, !tbaa !9
  %8760 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8760, ptr %32, align 4, !tbaa !9
  store i32 12, ptr %38, align 4, !tbaa !9
  %8761 = load i32, ptr %38, align 4, !tbaa !9
  %8762 = load i32, ptr %37, align 4, !tbaa !9
  %8763 = mul i32 %8762, %8761
  store i32 %8763, ptr %37, align 4, !tbaa !9
  %8764 = load i32, ptr %37, align 4, !tbaa !9
  %8765 = load i32, ptr %36, align 4, !tbaa !9
  %8766 = add i32 %8765, %8764
  store i32 %8766, ptr %36, align 4, !tbaa !9
  %8767 = load ptr, ptr %9, align 8, !tbaa !5
  %8768 = getelementptr inbounds %struct.w2c_hermes, ptr %8767, i32 0, i32 6
  %8769 = load i32, ptr %36, align 4, !tbaa !9
  %8770 = zext i32 %8769 to i64
  %8771 = call i32 @i32_load(ptr noundef %8768, i64 noundef %8770)
  store i32 %8771, ptr %36, align 4, !tbaa !9
  %8772 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8772, ptr %25, align 4, !tbaa !9
  %8773 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8773, ptr %37, align 4, !tbaa !9
  %8774 = load i32, ptr %36, align 4, !tbaa !9
  %8775 = load i32, ptr %37, align 4, !tbaa !9
  %8776 = icmp ne i32 %8774, %8775
  %8777 = zext i1 %8776 to i32
  store i32 %8777, ptr %36, align 4, !tbaa !9
  %8778 = load i32, ptr %36, align 4, !tbaa !9
  %8779 = icmp ne i32 %8778, 0
  br i1 %8779, label %8780, label %8781

8780:                                             ; preds = %8742
  br label %8733

8781:                                             ; preds = %8742
  br label %8782

8782:                                             ; preds = %8781, %8681
  store i32 0, ptr %36, align 4, !tbaa !9
  %8783 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8783, ptr %17, align 4, !tbaa !9
  store i32 173474, ptr %37, align 4, !tbaa !9
  %8784 = load i32, ptr %37, align 4, !tbaa !9
  %8785 = load i32, ptr %36, align 4, !tbaa !9
  %8786 = add i32 %8785, %8784
  store i32 %8786, ptr %36, align 4, !tbaa !9
  %8787 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8787, ptr %37, align 4, !tbaa !9
  store i32 62752, ptr %38, align 4, !tbaa !9
  %8788 = load i32, ptr %38, align 4, !tbaa !9
  %8789 = load i32, ptr %37, align 4, !tbaa !9
  %8790 = add i32 %8789, %8788
  store i32 %8790, ptr %37, align 4, !tbaa !9
  store i32 303, ptr %38, align 4, !tbaa !9
  %8791 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8791, ptr %39, align 4, !tbaa !9
  store i32 91294, ptr %40, align 4, !tbaa !9
  %8792 = load i32, ptr %40, align 4, !tbaa !9
  %8793 = load i32, ptr %39, align 4, !tbaa !9
  %8794 = add i32 %8793, %8792
  store i32 %8794, ptr %39, align 4, !tbaa !9
  %8795 = load ptr, ptr %9, align 8, !tbaa !5
  %8796 = load i32, ptr %36, align 4, !tbaa !9
  %8797 = load i32, ptr %37, align 4, !tbaa !9
  %8798 = load i32, ptr %38, align 4, !tbaa !9
  %8799 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8795, i32 noundef %8796, i32 noundef %8797, i32 noundef %8798, i32 noundef %8799)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8800:                                             ; preds = %8741, %8644
  %8801 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %8801, ptr %36, align 4, !tbaa !9
  %8802 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8802, ptr %37, align 4, !tbaa !9
  %8803 = load ptr, ptr %9, align 8, !tbaa !5
  %8804 = getelementptr inbounds %struct.w2c_hermes, ptr %8803, i32 0, i32 6
  %8805 = load i32, ptr %37, align 4, !tbaa !9
  %8806 = zext i32 %8805 to i64
  %8807 = add i64 %8806, 656
  %8808 = call i32 @i32_load(ptr noundef %8804, i64 noundef %8807)
  store i32 %8808, ptr %37, align 4, !tbaa !9
  %8809 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8809, ptr %38, align 4, !tbaa !9
  %8810 = load i32, ptr %38, align 4, !tbaa !9
  %8811 = load i32, ptr %37, align 4, !tbaa !9
  %8812 = add i32 %8811, %8810
  store i32 %8812, ptr %37, align 4, !tbaa !9
  %8813 = load ptr, ptr %9, align 8, !tbaa !5
  %8814 = getelementptr inbounds %struct.w2c_hermes, ptr %8813, i32 0, i32 6
  %8815 = load i32, ptr %37, align 4, !tbaa !9
  %8816 = zext i32 %8815 to i64
  %8817 = call i32 @i32_load(ptr noundef %8814, i64 noundef %8816)
  store i32 %8817, ptr %37, align 4, !tbaa !9
  %8818 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8818, ptr %20, align 4, !tbaa !9
  %8819 = load i32, ptr %36, align 4, !tbaa !9
  %8820 = load i32, ptr %37, align 4, !tbaa !9
  %8821 = icmp ule i32 %8819, %8820
  %8822 = zext i1 %8821 to i32
  store i32 %8822, ptr %36, align 4, !tbaa !9
  %8823 = load i32, ptr %36, align 4, !tbaa !9
  %8824 = icmp ne i32 %8823, 0
  br i1 %8824, label %8825, label %8826

8825:                                             ; preds = %8800
  br label %8958

8826:                                             ; preds = %8800
  %8827 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %8827, ptr %36, align 4, !tbaa !9
  %8828 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8828, ptr %37, align 4, !tbaa !9
  %8829 = load ptr, ptr %9, align 8, !tbaa !5
  %8830 = getelementptr inbounds %struct.w2c_hermes, ptr %8829, i32 0, i32 6
  %8831 = load i32, ptr %37, align 4, !tbaa !9
  %8832 = zext i32 %8831 to i64
  %8833 = add i64 %8832, 708
  %8834 = call i32 @i32_load(ptr noundef %8830, i64 noundef %8833)
  store i32 %8834, ptr %37, align 4, !tbaa !9
  %8835 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8835, ptr %38, align 4, !tbaa !9
  %8836 = load i32, ptr %38, align 4, !tbaa !9
  %8837 = load i32, ptr %37, align 4, !tbaa !9
  %8838 = add i32 %8837, %8836
  store i32 %8838, ptr %37, align 4, !tbaa !9
  %8839 = load ptr, ptr %9, align 8, !tbaa !5
  %8840 = getelementptr inbounds %struct.w2c_hermes, ptr %8839, i32 0, i32 6
  %8841 = load i32, ptr %37, align 4, !tbaa !9
  %8842 = zext i32 %8841 to i64
  %8843 = call i32 @i32_load(ptr noundef %8840, i64 noundef %8842)
  store i32 %8843, ptr %37, align 4, !tbaa !9
  %8844 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %8844, ptr %23, align 4, !tbaa !9
  %8845 = load i32, ptr %36, align 4, !tbaa !9
  %8846 = load i32, ptr %37, align 4, !tbaa !9
  %8847 = icmp ule i32 %8845, %8846
  %8848 = zext i1 %8847 to i32
  store i32 %8848, ptr %36, align 4, !tbaa !9
  %8849 = load i32, ptr %36, align 4, !tbaa !9
  %8850 = icmp ne i32 %8849, 0
  br i1 %8850, label %8851, label %8852

8851:                                             ; preds = %8826
  br label %8976

8852:                                             ; preds = %8826
  %8853 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %8853, ptr %36, align 4, !tbaa !9
  %8854 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8854, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %8855 = load i32, ptr %38, align 4, !tbaa !9
  %8856 = and i32 %8855, 31
  %8857 = load i32, ptr %37, align 4, !tbaa !9
  %8858 = shl i32 %8857, %8856
  store i32 %8858, ptr %37, align 4, !tbaa !9
  %8859 = load i32, ptr %37, align 4, !tbaa !9
  %8860 = load i32, ptr %36, align 4, !tbaa !9
  %8861 = add i32 %8860, %8859
  store i32 %8861, ptr %36, align 4, !tbaa !9
  %8862 = load ptr, ptr %9, align 8, !tbaa !5
  %8863 = getelementptr inbounds %struct.w2c_hermes, ptr %8862, i32 0, i32 6
  %8864 = load i32, ptr %36, align 4, !tbaa !9
  %8865 = zext i32 %8864 to i64
  %8866 = call i32 @i32_load(ptr noundef %8863, i64 noundef %8865)
  store i32 %8866, ptr %36, align 4, !tbaa !9
  %8867 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8867, ptr %23, align 4, !tbaa !9
  %8868 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %8868, ptr %36, align 4, !tbaa !9
  %8869 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8869, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %8870 = load i32, ptr %38, align 4, !tbaa !9
  %8871 = and i32 %8870, 31
  %8872 = load i32, ptr %37, align 4, !tbaa !9
  %8873 = shl i32 %8872, %8871
  store i32 %8873, ptr %37, align 4, !tbaa !9
  %8874 = load i32, ptr %37, align 4, !tbaa !9
  %8875 = load i32, ptr %36, align 4, !tbaa !9
  %8876 = add i32 %8875, %8874
  store i32 %8876, ptr %36, align 4, !tbaa !9
  %8877 = load ptr, ptr %9, align 8, !tbaa !5
  %8878 = getelementptr inbounds %struct.w2c_hermes, ptr %8877, i32 0, i32 6
  %8879 = load i32, ptr %36, align 4, !tbaa !9
  %8880 = zext i32 %8879 to i64
  %8881 = call i32 @i32_load(ptr noundef %8878, i64 noundef %8880)
  store i32 %8881, ptr %36, align 4, !tbaa !9
  %8882 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8882, ptr %20, align 4, !tbaa !9
  %8883 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8883, ptr %36, align 4, !tbaa !9
  store i32 496, ptr %37, align 4, !tbaa !9
  %8884 = load i32, ptr %37, align 4, !tbaa !9
  %8885 = load i32, ptr %36, align 4, !tbaa !9
  %8886 = add i32 %8885, %8884
  store i32 %8886, ptr %36, align 4, !tbaa !9
  %8887 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %8887, ptr %37, align 4, !tbaa !9
  %8888 = load ptr, ptr %9, align 8, !tbaa !5
  %8889 = load i32, ptr %36, align 4, !tbaa !9
  %8890 = load i32, ptr %37, align 4, !tbaa !9
  %8891 = call i32 @w2c_hermes_llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x3A0x3AFindAndConstruct0x28hermes0x3A0x3AInstruction0x20const0x2A0x20const0x260x29(ptr noundef %8888, i32 noundef %8889, i32 noundef %8890)
  store i32 %8891, ptr %36, align 4, !tbaa !9
  %8892 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8892, ptr %22, align 4, !tbaa !9
  %8893 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %8893, ptr %37, align 4, !tbaa !9
  %8894 = load ptr, ptr %9, align 8, !tbaa !5
  %8895 = getelementptr inbounds %struct.w2c_hermes, ptr %8894, i32 0, i32 6
  %8896 = load i32, ptr %36, align 4, !tbaa !9
  %8897 = zext i32 %8896 to i64
  %8898 = add i64 %8897, 4
  %8899 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8895, i64 noundef %8898, i32 noundef %8899)
  %8900 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %8900, ptr %36, align 4, !tbaa !9
  %8901 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %8901, ptr %37, align 4, !tbaa !9
  %8902 = load ptr, ptr %9, align 8, !tbaa !5
  %8903 = getelementptr inbounds %struct.w2c_hermes, ptr %8902, i32 0, i32 6
  %8904 = load i32, ptr %36, align 4, !tbaa !9
  %8905 = zext i32 %8904 to i64
  %8906 = add i64 %8905, 8
  %8907 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %8903, i64 noundef %8906, i32 noundef %8907)
  %8908 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %8908, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %8909 = load i32, ptr %37, align 4, !tbaa !9
  %8910 = load i32, ptr %36, align 4, !tbaa !9
  %8911 = add i32 %8910, %8909
  store i32 %8911, ptr %36, align 4, !tbaa !9
  %8912 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8912, ptr %21, align 4, !tbaa !9
  %8913 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %8913, ptr %37, align 4, !tbaa !9
  %8914 = load i32, ptr %36, align 4, !tbaa !9
  %8915 = load i32, ptr %37, align 4, !tbaa !9
  %8916 = icmp ne i32 %8914, %8915
  %8917 = zext i1 %8916 to i32
  store i32 %8917, ptr %36, align 4, !tbaa !9
  %8918 = load i32, ptr %36, align 4, !tbaa !9
  %8919 = icmp ne i32 %8918, 0
  br i1 %8919, label %8920, label %8921

8920:                                             ; preds = %8852
  br label %8612

8921:                                             ; preds = %8852
  br label %8994

8922:                                             ; preds = %8507
  store i32 0, ptr %36, align 4, !tbaa !9
  %8923 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8923, ptr %17, align 4, !tbaa !9
  store i32 176361, ptr %37, align 4, !tbaa !9
  %8924 = load i32, ptr %37, align 4, !tbaa !9
  %8925 = load i32, ptr %36, align 4, !tbaa !9
  %8926 = add i32 %8925, %8924
  store i32 %8926, ptr %36, align 4, !tbaa !9
  %8927 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8927, ptr %37, align 4, !tbaa !9
  store i32 85237, ptr %38, align 4, !tbaa !9
  %8928 = load i32, ptr %38, align 4, !tbaa !9
  %8929 = load i32, ptr %37, align 4, !tbaa !9
  %8930 = add i32 %8929, %8928
  store i32 %8930, ptr %37, align 4, !tbaa !9
  store i32 64, ptr %38, align 4, !tbaa !9
  %8931 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8931, ptr %39, align 4, !tbaa !9
  store i32 103485, ptr %40, align 4, !tbaa !9
  %8932 = load i32, ptr %40, align 4, !tbaa !9
  %8933 = load i32, ptr %39, align 4, !tbaa !9
  %8934 = add i32 %8933, %8932
  store i32 %8934, ptr %39, align 4, !tbaa !9
  %8935 = load ptr, ptr %9, align 8, !tbaa !5
  %8936 = load i32, ptr %36, align 4, !tbaa !9
  %8937 = load i32, ptr %37, align 4, !tbaa !9
  %8938 = load i32, ptr %38, align 4, !tbaa !9
  %8939 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8935, i32 noundef %8936, i32 noundef %8937, i32 noundef %8938, i32 noundef %8939)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8940:                                             ; preds = %8531
  store i32 0, ptr %36, align 4, !tbaa !9
  %8941 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8941, ptr %17, align 4, !tbaa !9
  store i32 176361, ptr %37, align 4, !tbaa !9
  %8942 = load i32, ptr %37, align 4, !tbaa !9
  %8943 = load i32, ptr %36, align 4, !tbaa !9
  %8944 = add i32 %8943, %8942
  store i32 %8944, ptr %36, align 4, !tbaa !9
  %8945 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8945, ptr %37, align 4, !tbaa !9
  store i32 85237, ptr %38, align 4, !tbaa !9
  %8946 = load i32, ptr %38, align 4, !tbaa !9
  %8947 = load i32, ptr %37, align 4, !tbaa !9
  %8948 = add i32 %8947, %8946
  store i32 %8948, ptr %37, align 4, !tbaa !9
  store i32 64, ptr %38, align 4, !tbaa !9
  %8949 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8949, ptr %39, align 4, !tbaa !9
  store i32 103485, ptr %40, align 4, !tbaa !9
  %8950 = load i32, ptr %40, align 4, !tbaa !9
  %8951 = load i32, ptr %39, align 4, !tbaa !9
  %8952 = add i32 %8951, %8950
  store i32 %8952, ptr %39, align 4, !tbaa !9
  %8953 = load ptr, ptr %9, align 8, !tbaa !5
  %8954 = load i32, ptr %36, align 4, !tbaa !9
  %8955 = load i32, ptr %37, align 4, !tbaa !9
  %8956 = load i32, ptr %38, align 4, !tbaa !9
  %8957 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8953, i32 noundef %8954, i32 noundef %8955, i32 noundef %8956, i32 noundef %8957)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8958:                                             ; preds = %8825
  store i32 0, ptr %36, align 4, !tbaa !9
  %8959 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8959, ptr %17, align 4, !tbaa !9
  store i32 202939, ptr %37, align 4, !tbaa !9
  %8960 = load i32, ptr %37, align 4, !tbaa !9
  %8961 = load i32, ptr %36, align 4, !tbaa !9
  %8962 = add i32 %8961, %8960
  store i32 %8962, ptr %36, align 4, !tbaa !9
  %8963 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8963, ptr %37, align 4, !tbaa !9
  store i32 82833, ptr %38, align 4, !tbaa !9
  %8964 = load i32, ptr %38, align 4, !tbaa !9
  %8965 = load i32, ptr %37, align 4, !tbaa !9
  %8966 = add i32 %8965, %8964
  store i32 %8966, ptr %37, align 4, !tbaa !9
  store i32 241, ptr %38, align 4, !tbaa !9
  %8967 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8967, ptr %39, align 4, !tbaa !9
  store i32 108367, ptr %40, align 4, !tbaa !9
  %8968 = load i32, ptr %40, align 4, !tbaa !9
  %8969 = load i32, ptr %39, align 4, !tbaa !9
  %8970 = add i32 %8969, %8968
  store i32 %8970, ptr %39, align 4, !tbaa !9
  %8971 = load ptr, ptr %9, align 8, !tbaa !5
  %8972 = load i32, ptr %36, align 4, !tbaa !9
  %8973 = load i32, ptr %37, align 4, !tbaa !9
  %8974 = load i32, ptr %38, align 4, !tbaa !9
  %8975 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8971, i32 noundef %8972, i32 noundef %8973, i32 noundef %8974, i32 noundef %8975)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8976:                                             ; preds = %8851
  store i32 0, ptr %36, align 4, !tbaa !9
  %8977 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %8977, ptr %17, align 4, !tbaa !9
  store i32 202939, ptr %37, align 4, !tbaa !9
  %8978 = load i32, ptr %37, align 4, !tbaa !9
  %8979 = load i32, ptr %36, align 4, !tbaa !9
  %8980 = add i32 %8979, %8978
  store i32 %8980, ptr %36, align 4, !tbaa !9
  %8981 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8981, ptr %37, align 4, !tbaa !9
  store i32 82833, ptr %38, align 4, !tbaa !9
  %8982 = load i32, ptr %38, align 4, !tbaa !9
  %8983 = load i32, ptr %37, align 4, !tbaa !9
  %8984 = add i32 %8983, %8982
  store i32 %8984, ptr %37, align 4, !tbaa !9
  store i32 241, ptr %38, align 4, !tbaa !9
  %8985 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %8985, ptr %39, align 4, !tbaa !9
  store i32 108367, ptr %40, align 4, !tbaa !9
  %8986 = load i32, ptr %40, align 4, !tbaa !9
  %8987 = load i32, ptr %39, align 4, !tbaa !9
  %8988 = add i32 %8987, %8986
  store i32 %8988, ptr %39, align 4, !tbaa !9
  %8989 = load ptr, ptr %9, align 8, !tbaa !5
  %8990 = load i32, ptr %36, align 4, !tbaa !9
  %8991 = load i32, ptr %37, align 4, !tbaa !9
  %8992 = load i32, ptr %38, align 4, !tbaa !9
  %8993 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %8989, i32 noundef %8990, i32 noundef %8991, i32 noundef %8992, i32 noundef %8993)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

8994:                                             ; preds = %8921, %8555
  %8995 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %8995, ptr %36, align 4, !tbaa !9
  %8996 = load ptr, ptr %9, align 8, !tbaa !5
  %8997 = getelementptr inbounds %struct.w2c_hermes, ptr %8996, i32 0, i32 6
  %8998 = load i32, ptr %36, align 4, !tbaa !9
  %8999 = zext i32 %8998 to i64
  %9000 = add i64 %8999, 25
  %9001 = call i32 @i32_load8_u(ptr noundef %8997, i64 noundef %9000)
  store i32 %9001, ptr %36, align 4, !tbaa !9
  %9002 = load i32, ptr %36, align 4, !tbaa !9
  %9003 = icmp ne i32 %9002, 0
  %9004 = xor i1 %9003, true
  %9005 = zext i1 %9004 to i32
  store i32 %9005, ptr %36, align 4, !tbaa !9
  %9006 = load i32, ptr %36, align 4, !tbaa !9
  %9007 = icmp ne i32 %9006, 0
  br i1 %9007, label %9008, label %9009

9008:                                             ; preds = %8994
  br label %13022

9009:                                             ; preds = %8994
  %9010 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9010, ptr %36, align 4, !tbaa !9
  %9011 = load ptr, ptr %9, align 8, !tbaa !5
  %9012 = getelementptr inbounds %struct.w2c_hermes, ptr %9011, i32 0, i32 6
  %9013 = load i32, ptr %36, align 4, !tbaa !9
  %9014 = zext i32 %9013 to i64
  %9015 = add i64 %9014, 528
  %9016 = call i32 @i32_load(ptr noundef %9012, i64 noundef %9015)
  store i32 %9016, ptr %36, align 4, !tbaa !9
  %9017 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9017, ptr %21, align 4, !tbaa !9
  %9018 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9018, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %9019 = load ptr, ptr %9, align 8, !tbaa !5
  %9020 = getelementptr inbounds %struct.w2c_hermes, ptr %9019, i32 0, i32 6
  %9021 = load i32, ptr %36, align 4, !tbaa !9
  %9022 = zext i32 %9021 to i64
  %9023 = add i64 %9022, 25
  %9024 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %9020, i64 noundef %9023, i32 noundef %9024)
  %9025 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9025, ptr %36, align 4, !tbaa !9
  %9026 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9026, ptr %37, align 4, !tbaa !9
  %9027 = load ptr, ptr %9, align 8, !tbaa !5
  %9028 = getelementptr inbounds %struct.w2c_hermes, ptr %9027, i32 0, i32 6
  %9029 = load i32, ptr %37, align 4, !tbaa !9
  %9030 = zext i32 %9029 to i64
  %9031 = add i64 %9030, 12
  %9032 = call i32 @i32_load(ptr noundef %9028, i64 noundef %9031)
  store i32 %9032, ptr %37, align 4, !tbaa !9
  %9033 = load ptr, ptr %9, align 8, !tbaa !5
  %9034 = getelementptr inbounds %struct.w2c_hermes, ptr %9033, i32 0, i32 6
  %9035 = load i32, ptr %36, align 4, !tbaa !9
  %9036 = zext i32 %9035 to i64
  %9037 = add i64 %9036, 1720
  %9038 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9034, i64 noundef %9037, i32 noundef %9038)
  %9039 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9039, ptr %36, align 4, !tbaa !9
  %9040 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9040, ptr %37, align 4, !tbaa !9
  %9041 = load ptr, ptr %9, align 8, !tbaa !5
  %9042 = getelementptr inbounds %struct.w2c_hermes, ptr %9041, i32 0, i32 6
  %9043 = load i32, ptr %37, align 4, !tbaa !9
  %9044 = zext i32 %9043 to i64
  %9045 = add i64 %9044, 16
  %9046 = call i32 @i32_load(ptr noundef %9042, i64 noundef %9045)
  store i32 %9046, ptr %37, align 4, !tbaa !9
  %9047 = load ptr, ptr %9, align 8, !tbaa !5
  %9048 = getelementptr inbounds %struct.w2c_hermes, ptr %9047, i32 0, i32 6
  %9049 = load i32, ptr %36, align 4, !tbaa !9
  %9050 = zext i32 %9049 to i64
  %9051 = add i64 %9050, 1724
  %9052 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9048, i64 noundef %9051, i32 noundef %9052)
  %9053 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9053, ptr %36, align 4, !tbaa !9
  %9054 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9054, ptr %37, align 4, !tbaa !9
  store i32 20, ptr %38, align 4, !tbaa !9
  %9055 = load i32, ptr %38, align 4, !tbaa !9
  %9056 = load i32, ptr %37, align 4, !tbaa !9
  %9057 = add i32 %9056, %9055
  store i32 %9057, ptr %37, align 4, !tbaa !9
  %9058 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9058, ptr %20, align 4, !tbaa !9
  %9059 = load ptr, ptr %9, align 8, !tbaa !5
  %9060 = getelementptr inbounds %struct.w2c_hermes, ptr %9059, i32 0, i32 6
  %9061 = load i32, ptr %37, align 4, !tbaa !9
  %9062 = zext i32 %9061 to i64
  %9063 = call i32 @i32_load(ptr noundef %9060, i64 noundef %9062)
  store i32 %9063, ptr %37, align 4, !tbaa !9
  %9064 = load ptr, ptr %9, align 8, !tbaa !5
  %9065 = getelementptr inbounds %struct.w2c_hermes, ptr %9064, i32 0, i32 6
  %9066 = load i32, ptr %36, align 4, !tbaa !9
  %9067 = zext i32 %9066 to i64
  %9068 = add i64 %9067, 1728
  %9069 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9065, i64 noundef %9068, i32 noundef %9069)
  %9070 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9070, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %9071 = load ptr, ptr %9, align 8, !tbaa !5
  %9072 = getelementptr inbounds %struct.w2c_hermes, ptr %9071, i32 0, i32 6
  %9073 = load i32, ptr %36, align 4, !tbaa !9
  %9074 = zext i32 %9073 to i64
  %9075 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9072, i64 noundef %9074, i32 noundef %9075)
  %9076 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9076, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %9077 = load ptr, ptr %9, align 8, !tbaa !5
  %9078 = getelementptr inbounds %struct.w2c_hermes, ptr %9077, i32 0, i32 6
  %9079 = load i32, ptr %36, align 4, !tbaa !9
  %9080 = zext i32 %9079 to i64
  %9081 = add i64 %9080, 12
  %9082 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9078, i64 noundef %9081, i64 noundef %9082)
  %9083 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9083, ptr %36, align 4, !tbaa !9
  %9084 = load ptr, ptr %9, align 8, !tbaa !5
  %9085 = getelementptr inbounds %struct.w2c_hermes, ptr %9084, i32 0, i32 6
  %9086 = load i32, ptr %36, align 4, !tbaa !9
  %9087 = zext i32 %9086 to i64
  %9088 = add i64 %9087, 25
  %9089 = call i32 @i32_load8_u(ptr noundef %9085, i64 noundef %9088)
  store i32 %9089, ptr %36, align 4, !tbaa !9
  %9090 = load i32, ptr %36, align 4, !tbaa !9
  %9091 = icmp ne i32 %9090, 0
  %9092 = xor i1 %9091, true
  %9093 = zext i1 %9092 to i32
  store i32 %9093, ptr %36, align 4, !tbaa !9
  %9094 = load i32, ptr %36, align 4, !tbaa !9
  %9095 = icmp ne i32 %9094, 0
  br i1 %9095, label %9096, label %9097

9096:                                             ; preds = %9009
  br label %13040

9097:                                             ; preds = %9009
  %9098 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9098, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %9099 = load ptr, ptr %9, align 8, !tbaa !5
  %9100 = getelementptr inbounds %struct.w2c_hermes, ptr %9099, i32 0, i32 6
  %9101 = load i32, ptr %36, align 4, !tbaa !9
  %9102 = zext i32 %9101 to i64
  %9103 = add i64 %9102, 25
  %9104 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %9100, i64 noundef %9103, i32 noundef %9104)
  %9105 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9105, ptr %36, align 4, !tbaa !9
  %9106 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9106, ptr %37, align 4, !tbaa !9
  %9107 = load ptr, ptr %9, align 8, !tbaa !5
  %9108 = getelementptr inbounds %struct.w2c_hermes, ptr %9107, i32 0, i32 6
  %9109 = load i32, ptr %37, align 4, !tbaa !9
  %9110 = zext i32 %9109 to i64
  %9111 = add i64 %9110, 12
  %9112 = call i32 @i32_load(ptr noundef %9108, i64 noundef %9111)
  store i32 %9112, ptr %37, align 4, !tbaa !9
  %9113 = load ptr, ptr %9, align 8, !tbaa !5
  %9114 = getelementptr inbounds %struct.w2c_hermes, ptr %9113, i32 0, i32 6
  %9115 = load i32, ptr %36, align 4, !tbaa !9
  %9116 = zext i32 %9115 to i64
  %9117 = add i64 %9116, 480
  %9118 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9114, i64 noundef %9117, i32 noundef %9118)
  %9119 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9119, ptr %36, align 4, !tbaa !9
  %9120 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9120, ptr %37, align 4, !tbaa !9
  %9121 = load ptr, ptr %9, align 8, !tbaa !5
  %9122 = getelementptr inbounds %struct.w2c_hermes, ptr %9121, i32 0, i32 6
  %9123 = load i32, ptr %37, align 4, !tbaa !9
  %9124 = zext i32 %9123 to i64
  %9125 = add i64 %9124, 16
  %9126 = call i32 @i32_load(ptr noundef %9122, i64 noundef %9125)
  store i32 %9126, ptr %37, align 4, !tbaa !9
  %9127 = load ptr, ptr %9, align 8, !tbaa !5
  %9128 = getelementptr inbounds %struct.w2c_hermes, ptr %9127, i32 0, i32 6
  %9129 = load i32, ptr %36, align 4, !tbaa !9
  %9130 = zext i32 %9129 to i64
  %9131 = add i64 %9130, 484
  %9132 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9128, i64 noundef %9131, i32 noundef %9132)
  %9133 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9133, ptr %36, align 4, !tbaa !9
  %9134 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9134, ptr %37, align 4, !tbaa !9
  store i32 20, ptr %38, align 4, !tbaa !9
  %9135 = load i32, ptr %38, align 4, !tbaa !9
  %9136 = load i32, ptr %37, align 4, !tbaa !9
  %9137 = add i32 %9136, %9135
  store i32 %9137, ptr %37, align 4, !tbaa !9
  %9138 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9138, ptr %20, align 4, !tbaa !9
  %9139 = load ptr, ptr %9, align 8, !tbaa !5
  %9140 = getelementptr inbounds %struct.w2c_hermes, ptr %9139, i32 0, i32 6
  %9141 = load i32, ptr %37, align 4, !tbaa !9
  %9142 = zext i32 %9141 to i64
  %9143 = call i32 @i32_load(ptr noundef %9140, i64 noundef %9142)
  store i32 %9143, ptr %37, align 4, !tbaa !9
  %9144 = load ptr, ptr %9, align 8, !tbaa !5
  %9145 = getelementptr inbounds %struct.w2c_hermes, ptr %9144, i32 0, i32 6
  %9146 = load i32, ptr %36, align 4, !tbaa !9
  %9147 = zext i32 %9146 to i64
  %9148 = add i64 %9147, 488
  %9149 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9145, i64 noundef %9148, i32 noundef %9149)
  %9150 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9150, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %9151 = load ptr, ptr %9, align 8, !tbaa !5
  %9152 = getelementptr inbounds %struct.w2c_hermes, ptr %9151, i32 0, i32 6
  %9153 = load i32, ptr %36, align 4, !tbaa !9
  %9154 = zext i32 %9153 to i64
  %9155 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9152, i64 noundef %9154, i32 noundef %9155)
  %9156 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9156, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %9157 = load ptr, ptr %9, align 8, !tbaa !5
  %9158 = getelementptr inbounds %struct.w2c_hermes, ptr %9157, i32 0, i32 6
  %9159 = load i32, ptr %36, align 4, !tbaa !9
  %9160 = zext i32 %9159 to i64
  %9161 = add i64 %9160, 12
  %9162 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9158, i64 noundef %9161, i64 noundef %9162)
  %9163 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9163, ptr %36, align 4, !tbaa !9
  %9164 = load ptr, ptr %9, align 8, !tbaa !5
  %9165 = getelementptr inbounds %struct.w2c_hermes, ptr %9164, i32 0, i32 6
  %9166 = load i32, ptr %36, align 4, !tbaa !9
  %9167 = zext i32 %9166 to i64
  %9168 = add i64 %9167, 25
  %9169 = call i32 @i32_load8_u(ptr noundef %9165, i64 noundef %9168)
  store i32 %9169, ptr %36, align 4, !tbaa !9
  %9170 = load i32, ptr %36, align 4, !tbaa !9
  %9171 = icmp ne i32 %9170, 0
  %9172 = xor i1 %9171, true
  %9173 = zext i1 %9172 to i32
  store i32 %9173, ptr %36, align 4, !tbaa !9
  %9174 = load i32, ptr %36, align 4, !tbaa !9
  %9175 = icmp ne i32 %9174, 0
  br i1 %9175, label %9176, label %9177

9176:                                             ; preds = %9097
  br label %13058

9177:                                             ; preds = %9097
  %9178 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9178, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %9179 = load ptr, ptr %9, align 8, !tbaa !5
  %9180 = getelementptr inbounds %struct.w2c_hermes, ptr %9179, i32 0, i32 6
  %9181 = load i32, ptr %36, align 4, !tbaa !9
  %9182 = zext i32 %9181 to i64
  %9183 = add i64 %9182, 25
  %9184 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %9180, i64 noundef %9183, i32 noundef %9184)
  %9185 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9185, ptr %36, align 4, !tbaa !9
  %9186 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9186, ptr %37, align 4, !tbaa !9
  %9187 = load ptr, ptr %9, align 8, !tbaa !5
  %9188 = getelementptr inbounds %struct.w2c_hermes, ptr %9187, i32 0, i32 6
  %9189 = load i32, ptr %37, align 4, !tbaa !9
  %9190 = zext i32 %9189 to i64
  %9191 = add i64 %9190, 12
  %9192 = call i32 @i32_load(ptr noundef %9188, i64 noundef %9191)
  store i32 %9192, ptr %37, align 4, !tbaa !9
  %9193 = load ptr, ptr %9, align 8, !tbaa !5
  %9194 = getelementptr inbounds %struct.w2c_hermes, ptr %9193, i32 0, i32 6
  %9195 = load i32, ptr %36, align 4, !tbaa !9
  %9196 = zext i32 %9195 to i64
  %9197 = add i64 %9196, 380
  %9198 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9194, i64 noundef %9197, i32 noundef %9198)
  %9199 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9199, ptr %36, align 4, !tbaa !9
  %9200 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9200, ptr %37, align 4, !tbaa !9
  %9201 = load ptr, ptr %9, align 8, !tbaa !5
  %9202 = getelementptr inbounds %struct.w2c_hermes, ptr %9201, i32 0, i32 6
  %9203 = load i32, ptr %37, align 4, !tbaa !9
  %9204 = zext i32 %9203 to i64
  %9205 = add i64 %9204, 16
  %9206 = call i32 @i32_load(ptr noundef %9202, i64 noundef %9205)
  store i32 %9206, ptr %37, align 4, !tbaa !9
  %9207 = load ptr, ptr %9, align 8, !tbaa !5
  %9208 = getelementptr inbounds %struct.w2c_hermes, ptr %9207, i32 0, i32 6
  %9209 = load i32, ptr %36, align 4, !tbaa !9
  %9210 = zext i32 %9209 to i64
  %9211 = add i64 %9210, 384
  %9212 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9208, i64 noundef %9211, i32 noundef %9212)
  %9213 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9213, ptr %36, align 4, !tbaa !9
  %9214 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9214, ptr %37, align 4, !tbaa !9
  store i32 20, ptr %38, align 4, !tbaa !9
  %9215 = load i32, ptr %38, align 4, !tbaa !9
  %9216 = load i32, ptr %37, align 4, !tbaa !9
  %9217 = add i32 %9216, %9215
  store i32 %9217, ptr %37, align 4, !tbaa !9
  %9218 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9218, ptr %20, align 4, !tbaa !9
  %9219 = load ptr, ptr %9, align 8, !tbaa !5
  %9220 = getelementptr inbounds %struct.w2c_hermes, ptr %9219, i32 0, i32 6
  %9221 = load i32, ptr %37, align 4, !tbaa !9
  %9222 = zext i32 %9221 to i64
  %9223 = call i32 @i32_load(ptr noundef %9220, i64 noundef %9222)
  store i32 %9223, ptr %37, align 4, !tbaa !9
  %9224 = load ptr, ptr %9, align 8, !tbaa !5
  %9225 = getelementptr inbounds %struct.w2c_hermes, ptr %9224, i32 0, i32 6
  %9226 = load i32, ptr %36, align 4, !tbaa !9
  %9227 = zext i32 %9226 to i64
  %9228 = add i64 %9227, 388
  %9229 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9225, i64 noundef %9228, i32 noundef %9229)
  %9230 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9230, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %9231 = load ptr, ptr %9, align 8, !tbaa !5
  %9232 = getelementptr inbounds %struct.w2c_hermes, ptr %9231, i32 0, i32 6
  %9233 = load i32, ptr %36, align 4, !tbaa !9
  %9234 = zext i32 %9233 to i64
  %9235 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9232, i64 noundef %9234, i32 noundef %9235)
  %9236 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9236, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %9237 = load ptr, ptr %9, align 8, !tbaa !5
  %9238 = getelementptr inbounds %struct.w2c_hermes, ptr %9237, i32 0, i32 6
  %9239 = load i32, ptr %36, align 4, !tbaa !9
  %9240 = zext i32 %9239 to i64
  %9241 = add i64 %9240, 12
  %9242 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %9238, i64 noundef %9241, i64 noundef %9242)
  %9243 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %9243, ptr %36, align 4, !tbaa !9
  %9244 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9244, ptr %37, align 4, !tbaa !9
  store i32 1720, ptr %38, align 4, !tbaa !9
  %9245 = load i32, ptr %38, align 4, !tbaa !9
  %9246 = load i32, ptr %37, align 4, !tbaa !9
  %9247 = add i32 %9246, %9245
  store i32 %9247, ptr %37, align 4, !tbaa !9
  %9248 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9248, ptr %38, align 4, !tbaa !9
  store i32 480, ptr %39, align 4, !tbaa !9
  %9249 = load i32, ptr %39, align 4, !tbaa !9
  %9250 = load i32, ptr %38, align 4, !tbaa !9
  %9251 = add i32 %9250, %9249
  store i32 %9251, ptr %38, align 4, !tbaa !9
  %9252 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9252, ptr %39, align 4, !tbaa !9
  store i32 380, ptr %40, align 4, !tbaa !9
  %9253 = load i32, ptr %40, align 4, !tbaa !9
  %9254 = load i32, ptr %39, align 4, !tbaa !9
  %9255 = add i32 %9254, %9253
  store i32 %9255, ptr %39, align 4, !tbaa !9
  %9256 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9256, ptr %40, align 4, !tbaa !9
  store i32 496, ptr %41, align 4, !tbaa !9
  %9257 = load i32, ptr %41, align 4, !tbaa !9
  %9258 = load i32, ptr %40, align 4, !tbaa !9
  %9259 = add i32 %9258, %9257
  store i32 %9259, ptr %40, align 4, !tbaa !9
  %9260 = load ptr, ptr %9, align 8, !tbaa !5
  %9261 = load i32, ptr %36, align 4, !tbaa !9
  %9262 = load i32, ptr %37, align 4, !tbaa !9
  %9263 = load i32, ptr %38, align 4, !tbaa !9
  %9264 = load i32, ptr %39, align 4, !tbaa !9
  %9265 = load i32, ptr %40, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AinitializeSerializedLiterals0x28std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20llvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x260x260x29(ptr noundef %9260, i32 noundef %9261, i32 noundef %9262, i32 noundef %9263, i32 noundef %9264, i32 noundef %9265)
  %9266 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9266, ptr %36, align 4, !tbaa !9
  %9267 = load ptr, ptr %9, align 8, !tbaa !5
  %9268 = getelementptr inbounds %struct.w2c_hermes, ptr %9267, i32 0, i32 6
  %9269 = load i32, ptr %36, align 4, !tbaa !9
  %9270 = zext i32 %9269 to i64
  %9271 = add i64 %9270, 380
  %9272 = call i32 @i32_load(ptr noundef %9268, i64 noundef %9271)
  store i32 %9272, ptr %36, align 4, !tbaa !9
  %9273 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9273, ptr %20, align 4, !tbaa !9
  %9274 = load i32, ptr %36, align 4, !tbaa !9
  %9275 = icmp ne i32 %9274, 0
  br i1 %9275, label %9276, label %9288

9276:                                             ; preds = %9177
  %9277 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9277, ptr %36, align 4, !tbaa !9
  %9278 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9278, ptr %37, align 4, !tbaa !9
  %9279 = load ptr, ptr %9, align 8, !tbaa !5
  %9280 = getelementptr inbounds %struct.w2c_hermes, ptr %9279, i32 0, i32 6
  %9281 = load i32, ptr %36, align 4, !tbaa !9
  %9282 = zext i32 %9281 to i64
  %9283 = add i64 %9282, 384
  %9284 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9280, i64 noundef %9283, i32 noundef %9284)
  %9285 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9285, ptr %36, align 4, !tbaa !9
  %9286 = load ptr, ptr %9, align 8, !tbaa !5
  %9287 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9286, i32 noundef %9287)
  br label %9288

9288:                                             ; preds = %9276, %9177
  %9289 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9289, ptr %36, align 4, !tbaa !9
  %9290 = load ptr, ptr %9, align 8, !tbaa !5
  %9291 = getelementptr inbounds %struct.w2c_hermes, ptr %9290, i32 0, i32 6
  %9292 = load i32, ptr %36, align 4, !tbaa !9
  %9293 = zext i32 %9292 to i64
  %9294 = add i64 %9293, 480
  %9295 = call i32 @i32_load(ptr noundef %9291, i64 noundef %9294)
  store i32 %9295, ptr %36, align 4, !tbaa !9
  %9296 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9296, ptr %20, align 4, !tbaa !9
  %9297 = load i32, ptr %36, align 4, !tbaa !9
  %9298 = icmp ne i32 %9297, 0
  br i1 %9298, label %9299, label %9311

9299:                                             ; preds = %9288
  %9300 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9300, ptr %36, align 4, !tbaa !9
  %9301 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9301, ptr %37, align 4, !tbaa !9
  %9302 = load ptr, ptr %9, align 8, !tbaa !5
  %9303 = getelementptr inbounds %struct.w2c_hermes, ptr %9302, i32 0, i32 6
  %9304 = load i32, ptr %36, align 4, !tbaa !9
  %9305 = zext i32 %9304 to i64
  %9306 = add i64 %9305, 484
  %9307 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9303, i64 noundef %9306, i32 noundef %9307)
  %9308 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9308, ptr %36, align 4, !tbaa !9
  %9309 = load ptr, ptr %9, align 8, !tbaa !5
  %9310 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9309, i32 noundef %9310)
  br label %9311

9311:                                             ; preds = %9299, %9288
  %9312 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9312, ptr %36, align 4, !tbaa !9
  %9313 = load ptr, ptr %9, align 8, !tbaa !5
  %9314 = getelementptr inbounds %struct.w2c_hermes, ptr %9313, i32 0, i32 6
  %9315 = load i32, ptr %36, align 4, !tbaa !9
  %9316 = zext i32 %9315 to i64
  %9317 = add i64 %9316, 1720
  %9318 = call i32 @i32_load(ptr noundef %9314, i64 noundef %9317)
  store i32 %9318, ptr %36, align 4, !tbaa !9
  %9319 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9319, ptr %20, align 4, !tbaa !9
  %9320 = load i32, ptr %36, align 4, !tbaa !9
  %9321 = icmp ne i32 %9320, 0
  br i1 %9321, label %9322, label %9334

9322:                                             ; preds = %9311
  %9323 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9323, ptr %36, align 4, !tbaa !9
  %9324 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9324, ptr %37, align 4, !tbaa !9
  %9325 = load ptr, ptr %9, align 8, !tbaa !5
  %9326 = getelementptr inbounds %struct.w2c_hermes, ptr %9325, i32 0, i32 6
  %9327 = load i32, ptr %36, align 4, !tbaa !9
  %9328 = zext i32 %9327 to i64
  %9329 = add i64 %9328, 1724
  %9330 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9326, i64 noundef %9329, i32 noundef %9330)
  %9331 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9331, ptr %36, align 4, !tbaa !9
  %9332 = load ptr, ptr %9, align 8, !tbaa !5
  %9333 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9332, i32 noundef %9333)
  br label %9334

9334:                                             ; preds = %9322, %9311
  %9335 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9335, ptr %36, align 4, !tbaa !9
  %9336 = load ptr, ptr %9, align 8, !tbaa !5
  %9337 = getelementptr inbounds %struct.w2c_hermes, ptr %9336, i32 0, i32 6
  %9338 = load i32, ptr %36, align 4, !tbaa !9
  %9339 = zext i32 %9338 to i64
  %9340 = add i64 %9339, 496
  %9341 = call i32 @i32_load(ptr noundef %9337, i64 noundef %9340)
  store i32 %9341, ptr %36, align 4, !tbaa !9
  %9342 = load ptr, ptr %9, align 8, !tbaa !5
  %9343 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9342, i32 noundef %9343)
  %9344 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9344, ptr %36, align 4, !tbaa !9
  %9345 = load ptr, ptr %9, align 8, !tbaa !5
  %9346 = getelementptr inbounds %struct.w2c_hermes, ptr %9345, i32 0, i32 6
  %9347 = load i32, ptr %36, align 4, !tbaa !9
  %9348 = zext i32 %9347 to i64
  %9349 = add i64 %9348, 12
  %9350 = call i32 @i32_load(ptr noundef %9346, i64 noundef %9349)
  store i32 %9350, ptr %36, align 4, !tbaa !9
  %9351 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9351, ptr %20, align 4, !tbaa !9
  %9352 = load i32, ptr %36, align 4, !tbaa !9
  %9353 = icmp ne i32 %9352, 0
  br i1 %9353, label %9354, label %9366

9354:                                             ; preds = %9334
  %9355 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9355, ptr %36, align 4, !tbaa !9
  %9356 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9356, ptr %37, align 4, !tbaa !9
  %9357 = load ptr, ptr %9, align 8, !tbaa !5
  %9358 = getelementptr inbounds %struct.w2c_hermes, ptr %9357, i32 0, i32 6
  %9359 = load i32, ptr %36, align 4, !tbaa !9
  %9360 = zext i32 %9359 to i64
  %9361 = add i64 %9360, 16
  %9362 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9358, i64 noundef %9361, i32 noundef %9362)
  %9363 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9363, ptr %36, align 4, !tbaa !9
  %9364 = load ptr, ptr %9, align 8, !tbaa !5
  %9365 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9364, i32 noundef %9365)
  br label %9366

9366:                                             ; preds = %9354, %9334
  %9367 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9367, ptr %36, align 4, !tbaa !9
  %9368 = load ptr, ptr %9, align 8, !tbaa !5
  %9369 = getelementptr inbounds %struct.w2c_hermes, ptr %9368, i32 0, i32 6
  %9370 = load i32, ptr %36, align 4, !tbaa !9
  %9371 = zext i32 %9370 to i64
  %9372 = call i32 @i32_load(ptr noundef %9369, i64 noundef %9371)
  store i32 %9372, ptr %36, align 4, !tbaa !9
  %9373 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9373, ptr %20, align 4, !tbaa !9
  %9374 = load i32, ptr %36, align 4, !tbaa !9
  %9375 = icmp ne i32 %9374, 0
  br i1 %9375, label %9376, label %9388

9376:                                             ; preds = %9366
  %9377 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9377, ptr %36, align 4, !tbaa !9
  %9378 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9378, ptr %37, align 4, !tbaa !9
  %9379 = load ptr, ptr %9, align 8, !tbaa !5
  %9380 = getelementptr inbounds %struct.w2c_hermes, ptr %9379, i32 0, i32 6
  %9381 = load i32, ptr %36, align 4, !tbaa !9
  %9382 = zext i32 %9381 to i64
  %9383 = add i64 %9382, 4
  %9384 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9380, i64 noundef %9383, i32 noundef %9384)
  %9385 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %9385, ptr %36, align 4, !tbaa !9
  %9386 = load ptr, ptr %9, align 8, !tbaa !5
  %9387 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9386, i32 noundef %9387)
  br label %9388

9388:                                             ; preds = %9376, %9366
  %9389 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9389, ptr %36, align 4, !tbaa !9
  %9390 = load ptr, ptr %9, align 8, !tbaa !5
  %9391 = getelementptr inbounds %struct.w2c_hermes, ptr %9390, i32 0, i32 6
  %9392 = load i32, ptr %36, align 4, !tbaa !9
  %9393 = zext i32 %9392 to i64
  %9394 = add i64 %9393, 12
  %9395 = call i32 @i32_load(ptr noundef %9391, i64 noundef %9394)
  store i32 %9395, ptr %36, align 4, !tbaa !9
  %9396 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9396, ptr %14, align 4, !tbaa !9
  %9397 = load i32, ptr %36, align 4, !tbaa !9
  %9398 = icmp ne i32 %9397, 0
  br i1 %9398, label %9399, label %9411

9399:                                             ; preds = %9388
  %9400 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9400, ptr %36, align 4, !tbaa !9
  %9401 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9401, ptr %37, align 4, !tbaa !9
  %9402 = load ptr, ptr %9, align 8, !tbaa !5
  %9403 = getelementptr inbounds %struct.w2c_hermes, ptr %9402, i32 0, i32 6
  %9404 = load i32, ptr %36, align 4, !tbaa !9
  %9405 = zext i32 %9404 to i64
  %9406 = add i64 %9405, 16
  %9407 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9403, i64 noundef %9406, i32 noundef %9407)
  %9408 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9408, ptr %36, align 4, !tbaa !9
  %9409 = load ptr, ptr %9, align 8, !tbaa !5
  %9410 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9409, i32 noundef %9410)
  br label %9411

9411:                                             ; preds = %9399, %9388
  %9412 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9412, ptr %36, align 4, !tbaa !9
  %9413 = load ptr, ptr %9, align 8, !tbaa !5
  %9414 = getelementptr inbounds %struct.w2c_hermes, ptr %9413, i32 0, i32 6
  %9415 = load i32, ptr %36, align 4, !tbaa !9
  %9416 = zext i32 %9415 to i64
  %9417 = call i32 @i32_load(ptr noundef %9414, i64 noundef %9416)
  store i32 %9417, ptr %36, align 4, !tbaa !9
  %9418 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9418, ptr %14, align 4, !tbaa !9
  %9419 = load i32, ptr %36, align 4, !tbaa !9
  %9420 = icmp ne i32 %9419, 0
  br i1 %9420, label %9421, label %9433

9421:                                             ; preds = %9411
  %9422 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9422, ptr %36, align 4, !tbaa !9
  %9423 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9423, ptr %37, align 4, !tbaa !9
  %9424 = load ptr, ptr %9, align 8, !tbaa !5
  %9425 = getelementptr inbounds %struct.w2c_hermes, ptr %9424, i32 0, i32 6
  %9426 = load i32, ptr %36, align 4, !tbaa !9
  %9427 = zext i32 %9426 to i64
  %9428 = add i64 %9427, 4
  %9429 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9425, i64 noundef %9428, i32 noundef %9429)
  %9430 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %9430, ptr %36, align 4, !tbaa !9
  %9431 = load ptr, ptr %9, align 8, !tbaa !5
  %9432 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9431, i32 noundef %9432)
  br label %9433

9433:                                             ; preds = %9421, %9411
  %9434 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9434, ptr %36, align 4, !tbaa !9
  %9435 = load ptr, ptr %9, align 8, !tbaa !5
  %9436 = getelementptr inbounds %struct.w2c_hermes, ptr %9435, i32 0, i32 6
  %9437 = load i32, ptr %36, align 4, !tbaa !9
  %9438 = zext i32 %9437 to i64
  %9439 = add i64 %9438, 12
  %9440 = call i32 @i32_load(ptr noundef %9436, i64 noundef %9439)
  store i32 %9440, ptr %36, align 4, !tbaa !9
  %9441 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9441, ptr %19, align 4, !tbaa !9
  %9442 = load i32, ptr %36, align 4, !tbaa !9
  %9443 = icmp ne i32 %9442, 0
  br i1 %9443, label %9444, label %9456

9444:                                             ; preds = %9433
  %9445 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9445, ptr %36, align 4, !tbaa !9
  %9446 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9446, ptr %37, align 4, !tbaa !9
  %9447 = load ptr, ptr %9, align 8, !tbaa !5
  %9448 = getelementptr inbounds %struct.w2c_hermes, ptr %9447, i32 0, i32 6
  %9449 = load i32, ptr %36, align 4, !tbaa !9
  %9450 = zext i32 %9449 to i64
  %9451 = add i64 %9450, 16
  %9452 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9448, i64 noundef %9451, i32 noundef %9452)
  %9453 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9453, ptr %36, align 4, !tbaa !9
  %9454 = load ptr, ptr %9, align 8, !tbaa !5
  %9455 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9454, i32 noundef %9455)
  br label %9456

9456:                                             ; preds = %9444, %9433
  %9457 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9457, ptr %36, align 4, !tbaa !9
  %9458 = load ptr, ptr %9, align 8, !tbaa !5
  %9459 = getelementptr inbounds %struct.w2c_hermes, ptr %9458, i32 0, i32 6
  %9460 = load i32, ptr %36, align 4, !tbaa !9
  %9461 = zext i32 %9460 to i64
  %9462 = call i32 @i32_load(ptr noundef %9459, i64 noundef %9461)
  store i32 %9462, ptr %36, align 4, !tbaa !9
  %9463 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9463, ptr %19, align 4, !tbaa !9
  %9464 = load i32, ptr %36, align 4, !tbaa !9
  %9465 = icmp ne i32 %9464, 0
  br i1 %9465, label %9466, label %9478

9466:                                             ; preds = %9456
  %9467 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9467, ptr %36, align 4, !tbaa !9
  %9468 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9468, ptr %37, align 4, !tbaa !9
  %9469 = load ptr, ptr %9, align 8, !tbaa !5
  %9470 = getelementptr inbounds %struct.w2c_hermes, ptr %9469, i32 0, i32 6
  %9471 = load i32, ptr %36, align 4, !tbaa !9
  %9472 = zext i32 %9471 to i64
  %9473 = add i64 %9472, 4
  %9474 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9470, i64 noundef %9473, i32 noundef %9474)
  %9475 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9475, ptr %36, align 4, !tbaa !9
  %9476 = load ptr, ptr %9, align 8, !tbaa !5
  %9477 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9476, i32 noundef %9477)
  br label %9478

9478:                                             ; preds = %9466, %9456
  %9479 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9479, ptr %36, align 4, !tbaa !9
  %9480 = load ptr, ptr %9, align 8, !tbaa !5
  %9481 = getelementptr inbounds %struct.w2c_hermes, ptr %9480, i32 0, i32 6
  %9482 = load i32, ptr %36, align 4, !tbaa !9
  %9483 = zext i32 %9482 to i64
  %9484 = add i64 %9483, 720
  %9485 = call i32 @i32_load(ptr noundef %9481, i64 noundef %9484)
  store i32 %9485, ptr %36, align 4, !tbaa !9
  %9486 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9486, ptr %18, align 4, !tbaa !9
  %9487 = load i32, ptr %36, align 4, !tbaa !9
  %9488 = icmp ne i32 %9487, 0
  br i1 %9488, label %9489, label %9501

9489:                                             ; preds = %9478
  %9490 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9490, ptr %36, align 4, !tbaa !9
  %9491 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9491, ptr %37, align 4, !tbaa !9
  %9492 = load ptr, ptr %9, align 8, !tbaa !5
  %9493 = getelementptr inbounds %struct.w2c_hermes, ptr %9492, i32 0, i32 6
  %9494 = load i32, ptr %36, align 4, !tbaa !9
  %9495 = zext i32 %9494 to i64
  %9496 = add i64 %9495, 724
  %9497 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9493, i64 noundef %9496, i32 noundef %9497)
  %9498 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9498, ptr %36, align 4, !tbaa !9
  %9499 = load ptr, ptr %9, align 8, !tbaa !5
  %9500 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9499, i32 noundef %9500)
  br label %9501

9501:                                             ; preds = %9489, %9478
  %9502 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9502, ptr %36, align 4, !tbaa !9
  store i32 668, ptr %37, align 4, !tbaa !9
  %9503 = load i32, ptr %37, align 4, !tbaa !9
  %9504 = load i32, ptr %36, align 4, !tbaa !9
  %9505 = add i32 %9504, %9503
  store i32 %9505, ptr %36, align 4, !tbaa !9
  %9506 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9506, ptr %19, align 4, !tbaa !9
  %9507 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9507, ptr %36, align 4, !tbaa !9
  %9508 = load ptr, ptr %9, align 8, !tbaa !5
  %9509 = getelementptr inbounds %struct.w2c_hermes, ptr %9508, i32 0, i32 6
  %9510 = load i32, ptr %36, align 4, !tbaa !9
  %9511 = zext i32 %9510 to i64
  %9512 = add i64 %9511, 708
  %9513 = call i32 @i32_load(ptr noundef %9509, i64 noundef %9512)
  store i32 %9513, ptr %36, align 4, !tbaa !9
  %9514 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9514, ptr %18, align 4, !tbaa !9
  %9515 = load i32, ptr %36, align 4, !tbaa !9
  %9516 = icmp ne i32 %9515, 0
  br i1 %9516, label %9517, label %9529

9517:                                             ; preds = %9501
  %9518 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9518, ptr %36, align 4, !tbaa !9
  %9519 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9519, ptr %37, align 4, !tbaa !9
  %9520 = load ptr, ptr %9, align 8, !tbaa !5
  %9521 = getelementptr inbounds %struct.w2c_hermes, ptr %9520, i32 0, i32 6
  %9522 = load i32, ptr %36, align 4, !tbaa !9
  %9523 = zext i32 %9522 to i64
  %9524 = add i64 %9523, 712
  %9525 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9521, i64 noundef %9524, i32 noundef %9525)
  %9526 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9526, ptr %36, align 4, !tbaa !9
  %9527 = load ptr, ptr %9, align 8, !tbaa !5
  %9528 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9527, i32 noundef %9528)
  br label %9529

9529:                                             ; preds = %9517, %9501
  %9530 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9530, ptr %36, align 4, !tbaa !9
  %9531 = load ptr, ptr %9, align 8, !tbaa !5
  %9532 = getelementptr inbounds %struct.w2c_hermes, ptr %9531, i32 0, i32 6
  %9533 = load i32, ptr %36, align 4, !tbaa !9
  %9534 = zext i32 %9533 to i64
  %9535 = add i64 %9534, 692
  %9536 = call i32 @i32_load(ptr noundef %9532, i64 noundef %9535)
  store i32 %9536, ptr %36, align 4, !tbaa !9
  %9537 = load ptr, ptr %9, align 8, !tbaa !5
  %9538 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9537, i32 noundef %9538)
  %9539 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9539, ptr %36, align 4, !tbaa !9
  %9540 = load ptr, ptr %9, align 8, !tbaa !5
  %9541 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef %9540, i32 noundef %9541)
  %9542 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9542, ptr %36, align 4, !tbaa !9
  %9543 = load ptr, ptr %9, align 8, !tbaa !5
  %9544 = getelementptr inbounds %struct.w2c_hermes, ptr %9543, i32 0, i32 6
  %9545 = load i32, ptr %36, align 4, !tbaa !9
  %9546 = zext i32 %9545 to i64
  %9547 = add i64 %9546, 672
  %9548 = call i32 @i32_load(ptr noundef %9544, i64 noundef %9547)
  store i32 %9548, ptr %36, align 4, !tbaa !9
  %9549 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9549, ptr %18, align 4, !tbaa !9
  %9550 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9550, ptr %37, align 4, !tbaa !9
  %9551 = load ptr, ptr %9, align 8, !tbaa !5
  %9552 = getelementptr inbounds %struct.w2c_hermes, ptr %9551, i32 0, i32 6
  %9553 = load i32, ptr %37, align 4, !tbaa !9
  %9554 = zext i32 %9553 to i64
  %9555 = add i64 %9554, 676
  %9556 = call i32 @i32_load(ptr noundef %9552, i64 noundef %9555)
  store i32 %9556, ptr %37, align 4, !tbaa !9
  %9557 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9557, ptr %19, align 4, !tbaa !9
  %9558 = load i32, ptr %36, align 4, !tbaa !9
  %9559 = load i32, ptr %37, align 4, !tbaa !9
  %9560 = icmp eq i32 %9558, %9559
  %9561 = zext i1 %9560 to i32
  store i32 %9561, ptr %36, align 4, !tbaa !9
  %9562 = load i32, ptr %36, align 4, !tbaa !9
  %9563 = icmp ne i32 %9562, 0
  br i1 %9563, label %9564, label %9565

9564:                                             ; preds = %9529
  br label %9635

9565:                                             ; preds = %9529
  br label %9566

9566:                                             ; preds = %9587, %9565
  %9567 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9567, ptr %36, align 4, !tbaa !9
  %9568 = load ptr, ptr %9, align 8, !tbaa !5
  %9569 = getelementptr inbounds %struct.w2c_hermes, ptr %9568, i32 0, i32 6
  %9570 = load i32, ptr %36, align 4, !tbaa !9
  %9571 = zext i32 %9570 to i64
  %9572 = call i32 @i32_load(ptr noundef %9569, i64 noundef %9571)
  store i32 %9572, ptr %36, align 4, !tbaa !9
  %9573 = load ptr, ptr %9, align 8, !tbaa !5
  %9574 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9573, i32 noundef %9574)
  %9575 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9575, ptr %36, align 4, !tbaa !9
  store i32 4, ptr %37, align 4, !tbaa !9
  %9576 = load i32, ptr %37, align 4, !tbaa !9
  %9577 = load i32, ptr %36, align 4, !tbaa !9
  %9578 = add i32 %9577, %9576
  store i32 %9578, ptr %36, align 4, !tbaa !9
  %9579 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9579, ptr %18, align 4, !tbaa !9
  %9580 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9580, ptr %37, align 4, !tbaa !9
  %9581 = load i32, ptr %36, align 4, !tbaa !9
  %9582 = load i32, ptr %37, align 4, !tbaa !9
  %9583 = icmp ne i32 %9581, %9582
  %9584 = zext i1 %9583 to i32
  store i32 %9584, ptr %36, align 4, !tbaa !9
  %9585 = load i32, ptr %36, align 4, !tbaa !9
  %9586 = icmp ne i32 %9585, 0
  br i1 %9586, label %9587, label %9588

9587:                                             ; preds = %9566
  br label %9566

9588:                                             ; preds = %9566
  %9589 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9589, ptr %36, align 4, !tbaa !9
  %9590 = load ptr, ptr %9, align 8, !tbaa !5
  %9591 = getelementptr inbounds %struct.w2c_hermes, ptr %9590, i32 0, i32 6
  %9592 = load i32, ptr %36, align 4, !tbaa !9
  %9593 = zext i32 %9592 to i64
  %9594 = add i64 %9593, 676
  %9595 = call i32 @i32_load(ptr noundef %9591, i64 noundef %9594)
  store i32 %9595, ptr %36, align 4, !tbaa !9
  %9596 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9596, ptr %18, align 4, !tbaa !9
  %9597 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9597, ptr %37, align 4, !tbaa !9
  %9598 = load ptr, ptr %9, align 8, !tbaa !5
  %9599 = getelementptr inbounds %struct.w2c_hermes, ptr %9598, i32 0, i32 6
  %9600 = load i32, ptr %37, align 4, !tbaa !9
  %9601 = zext i32 %9600 to i64
  %9602 = add i64 %9601, 672
  %9603 = call i32 @i32_load(ptr noundef %9599, i64 noundef %9602)
  store i32 %9603, ptr %37, align 4, !tbaa !9
  %9604 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9604, ptr %19, align 4, !tbaa !9
  %9605 = load i32, ptr %36, align 4, !tbaa !9
  %9606 = load i32, ptr %37, align 4, !tbaa !9
  %9607 = icmp eq i32 %9605, %9606
  %9608 = zext i1 %9607 to i32
  store i32 %9608, ptr %36, align 4, !tbaa !9
  %9609 = load i32, ptr %36, align 4, !tbaa !9
  %9610 = icmp ne i32 %9609, 0
  br i1 %9610, label %9611, label %9612

9611:                                             ; preds = %9588
  br label %9635

9612:                                             ; preds = %9588
  %9613 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9613, ptr %36, align 4, !tbaa !9
  %9614 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9614, ptr %37, align 4, !tbaa !9
  %9615 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9615, ptr %38, align 4, !tbaa !9
  %9616 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9616, ptr %39, align 4, !tbaa !9
  %9617 = load i32, ptr %39, align 4, !tbaa !9
  %9618 = load i32, ptr %38, align 4, !tbaa !9
  %9619 = sub i32 %9618, %9617
  store i32 %9619, ptr %38, align 4, !tbaa !9
  store i32 3, ptr %39, align 4, !tbaa !9
  %9620 = load i32, ptr %39, align 4, !tbaa !9
  %9621 = load i32, ptr %38, align 4, !tbaa !9
  %9622 = add i32 %9621, %9620
  store i32 %9622, ptr %38, align 4, !tbaa !9
  store i32 -4, ptr %39, align 4, !tbaa !9
  %9623 = load i32, ptr %39, align 4, !tbaa !9
  %9624 = load i32, ptr %38, align 4, !tbaa !9
  %9625 = and i32 %9624, %9623
  store i32 %9625, ptr %38, align 4, !tbaa !9
  %9626 = load i32, ptr %38, align 4, !tbaa !9
  %9627 = load i32, ptr %37, align 4, !tbaa !9
  %9628 = add i32 %9627, %9626
  store i32 %9628, ptr %37, align 4, !tbaa !9
  %9629 = load ptr, ptr %9, align 8, !tbaa !5
  %9630 = getelementptr inbounds %struct.w2c_hermes, ptr %9629, i32 0, i32 6
  %9631 = load i32, ptr %36, align 4, !tbaa !9
  %9632 = zext i32 %9631 to i64
  %9633 = add i64 %9632, 676
  %9634 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9630, i64 noundef %9633, i32 noundef %9634)
  br label %9635

9635:                                             ; preds = %9612, %9611, %9564
  %9636 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9636, ptr %36, align 4, !tbaa !9
  %9637 = load ptr, ptr %9, align 8, !tbaa !5
  %9638 = getelementptr inbounds %struct.w2c_hermes, ptr %9637, i32 0, i32 6
  %9639 = load i32, ptr %36, align 4, !tbaa !9
  %9640 = zext i32 %9639 to i64
  %9641 = add i64 %9640, 668
  %9642 = call i32 @i32_load(ptr noundef %9638, i64 noundef %9641)
  store i32 %9642, ptr %36, align 4, !tbaa !9
  %9643 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9643, ptr %18, align 4, !tbaa !9
  %9644 = load i32, ptr %36, align 4, !tbaa !9
  %9645 = icmp ne i32 %9644, 0
  br i1 %9645, label %9646, label %9650

9646:                                             ; preds = %9635
  %9647 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9647, ptr %36, align 4, !tbaa !9
  %9648 = load ptr, ptr %9, align 8, !tbaa !5
  %9649 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9648, i32 noundef %9649)
  br label %9650

9650:                                             ; preds = %9646, %9635
  %9651 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9651, ptr %36, align 4, !tbaa !9
  store i32 616, ptr %37, align 4, !tbaa !9
  %9652 = load i32, ptr %37, align 4, !tbaa !9
  %9653 = load i32, ptr %36, align 4, !tbaa !9
  %9654 = add i32 %9653, %9652
  store i32 %9654, ptr %36, align 4, !tbaa !9
  %9655 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9655, ptr %19, align 4, !tbaa !9
  %9656 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9656, ptr %36, align 4, !tbaa !9
  %9657 = load ptr, ptr %9, align 8, !tbaa !5
  %9658 = getelementptr inbounds %struct.w2c_hermes, ptr %9657, i32 0, i32 6
  %9659 = load i32, ptr %36, align 4, !tbaa !9
  %9660 = zext i32 %9659 to i64
  %9661 = add i64 %9660, 656
  %9662 = call i32 @i32_load(ptr noundef %9658, i64 noundef %9661)
  store i32 %9662, ptr %36, align 4, !tbaa !9
  %9663 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9663, ptr %18, align 4, !tbaa !9
  %9664 = load i32, ptr %36, align 4, !tbaa !9
  %9665 = icmp ne i32 %9664, 0
  br i1 %9665, label %9666, label %9678

9666:                                             ; preds = %9650
  %9667 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9667, ptr %36, align 4, !tbaa !9
  %9668 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9668, ptr %37, align 4, !tbaa !9
  %9669 = load ptr, ptr %9, align 8, !tbaa !5
  %9670 = getelementptr inbounds %struct.w2c_hermes, ptr %9669, i32 0, i32 6
  %9671 = load i32, ptr %36, align 4, !tbaa !9
  %9672 = zext i32 %9671 to i64
  %9673 = add i64 %9672, 660
  %9674 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9670, i64 noundef %9673, i32 noundef %9674)
  %9675 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9675, ptr %36, align 4, !tbaa !9
  %9676 = load ptr, ptr %9, align 8, !tbaa !5
  %9677 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9676, i32 noundef %9677)
  br label %9678

9678:                                             ; preds = %9666, %9650
  %9679 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9679, ptr %36, align 4, !tbaa !9
  %9680 = load ptr, ptr %9, align 8, !tbaa !5
  %9681 = getelementptr inbounds %struct.w2c_hermes, ptr %9680, i32 0, i32 6
  %9682 = load i32, ptr %36, align 4, !tbaa !9
  %9683 = zext i32 %9682 to i64
  %9684 = add i64 %9683, 640
  %9685 = call i32 @i32_load(ptr noundef %9681, i64 noundef %9684)
  store i32 %9685, ptr %36, align 4, !tbaa !9
  %9686 = load ptr, ptr %9, align 8, !tbaa !5
  %9687 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9686, i32 noundef %9687)
  %9688 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9688, ptr %36, align 4, !tbaa !9
  %9689 = load ptr, ptr %9, align 8, !tbaa !5
  %9690 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef %9689, i32 noundef %9690)
  %9691 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9691, ptr %36, align 4, !tbaa !9
  %9692 = load ptr, ptr %9, align 8, !tbaa !5
  %9693 = getelementptr inbounds %struct.w2c_hermes, ptr %9692, i32 0, i32 6
  %9694 = load i32, ptr %36, align 4, !tbaa !9
  %9695 = zext i32 %9694 to i64
  %9696 = add i64 %9695, 620
  %9697 = call i32 @i32_load(ptr noundef %9693, i64 noundef %9696)
  store i32 %9697, ptr %36, align 4, !tbaa !9
  %9698 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9698, ptr %18, align 4, !tbaa !9
  %9699 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9699, ptr %37, align 4, !tbaa !9
  %9700 = load ptr, ptr %9, align 8, !tbaa !5
  %9701 = getelementptr inbounds %struct.w2c_hermes, ptr %9700, i32 0, i32 6
  %9702 = load i32, ptr %37, align 4, !tbaa !9
  %9703 = zext i32 %9702 to i64
  %9704 = add i64 %9703, 624
  %9705 = call i32 @i32_load(ptr noundef %9701, i64 noundef %9704)
  store i32 %9705, ptr %37, align 4, !tbaa !9
  %9706 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9706, ptr %19, align 4, !tbaa !9
  %9707 = load i32, ptr %36, align 4, !tbaa !9
  %9708 = load i32, ptr %37, align 4, !tbaa !9
  %9709 = icmp eq i32 %9707, %9708
  %9710 = zext i1 %9709 to i32
  store i32 %9710, ptr %36, align 4, !tbaa !9
  %9711 = load i32, ptr %36, align 4, !tbaa !9
  %9712 = icmp ne i32 %9711, 0
  br i1 %9712, label %9713, label %9714

9713:                                             ; preds = %9678
  br label %9784

9714:                                             ; preds = %9678
  br label %9715

9715:                                             ; preds = %9736, %9714
  %9716 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9716, ptr %36, align 4, !tbaa !9
  %9717 = load ptr, ptr %9, align 8, !tbaa !5
  %9718 = getelementptr inbounds %struct.w2c_hermes, ptr %9717, i32 0, i32 6
  %9719 = load i32, ptr %36, align 4, !tbaa !9
  %9720 = zext i32 %9719 to i64
  %9721 = call i32 @i32_load(ptr noundef %9718, i64 noundef %9720)
  store i32 %9721, ptr %36, align 4, !tbaa !9
  %9722 = load ptr, ptr %9, align 8, !tbaa !5
  %9723 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9722, i32 noundef %9723)
  %9724 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9724, ptr %36, align 4, !tbaa !9
  store i32 4, ptr %37, align 4, !tbaa !9
  %9725 = load i32, ptr %37, align 4, !tbaa !9
  %9726 = load i32, ptr %36, align 4, !tbaa !9
  %9727 = add i32 %9726, %9725
  store i32 %9727, ptr %36, align 4, !tbaa !9
  %9728 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9728, ptr %18, align 4, !tbaa !9
  %9729 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9729, ptr %37, align 4, !tbaa !9
  %9730 = load i32, ptr %36, align 4, !tbaa !9
  %9731 = load i32, ptr %37, align 4, !tbaa !9
  %9732 = icmp ne i32 %9730, %9731
  %9733 = zext i1 %9732 to i32
  store i32 %9733, ptr %36, align 4, !tbaa !9
  %9734 = load i32, ptr %36, align 4, !tbaa !9
  %9735 = icmp ne i32 %9734, 0
  br i1 %9735, label %9736, label %9737

9736:                                             ; preds = %9715
  br label %9715

9737:                                             ; preds = %9715
  %9738 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9738, ptr %36, align 4, !tbaa !9
  %9739 = load ptr, ptr %9, align 8, !tbaa !5
  %9740 = getelementptr inbounds %struct.w2c_hermes, ptr %9739, i32 0, i32 6
  %9741 = load i32, ptr %36, align 4, !tbaa !9
  %9742 = zext i32 %9741 to i64
  %9743 = add i64 %9742, 624
  %9744 = call i32 @i32_load(ptr noundef %9740, i64 noundef %9743)
  store i32 %9744, ptr %36, align 4, !tbaa !9
  %9745 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9745, ptr %18, align 4, !tbaa !9
  %9746 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9746, ptr %37, align 4, !tbaa !9
  %9747 = load ptr, ptr %9, align 8, !tbaa !5
  %9748 = getelementptr inbounds %struct.w2c_hermes, ptr %9747, i32 0, i32 6
  %9749 = load i32, ptr %37, align 4, !tbaa !9
  %9750 = zext i32 %9749 to i64
  %9751 = add i64 %9750, 620
  %9752 = call i32 @i32_load(ptr noundef %9748, i64 noundef %9751)
  store i32 %9752, ptr %37, align 4, !tbaa !9
  %9753 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9753, ptr %19, align 4, !tbaa !9
  %9754 = load i32, ptr %36, align 4, !tbaa !9
  %9755 = load i32, ptr %37, align 4, !tbaa !9
  %9756 = icmp eq i32 %9754, %9755
  %9757 = zext i1 %9756 to i32
  store i32 %9757, ptr %36, align 4, !tbaa !9
  %9758 = load i32, ptr %36, align 4, !tbaa !9
  %9759 = icmp ne i32 %9758, 0
  br i1 %9759, label %9760, label %9761

9760:                                             ; preds = %9737
  br label %9784

9761:                                             ; preds = %9737
  %9762 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9762, ptr %36, align 4, !tbaa !9
  %9763 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9763, ptr %37, align 4, !tbaa !9
  %9764 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9764, ptr %38, align 4, !tbaa !9
  %9765 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9765, ptr %39, align 4, !tbaa !9
  %9766 = load i32, ptr %39, align 4, !tbaa !9
  %9767 = load i32, ptr %38, align 4, !tbaa !9
  %9768 = sub i32 %9767, %9766
  store i32 %9768, ptr %38, align 4, !tbaa !9
  store i32 3, ptr %39, align 4, !tbaa !9
  %9769 = load i32, ptr %39, align 4, !tbaa !9
  %9770 = load i32, ptr %38, align 4, !tbaa !9
  %9771 = add i32 %9770, %9769
  store i32 %9771, ptr %38, align 4, !tbaa !9
  store i32 -4, ptr %39, align 4, !tbaa !9
  %9772 = load i32, ptr %39, align 4, !tbaa !9
  %9773 = load i32, ptr %38, align 4, !tbaa !9
  %9774 = and i32 %9773, %9772
  store i32 %9774, ptr %38, align 4, !tbaa !9
  %9775 = load i32, ptr %38, align 4, !tbaa !9
  %9776 = load i32, ptr %37, align 4, !tbaa !9
  %9777 = add i32 %9776, %9775
  store i32 %9777, ptr %37, align 4, !tbaa !9
  %9778 = load ptr, ptr %9, align 8, !tbaa !5
  %9779 = getelementptr inbounds %struct.w2c_hermes, ptr %9778, i32 0, i32 6
  %9780 = load i32, ptr %36, align 4, !tbaa !9
  %9781 = zext i32 %9780 to i64
  %9782 = add i64 %9781, 624
  %9783 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9779, i64 noundef %9782, i32 noundef %9783)
  br label %9784

9784:                                             ; preds = %9761, %9760, %9713
  %9785 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9785, ptr %36, align 4, !tbaa !9
  %9786 = load ptr, ptr %9, align 8, !tbaa !5
  %9787 = getelementptr inbounds %struct.w2c_hermes, ptr %9786, i32 0, i32 6
  %9788 = load i32, ptr %36, align 4, !tbaa !9
  %9789 = zext i32 %9788 to i64
  %9790 = add i64 %9789, 616
  %9791 = call i32 @i32_load(ptr noundef %9787, i64 noundef %9790)
  store i32 %9791, ptr %36, align 4, !tbaa !9
  %9792 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9792, ptr %18, align 4, !tbaa !9
  %9793 = load i32, ptr %36, align 4, !tbaa !9
  %9794 = icmp ne i32 %9793, 0
  br i1 %9794, label %9795, label %9799

9795:                                             ; preds = %9784
  %9796 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9796, ptr %36, align 4, !tbaa !9
  %9797 = load ptr, ptr %9, align 8, !tbaa !5
  %9798 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9797, i32 noundef %9798)
  br label %9799

9799:                                             ; preds = %9795, %9784
  %9800 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9800, ptr %36, align 4, !tbaa !9
  %9801 = load ptr, ptr %9, align 8, !tbaa !5
  %9802 = getelementptr inbounds %struct.w2c_hermes, ptr %9801, i32 0, i32 6
  %9803 = load i32, ptr %36, align 4, !tbaa !9
  %9804 = zext i32 %9803 to i64
  %9805 = add i64 %9804, 604
  %9806 = call i32 @i32_load(ptr noundef %9802, i64 noundef %9805)
  store i32 %9806, ptr %36, align 4, !tbaa !9
  %9807 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9807, ptr %18, align 4, !tbaa !9
  %9808 = load i32, ptr %36, align 4, !tbaa !9
  %9809 = icmp ne i32 %9808, 0
  br i1 %9809, label %9810, label %9822

9810:                                             ; preds = %9799
  %9811 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9811, ptr %36, align 4, !tbaa !9
  %9812 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9812, ptr %37, align 4, !tbaa !9
  %9813 = load ptr, ptr %9, align 8, !tbaa !5
  %9814 = getelementptr inbounds %struct.w2c_hermes, ptr %9813, i32 0, i32 6
  %9815 = load i32, ptr %36, align 4, !tbaa !9
  %9816 = zext i32 %9815 to i64
  %9817 = add i64 %9816, 608
  %9818 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9814, i64 noundef %9817, i32 noundef %9818)
  %9819 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9819, ptr %36, align 4, !tbaa !9
  %9820 = load ptr, ptr %9, align 8, !tbaa !5
  %9821 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9820, i32 noundef %9821)
  br label %9822

9822:                                             ; preds = %9810, %9799
  %9823 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9823, ptr %36, align 4, !tbaa !9
  store i32 552, ptr %37, align 4, !tbaa !9
  %9824 = load i32, ptr %37, align 4, !tbaa !9
  %9825 = load i32, ptr %36, align 4, !tbaa !9
  %9826 = add i32 %9825, %9824
  store i32 %9826, ptr %36, align 4, !tbaa !9
  %9827 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9827, ptr %19, align 4, !tbaa !9
  %9828 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9828, ptr %36, align 4, !tbaa !9
  %9829 = load ptr, ptr %9, align 8, !tbaa !5
  %9830 = getelementptr inbounds %struct.w2c_hermes, ptr %9829, i32 0, i32 6
  %9831 = load i32, ptr %36, align 4, !tbaa !9
  %9832 = zext i32 %9831 to i64
  %9833 = add i64 %9832, 592
  %9834 = call i32 @i32_load(ptr noundef %9830, i64 noundef %9833)
  store i32 %9834, ptr %36, align 4, !tbaa !9
  %9835 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9835, ptr %18, align 4, !tbaa !9
  %9836 = load i32, ptr %36, align 4, !tbaa !9
  %9837 = icmp ne i32 %9836, 0
  br i1 %9837, label %9838, label %9850

9838:                                             ; preds = %9822
  %9839 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9839, ptr %36, align 4, !tbaa !9
  %9840 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9840, ptr %37, align 4, !tbaa !9
  %9841 = load ptr, ptr %9, align 8, !tbaa !5
  %9842 = getelementptr inbounds %struct.w2c_hermes, ptr %9841, i32 0, i32 6
  %9843 = load i32, ptr %36, align 4, !tbaa !9
  %9844 = zext i32 %9843 to i64
  %9845 = add i64 %9844, 596
  %9846 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9842, i64 noundef %9845, i32 noundef %9846)
  %9847 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9847, ptr %36, align 4, !tbaa !9
  %9848 = load ptr, ptr %9, align 8, !tbaa !5
  %9849 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9848, i32 noundef %9849)
  br label %9850

9850:                                             ; preds = %9838, %9822
  %9851 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9851, ptr %36, align 4, !tbaa !9
  %9852 = load ptr, ptr %9, align 8, !tbaa !5
  %9853 = getelementptr inbounds %struct.w2c_hermes, ptr %9852, i32 0, i32 6
  %9854 = load i32, ptr %36, align 4, !tbaa !9
  %9855 = zext i32 %9854 to i64
  %9856 = add i64 %9855, 576
  %9857 = call i32 @i32_load(ptr noundef %9853, i64 noundef %9856)
  store i32 %9857, ptr %36, align 4, !tbaa !9
  %9858 = load ptr, ptr %9, align 8, !tbaa !5
  %9859 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9858, i32 noundef %9859)
  %9860 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9860, ptr %36, align 4, !tbaa !9
  %9861 = load ptr, ptr %9, align 8, !tbaa !5
  %9862 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef %9861, i32 noundef %9862)
  %9863 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9863, ptr %36, align 4, !tbaa !9
  %9864 = load ptr, ptr %9, align 8, !tbaa !5
  %9865 = getelementptr inbounds %struct.w2c_hermes, ptr %9864, i32 0, i32 6
  %9866 = load i32, ptr %36, align 4, !tbaa !9
  %9867 = zext i32 %9866 to i64
  %9868 = add i64 %9867, 556
  %9869 = call i32 @i32_load(ptr noundef %9865, i64 noundef %9868)
  store i32 %9869, ptr %36, align 4, !tbaa !9
  %9870 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9870, ptr %18, align 4, !tbaa !9
  %9871 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9871, ptr %37, align 4, !tbaa !9
  %9872 = load ptr, ptr %9, align 8, !tbaa !5
  %9873 = getelementptr inbounds %struct.w2c_hermes, ptr %9872, i32 0, i32 6
  %9874 = load i32, ptr %37, align 4, !tbaa !9
  %9875 = zext i32 %9874 to i64
  %9876 = add i64 %9875, 560
  %9877 = call i32 @i32_load(ptr noundef %9873, i64 noundef %9876)
  store i32 %9877, ptr %37, align 4, !tbaa !9
  %9878 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9878, ptr %19, align 4, !tbaa !9
  %9879 = load i32, ptr %36, align 4, !tbaa !9
  %9880 = load i32, ptr %37, align 4, !tbaa !9
  %9881 = icmp eq i32 %9879, %9880
  %9882 = zext i1 %9881 to i32
  store i32 %9882, ptr %36, align 4, !tbaa !9
  %9883 = load i32, ptr %36, align 4, !tbaa !9
  %9884 = icmp ne i32 %9883, 0
  br i1 %9884, label %9885, label %9886

9885:                                             ; preds = %9850
  br label %9956

9886:                                             ; preds = %9850
  br label %9887

9887:                                             ; preds = %9908, %9886
  %9888 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9888, ptr %36, align 4, !tbaa !9
  %9889 = load ptr, ptr %9, align 8, !tbaa !5
  %9890 = getelementptr inbounds %struct.w2c_hermes, ptr %9889, i32 0, i32 6
  %9891 = load i32, ptr %36, align 4, !tbaa !9
  %9892 = zext i32 %9891 to i64
  %9893 = call i32 @i32_load(ptr noundef %9890, i64 noundef %9892)
  store i32 %9893, ptr %36, align 4, !tbaa !9
  %9894 = load ptr, ptr %9, align 8, !tbaa !5
  %9895 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9894, i32 noundef %9895)
  %9896 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9896, ptr %36, align 4, !tbaa !9
  store i32 4, ptr %37, align 4, !tbaa !9
  %9897 = load i32, ptr %37, align 4, !tbaa !9
  %9898 = load i32, ptr %36, align 4, !tbaa !9
  %9899 = add i32 %9898, %9897
  store i32 %9899, ptr %36, align 4, !tbaa !9
  %9900 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9900, ptr %18, align 4, !tbaa !9
  %9901 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9901, ptr %37, align 4, !tbaa !9
  %9902 = load i32, ptr %36, align 4, !tbaa !9
  %9903 = load i32, ptr %37, align 4, !tbaa !9
  %9904 = icmp ne i32 %9902, %9903
  %9905 = zext i1 %9904 to i32
  store i32 %9905, ptr %36, align 4, !tbaa !9
  %9906 = load i32, ptr %36, align 4, !tbaa !9
  %9907 = icmp ne i32 %9906, 0
  br i1 %9907, label %9908, label %9909

9908:                                             ; preds = %9887
  br label %9887

9909:                                             ; preds = %9887
  %9910 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9910, ptr %36, align 4, !tbaa !9
  %9911 = load ptr, ptr %9, align 8, !tbaa !5
  %9912 = getelementptr inbounds %struct.w2c_hermes, ptr %9911, i32 0, i32 6
  %9913 = load i32, ptr %36, align 4, !tbaa !9
  %9914 = zext i32 %9913 to i64
  %9915 = add i64 %9914, 560
  %9916 = call i32 @i32_load(ptr noundef %9912, i64 noundef %9915)
  store i32 %9916, ptr %36, align 4, !tbaa !9
  %9917 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9917, ptr %18, align 4, !tbaa !9
  %9918 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9918, ptr %37, align 4, !tbaa !9
  %9919 = load ptr, ptr %9, align 8, !tbaa !5
  %9920 = getelementptr inbounds %struct.w2c_hermes, ptr %9919, i32 0, i32 6
  %9921 = load i32, ptr %37, align 4, !tbaa !9
  %9922 = zext i32 %9921 to i64
  %9923 = add i64 %9922, 556
  %9924 = call i32 @i32_load(ptr noundef %9920, i64 noundef %9923)
  store i32 %9924, ptr %37, align 4, !tbaa !9
  %9925 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %9925, ptr %19, align 4, !tbaa !9
  %9926 = load i32, ptr %36, align 4, !tbaa !9
  %9927 = load i32, ptr %37, align 4, !tbaa !9
  %9928 = icmp eq i32 %9926, %9927
  %9929 = zext i1 %9928 to i32
  store i32 %9929, ptr %36, align 4, !tbaa !9
  %9930 = load i32, ptr %36, align 4, !tbaa !9
  %9931 = icmp ne i32 %9930, 0
  br i1 %9931, label %9932, label %9933

9932:                                             ; preds = %9909
  br label %9956

9933:                                             ; preds = %9909
  %9934 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9934, ptr %36, align 4, !tbaa !9
  %9935 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9935, ptr %37, align 4, !tbaa !9
  %9936 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %9936, ptr %38, align 4, !tbaa !9
  %9937 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9937, ptr %39, align 4, !tbaa !9
  %9938 = load i32, ptr %39, align 4, !tbaa !9
  %9939 = load i32, ptr %38, align 4, !tbaa !9
  %9940 = sub i32 %9939, %9938
  store i32 %9940, ptr %38, align 4, !tbaa !9
  store i32 3, ptr %39, align 4, !tbaa !9
  %9941 = load i32, ptr %39, align 4, !tbaa !9
  %9942 = load i32, ptr %38, align 4, !tbaa !9
  %9943 = add i32 %9942, %9941
  store i32 %9943, ptr %38, align 4, !tbaa !9
  store i32 -4, ptr %39, align 4, !tbaa !9
  %9944 = load i32, ptr %39, align 4, !tbaa !9
  %9945 = load i32, ptr %38, align 4, !tbaa !9
  %9946 = and i32 %9945, %9944
  store i32 %9946, ptr %38, align 4, !tbaa !9
  %9947 = load i32, ptr %38, align 4, !tbaa !9
  %9948 = load i32, ptr %37, align 4, !tbaa !9
  %9949 = add i32 %9948, %9947
  store i32 %9949, ptr %37, align 4, !tbaa !9
  %9950 = load ptr, ptr %9, align 8, !tbaa !5
  %9951 = getelementptr inbounds %struct.w2c_hermes, ptr %9950, i32 0, i32 6
  %9952 = load i32, ptr %36, align 4, !tbaa !9
  %9953 = zext i32 %9952 to i64
  %9954 = add i64 %9953, 560
  %9955 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9951, i64 noundef %9954, i32 noundef %9955)
  br label %9956

9956:                                             ; preds = %9933, %9932, %9885
  %9957 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9957, ptr %36, align 4, !tbaa !9
  %9958 = load ptr, ptr %9, align 8, !tbaa !5
  %9959 = getelementptr inbounds %struct.w2c_hermes, ptr %9958, i32 0, i32 6
  %9960 = load i32, ptr %36, align 4, !tbaa !9
  %9961 = zext i32 %9960 to i64
  %9962 = add i64 %9961, 552
  %9963 = call i32 @i32_load(ptr noundef %9959, i64 noundef %9962)
  store i32 %9963, ptr %36, align 4, !tbaa !9
  %9964 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9964, ptr %18, align 4, !tbaa !9
  %9965 = load i32, ptr %36, align 4, !tbaa !9
  %9966 = icmp ne i32 %9965, 0
  br i1 %9966, label %9967, label %9971

9967:                                             ; preds = %9956
  %9968 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9968, ptr %36, align 4, !tbaa !9
  %9969 = load ptr, ptr %9, align 8, !tbaa !5
  %9970 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9969, i32 noundef %9970)
  br label %9971

9971:                                             ; preds = %9967, %9956
  %9972 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9972, ptr %36, align 4, !tbaa !9
  %9973 = load ptr, ptr %9, align 8, !tbaa !5
  %9974 = getelementptr inbounds %struct.w2c_hermes, ptr %9973, i32 0, i32 6
  %9975 = load i32, ptr %36, align 4, !tbaa !9
  %9976 = zext i32 %9975 to i64
  %9977 = add i64 %9976, 540
  %9978 = call i32 @i32_load(ptr noundef %9974, i64 noundef %9977)
  store i32 %9978, ptr %36, align 4, !tbaa !9
  %9979 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %9979, ptr %18, align 4, !tbaa !9
  %9980 = load i32, ptr %36, align 4, !tbaa !9
  %9981 = icmp ne i32 %9980, 0
  br i1 %9981, label %9982, label %9994

9982:                                             ; preds = %9971
  %9983 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %9983, ptr %36, align 4, !tbaa !9
  %9984 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9984, ptr %37, align 4, !tbaa !9
  %9985 = load ptr, ptr %9, align 8, !tbaa !5
  %9986 = getelementptr inbounds %struct.w2c_hermes, ptr %9985, i32 0, i32 6
  %9987 = load i32, ptr %36, align 4, !tbaa !9
  %9988 = zext i32 %9987 to i64
  %9989 = add i64 %9988, 544
  %9990 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %9986, i64 noundef %9989, i32 noundef %9990)
  %9991 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %9991, ptr %36, align 4, !tbaa !9
  %9992 = load ptr, ptr %9, align 8, !tbaa !5
  %9993 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %9992, i32 noundef %9993)
  br label %9994

9994:                                             ; preds = %9982, %9971
  %9995 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %9995, ptr %36, align 4, !tbaa !9
  %9996 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %9996, ptr %37, align 4, !tbaa !9
  %9997 = load ptr, ptr %9, align 8, !tbaa !5
  %9998 = getelementptr inbounds %struct.w2c_hermes, ptr %9997, i32 0, i32 6
  %9999 = load i32, ptr %37, align 4, !tbaa !9
  %10000 = zext i32 %9999 to i64
  %10001 = add i64 %10000, 44
  %10002 = call i32 @i32_load(ptr noundef %9998, i64 noundef %10001)
  store i32 %10002, ptr %37, align 4, !tbaa !9
  %10003 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10003, ptr %18, align 4, !tbaa !9
  %10004 = load i32, ptr %36, align 4, !tbaa !9
  %10005 = load i32, ptr %37, align 4, !tbaa !9
  %10006 = icmp ne i32 %10004, %10005
  %10007 = zext i1 %10006 to i32
  store i32 %10007, ptr %36, align 4, !tbaa !9
  %10008 = load i32, ptr %36, align 4, !tbaa !9
  %10009 = icmp ne i32 %10008, 0
  br i1 %10009, label %10010, label %10626

10010:                                            ; preds = %9994
  br label %10011

10011:                                            ; preds = %10624, %10010
  %10012 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10012, ptr %36, align 4, !tbaa !9
  %10013 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10013, ptr %37, align 4, !tbaa !9
  %10014 = load ptr, ptr %9, align 8, !tbaa !5
  %10015 = getelementptr inbounds %struct.w2c_hermes, ptr %10014, i32 0, i32 6
  %10016 = load i32, ptr %36, align 4, !tbaa !9
  %10017 = zext i32 %10016 to i64
  %10018 = add i64 %10017, 520
  %10019 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10015, i64 noundef %10018, i32 noundef %10019)
  %10020 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10020, ptr %36, align 4, !tbaa !9
  %10021 = load ptr, ptr %9, align 8, !tbaa !5
  %10022 = getelementptr inbounds %struct.w2c_hermes, ptr %10021, i32 0, i32 6
  %10023 = load i32, ptr %36, align 4, !tbaa !9
  %10024 = zext i32 %10023 to i64
  %10025 = add i64 %10024, 2208
  %10026 = call i32 @i32_load(ptr noundef %10022, i64 noundef %10025)
  store i32 %10026, ptr %36, align 4, !tbaa !9
  %10027 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10027, ptr %19, align 4, !tbaa !9
  %10028 = load i32, ptr %36, align 4, !tbaa !9
  %10029 = icmp ne i32 %10028, 0
  %10030 = xor i1 %10029, true
  %10031 = zext i1 %10030 to i32
  store i32 %10031, ptr %36, align 4, !tbaa !9
  %10032 = load i32, ptr %36, align 4, !tbaa !9
  %10033 = icmp ne i32 %10032, 0
  br i1 %10033, label %10034, label %10035

10034:                                            ; preds = %10011
  br label %13020

10035:                                            ; preds = %10011
  %10036 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10036, ptr %36, align 4, !tbaa !9
  %10037 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10037, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %10038 = load i32, ptr %38, align 4, !tbaa !9
  %10039 = load i32, ptr %37, align 4, !tbaa !9
  %10040 = add i32 %10039, %10038
  store i32 %10040, ptr %37, align 4, !tbaa !9
  %10041 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10041, ptr %38, align 4, !tbaa !9
  %10042 = load ptr, ptr %9, align 8, !tbaa !5
  %10043 = getelementptr inbounds %struct.w2c_hermes, ptr %10042, i32 0, i32 6
  %10044 = load i32, ptr %38, align 4, !tbaa !9
  %10045 = zext i32 %10044 to i64
  %10046 = call i32 @i32_load(ptr noundef %10043, i64 noundef %10045)
  store i32 %10046, ptr %38, align 4, !tbaa !9
  %10047 = load ptr, ptr %9, align 8, !tbaa !5
  %10048 = getelementptr inbounds %struct.w2c_hermes, ptr %10047, i32 0, i32 6
  %10049 = load i32, ptr %38, align 4, !tbaa !9
  %10050 = zext i32 %10049 to i64
  %10051 = add i64 %10050, 24
  %10052 = call i32 @i32_load(ptr noundef %10048, i64 noundef %10051)
  store i32 %10052, ptr %38, align 4, !tbaa !9
  %10053 = load i32, ptr %38, align 4, !tbaa !9
  %10054 = load ptr, ptr %9, align 8, !tbaa !5
  %10055 = getelementptr inbounds %struct.w2c_hermes, ptr %10054, i32 0, i32 7
  %10056 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10055, i32 0, i32 2
  %10057 = load i32, ptr %10056, align 4, !tbaa !18
  %10058 = icmp ult i32 %10053, %10057
  br i1 %10058, label %10059, label %10082

10059:                                            ; preds = %10035
  %10060 = load ptr, ptr %9, align 8, !tbaa !5
  %10061 = getelementptr inbounds %struct.w2c_hermes, ptr %10060, i32 0, i32 7
  %10062 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10061, i32 0, i32 0
  %10063 = load ptr, ptr %10062, align 8, !tbaa !19
  %10064 = load i32, ptr %38, align 4, !tbaa !9
  %10065 = zext i32 %10064 to i64
  %10066 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10063, i64 %10065
  %10067 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10066, i32 0, i32 1
  %10068 = load ptr, ptr %10067, align 8, !tbaa !20
  %10069 = icmp ne ptr %10068, null
  br i1 %10069, label %10070, label %10082

10070:                                            ; preds = %10059
  %10071 = load ptr, ptr @w2c_hermes_t5, align 8, !tbaa !5
  %10072 = load ptr, ptr %9, align 8, !tbaa !5
  %10073 = getelementptr inbounds %struct.w2c_hermes, ptr %10072, i32 0, i32 7
  %10074 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10073, i32 0, i32 0
  %10075 = load ptr, ptr %10074, align 8, !tbaa !19
  %10076 = load i32, ptr %38, align 4, !tbaa !9
  %10077 = zext i32 %10076 to i64
  %10078 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10075, i64 %10077
  %10079 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10078, i32 0, i32 0
  %10080 = load ptr, ptr %10079, align 8, !tbaa !22
  %10081 = call zeroext i1 @func_types_eq(ptr noundef %10071, ptr noundef %10080)
  br label %10082

10082:                                            ; preds = %10070, %10059, %10035
  %10083 = phi i1 [ false, %10059 ], [ false, %10035 ], [ %10081, %10070 ]
  %10084 = xor i1 %10083, true
  %10085 = xor i1 %10084, true
  %10086 = zext i1 %10085 to i32
  %10087 = sext i32 %10086 to i64
  %10088 = call i64 @llvm.expect.i64(i64 %10087, i64 1)
  %10089 = icmp ne i64 %10088, 0
  br i1 %10089, label %10092, label %10090

10090:                                            ; preds = %10082
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

10091:                                            ; No predecessors!
  br label %10092

10092:                                            ; preds = %10091, %10082
  %10093 = phi i1 [ true, %10082 ], [ false, %10091 ]
  %10094 = zext i1 %10093 to i32
  %10095 = load ptr, ptr %9, align 8, !tbaa !5
  %10096 = getelementptr inbounds %struct.w2c_hermes, ptr %10095, i32 0, i32 7
  %10097 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10096, i32 0, i32 0
  %10098 = load ptr, ptr %10097, align 8, !tbaa !19
  %10099 = load i32, ptr %38, align 4, !tbaa !9
  %10100 = zext i32 %10099 to i64
  %10101 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10098, i64 %10100
  %10102 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10101, i32 0, i32 1
  %10103 = load ptr, ptr %10102, align 8, !tbaa !20
  %10104 = load ptr, ptr %9, align 8, !tbaa !5
  %10105 = getelementptr inbounds %struct.w2c_hermes, ptr %10104, i32 0, i32 7
  %10106 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10105, i32 0, i32 0
  %10107 = load ptr, ptr %10106, align 8, !tbaa !19
  %10108 = load i32, ptr %38, align 4, !tbaa !9
  %10109 = zext i32 %10108 to i64
  %10110 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10107, i64 %10109
  %10111 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10110, i32 0, i32 2
  %10112 = load ptr, ptr %10111, align 8, !tbaa !23
  %10113 = load i32, ptr %36, align 4, !tbaa !9
  %10114 = load i32, ptr %37, align 4, !tbaa !9
  %10115 = call i32 %10103(ptr noundef %10112, i32 noundef %10113, i32 noundef %10114)
  store i32 %10115, ptr %36, align 4, !tbaa !9
  %10116 = load i32, ptr %36, align 4, !tbaa !9
  %10117 = icmp ne i32 %10116, 0
  %10118 = xor i1 %10117, true
  %10119 = zext i1 %10118 to i32
  store i32 %10119, ptr %36, align 4, !tbaa !9
  %10120 = load i32, ptr %36, align 4, !tbaa !9
  %10121 = icmp ne i32 %10120, 0
  br i1 %10121, label %10122, label %10123

10122:                                            ; preds = %10092
  br label %10608

10123:                                            ; preds = %10092
  %10124 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10124, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %10125 = load i32, ptr %37, align 4, !tbaa !9
  %10126 = load i32, ptr %36, align 4, !tbaa !9
  %10127 = add i32 %10126, %10125
  store i32 %10127, ptr %36, align 4, !tbaa !9
  %10128 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10128, ptr %37, align 4, !tbaa !9
  %10129 = load ptr, ptr %9, align 8, !tbaa !5
  %10130 = load i32, ptr %36, align 4, !tbaa !9
  %10131 = load i32, ptr %37, align 4, !tbaa !9
  %10132 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddFunction0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %10129, i32 noundef %10130, i32 noundef %10131)
  store i32 %10132, ptr %36, align 4, !tbaa !9
  %10133 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10133, ptr %21, align 4, !tbaa !9
  %10134 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %10134, ptr %36, align 4, !tbaa !9
  %10135 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10135, ptr %37, align 4, !tbaa !9
  %10136 = load i32, ptr %36, align 4, !tbaa !9
  %10137 = load i32, ptr %37, align 4, !tbaa !9
  %10138 = icmp eq i32 %10136, %10137
  %10139 = zext i1 %10138 to i32
  store i32 %10139, ptr %36, align 4, !tbaa !9
  %10140 = load i32, ptr %36, align 4, !tbaa !9
  %10141 = icmp ne i32 %10140, 0
  br i1 %10141, label %10142, label %10151

10142:                                            ; preds = %10123
  %10143 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10143, ptr %36, align 4, !tbaa !9
  %10144 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10144, ptr %37, align 4, !tbaa !9
  %10145 = load ptr, ptr %9, align 8, !tbaa !5
  %10146 = getelementptr inbounds %struct.w2c_hermes, ptr %10145, i32 0, i32 6
  %10147 = load i32, ptr %36, align 4, !tbaa !9
  %10148 = zext i32 %10147 to i64
  %10149 = add i64 %10148, 2716
  %10150 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10146, i64 noundef %10149, i32 noundef %10150)
  br label %10151

10151:                                            ; preds = %10142, %10123
  %10152 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10152, ptr %36, align 4, !tbaa !9
  %10153 = load ptr, ptr %9, align 8, !tbaa !5
  %10154 = getelementptr inbounds %struct.w2c_hermes, ptr %10153, i32 0, i32 6
  %10155 = load i32, ptr %36, align 4, !tbaa !9
  %10156 = zext i32 %10155 to i64
  %10157 = add i64 %10156, 504
  %10158 = call i32 @i32_load(ptr noundef %10154, i64 noundef %10157)
  store i32 %10158, ptr %36, align 4, !tbaa !9
  %10159 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10159, ptr %14, align 4, !tbaa !9
  %10160 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10160, ptr %36, align 4, !tbaa !9
  %10161 = load ptr, ptr %9, align 8, !tbaa !5
  %10162 = getelementptr inbounds %struct.w2c_hermes, ptr %10161, i32 0, i32 6
  %10163 = load i32, ptr %36, align 4, !tbaa !9
  %10164 = zext i32 %10163 to i64
  %10165 = add i64 %10164, 516
  %10166 = call i32 @i32_load(ptr noundef %10162, i64 noundef %10165)
  store i32 %10166, ptr %36, align 4, !tbaa !9
  %10167 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10167, ptr %19, align 4, !tbaa !9
  %10168 = load i32, ptr %36, align 4, !tbaa !9
  %10169 = icmp ne i32 %10168, 0
  %10170 = xor i1 %10169, true
  %10171 = zext i1 %10170 to i32
  store i32 %10171, ptr %36, align 4, !tbaa !9
  %10172 = load i32, ptr %36, align 4, !tbaa !9
  %10173 = icmp ne i32 %10172, 0
  br i1 %10173, label %10174, label %10175

10174:                                            ; preds = %10151
  br label %10304

10175:                                            ; preds = %10151
  %10176 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10176, ptr %36, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %10177 = load i32, ptr %37, align 4, !tbaa !9
  %10178 = load i32, ptr %36, align 4, !tbaa !9
  %10179 = add i32 %10178, %10177
  store i32 %10179, ptr %36, align 4, !tbaa !9
  %10180 = load i32, ptr %36, align 4, !tbaa !9
  switch i32 %10180, label %10186 [
    i32 0, label %10181
    i32 1, label %10182
    i32 2, label %10183
    i32 3, label %10184
    i32 4, label %10185
  ]

10181:                                            ; preds = %10175
  br label %10187

10182:                                            ; preds = %10175
  br label %10205

10183:                                            ; preds = %10175
  br label %10205

10184:                                            ; preds = %10175
  br label %10205

10185:                                            ; preds = %10175
  br label %10187

10186:                                            ; preds = %10175
  br label %10205

10187:                                            ; preds = %10185, %10181
  store i32 0, ptr %36, align 4, !tbaa !9
  %10188 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10188, ptr %17, align 4, !tbaa !9
  store i32 204136, ptr %37, align 4, !tbaa !9
  %10189 = load i32, ptr %37, align 4, !tbaa !9
  %10190 = load i32, ptr %36, align 4, !tbaa !9
  %10191 = add i32 %10190, %10189
  store i32 %10191, ptr %36, align 4, !tbaa !9
  %10192 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10192, ptr %37, align 4, !tbaa !9
  store i32 81389, ptr %38, align 4, !tbaa !9
  %10193 = load i32, ptr %38, align 4, !tbaa !9
  %10194 = load i32, ptr %37, align 4, !tbaa !9
  %10195 = add i32 %10194, %10193
  store i32 %10195, ptr %37, align 4, !tbaa !9
  store i32 597, ptr %38, align 4, !tbaa !9
  %10196 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10196, ptr %39, align 4, !tbaa !9
  store i32 48929, ptr %40, align 4, !tbaa !9
  %10197 = load i32, ptr %40, align 4, !tbaa !9
  %10198 = load i32, ptr %39, align 4, !tbaa !9
  %10199 = add i32 %10198, %10197
  store i32 %10199, ptr %39, align 4, !tbaa !9
  %10200 = load ptr, ptr %9, align 8, !tbaa !5
  %10201 = load i32, ptr %36, align 4, !tbaa !9
  %10202 = load i32, ptr %37, align 4, !tbaa !9
  %10203 = load i32, ptr %38, align 4, !tbaa !9
  %10204 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %10200, i32 noundef %10201, i32 noundef %10202, i32 noundef %10203, i32 noundef %10204)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

10205:                                            ; preds = %10186, %10184, %10183, %10182
  %10206 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10206, ptr %36, align 4, !tbaa !9
  %10207 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10207, ptr %37, align 4, !tbaa !9
  store i32 1, ptr %38, align 4, !tbaa !9
  %10208 = load i32, ptr %38, align 4, !tbaa !9
  %10209 = load i32, ptr %37, align 4, !tbaa !9
  %10210 = sub i32 %10209, %10208
  store i32 %10210, ptr %37, align 4, !tbaa !9
  %10211 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10211, ptr %25, align 4, !tbaa !9
  %10212 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10212, ptr %38, align 4, !tbaa !9
  store i32 4, ptr %39, align 4, !tbaa !9
  %10213 = load i32, ptr %39, align 4, !tbaa !9
  %10214 = and i32 %10213, 31
  %10215 = load i32, ptr %38, align 4, !tbaa !9
  %10216 = lshr i32 %10215, %10214
  store i32 %10216, ptr %38, align 4, !tbaa !9
  %10217 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10217, ptr %39, align 4, !tbaa !9
  store i32 9, ptr %40, align 4, !tbaa !9
  %10218 = load i32, ptr %40, align 4, !tbaa !9
  %10219 = and i32 %10218, 31
  %10220 = load i32, ptr %39, align 4, !tbaa !9
  %10221 = lshr i32 %10220, %10219
  store i32 %10221, ptr %39, align 4, !tbaa !9
  %10222 = load i32, ptr %39, align 4, !tbaa !9
  %10223 = load i32, ptr %38, align 4, !tbaa !9
  %10224 = xor i32 %10223, %10222
  store i32 %10224, ptr %38, align 4, !tbaa !9
  %10225 = load i32, ptr %38, align 4, !tbaa !9
  %10226 = load i32, ptr %37, align 4, !tbaa !9
  %10227 = and i32 %10226, %10225
  store i32 %10227, ptr %37, align 4, !tbaa !9
  %10228 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10228, ptr %23, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %10229 = load i32, ptr %38, align 4, !tbaa !9
  %10230 = and i32 %10229, 31
  %10231 = load i32, ptr %37, align 4, !tbaa !9
  %10232 = shl i32 %10231, %10230
  store i32 %10232, ptr %37, align 4, !tbaa !9
  %10233 = load i32, ptr %37, align 4, !tbaa !9
  %10234 = load i32, ptr %36, align 4, !tbaa !9
  %10235 = add i32 %10234, %10233
  store i32 %10235, ptr %36, align 4, !tbaa !9
  %10236 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10236, ptr %20, align 4, !tbaa !9
  %10237 = load ptr, ptr %9, align 8, !tbaa !5
  %10238 = getelementptr inbounds %struct.w2c_hermes, ptr %10237, i32 0, i32 6
  %10239 = load i32, ptr %36, align 4, !tbaa !9
  %10240 = zext i32 %10239 to i64
  %10241 = call i32 @i32_load(ptr noundef %10238, i64 noundef %10240)
  store i32 %10241, ptr %36, align 4, !tbaa !9
  %10242 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10242, ptr %22, align 4, !tbaa !9
  %10243 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10243, ptr %37, align 4, !tbaa !9
  %10244 = load i32, ptr %36, align 4, !tbaa !9
  %10245 = load i32, ptr %37, align 4, !tbaa !9
  %10246 = icmp eq i32 %10244, %10245
  %10247 = zext i1 %10246 to i32
  store i32 %10247, ptr %36, align 4, !tbaa !9
  %10248 = load i32, ptr %36, align 4, !tbaa !9
  %10249 = icmp ne i32 %10248, 0
  br i1 %10249, label %10250, label %10251

10250:                                            ; preds = %10205
  br label %10315

10251:                                            ; preds = %10205
  store i32 1, ptr %36, align 4, !tbaa !9
  %10252 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10252, ptr %27, align 4, !tbaa !9
  br label %10253

10253:                                            ; preds = %10302, %10251
  %10254 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %10254, ptr %36, align 4, !tbaa !9
  store i32 -4, ptr %37, align 4, !tbaa !9
  %10255 = load i32, ptr %36, align 4, !tbaa !9
  %10256 = load i32, ptr %37, align 4, !tbaa !9
  %10257 = icmp eq i32 %10255, %10256
  %10258 = zext i1 %10257 to i32
  store i32 %10258, ptr %36, align 4, !tbaa !9
  %10259 = load i32, ptr %36, align 4, !tbaa !9
  %10260 = icmp ne i32 %10259, 0
  br i1 %10260, label %10261, label %10262

10261:                                            ; preds = %10253
  br label %10304

10262:                                            ; preds = %10253
  %10263 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %10263, ptr %36, align 4, !tbaa !9
  %10264 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %10264, ptr %37, align 4, !tbaa !9
  %10265 = load i32, ptr %37, align 4, !tbaa !9
  %10266 = load i32, ptr %36, align 4, !tbaa !9
  %10267 = add i32 %10266, %10265
  store i32 %10267, ptr %36, align 4, !tbaa !9
  %10268 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10268, ptr %20, align 4, !tbaa !9
  %10269 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %10269, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %10270 = load i32, ptr %37, align 4, !tbaa !9
  %10271 = load i32, ptr %36, align 4, !tbaa !9
  %10272 = add i32 %10271, %10270
  store i32 %10272, ptr %36, align 4, !tbaa !9
  %10273 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10273, ptr %27, align 4, !tbaa !9
  %10274 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10274, ptr %36, align 4, !tbaa !9
  %10275 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %10275, ptr %37, align 4, !tbaa !9
  %10276 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %10276, ptr %38, align 4, !tbaa !9
  %10277 = load i32, ptr %38, align 4, !tbaa !9
  %10278 = load i32, ptr %37, align 4, !tbaa !9
  %10279 = and i32 %10278, %10277
  store i32 %10279, ptr %37, align 4, !tbaa !9
  %10280 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10280, ptr %23, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %10281 = load i32, ptr %38, align 4, !tbaa !9
  %10282 = and i32 %10281, 31
  %10283 = load i32, ptr %37, align 4, !tbaa !9
  %10284 = shl i32 %10283, %10282
  store i32 %10284, ptr %37, align 4, !tbaa !9
  %10285 = load i32, ptr %37, align 4, !tbaa !9
  %10286 = load i32, ptr %36, align 4, !tbaa !9
  %10287 = add i32 %10286, %10285
  store i32 %10287, ptr %36, align 4, !tbaa !9
  %10288 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10288, ptr %20, align 4, !tbaa !9
  %10289 = load ptr, ptr %9, align 8, !tbaa !5
  %10290 = getelementptr inbounds %struct.w2c_hermes, ptr %10289, i32 0, i32 6
  %10291 = load i32, ptr %36, align 4, !tbaa !9
  %10292 = zext i32 %10291 to i64
  %10293 = call i32 @i32_load(ptr noundef %10290, i64 noundef %10292)
  store i32 %10293, ptr %36, align 4, !tbaa !9
  %10294 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10294, ptr %22, align 4, !tbaa !9
  %10295 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10295, ptr %37, align 4, !tbaa !9
  %10296 = load i32, ptr %36, align 4, !tbaa !9
  %10297 = load i32, ptr %37, align 4, !tbaa !9
  %10298 = icmp ne i32 %10296, %10297
  %10299 = zext i1 %10298 to i32
  store i32 %10299, ptr %36, align 4, !tbaa !9
  %10300 = load i32, ptr %36, align 4, !tbaa !9
  %10301 = icmp ne i32 %10300, 0
  br i1 %10301, label %10302, label %10303

10302:                                            ; preds = %10262
  br label %10253

10303:                                            ; preds = %10262
  br label %10315

10304:                                            ; preds = %10261, %10174
  %10305 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10305, ptr %36, align 4, !tbaa !9
  %10306 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10306, ptr %37, align 4, !tbaa !9
  store i32 3, ptr %38, align 4, !tbaa !9
  %10307 = load i32, ptr %38, align 4, !tbaa !9
  %10308 = and i32 %10307, 31
  %10309 = load i32, ptr %37, align 4, !tbaa !9
  %10310 = shl i32 %10309, %10308
  store i32 %10310, ptr %37, align 4, !tbaa !9
  %10311 = load i32, ptr %37, align 4, !tbaa !9
  %10312 = load i32, ptr %36, align 4, !tbaa !9
  %10313 = add i32 %10312, %10311
  store i32 %10313, ptr %36, align 4, !tbaa !9
  %10314 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10314, ptr %20, align 4, !tbaa !9
  br label %10315

10315:                                            ; preds = %10304, %10303, %10250
  %10316 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %10316, ptr %36, align 4, !tbaa !9
  %10317 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10317, ptr %37, align 4, !tbaa !9
  %10318 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10318, ptr %38, align 4, !tbaa !9
  store i32 3, ptr %39, align 4, !tbaa !9
  %10319 = load i32, ptr %39, align 4, !tbaa !9
  %10320 = and i32 %10319, 31
  %10321 = load i32, ptr %38, align 4, !tbaa !9
  %10322 = shl i32 %10321, %10320
  store i32 %10322, ptr %38, align 4, !tbaa !9
  %10323 = load i32, ptr %38, align 4, !tbaa !9
  %10324 = load i32, ptr %37, align 4, !tbaa !9
  %10325 = add i32 %10324, %10323
  store i32 %10325, ptr %37, align 4, !tbaa !9
  %10326 = load i32, ptr %36, align 4, !tbaa !9
  %10327 = load i32, ptr %37, align 4, !tbaa !9
  %10328 = icmp eq i32 %10326, %10327
  %10329 = zext i1 %10328 to i32
  store i32 %10329, ptr %36, align 4, !tbaa !9
  %10330 = load i32, ptr %36, align 4, !tbaa !9
  %10331 = icmp ne i32 %10330, 0
  br i1 %10331, label %10332, label %10333

10332:                                            ; preds = %10315
  br label %10425

10333:                                            ; preds = %10315
  %10334 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %10334, ptr %36, align 4, !tbaa !9
  %10335 = load ptr, ptr %9, align 8, !tbaa !5
  %10336 = getelementptr inbounds %struct.w2c_hermes, ptr %10335, i32 0, i32 6
  %10337 = load i32, ptr %36, align 4, !tbaa !9
  %10338 = zext i32 %10337 to i64
  %10339 = add i64 %10338, 4
  %10340 = call i32 @i32_load(ptr noundef %10336, i64 noundef %10339)
  store i32 %10340, ptr %36, align 4, !tbaa !9
  %10341 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10341, ptr %19, align 4, !tbaa !9
  %10342 = load i32, ptr %36, align 4, !tbaa !9
  %10343 = icmp ne i32 %10342, 0
  %10344 = xor i1 %10343, true
  %10345 = zext i1 %10344 to i32
  store i32 %10345, ptr %36, align 4, !tbaa !9
  %10346 = load i32, ptr %36, align 4, !tbaa !9
  %10347 = icmp ne i32 %10346, 0
  br i1 %10347, label %10348, label %10349

10348:                                            ; preds = %10333
  br label %10425

10349:                                            ; preds = %10333
  %10350 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10350, ptr %36, align 4, !tbaa !9
  %10351 = load ptr, ptr %9, align 8, !tbaa !5
  %10352 = getelementptr inbounds %struct.w2c_hermes, ptr %10351, i32 0, i32 6
  %10353 = load i32, ptr %36, align 4, !tbaa !9
  %10354 = zext i32 %10353 to i64
  %10355 = add i64 %10354, 552
  %10356 = call i32 @i32_load8_u(ptr noundef %10352, i64 noundef %10355)
  store i32 %10356, ptr %36, align 4, !tbaa !9
  %10357 = load i32, ptr %36, align 4, !tbaa !9
  %10358 = icmp ne i32 %10357, 0
  br i1 %10358, label %10359, label %10375

10359:                                            ; preds = %10349
  %10360 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10360, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %10361 = load i32, ptr %37, align 4, !tbaa !9
  %10362 = load i32, ptr %36, align 4, !tbaa !9
  %10363 = add i32 %10362, %10361
  store i32 %10363, ptr %36, align 4, !tbaa !9
  %10364 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10364, ptr %37, align 4, !tbaa !9
  %10365 = load ptr, ptr %9, align 8, !tbaa !5
  %10366 = getelementptr inbounds %struct.w2c_hermes, ptr %10365, i32 0, i32 6
  %10367 = load i32, ptr %37, align 4, !tbaa !9
  %10368 = zext i32 %10367 to i64
  %10369 = call i32 @i32_load(ptr noundef %10366, i64 noundef %10368)
  store i32 %10369, ptr %37, align 4, !tbaa !9
  %10370 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10370, ptr %38, align 4, !tbaa !9
  %10371 = load ptr, ptr %9, align 8, !tbaa !5
  %10372 = load i32, ptr %36, align 4, !tbaa !9
  %10373 = load i32, ptr %37, align 4, !tbaa !9
  %10374 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddCJSModuleStatic0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %10371, i32 noundef %10372, i32 noundef %10373, i32 noundef %10374)
  br label %10425

10375:                                            ; preds = %10349
  %10376 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10376, ptr %36, align 4, !tbaa !9
  %10377 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10377, ptr %37, align 4, !tbaa !9
  %10378 = load ptr, ptr %9, align 8, !tbaa !5
  %10379 = getelementptr inbounds %struct.w2c_hermes, ptr %10378, i32 0, i32 6
  %10380 = load i32, ptr %37, align 4, !tbaa !9
  %10381 = zext i32 %10380 to i64
  %10382 = add i64 %10381, 4
  %10383 = call i32 @i32_load(ptr noundef %10379, i64 noundef %10382)
  store i32 %10383, ptr %37, align 4, !tbaa !9
  %10384 = load ptr, ptr %9, align 8, !tbaa !5
  %10385 = getelementptr inbounds %struct.w2c_hermes, ptr %10384, i32 0, i32 6
  %10386 = load i32, ptr %37, align 4, !tbaa !9
  %10387 = zext i32 %10386 to i64
  %10388 = call i64 @i64_load(ptr noundef %10385, i64 noundef %10387)
  store i64 %10388, ptr %43, align 8, !tbaa !11
  %10389 = load i64, ptr %43, align 8, !tbaa !11
  store i64 %10389, ptr %35, align 8, !tbaa !11
  %10390 = load ptr, ptr %9, align 8, !tbaa !5
  %10391 = getelementptr inbounds %struct.w2c_hermes, ptr %10390, i32 0, i32 6
  %10392 = load i32, ptr %36, align 4, !tbaa !9
  %10393 = zext i32 %10392 to i64
  %10394 = add i64 %10393, 32
  %10395 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10391, i64 noundef %10394, i64 noundef %10395)
  %10396 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10396, ptr %36, align 4, !tbaa !9
  %10397 = load i64, ptr %35, align 8, !tbaa !11
  store i64 %10397, ptr %43, align 8, !tbaa !11
  %10398 = load ptr, ptr %9, align 8, !tbaa !5
  %10399 = getelementptr inbounds %struct.w2c_hermes, ptr %10398, i32 0, i32 6
  %10400 = load i32, ptr %36, align 4, !tbaa !9
  %10401 = zext i32 %10400 to i64
  %10402 = add i64 %10401, 1752
  %10403 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10399, i64 noundef %10402, i64 noundef %10403)
  %10404 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10404, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %10405 = load i32, ptr %37, align 4, !tbaa !9
  %10406 = load i32, ptr %36, align 4, !tbaa !9
  %10407 = add i32 %10406, %10405
  store i32 %10407, ptr %36, align 4, !tbaa !9
  %10408 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10408, ptr %37, align 4, !tbaa !9
  %10409 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10409, ptr %38, align 4, !tbaa !9
  store i32 2232, ptr %39, align 4, !tbaa !9
  %10410 = load i32, ptr %39, align 4, !tbaa !9
  %10411 = load i32, ptr %38, align 4, !tbaa !9
  %10412 = add i32 %10411, %10410
  store i32 %10412, ptr %38, align 4, !tbaa !9
  %10413 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10413, ptr %39, align 4, !tbaa !9
  store i32 32, ptr %40, align 4, !tbaa !9
  %10414 = load i32, ptr %40, align 4, !tbaa !9
  %10415 = load i32, ptr %39, align 4, !tbaa !9
  %10416 = add i32 %10415, %10414
  store i32 %10416, ptr %39, align 4, !tbaa !9
  %10417 = load ptr, ptr %9, align 8, !tbaa !5
  %10418 = load i32, ptr %38, align 4, !tbaa !9
  %10419 = load i32, ptr %39, align 4, !tbaa !9
  %10420 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AgetStringID0x28llvh0x3A0x3AStringRef0x290x20const(ptr noundef %10417, i32 noundef %10418, i32 noundef %10419)
  store i32 %10420, ptr %38, align 4, !tbaa !9
  %10421 = load ptr, ptr %9, align 8, !tbaa !5
  %10422 = load i32, ptr %36, align 4, !tbaa !9
  %10423 = load i32, ptr %37, align 4, !tbaa !9
  %10424 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddCJSModule0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %10421, i32 noundef %10422, i32 noundef %10423, i32 noundef %10424)
  br label %10425

10425:                                            ; preds = %10375, %10359, %10348, %10332
  %10426 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10426, ptr %36, align 4, !tbaa !9
  %10427 = load ptr, ptr %9, align 8, !tbaa !5
  %10428 = getelementptr inbounds %struct.w2c_hermes, ptr %10427, i32 0, i32 6
  %10429 = load i32, ptr %36, align 4, !tbaa !9
  %10430 = zext i32 %10429 to i64
  %10431 = add i64 %10430, 40
  %10432 = call i32 @i32_load8_u(ptr noundef %10428, i64 noundef %10431)
  store i32 %10432, ptr %36, align 4, !tbaa !9
  %10433 = load i32, ptr %36, align 4, !tbaa !9
  %10434 = icmp ne i32 %10433, 0
  br i1 %10434, label %10435, label %10436

10435:                                            ; preds = %10425
  br label %10608

10436:                                            ; preds = %10425
  %10437 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10437, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %10438 = load i32, ptr %37, align 4, !tbaa !9
  %10439 = load i32, ptr %36, align 4, !tbaa !9
  %10440 = add i32 %10439, %10438
  store i32 %10440, ptr %36, align 4, !tbaa !9
  %10441 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10441, ptr %37, align 4, !tbaa !9
  %10442 = load ptr, ptr %9, align 8, !tbaa !5
  %10443 = load i32, ptr %36, align 4, !tbaa !9
  %10444 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetSourceRepresentationStr0x280x290x20const(ptr noundef %10442, i32 noundef %10443, i32 noundef %10444)
  %10445 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10445, ptr %36, align 4, !tbaa !9
  %10446 = load ptr, ptr %9, align 8, !tbaa !5
  %10447 = getelementptr inbounds %struct.w2c_hermes, ptr %10446, i32 0, i32 6
  %10448 = load i32, ptr %36, align 4, !tbaa !9
  %10449 = zext i32 %10448 to i64
  %10450 = add i64 %10449, 528
  %10451 = call i32 @i32_load8_u(ptr noundef %10447, i64 noundef %10450)
  store i32 %10451, ptr %36, align 4, !tbaa !9
  %10452 = load i32, ptr %36, align 4, !tbaa !9
  %10453 = icmp ne i32 %10452, 0
  %10454 = xor i1 %10453, true
  %10455 = zext i1 %10454 to i32
  store i32 %10455, ptr %36, align 4, !tbaa !9
  %10456 = load i32, ptr %36, align 4, !tbaa !9
  %10457 = icmp ne i32 %10456, 0
  br i1 %10457, label %10458, label %10459

10458:                                            ; preds = %10436
  br label %10608

10459:                                            ; preds = %10436
  %10460 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10460, ptr %36, align 4, !tbaa !9
  %10461 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10461, ptr %37, align 4, !tbaa !9
  store i32 2176, ptr %38, align 4, !tbaa !9
  %10462 = load i32, ptr %38, align 4, !tbaa !9
  %10463 = load i32, ptr %37, align 4, !tbaa !9
  %10464 = add i32 %10463, %10462
  store i32 %10464, ptr %37, align 4, !tbaa !9
  %10465 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10465, ptr %38, align 4, !tbaa !9
  store i32 520, ptr %39, align 4, !tbaa !9
  %10466 = load i32, ptr %39, align 4, !tbaa !9
  %10467 = load i32, ptr %38, align 4, !tbaa !9
  %10468 = add i32 %10467, %10466
  store i32 %10468, ptr %38, align 4, !tbaa !9
  %10469 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10469, ptr %39, align 4, !tbaa !9
  store i32 120, ptr %40, align 4, !tbaa !9
  %10470 = load i32, ptr %40, align 4, !tbaa !9
  %10471 = load i32, ptr %39, align 4, !tbaa !9
  %10472 = add i32 %10471, %10470
  store i32 %10472, ptr %39, align 4, !tbaa !9
  %10473 = load ptr, ptr %9, align 8, !tbaa !5
  %10474 = load i32, ptr %37, align 4, !tbaa !9
  %10475 = load i32, ptr %38, align 4, !tbaa !9
  %10476 = load i32, ptr %39, align 4, !tbaa !9
  %10477 = call i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AStringRef0x3E0x28llvh0x3A0x3AStringRef0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x20const0x2A0x260x290x20const(ptr noundef %10473, i32 noundef %10474, i32 noundef %10475, i32 noundef %10476)
  store i32 %10477, ptr %37, align 4, !tbaa !9
  %10478 = load i32, ptr %37, align 4, !tbaa !9
  %10479 = icmp ne i32 %10478, 0
  %10480 = xor i1 %10479, true
  %10481 = zext i1 %10480 to i32
  store i32 %10481, ptr %37, align 4, !tbaa !9
  %10482 = load i32, ptr %37, align 4, !tbaa !9
  %10483 = icmp ne i32 %10482, 0
  br i1 %10483, label %10484, label %10485

10484:                                            ; preds = %10459
  br label %10540

10485:                                            ; preds = %10459
  %10486 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10486, ptr %37, align 4, !tbaa !9
  %10487 = load ptr, ptr %9, align 8, !tbaa !5
  %10488 = getelementptr inbounds %struct.w2c_hermes, ptr %10487, i32 0, i32 6
  %10489 = load i32, ptr %37, align 4, !tbaa !9
  %10490 = zext i32 %10489 to i64
  %10491 = add i64 %10490, 120
  %10492 = call i32 @i32_load(ptr noundef %10488, i64 noundef %10491)
  store i32 %10492, ptr %37, align 4, !tbaa !9
  %10493 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10493, ptr %19, align 4, !tbaa !9
  %10494 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10494, ptr %38, align 4, !tbaa !9
  %10495 = load ptr, ptr %9, align 8, !tbaa !5
  %10496 = getelementptr inbounds %struct.w2c_hermes, ptr %10495, i32 0, i32 6
  %10497 = load i32, ptr %38, align 4, !tbaa !9
  %10498 = zext i32 %10497 to i64
  %10499 = add i64 %10498, 2176
  %10500 = call i32 @i32_load(ptr noundef %10496, i64 noundef %10499)
  store i32 %10500, ptr %38, align 4, !tbaa !9
  %10501 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10501, ptr %39, align 4, !tbaa !9
  %10502 = load ptr, ptr %9, align 8, !tbaa !5
  %10503 = getelementptr inbounds %struct.w2c_hermes, ptr %10502, i32 0, i32 6
  %10504 = load i32, ptr %39, align 4, !tbaa !9
  %10505 = zext i32 %10504 to i64
  %10506 = add i64 %10505, 2188
  %10507 = call i32 @i32_load(ptr noundef %10503, i64 noundef %10506)
  store i32 %10507, ptr %39, align 4, !tbaa !9
  store i32 52, ptr %40, align 4, !tbaa !9
  %10508 = load i32, ptr %40, align 4, !tbaa !9
  %10509 = load i32, ptr %39, align 4, !tbaa !9
  %10510 = mul i32 %10509, %10508
  store i32 %10510, ptr %39, align 4, !tbaa !9
  %10511 = load i32, ptr %39, align 4, !tbaa !9
  %10512 = load i32, ptr %38, align 4, !tbaa !9
  %10513 = add i32 %10512, %10511
  store i32 %10513, ptr %38, align 4, !tbaa !9
  %10514 = load i32, ptr %37, align 4, !tbaa !9
  %10515 = load i32, ptr %38, align 4, !tbaa !9
  %10516 = icmp eq i32 %10514, %10515
  %10517 = zext i1 %10516 to i32
  store i32 %10517, ptr %37, align 4, !tbaa !9
  %10518 = load i32, ptr %37, align 4, !tbaa !9
  %10519 = icmp ne i32 %10518, 0
  br i1 %10519, label %10520, label %10521

10520:                                            ; preds = %10485
  br label %10540

10521:                                            ; preds = %10485
  %10522 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10522, ptr %37, align 4, !tbaa !9
  %10523 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %10523, ptr %38, align 4, !tbaa !9
  %10524 = load ptr, ptr %9, align 8, !tbaa !5
  %10525 = getelementptr inbounds %struct.w2c_hermes, ptr %10524, i32 0, i32 6
  %10526 = load i32, ptr %38, align 4, !tbaa !9
  %10527 = zext i32 %10526 to i64
  %10528 = add i64 %10527, 8
  %10529 = call i64 @i64_load(ptr noundef %10525, i64 noundef %10528)
  store i64 %10529, ptr %44, align 8, !tbaa !11
  %10530 = load ptr, ptr %9, align 8, !tbaa !5
  %10531 = getelementptr inbounds %struct.w2c_hermes, ptr %10530, i32 0, i32 6
  %10532 = load i32, ptr %37, align 4, !tbaa !9
  %10533 = zext i32 %10532 to i64
  %10534 = add i64 %10533, 1744
  %10535 = load i64, ptr %44, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10531, i64 noundef %10534, i64 noundef %10535)
  %10536 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10536, ptr %37, align 4, !tbaa !9
  store i32 1744, ptr %38, align 4, !tbaa !9
  %10537 = load i32, ptr %38, align 4, !tbaa !9
  %10538 = load i32, ptr %37, align 4, !tbaa !9
  %10539 = add i32 %10538, %10537
  store i32 %10539, ptr %37, align 4, !tbaa !9
  br label %10574

10540:                                            ; preds = %10520, %10484
  %10541 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10541, ptr %37, align 4, !tbaa !9
  %10542 = load ptr, ptr %9, align 8, !tbaa !5
  %10543 = getelementptr inbounds %struct.w2c_hermes, ptr %10542, i32 0, i32 6
  %10544 = load i32, ptr %37, align 4, !tbaa !9
  %10545 = zext i32 %10544 to i64
  %10546 = add i64 %10545, 528
  %10547 = call i32 @i32_load8_u(ptr noundef %10543, i64 noundef %10546)
  store i32 %10547, ptr %37, align 4, !tbaa !9
  %10548 = load i32, ptr %37, align 4, !tbaa !9
  %10549 = icmp ne i32 %10548, 0
  %10550 = xor i1 %10549, true
  %10551 = zext i1 %10550 to i32
  store i32 %10551, ptr %37, align 4, !tbaa !9
  %10552 = load i32, ptr %37, align 4, !tbaa !9
  %10553 = icmp ne i32 %10552, 0
  br i1 %10553, label %10554, label %10555

10554:                                            ; preds = %10540
  br label %13076

10555:                                            ; preds = %10540
  %10556 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10556, ptr %37, align 4, !tbaa !9
  %10557 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10557, ptr %38, align 4, !tbaa !9
  %10558 = load ptr, ptr %9, align 8, !tbaa !5
  %10559 = getelementptr inbounds %struct.w2c_hermes, ptr %10558, i32 0, i32 6
  %10560 = load i32, ptr %38, align 4, !tbaa !9
  %10561 = zext i32 %10560 to i64
  %10562 = add i64 %10561, 520
  %10563 = call i64 @i64_load(ptr noundef %10559, i64 noundef %10562)
  store i64 %10563, ptr %44, align 8, !tbaa !11
  %10564 = load ptr, ptr %9, align 8, !tbaa !5
  %10565 = getelementptr inbounds %struct.w2c_hermes, ptr %10564, i32 0, i32 6
  %10566 = load i32, ptr %37, align 4, !tbaa !9
  %10567 = zext i32 %10566 to i64
  %10568 = add i64 %10567, 1736
  %10569 = load i64, ptr %44, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10565, i64 noundef %10568, i64 noundef %10569)
  %10570 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10570, ptr %37, align 4, !tbaa !9
  store i32 1736, ptr %38, align 4, !tbaa !9
  %10571 = load i32, ptr %38, align 4, !tbaa !9
  %10572 = load i32, ptr %37, align 4, !tbaa !9
  %10573 = add i32 %10572, %10571
  store i32 %10573, ptr %37, align 4, !tbaa !9
  br label %10574

10574:                                            ; preds = %10555, %10521
  %10575 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10575, ptr %19, align 4, !tbaa !9
  %10576 = load ptr, ptr %9, align 8, !tbaa !5
  %10577 = getelementptr inbounds %struct.w2c_hermes, ptr %10576, i32 0, i32 6
  %10578 = load i32, ptr %37, align 4, !tbaa !9
  %10579 = zext i32 %10578 to i64
  %10580 = call i64 @i64_load(ptr noundef %10577, i64 noundef %10579)
  store i64 %10580, ptr %43, align 8, !tbaa !11
  %10581 = load ptr, ptr %9, align 8, !tbaa !5
  %10582 = getelementptr inbounds %struct.w2c_hermes, ptr %10581, i32 0, i32 6
  %10583 = load i32, ptr %36, align 4, !tbaa !9
  %10584 = zext i32 %10583 to i64
  %10585 = add i64 %10584, 24
  %10586 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10582, i64 noundef %10585, i64 noundef %10586)
  %10587 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10587, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %10588 = load i32, ptr %37, align 4, !tbaa !9
  %10589 = load i32, ptr %36, align 4, !tbaa !9
  %10590 = add i32 %10589, %10588
  store i32 %10590, ptr %36, align 4, !tbaa !9
  %10591 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %10591, ptr %37, align 4, !tbaa !9
  %10592 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10592, ptr %38, align 4, !tbaa !9
  store i32 2232, ptr %39, align 4, !tbaa !9
  %10593 = load i32, ptr %39, align 4, !tbaa !9
  %10594 = load i32, ptr %38, align 4, !tbaa !9
  %10595 = add i32 %10594, %10593
  store i32 %10595, ptr %38, align 4, !tbaa !9
  %10596 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10596, ptr %39, align 4, !tbaa !9
  store i32 24, ptr %40, align 4, !tbaa !9
  %10597 = load i32, ptr %40, align 4, !tbaa !9
  %10598 = load i32, ptr %39, align 4, !tbaa !9
  %10599 = add i32 %10598, %10597
  store i32 %10599, ptr %39, align 4, !tbaa !9
  %10600 = load ptr, ptr %9, align 8, !tbaa !5
  %10601 = load i32, ptr %38, align 4, !tbaa !9
  %10602 = load i32, ptr %39, align 4, !tbaa !9
  %10603 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AgetStringID0x28llvh0x3A0x3AStringRef0x290x20const(ptr noundef %10600, i32 noundef %10601, i32 noundef %10602)
  store i32 %10603, ptr %38, align 4, !tbaa !9
  %10604 = load ptr, ptr %9, align 8, !tbaa !5
  %10605 = load i32, ptr %36, align 4, !tbaa !9
  %10606 = load i32, ptr %37, align 4, !tbaa !9
  %10607 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddFunctionSource0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %10604, i32 noundef %10605, i32 noundef %10606, i32 noundef %10607)
  br label %10608

10608:                                            ; preds = %10574, %10458, %10435, %10122
  %10609 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10609, ptr %36, align 4, !tbaa !9
  %10610 = load ptr, ptr %9, align 8, !tbaa !5
  %10611 = getelementptr inbounds %struct.w2c_hermes, ptr %10610, i32 0, i32 6
  %10612 = load i32, ptr %36, align 4, !tbaa !9
  %10613 = zext i32 %10612 to i64
  %10614 = add i64 %10613, 4
  %10615 = call i32 @i32_load(ptr noundef %10611, i64 noundef %10614)
  store i32 %10615, ptr %36, align 4, !tbaa !9
  %10616 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10616, ptr %18, align 4, !tbaa !9
  %10617 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %10617, ptr %37, align 4, !tbaa !9
  %10618 = load i32, ptr %36, align 4, !tbaa !9
  %10619 = load i32, ptr %37, align 4, !tbaa !9
  %10620 = icmp ne i32 %10618, %10619
  %10621 = zext i1 %10620 to i32
  store i32 %10621, ptr %36, align 4, !tbaa !9
  %10622 = load i32, ptr %36, align 4, !tbaa !9
  %10623 = icmp ne i32 %10622, 0
  br i1 %10623, label %10624, label %10625

10624:                                            ; preds = %10608
  br label %10011

10625:                                            ; preds = %10608
  br label %10626

10626:                                            ; preds = %10625, %9994
  %10627 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10627, ptr %36, align 4, !tbaa !9
  %10628 = load ptr, ptr %9, align 8, !tbaa !5
  %10629 = getelementptr inbounds %struct.w2c_hermes, ptr %10628, i32 0, i32 6
  %10630 = load i32, ptr %36, align 4, !tbaa !9
  %10631 = zext i32 %10630 to i64
  %10632 = add i64 %10631, 2716
  %10633 = call i32 @i32_load(ptr noundef %10629, i64 noundef %10632)
  store i32 %10633, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %10634 = load i32, ptr %36, align 4, !tbaa !9
  %10635 = load i32, ptr %37, align 4, !tbaa !9
  %10636 = icmp eq i32 %10634, %10635
  %10637 = zext i1 %10636 to i32
  store i32 %10637, ptr %36, align 4, !tbaa !9
  %10638 = load i32, ptr %36, align 4, !tbaa !9
  %10639 = icmp ne i32 %10638, 0
  br i1 %10639, label %10640, label %10641

10640:                                            ; preds = %10626
  br label %13094

10641:                                            ; preds = %10626
  %10642 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10642, ptr %36, align 4, !tbaa !9
  store i32 1728, ptr %37, align 4, !tbaa !9
  %10643 = load i32, ptr %37, align 4, !tbaa !9
  %10644 = load i32, ptr %36, align 4, !tbaa !9
  %10645 = add i32 %10644, %10643
  store i32 %10645, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %10646 = load ptr, ptr %9, align 8, !tbaa !5
  %10647 = getelementptr inbounds %struct.w2c_hermes, ptr %10646, i32 0, i32 6
  %10648 = load i32, ptr %36, align 4, !tbaa !9
  %10649 = zext i32 %10648 to i64
  %10650 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10647, i64 noundef %10649, i64 noundef %10650)
  %10651 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10651, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %10652 = load ptr, ptr %9, align 8, !tbaa !5
  %10653 = getelementptr inbounds %struct.w2c_hermes, ptr %10652, i32 0, i32 6
  %10654 = load i32, ptr %36, align 4, !tbaa !9
  %10655 = zext i32 %10654 to i64
  %10656 = add i64 %10655, 1720
  %10657 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10653, i64 noundef %10656, i64 noundef %10657)
  %10658 = load i32, ptr %11, align 4, !tbaa !9
  store i32 %10658, ptr %36, align 4, !tbaa !9
  %10659 = load ptr, ptr %9, align 8, !tbaa !5
  %10660 = getelementptr inbounds %struct.w2c_hermes, ptr %10659, i32 0, i32 6
  %10661 = load i32, ptr %36, align 4, !tbaa !9
  %10662 = zext i32 %10661 to i64
  %10663 = add i64 %10662, 44
  %10664 = call i32 @i32_load(ptr noundef %10660, i64 noundef %10663)
  store i32 %10664, ptr %36, align 4, !tbaa !9
  %10665 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10665, ptr %18, align 4, !tbaa !9
  %10666 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10666, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %10667 = load ptr, ptr %9, align 8, !tbaa !5
  %10668 = getelementptr inbounds %struct.w2c_hermes, ptr %10667, i32 0, i32 6
  %10669 = load i32, ptr %36, align 4, !tbaa !9
  %10670 = zext i32 %10669 to i64
  %10671 = add i64 %10670, 120
  %10672 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10668, i64 noundef %10671, i32 noundef %10672)
  %10673 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10673, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %10674 = load ptr, ptr %9, align 8, !tbaa !5
  %10675 = getelementptr inbounds %struct.w2c_hermes, ptr %10674, i32 0, i32 6
  %10676 = load i32, ptr %36, align 4, !tbaa !9
  %10677 = zext i32 %10676 to i64
  %10678 = add i64 %10677, 124
  %10679 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %10675, i64 noundef %10678, i32 noundef %10679)
  %10680 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10680, ptr %36, align 4, !tbaa !9
  %10681 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10681, ptr %37, align 4, !tbaa !9
  %10682 = load ptr, ptr %9, align 8, !tbaa !5
  %10683 = getelementptr inbounds %struct.w2c_hermes, ptr %10682, i32 0, i32 6
  %10684 = load i32, ptr %37, align 4, !tbaa !9
  %10685 = zext i32 %10684 to i64
  %10686 = add i64 %10685, 120
  %10687 = call i64 @i64_load(ptr noundef %10683, i64 noundef %10686)
  store i64 %10687, ptr %43, align 8, !tbaa !11
  %10688 = load ptr, ptr %9, align 8, !tbaa !5
  %10689 = getelementptr inbounds %struct.w2c_hermes, ptr %10688, i32 0, i32 6
  %10690 = load i32, ptr %36, align 4, !tbaa !9
  %10691 = zext i32 %10690 to i64
  %10692 = add i64 %10691, 16
  %10693 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10689, i64 noundef %10692, i64 noundef %10693)
  %10694 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10694, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %10695 = load i32, ptr %37, align 4, !tbaa !9
  %10696 = load i32, ptr %36, align 4, !tbaa !9
  %10697 = add i32 %10696, %10695
  store i32 %10697, ptr %36, align 4, !tbaa !9
  %10698 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10698, ptr %37, align 4, !tbaa !9
  store i32 1720, ptr %38, align 4, !tbaa !9
  %10699 = load i32, ptr %38, align 4, !tbaa !9
  %10700 = load i32, ptr %37, align 4, !tbaa !9
  %10701 = add i32 %10700, %10699
  store i32 %10701, ptr %37, align 4, !tbaa !9
  %10702 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10702, ptr %38, align 4, !tbaa !9
  %10703 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10703, ptr %39, align 4, !tbaa !9
  store i32 16, ptr %40, align 4, !tbaa !9
  %10704 = load i32, ptr %40, align 4, !tbaa !9
  %10705 = load i32, ptr %39, align 4, !tbaa !9
  %10706 = add i32 %10705, %10704
  store i32 %10706, ptr %39, align 4, !tbaa !9
  %10707 = load ptr, ptr %9, align 8, !tbaa !5
  %10708 = load i32, ptr %36, align 4, !tbaa !9
  %10709 = load i32, ptr %37, align 4, !tbaa !9
  %10710 = load i32, ptr %38, align 4, !tbaa !9
  %10711 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AFunctionScopeAnalysis0x3A0x3AcalculateFunctionScopeData0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20llvh0x3A0x3AOptional0x3Cint0x3E0x29(ptr noundef %10707, i32 noundef %10708, i32 noundef %10709, i32 noundef %10710, i32 noundef %10711)
  %10712 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10712, ptr %36, align 4, !tbaa !9
  %10713 = load ptr, ptr %9, align 8, !tbaa !5
  %10714 = getelementptr inbounds %struct.w2c_hermes, ptr %10713, i32 0, i32 6
  %10715 = load i32, ptr %36, align 4, !tbaa !9
  %10716 = zext i32 %10715 to i64
  %10717 = add i64 %10716, 524
  %10718 = call i32 @i32_load8_u(ptr noundef %10714, i64 noundef %10717)
  store i32 %10718, ptr %36, align 4, !tbaa !9
  %10719 = load i32, ptr %36, align 4, !tbaa !9
  %10720 = icmp ne i32 %10719, 0
  br i1 %10720, label %10721, label %10722

10721:                                            ; preds = %10641
  br label %13112

10722:                                            ; preds = %10641
  %10723 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10723, ptr %36, align 4, !tbaa !9
  %10724 = load ptr, ptr %9, align 8, !tbaa !5
  %10725 = getelementptr inbounds %struct.w2c_hermes, ptr %10724, i32 0, i32 6
  %10726 = load i32, ptr %36, align 4, !tbaa !9
  %10727 = zext i32 %10726 to i64
  %10728 = add i64 %10727, 520
  %10729 = call i32 @i32_load(ptr noundef %10725, i64 noundef %10728)
  store i32 %10729, ptr %36, align 4, !tbaa !9
  %10730 = load i32, ptr %36, align 4, !tbaa !9
  %10731 = icmp ne i32 %10730, 0
  br i1 %10731, label %10732, label %10733

10732:                                            ; preds = %10722
  br label %13112

10733:                                            ; preds = %10722
  %10734 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10734, ptr %36, align 4, !tbaa !9
  store i32 1708, ptr %37, align 4, !tbaa !9
  %10735 = load i32, ptr %37, align 4, !tbaa !9
  %10736 = load i32, ptr %36, align 4, !tbaa !9
  %10737 = add i32 %10736, %10735
  store i32 %10737, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %10738 = load ptr, ptr %9, align 8, !tbaa !5
  %10739 = getelementptr inbounds %struct.w2c_hermes, ptr %10738, i32 0, i32 6
  %10740 = load i32, ptr %36, align 4, !tbaa !9
  %10741 = zext i32 %10740 to i64
  %10742 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10739, i64 noundef %10741, i32 noundef %10742)
  %10743 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10743, ptr %36, align 4, !tbaa !9
  store i32 1696, ptr %37, align 4, !tbaa !9
  %10744 = load i32, ptr %37, align 4, !tbaa !9
  %10745 = load i32, ptr %36, align 4, !tbaa !9
  %10746 = add i32 %10745, %10744
  store i32 %10746, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %10747 = load ptr, ptr %9, align 8, !tbaa !5
  %10748 = getelementptr inbounds %struct.w2c_hermes, ptr %10747, i32 0, i32 6
  %10749 = load i32, ptr %36, align 4, !tbaa !9
  %10750 = zext i32 %10749 to i64
  %10751 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10748, i64 noundef %10750, i32 noundef %10751)
  %10752 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10752, ptr %36, align 4, !tbaa !9
  store i32 1684, ptr %37, align 4, !tbaa !9
  %10753 = load i32, ptr %37, align 4, !tbaa !9
  %10754 = load i32, ptr %36, align 4, !tbaa !9
  %10755 = add i32 %10754, %10753
  store i32 %10755, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %10756 = load ptr, ptr %9, align 8, !tbaa !5
  %10757 = getelementptr inbounds %struct.w2c_hermes, ptr %10756, i32 0, i32 6
  %10758 = load i32, ptr %36, align 4, !tbaa !9
  %10759 = zext i32 %10758 to i64
  %10760 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10757, i64 noundef %10759, i32 noundef %10760)
  %10761 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10761, ptr %36, align 4, !tbaa !9
  store i32 -1, ptr %37, align 4, !tbaa !9
  %10762 = load ptr, ptr %9, align 8, !tbaa !5
  %10763 = getelementptr inbounds %struct.w2c_hermes, ptr %10762, i32 0, i32 6
  %10764 = load i32, ptr %36, align 4, !tbaa !9
  %10765 = zext i32 %10764 to i64
  %10766 = add i64 %10765, 1672
  %10767 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10763, i64 noundef %10766, i32 noundef %10767)
  %10768 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10768, ptr %36, align 4, !tbaa !9
  store i64 1, ptr %43, align 8, !tbaa !11
  %10769 = load ptr, ptr %9, align 8, !tbaa !5
  %10770 = getelementptr inbounds %struct.w2c_hermes, ptr %10769, i32 0, i32 6
  %10771 = load i32, ptr %36, align 4, !tbaa !9
  %10772 = zext i32 %10771 to i64
  %10773 = add i64 %10772, 1664
  %10774 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10770, i64 noundef %10773, i64 noundef %10774)
  %10775 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %10775, ptr %36, align 4, !tbaa !9
  %10776 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %10776, ptr %37, align 4, !tbaa !9
  %10777 = load ptr, ptr %9, align 8, !tbaa !5
  %10778 = getelementptr inbounds %struct.w2c_hermes, ptr %10777, i32 0, i32 6
  %10779 = load i32, ptr %37, align 4, !tbaa !9
  %10780 = zext i32 %10779 to i64
  %10781 = add i64 %10780, 44
  %10782 = call i32 @i32_load(ptr noundef %10778, i64 noundef %10781)
  store i32 %10782, ptr %37, align 4, !tbaa !9
  %10783 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %10783, ptr %14, align 4, !tbaa !9
  %10784 = load i32, ptr %36, align 4, !tbaa !9
  %10785 = load i32, ptr %37, align 4, !tbaa !9
  %10786 = icmp ne i32 %10784, %10785
  %10787 = zext i1 %10786 to i32
  store i32 %10787, ptr %36, align 4, !tbaa !9
  %10788 = load i32, ptr %36, align 4, !tbaa !9
  %10789 = icmp ne i32 %10788, 0
  br i1 %10789, label %10790, label %12640

10790:                                            ; preds = %10733
  %10791 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10791, ptr %36, align 4, !tbaa !9
  store i32 340, ptr %37, align 4, !tbaa !9
  %10792 = load i32, ptr %37, align 4, !tbaa !9
  %10793 = load i32, ptr %36, align 4, !tbaa !9
  %10794 = add i32 %10793, %10792
  store i32 %10794, ptr %36, align 4, !tbaa !9
  %10795 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10795, ptr %23, align 4, !tbaa !9
  %10796 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10796, ptr %36, align 4, !tbaa !9
  store i32 316, ptr %37, align 4, !tbaa !9
  %10797 = load i32, ptr %37, align 4, !tbaa !9
  %10798 = load i32, ptr %36, align 4, !tbaa !9
  %10799 = add i32 %10798, %10797
  store i32 %10799, ptr %36, align 4, !tbaa !9
  %10800 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10800, ptr %28, align 4, !tbaa !9
  %10801 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10801, ptr %36, align 4, !tbaa !9
  store i32 280, ptr %37, align 4, !tbaa !9
  %10802 = load i32, ptr %37, align 4, !tbaa !9
  %10803 = load i32, ptr %36, align 4, !tbaa !9
  %10804 = add i32 %10803, %10802
  store i32 %10804, ptr %36, align 4, !tbaa !9
  %10805 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10805, ptr %25, align 4, !tbaa !9
  %10806 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10806, ptr %36, align 4, !tbaa !9
  store i32 184, ptr %37, align 4, !tbaa !9
  %10807 = load i32, ptr %37, align 4, !tbaa !9
  %10808 = load i32, ptr %36, align 4, !tbaa !9
  %10809 = add i32 %10808, %10807
  store i32 %10809, ptr %36, align 4, !tbaa !9
  %10810 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10810, ptr %12, align 4, !tbaa !9
  %10811 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10811, ptr %36, align 4, !tbaa !9
  store i32 140, ptr %37, align 4, !tbaa !9
  %10812 = load i32, ptr %37, align 4, !tbaa !9
  %10813 = load i32, ptr %36, align 4, !tbaa !9
  %10814 = add i32 %10813, %10812
  store i32 %10814, ptr %36, align 4, !tbaa !9
  %10815 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10815, ptr %27, align 4, !tbaa !9
  %10816 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10816, ptr %36, align 4, !tbaa !9
  store i32 416, ptr %37, align 4, !tbaa !9
  %10817 = load i32, ptr %37, align 4, !tbaa !9
  %10818 = load i32, ptr %36, align 4, !tbaa !9
  %10819 = add i32 %10818, %10817
  store i32 %10819, ptr %36, align 4, !tbaa !9
  %10820 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10820, ptr %26, align 4, !tbaa !9
  %10821 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10821, ptr %36, align 4, !tbaa !9
  store i32 1604, ptr %37, align 4, !tbaa !9
  %10822 = load i32, ptr %37, align 4, !tbaa !9
  %10823 = load i32, ptr %36, align 4, !tbaa !9
  %10824 = add i32 %10823, %10822
  store i32 %10824, ptr %36, align 4, !tbaa !9
  %10825 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10825, ptr %21, align 4, !tbaa !9
  %10826 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10826, ptr %36, align 4, !tbaa !9
  store i32 708, ptr %37, align 4, !tbaa !9
  %10827 = load i32, ptr %37, align 4, !tbaa !9
  %10828 = load i32, ptr %36, align 4, !tbaa !9
  %10829 = add i32 %10828, %10827
  store i32 %10829, ptr %36, align 4, !tbaa !9
  %10830 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10830, ptr %31, align 4, !tbaa !9
  %10831 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10831, ptr %36, align 4, !tbaa !9
  store i32 568, ptr %37, align 4, !tbaa !9
  %10832 = load i32, ptr %37, align 4, !tbaa !9
  %10833 = load i32, ptr %36, align 4, !tbaa !9
  %10834 = add i32 %10833, %10832
  store i32 %10834, ptr %36, align 4, !tbaa !9
  %10835 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10835, ptr %30, align 4, !tbaa !9
  %10836 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10836, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %10837 = load i32, ptr %37, align 4, !tbaa !9
  %10838 = load i32, ptr %36, align 4, !tbaa !9
  %10839 = add i32 %10838, %10837
  store i32 %10839, ptr %36, align 4, !tbaa !9
  store i32 4, ptr %37, align 4, !tbaa !9
  %10840 = load i32, ptr %37, align 4, !tbaa !9
  %10841 = load i32, ptr %36, align 4, !tbaa !9
  %10842 = or i32 %10841, %10840
  store i32 %10842, ptr %36, align 4, !tbaa !9
  %10843 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10843, ptr %22, align 4, !tbaa !9
  br label %10844

10844:                                            ; preds = %12638, %10790
  %10845 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10845, ptr %36, align 4, !tbaa !9
  %10846 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10846, ptr %37, align 4, !tbaa !9
  %10847 = load ptr, ptr %9, align 8, !tbaa !5
  %10848 = getelementptr inbounds %struct.w2c_hermes, ptr %10847, i32 0, i32 6
  %10849 = load i32, ptr %36, align 4, !tbaa !9
  %10850 = zext i32 %10849 to i64
  %10851 = add i64 %10850, 520
  %10852 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10848, i64 noundef %10851, i32 noundef %10852)
  %10853 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10853, ptr %36, align 4, !tbaa !9
  %10854 = load ptr, ptr %9, align 8, !tbaa !5
  %10855 = getelementptr inbounds %struct.w2c_hermes, ptr %10854, i32 0, i32 6
  %10856 = load i32, ptr %36, align 4, !tbaa !9
  %10857 = zext i32 %10856 to i64
  %10858 = add i64 %10857, 2208
  %10859 = call i32 @i32_load(ptr noundef %10855, i64 noundef %10858)
  store i32 %10859, ptr %36, align 4, !tbaa !9
  %10860 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10860, ptr %18, align 4, !tbaa !9
  %10861 = load i32, ptr %36, align 4, !tbaa !9
  %10862 = icmp ne i32 %10861, 0
  %10863 = xor i1 %10862, true
  %10864 = zext i1 %10863 to i32
  store i32 %10864, ptr %36, align 4, !tbaa !9
  %10865 = load i32, ptr %36, align 4, !tbaa !9
  %10866 = icmp ne i32 %10865, 0
  br i1 %10866, label %10867, label %10868

10867:                                            ; preds = %10844
  br label %13020

10868:                                            ; preds = %10844
  %10869 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10869, ptr %36, align 4, !tbaa !9
  %10870 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10870, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %10871 = load i32, ptr %38, align 4, !tbaa !9
  %10872 = load i32, ptr %37, align 4, !tbaa !9
  %10873 = add i32 %10872, %10871
  store i32 %10873, ptr %37, align 4, !tbaa !9
  %10874 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10874, ptr %38, align 4, !tbaa !9
  %10875 = load ptr, ptr %9, align 8, !tbaa !5
  %10876 = getelementptr inbounds %struct.w2c_hermes, ptr %10875, i32 0, i32 6
  %10877 = load i32, ptr %38, align 4, !tbaa !9
  %10878 = zext i32 %10877 to i64
  %10879 = call i32 @i32_load(ptr noundef %10876, i64 noundef %10878)
  store i32 %10879, ptr %38, align 4, !tbaa !9
  %10880 = load ptr, ptr %9, align 8, !tbaa !5
  %10881 = getelementptr inbounds %struct.w2c_hermes, ptr %10880, i32 0, i32 6
  %10882 = load i32, ptr %38, align 4, !tbaa !9
  %10883 = zext i32 %10882 to i64
  %10884 = add i64 %10883, 24
  %10885 = call i32 @i32_load(ptr noundef %10881, i64 noundef %10884)
  store i32 %10885, ptr %38, align 4, !tbaa !9
  %10886 = load i32, ptr %38, align 4, !tbaa !9
  %10887 = load ptr, ptr %9, align 8, !tbaa !5
  %10888 = getelementptr inbounds %struct.w2c_hermes, ptr %10887, i32 0, i32 7
  %10889 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10888, i32 0, i32 2
  %10890 = load i32, ptr %10889, align 4, !tbaa !18
  %10891 = icmp ult i32 %10886, %10890
  br i1 %10891, label %10892, label %10915

10892:                                            ; preds = %10868
  %10893 = load ptr, ptr %9, align 8, !tbaa !5
  %10894 = getelementptr inbounds %struct.w2c_hermes, ptr %10893, i32 0, i32 7
  %10895 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10894, i32 0, i32 0
  %10896 = load ptr, ptr %10895, align 8, !tbaa !19
  %10897 = load i32, ptr %38, align 4, !tbaa !9
  %10898 = zext i32 %10897 to i64
  %10899 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10896, i64 %10898
  %10900 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10899, i32 0, i32 1
  %10901 = load ptr, ptr %10900, align 8, !tbaa !20
  %10902 = icmp ne ptr %10901, null
  br i1 %10902, label %10903, label %10915

10903:                                            ; preds = %10892
  %10904 = load ptr, ptr @w2c_hermes_t5, align 8, !tbaa !5
  %10905 = load ptr, ptr %9, align 8, !tbaa !5
  %10906 = getelementptr inbounds %struct.w2c_hermes, ptr %10905, i32 0, i32 7
  %10907 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10906, i32 0, i32 0
  %10908 = load ptr, ptr %10907, align 8, !tbaa !19
  %10909 = load i32, ptr %38, align 4, !tbaa !9
  %10910 = zext i32 %10909 to i64
  %10911 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10908, i64 %10910
  %10912 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10911, i32 0, i32 0
  %10913 = load ptr, ptr %10912, align 8, !tbaa !22
  %10914 = call zeroext i1 @func_types_eq(ptr noundef %10904, ptr noundef %10913)
  br label %10915

10915:                                            ; preds = %10903, %10892, %10868
  %10916 = phi i1 [ false, %10892 ], [ false, %10868 ], [ %10914, %10903 ]
  %10917 = xor i1 %10916, true
  %10918 = xor i1 %10917, true
  %10919 = zext i1 %10918 to i32
  %10920 = sext i32 %10919 to i64
  %10921 = call i64 @llvm.expect.i64(i64 %10920, i64 1)
  %10922 = icmp ne i64 %10921, 0
  br i1 %10922, label %10925, label %10923

10923:                                            ; preds = %10915
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

10924:                                            ; No predecessors!
  br label %10925

10925:                                            ; preds = %10924, %10915
  %10926 = phi i1 [ true, %10915 ], [ false, %10924 ]
  %10927 = zext i1 %10926 to i32
  %10928 = load ptr, ptr %9, align 8, !tbaa !5
  %10929 = getelementptr inbounds %struct.w2c_hermes, ptr %10928, i32 0, i32 7
  %10930 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10929, i32 0, i32 0
  %10931 = load ptr, ptr %10930, align 8, !tbaa !19
  %10932 = load i32, ptr %38, align 4, !tbaa !9
  %10933 = zext i32 %10932 to i64
  %10934 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10931, i64 %10933
  %10935 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10934, i32 0, i32 1
  %10936 = load ptr, ptr %10935, align 8, !tbaa !20
  %10937 = load ptr, ptr %9, align 8, !tbaa !5
  %10938 = getelementptr inbounds %struct.w2c_hermes, ptr %10937, i32 0, i32 7
  %10939 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %10938, i32 0, i32 0
  %10940 = load ptr, ptr %10939, align 8, !tbaa !19
  %10941 = load i32, ptr %38, align 4, !tbaa !9
  %10942 = zext i32 %10941 to i64
  %10943 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10940, i64 %10942
  %10944 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %10943, i32 0, i32 2
  %10945 = load ptr, ptr %10944, align 8, !tbaa !23
  %10946 = load i32, ptr %36, align 4, !tbaa !9
  %10947 = load i32, ptr %37, align 4, !tbaa !9
  %10948 = call i32 %10936(ptr noundef %10945, i32 noundef %10946, i32 noundef %10947)
  store i32 %10948, ptr %36, align 4, !tbaa !9
  %10949 = load i32, ptr %36, align 4, !tbaa !9
  %10950 = icmp ne i32 %10949, 0
  %10951 = xor i1 %10950, true
  %10952 = zext i1 %10951 to i32
  store i32 %10952, ptr %36, align 4, !tbaa !9
  %10953 = load i32, ptr %36, align 4, !tbaa !9
  %10954 = icmp ne i32 %10953, 0
  br i1 %10954, label %10955, label %10956

10955:                                            ; preds = %10925
  br label %12622

10956:                                            ; preds = %10925
  %10957 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %10957, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %10958 = load ptr, ptr %9, align 8, !tbaa !5
  %10959 = getelementptr inbounds %struct.w2c_hermes, ptr %10958, i32 0, i32 6
  %10960 = load i32, ptr %36, align 4, !tbaa !9
  %10961 = zext i32 %10960 to i64
  %10962 = add i64 %10961, 2752
  %10963 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %10959, i64 noundef %10962, i32 noundef %10963)
  %10964 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %10964, ptr %36, align 4, !tbaa !9
  %10965 = load ptr, ptr %9, align 8, !tbaa !5
  %10966 = getelementptr inbounds %struct.w2c_hermes, ptr %10965, i32 0, i32 6
  %10967 = load i32, ptr %36, align 4, !tbaa !9
  %10968 = zext i32 %10967 to i64
  %10969 = add i64 %10968, 144
  %10970 = call i32 @i32_load(ptr noundef %10966, i64 noundef %10969)
  store i32 %10970, ptr %36, align 4, !tbaa !9
  %10971 = load i32, ptr %36, align 4, !tbaa !9
  %10972 = icmp ne i32 %10971, 0
  br i1 %10972, label %10973, label %11114

10973:                                            ; preds = %10956
  store i32 124, ptr %36, align 4, !tbaa !9
  %10974 = load ptr, ptr %9, align 8, !tbaa !5
  %10975 = load i32, ptr %36, align 4, !tbaa !9
  %10976 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %10974, i32 noundef %10975)
  store i32 %10976, ptr %36, align 4, !tbaa !9
  %10977 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %10977, ptr %18, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %10978 = load ptr, ptr %9, align 8, !tbaa !5
  %10979 = getelementptr inbounds %struct.w2c_hermes, ptr %10978, i32 0, i32 6
  %10980 = load i32, ptr %36, align 4, !tbaa !9
  %10981 = zext i32 %10980 to i64
  %10982 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10979, i64 noundef %10981, i64 noundef %10982)
  %10983 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10983, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %10984 = load ptr, ptr %9, align 8, !tbaa !5
  %10985 = getelementptr inbounds %struct.w2c_hermes, ptr %10984, i32 0, i32 6
  %10986 = load i32, ptr %36, align 4, !tbaa !9
  %10987 = zext i32 %10986 to i64
  %10988 = add i64 %10987, 20
  %10989 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10985, i64 noundef %10988, i64 noundef %10989)
  %10990 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10990, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %10991 = load ptr, ptr %9, align 8, !tbaa !5
  %10992 = getelementptr inbounds %struct.w2c_hermes, ptr %10991, i32 0, i32 6
  %10993 = load i32, ptr %36, align 4, !tbaa !9
  %10994 = zext i32 %10993 to i64
  %10995 = add i64 %10994, 112
  %10996 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %10992, i64 noundef %10995, i64 noundef %10996)
  %10997 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %10997, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %10998 = load ptr, ptr %9, align 8, !tbaa !5
  %10999 = getelementptr inbounds %struct.w2c_hermes, ptr %10998, i32 0, i32 6
  %11000 = load i32, ptr %36, align 4, !tbaa !9
  %11001 = zext i32 %11000 to i64
  %11002 = add i64 %11001, 100
  %11003 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %10999, i64 noundef %11002, i32 noundef %11003)
  %11004 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11004, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11005 = load ptr, ptr %9, align 8, !tbaa !5
  %11006 = getelementptr inbounds %struct.w2c_hermes, ptr %11005, i32 0, i32 6
  %11007 = load i32, ptr %36, align 4, !tbaa !9
  %11008 = zext i32 %11007 to i64
  %11009 = add i64 %11008, 68
  %11010 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11006, i64 noundef %11009, i64 noundef %11010)
  %11011 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11011, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11012 = load ptr, ptr %9, align 8, !tbaa !5
  %11013 = getelementptr inbounds %struct.w2c_hermes, ptr %11012, i32 0, i32 6
  %11014 = load i32, ptr %36, align 4, !tbaa !9
  %11015 = zext i32 %11014 to i64
  %11016 = add i64 %11015, 104
  %11017 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11013, i64 noundef %11016, i32 noundef %11017)
  %11018 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11018, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11019 = load ptr, ptr %9, align 8, !tbaa !5
  %11020 = getelementptr inbounds %struct.w2c_hermes, ptr %11019, i32 0, i32 6
  %11021 = load i32, ptr %36, align 4, !tbaa !9
  %11022 = zext i32 %11021 to i64
  %11023 = add i64 %11022, 5
  %11024 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11020, i64 noundef %11023, i64 noundef %11024)
  %11025 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11025, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11026 = load ptr, ptr %9, align 8, !tbaa !5
  %11027 = getelementptr inbounds %struct.w2c_hermes, ptr %11026, i32 0, i32 6
  %11028 = load i32, ptr %36, align 4, !tbaa !9
  %11029 = zext i32 %11028 to i64
  %11030 = add i64 %11029, 28
  %11031 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11027, i64 noundef %11030, i64 noundef %11031)
  %11032 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11032, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11033 = load ptr, ptr %9, align 8, !tbaa !5
  %11034 = getelementptr inbounds %struct.w2c_hermes, ptr %11033, i32 0, i32 6
  %11035 = load i32, ptr %36, align 4, !tbaa !9
  %11036 = zext i32 %11035 to i64
  %11037 = add i64 %11036, 36
  %11038 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11034, i64 noundef %11037, i64 noundef %11038)
  %11039 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11039, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11040 = load ptr, ptr %9, align 8, !tbaa !5
  %11041 = getelementptr inbounds %struct.w2c_hermes, ptr %11040, i32 0, i32 6
  %11042 = load i32, ptr %36, align 4, !tbaa !9
  %11043 = zext i32 %11042 to i64
  %11044 = add i64 %11043, 44
  %11045 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11041, i64 noundef %11044, i64 noundef %11045)
  %11046 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11046, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11047 = load ptr, ptr %9, align 8, !tbaa !5
  %11048 = getelementptr inbounds %struct.w2c_hermes, ptr %11047, i32 0, i32 6
  %11049 = load i32, ptr %36, align 4, !tbaa !9
  %11050 = zext i32 %11049 to i64
  %11051 = add i64 %11050, 52
  %11052 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11048, i64 noundef %11051, i64 noundef %11052)
  %11053 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11053, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11054 = load ptr, ptr %9, align 8, !tbaa !5
  %11055 = getelementptr inbounds %struct.w2c_hermes, ptr %11054, i32 0, i32 6
  %11056 = load i32, ptr %36, align 4, !tbaa !9
  %11057 = zext i32 %11056 to i64
  %11058 = add i64 %11057, 120
  %11059 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11055, i64 noundef %11058, i32 noundef %11059)
  %11060 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11060, ptr %36, align 4, !tbaa !9
  store i64 -4294967296, ptr %43, align 8, !tbaa !11
  %11061 = load ptr, ptr %9, align 8, !tbaa !5
  %11062 = getelementptr inbounds %struct.w2c_hermes, ptr %11061, i32 0, i32 6
  %11063 = load i32, ptr %36, align 4, !tbaa !9
  %11064 = zext i32 %11063 to i64
  %11065 = add i64 %11064, 60
  %11066 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11062, i64 noundef %11065, i64 noundef %11066)
  %11067 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11067, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11068 = load ptr, ptr %9, align 8, !tbaa !5
  %11069 = getelementptr inbounds %struct.w2c_hermes, ptr %11068, i32 0, i32 6
  %11070 = load i32, ptr %36, align 4, !tbaa !9
  %11071 = zext i32 %11070 to i64
  %11072 = add i64 %11071, 76
  %11073 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11069, i64 noundef %11072, i64 noundef %11073)
  %11074 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11074, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11075 = load ptr, ptr %9, align 8, !tbaa !5
  %11076 = getelementptr inbounds %struct.w2c_hermes, ptr %11075, i32 0, i32 6
  %11077 = load i32, ptr %36, align 4, !tbaa !9
  %11078 = zext i32 %11077 to i64
  %11079 = add i64 %11078, 84
  %11080 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11076, i64 noundef %11079, i64 noundef %11080)
  %11081 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11081, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11082 = load ptr, ptr %9, align 8, !tbaa !5
  %11083 = getelementptr inbounds %struct.w2c_hermes, ptr %11082, i32 0, i32 6
  %11084 = load i32, ptr %36, align 4, !tbaa !9
  %11085 = zext i32 %11084 to i64
  %11086 = add i64 %11085, 89
  %11087 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11083, i64 noundef %11086, i64 noundef %11087)
  %11088 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11088, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11089 = load ptr, ptr %9, align 8, !tbaa !5
  %11090 = getelementptr inbounds %struct.w2c_hermes, ptr %11089, i32 0, i32 6
  %11091 = load i32, ptr %36, align 4, !tbaa !9
  %11092 = zext i32 %11091 to i64
  %11093 = add i64 %11092, 107
  %11094 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11090, i64 noundef %11093, i32 noundef %11094)
  %11095 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11095, ptr %36, align 4, !tbaa !9
  %11096 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11096, ptr %37, align 4, !tbaa !9
  store i32 2232, ptr %38, align 4, !tbaa !9
  %11097 = load i32, ptr %38, align 4, !tbaa !9
  %11098 = load i32, ptr %37, align 4, !tbaa !9
  %11099 = add i32 %11098, %11097
  store i32 %11099, ptr %37, align 4, !tbaa !9
  %11100 = load ptr, ptr %9, align 8, !tbaa !5
  %11101 = getelementptr inbounds %struct.w2c_hermes, ptr %11100, i32 0, i32 6
  %11102 = load i32, ptr %36, align 4, !tbaa !9
  %11103 = zext i32 %11102 to i64
  %11104 = add i64 %11103, 16
  %11105 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11101, i64 noundef %11104, i32 noundef %11105)
  %11106 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11106, ptr %36, align 4, !tbaa !9
  %11107 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11107, ptr %37, align 4, !tbaa !9
  %11108 = load ptr, ptr %9, align 8, !tbaa !5
  %11109 = getelementptr inbounds %struct.w2c_hermes, ptr %11108, i32 0, i32 6
  %11110 = load i32, ptr %36, align 4, !tbaa !9
  %11111 = zext i32 %11110 to i64
  %11112 = add i64 %11111, 2752
  %11113 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11109, i64 noundef %11112, i32 noundef %11113)
  br label %12502

11114:                                            ; preds = %10956
  %11115 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %11115, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11116 = load ptr, ptr %9, align 8, !tbaa !5
  %11117 = getelementptr inbounds %struct.w2c_hermes, ptr %11116, i32 0, i32 6
  %11118 = load i32, ptr %36, align 4, !tbaa !9
  %11119 = zext i32 %11118 to i64
  %11120 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11117, i64 noundef %11119, i64 noundef %11120)
  %11121 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %11121, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11122 = load ptr, ptr %9, align 8, !tbaa !5
  %11123 = getelementptr inbounds %struct.w2c_hermes, ptr %11122, i32 0, i32 6
  %11124 = load i32, ptr %36, align 4, !tbaa !9
  %11125 = zext i32 %11124 to i64
  %11126 = add i64 %11125, 24
  %11127 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11123, i64 noundef %11126, i64 noundef %11127)
  %11128 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %11128, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11129 = load ptr, ptr %9, align 8, !tbaa !5
  %11130 = getelementptr inbounds %struct.w2c_hermes, ptr %11129, i32 0, i32 6
  %11131 = load i32, ptr %36, align 4, !tbaa !9
  %11132 = zext i32 %11131 to i64
  %11133 = add i64 %11132, 16
  %11134 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11130, i64 noundef %11133, i64 noundef %11134)
  %11135 = load i32, ptr %22, align 4, !tbaa !9
  store i32 %11135, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11136 = load ptr, ptr %9, align 8, !tbaa !5
  %11137 = getelementptr inbounds %struct.w2c_hermes, ptr %11136, i32 0, i32 6
  %11138 = load i32, ptr %36, align 4, !tbaa !9
  %11139 = zext i32 %11138 to i64
  %11140 = add i64 %11139, 8
  %11141 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11137, i64 noundef %11140, i64 noundef %11141)
  %11142 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11142, ptr %36, align 4, !tbaa !9
  store i64 137438953472, ptr %43, align 8, !tbaa !11
  %11143 = load ptr, ptr %9, align 8, !tbaa !5
  %11144 = getelementptr inbounds %struct.w2c_hermes, ptr %11143, i32 0, i32 6
  %11145 = load i32, ptr %36, align 4, !tbaa !9
  %11146 = zext i32 %11145 to i64
  %11147 = add i64 %11146, 700
  %11148 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11144, i64 noundef %11147, i64 noundef %11148)
  %11149 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11149, ptr %36, align 4, !tbaa !9
  %11150 = load i32, ptr %31, align 4, !tbaa !9
  store i32 %11150, ptr %37, align 4, !tbaa !9
  %11151 = load ptr, ptr %9, align 8, !tbaa !5
  %11152 = getelementptr inbounds %struct.w2c_hermes, ptr %11151, i32 0, i32 6
  %11153 = load i32, ptr %36, align 4, !tbaa !9
  %11154 = zext i32 %11153 to i64
  %11155 = add i64 %11154, 696
  %11156 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11152, i64 noundef %11155, i32 noundef %11156)
  %11157 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11157, ptr %36, align 4, !tbaa !9
  store i64 137438953472, ptr %43, align 8, !tbaa !11
  %11158 = load ptr, ptr %9, align 8, !tbaa !5
  %11159 = getelementptr inbounds %struct.w2c_hermes, ptr %11158, i32 0, i32 6
  %11160 = load i32, ptr %36, align 4, !tbaa !9
  %11161 = zext i32 %11160 to i64
  %11162 = add i64 %11161, 560
  %11163 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11159, i64 noundef %11162, i64 noundef %11163)
  %11164 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11164, ptr %36, align 4, !tbaa !9
  %11165 = load i32, ptr %30, align 4, !tbaa !9
  store i32 %11165, ptr %37, align 4, !tbaa !9
  %11166 = load ptr, ptr %9, align 8, !tbaa !5
  %11167 = getelementptr inbounds %struct.w2c_hermes, ptr %11166, i32 0, i32 6
  %11168 = load i32, ptr %36, align 4, !tbaa !9
  %11169 = zext i32 %11168 to i64
  %11170 = add i64 %11169, 556
  %11171 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11167, i64 noundef %11170, i32 noundef %11171)
  %11172 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11172, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11173 = load ptr, ptr %9, align 8, !tbaa !5
  %11174 = getelementptr inbounds %struct.w2c_hermes, ptr %11173, i32 0, i32 6
  %11175 = load i32, ptr %36, align 4, !tbaa !9
  %11176 = zext i32 %11175 to i64
  %11177 = add i64 %11176, 24
  %11178 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11174, i64 noundef %11177, i64 noundef %11178)
  %11179 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11179, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11180 = load ptr, ptr %9, align 8, !tbaa !5
  %11181 = getelementptr inbounds %struct.w2c_hermes, ptr %11180, i32 0, i32 6
  %11182 = load i32, ptr %36, align 4, !tbaa !9
  %11183 = zext i32 %11182 to i64
  %11184 = add i64 %11183, 16
  %11185 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11181, i64 noundef %11184, i64 noundef %11185)
  %11186 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11186, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11187 = load ptr, ptr %9, align 8, !tbaa !5
  %11188 = getelementptr inbounds %struct.w2c_hermes, ptr %11187, i32 0, i32 6
  %11189 = load i32, ptr %36, align 4, !tbaa !9
  %11190 = zext i32 %11189 to i64
  %11191 = add i64 %11190, 8
  %11192 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11188, i64 noundef %11191, i64 noundef %11192)
  %11193 = load i32, ptr %21, align 4, !tbaa !9
  store i32 %11193, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11194 = load ptr, ptr %9, align 8, !tbaa !5
  %11195 = getelementptr inbounds %struct.w2c_hermes, ptr %11194, i32 0, i32 6
  %11196 = load i32, ptr %36, align 4, !tbaa !9
  %11197 = zext i32 %11196 to i64
  %11198 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11195, i64 noundef %11197, i64 noundef %11198)
  %11199 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11199, ptr %36, align 4, !tbaa !9
  %11200 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11200, ptr %37, align 4, !tbaa !9
  %11201 = load ptr, ptr %9, align 8, !tbaa !5
  %11202 = getelementptr inbounds %struct.w2c_hermes, ptr %11201, i32 0, i32 6
  %11203 = load i32, ptr %36, align 4, !tbaa !9
  %11204 = zext i32 %11203 to i64
  %11205 = add i64 %11204, 1648
  %11206 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11202, i64 noundef %11205, i32 noundef %11206)
  %11207 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11207, ptr %36, align 4, !tbaa !9
  store i64 -1, ptr %43, align 8, !tbaa !11
  %11208 = load ptr, ptr %9, align 8, !tbaa !5
  %11209 = getelementptr inbounds %struct.w2c_hermes, ptr %11208, i32 0, i32 6
  %11210 = load i32, ptr %36, align 4, !tbaa !9
  %11211 = zext i32 %11210 to i64
  %11212 = add i64 %11211, 1640
  %11213 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11209, i64 noundef %11212, i64 noundef %11213)
  %11214 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11214, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11215 = load ptr, ptr %9, align 8, !tbaa !5
  %11216 = getelementptr inbounds %struct.w2c_hermes, ptr %11215, i32 0, i32 6
  %11217 = load i32, ptr %36, align 4, !tbaa !9
  %11218 = zext i32 %11217 to i64
  %11219 = add i64 %11218, 1652
  %11220 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11216, i64 noundef %11219, i64 noundef %11220)
  %11221 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11221, ptr %36, align 4, !tbaa !9
  store i32 271020, ptr %37, align 4, !tbaa !9
  %11222 = load ptr, ptr %9, align 8, !tbaa !5
  %11223 = getelementptr inbounds %struct.w2c_hermes, ptr %11222, i32 0, i32 6
  %11224 = load i32, ptr %36, align 4, !tbaa !9
  %11225 = zext i32 %11224 to i64
  %11226 = add i64 %11225, 520
  %11227 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11223, i64 noundef %11226, i32 noundef %11227)
  %11228 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11228, ptr %36, align 4, !tbaa !9
  store i32 496, ptr %37, align 4, !tbaa !9
  %11229 = load i32, ptr %37, align 4, !tbaa !9
  %11230 = load i32, ptr %36, align 4, !tbaa !9
  %11231 = add i32 %11230, %11229
  store i32 %11231, ptr %36, align 4, !tbaa !9
  %11232 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11232, ptr %37, align 4, !tbaa !9
  %11233 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11233, ptr %38, align 4, !tbaa !9
  store i32 520, ptr %39, align 4, !tbaa !9
  %11234 = load i32, ptr %39, align 4, !tbaa !9
  %11235 = load i32, ptr %38, align 4, !tbaa !9
  %11236 = add i32 %11235, %11234
  store i32 %11236, ptr %38, align 4, !tbaa !9
  %11237 = load ptr, ptr %9, align 8, !tbaa !5
  %11238 = load i32, ptr %36, align 4, !tbaa !9
  %11239 = load i32, ptr %37, align 4, !tbaa !9
  %11240 = load i32, ptr %38, align 4, !tbaa !9
  %11241 = call i32 @w2c_hermes_hermes0x3A0x3AScopeRegisterAnalysis0x3A0x3AScopeRegisterAnalysis0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3ARegisterAllocator0x260x29(ptr noundef %11237, i32 noundef %11238, i32 noundef %11239, i32 noundef %11240)
  store i32 %11241, ptr %36, align 4, !tbaa !9
  %11242 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11242, ptr %32, align 4, !tbaa !9
  %11243 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11243, ptr %36, align 4, !tbaa !9
  %11244 = load ptr, ptr %9, align 8, !tbaa !5
  %11245 = getelementptr inbounds %struct.w2c_hermes, ptr %11244, i32 0, i32 6
  %11246 = load i32, ptr %36, align 4, !tbaa !9
  %11247 = zext i32 %11246 to i64
  %11248 = add i64 %11247, 4
  %11249 = call i32 @i32_load8_u(ptr noundef %11245, i64 noundef %11248)
  store i32 %11249, ptr %36, align 4, !tbaa !9
  %11250 = load i32, ptr %36, align 4, !tbaa !9
  %11251 = icmp ne i32 %11250, 0
  %11252 = xor i1 %11251, true
  %11253 = zext i1 %11252 to i32
  store i32 %11253, ptr %36, align 4, !tbaa !9
  %11254 = load i32, ptr %36, align 4, !tbaa !9
  %11255 = icmp ne i32 %11254, 0
  br i1 %11255, label %11256, label %11271

11256:                                            ; preds = %11114
  %11257 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11257, ptr %36, align 4, !tbaa !9
  store i64 10485760, ptr %43, align 8, !tbaa !11
  %11258 = load ptr, ptr %9, align 8, !tbaa !5
  %11259 = getelementptr inbounds %struct.w2c_hermes, ptr %11258, i32 0, i32 6
  %11260 = load i32, ptr %36, align 4, !tbaa !9
  %11261 = zext i32 %11260 to i64
  %11262 = add i64 %11261, 1640
  %11263 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11259, i64 noundef %11262, i64 noundef %11263)
  %11264 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11264, ptr %36, align 4, !tbaa !9
  store i32 250, ptr %37, align 4, !tbaa !9
  %11265 = load ptr, ptr %9, align 8, !tbaa !5
  %11266 = getelementptr inbounds %struct.w2c_hermes, ptr %11265, i32 0, i32 6
  %11267 = load i32, ptr %36, align 4, !tbaa !9
  %11268 = zext i32 %11267 to i64
  %11269 = add i64 %11268, 1632
  %11270 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11266, i64 noundef %11269, i32 noundef %11270)
  br label %11271

11271:                                            ; preds = %11256, %11114
  %11272 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11272, ptr %36, align 4, !tbaa !9
  store i32 480, ptr %37, align 4, !tbaa !9
  %11273 = load i32, ptr %37, align 4, !tbaa !9
  %11274 = load i32, ptr %36, align 4, !tbaa !9
  %11275 = add i32 %11274, %11273
  store i32 %11275, ptr %36, align 4, !tbaa !9
  %11276 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11276, ptr %37, align 4, !tbaa !9
  %11277 = load ptr, ptr %9, align 8, !tbaa !5
  %11278 = load i32, ptr %36, align 4, !tbaa !9
  %11279 = load i32, ptr %37, align 4, !tbaa !9
  %11280 = call i32 @w2c_hermes_hermes0x3A0x3APostOrderAnalysis0x3A0x3APostOrderAnalysis0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %11277, i32 noundef %11278, i32 noundef %11279)
  store i32 %11280, ptr %36, align 4, !tbaa !9
  %11281 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11281, ptr %36, align 4, !tbaa !9
  store i64 68719476736, ptr %43, align 8, !tbaa !11
  %11282 = load ptr, ptr %9, align 8, !tbaa !5
  %11283 = getelementptr inbounds %struct.w2c_hermes, ptr %11282, i32 0, i32 6
  %11284 = load i32, ptr %36, align 4, !tbaa !9
  %11285 = zext i32 %11284 to i64
  %11286 = add i64 %11285, 408
  %11287 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11283, i64 noundef %11286, i64 noundef %11287)
  %11288 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11288, ptr %36, align 4, !tbaa !9
  %11289 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %11289, ptr %37, align 4, !tbaa !9
  %11290 = load ptr, ptr %9, align 8, !tbaa !5
  %11291 = getelementptr inbounds %struct.w2c_hermes, ptr %11290, i32 0, i32 6
  %11292 = load i32, ptr %36, align 4, !tbaa !9
  %11293 = zext i32 %11292 to i64
  %11294 = add i64 %11293, 404
  %11295 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11291, i64 noundef %11294, i32 noundef %11295)
  %11296 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11296, ptr %36, align 4, !tbaa !9
  %11297 = load ptr, ptr %9, align 8, !tbaa !5
  %11298 = getelementptr inbounds %struct.w2c_hermes, ptr %11297, i32 0, i32 6
  %11299 = load i32, ptr %36, align 4, !tbaa !9
  %11300 = zext i32 %11299 to i64
  %11301 = add i64 %11300, 488
  %11302 = call i32 @i32_load(ptr noundef %11298, i64 noundef %11301)
  store i32 %11302, ptr %36, align 4, !tbaa !9
  %11303 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11303, ptr %18, align 4, !tbaa !9
  %11304 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11304, ptr %37, align 4, !tbaa !9
  %11305 = load ptr, ptr %9, align 8, !tbaa !5
  %11306 = getelementptr inbounds %struct.w2c_hermes, ptr %11305, i32 0, i32 6
  %11307 = load i32, ptr %37, align 4, !tbaa !9
  %11308 = zext i32 %11307 to i64
  %11309 = add i64 %11308, 484
  %11310 = call i32 @i32_load(ptr noundef %11306, i64 noundef %11309)
  store i32 %11310, ptr %37, align 4, !tbaa !9
  %11311 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %11311, ptr %20, align 4, !tbaa !9
  %11312 = load i32, ptr %37, align 4, !tbaa !9
  %11313 = load i32, ptr %36, align 4, !tbaa !9
  %11314 = sub i32 %11313, %11312
  store i32 %11314, ptr %36, align 4, !tbaa !9
  %11315 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11315, ptr %19, align 4, !tbaa !9
  store i32 2, ptr %37, align 4, !tbaa !9
  %11316 = load i32, ptr %36, align 4, !tbaa !9
  %11317 = load i32, ptr %37, align 4, !tbaa !9
  %11318 = and i32 %11317, 31
  %11319 = ashr i32 %11316, %11318
  store i32 %11319, ptr %36, align 4, !tbaa !9
  %11320 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11320, ptr %29, align 4, !tbaa !9
  store i32 0, ptr %36, align 4, !tbaa !9
  %11321 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11321, ptr %24, align 4, !tbaa !9
  %11322 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11322, ptr %36, align 4, !tbaa !9
  store i32 65, ptr %37, align 4, !tbaa !9
  %11323 = load i32, ptr %36, align 4, !tbaa !9
  %11324 = load i32, ptr %37, align 4, !tbaa !9
  %11325 = icmp uge i32 %11323, %11324
  %11326 = zext i1 %11325 to i32
  store i32 %11326, ptr %36, align 4, !tbaa !9
  %11327 = load i32, ptr %36, align 4, !tbaa !9
  %11328 = icmp ne i32 %11327, 0
  br i1 %11328, label %11329, label %11349

11329:                                            ; preds = %11271
  %11330 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11330, ptr %36, align 4, !tbaa !9
  store i32 404, ptr %37, align 4, !tbaa !9
  %11331 = load i32, ptr %37, align 4, !tbaa !9
  %11332 = load i32, ptr %36, align 4, !tbaa !9
  %11333 = add i32 %11332, %11331
  store i32 %11333, ptr %36, align 4, !tbaa !9
  %11334 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %11334, ptr %37, align 4, !tbaa !9
  %11335 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %11335, ptr %38, align 4, !tbaa !9
  store i32 4, ptr %39, align 4, !tbaa !9
  %11336 = load ptr, ptr %9, align 8, !tbaa !5
  %11337 = load i32, ptr %36, align 4, !tbaa !9
  %11338 = load i32, ptr %37, align 4, !tbaa !9
  %11339 = load i32, ptr %38, align 4, !tbaa !9
  %11340 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %11336, i32 noundef %11337, i32 noundef %11338, i32 noundef %11339, i32 noundef %11340)
  %11341 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11341, ptr %36, align 4, !tbaa !9
  %11342 = load ptr, ptr %9, align 8, !tbaa !5
  %11343 = getelementptr inbounds %struct.w2c_hermes, ptr %11342, i32 0, i32 6
  %11344 = load i32, ptr %36, align 4, !tbaa !9
  %11345 = zext i32 %11344 to i64
  %11346 = add i64 %11345, 408
  %11347 = call i32 @i32_load(ptr noundef %11343, i64 noundef %11346)
  store i32 %11347, ptr %36, align 4, !tbaa !9
  %11348 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11348, ptr %24, align 4, !tbaa !9
  br label %11349

11349:                                            ; preds = %11329, %11271
  %11350 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11350, ptr %36, align 4, !tbaa !9
  %11351 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %11351, ptr %37, align 4, !tbaa !9
  %11352 = load i32, ptr %36, align 4, !tbaa !9
  %11353 = load i32, ptr %37, align 4, !tbaa !9
  %11354 = icmp ne i32 %11352, %11353
  %11355 = zext i1 %11354 to i32
  store i32 %11355, ptr %36, align 4, !tbaa !9
  %11356 = load i32, ptr %36, align 4, !tbaa !9
  %11357 = icmp ne i32 %11356, 0
  br i1 %11357, label %11358, label %11407

11358:                                            ; preds = %11349
  %11359 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11359, ptr %36, align 4, !tbaa !9
  %11360 = load ptr, ptr %9, align 8, !tbaa !5
  %11361 = getelementptr inbounds %struct.w2c_hermes, ptr %11360, i32 0, i32 6
  %11362 = load i32, ptr %36, align 4, !tbaa !9
  %11363 = zext i32 %11362 to i64
  %11364 = add i64 %11363, 404
  %11365 = call i32 @i32_load(ptr noundef %11361, i64 noundef %11364)
  store i32 %11365, ptr %36, align 4, !tbaa !9
  %11366 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %11366, ptr %37, align 4, !tbaa !9
  store i32 2, ptr %38, align 4, !tbaa !9
  %11367 = load i32, ptr %38, align 4, !tbaa !9
  %11368 = and i32 %11367, 31
  %11369 = load i32, ptr %37, align 4, !tbaa !9
  %11370 = shl i32 %11369, %11368
  store i32 %11370, ptr %37, align 4, !tbaa !9
  %11371 = load i32, ptr %37, align 4, !tbaa !9
  %11372 = load i32, ptr %36, align 4, !tbaa !9
  %11373 = add i32 %11372, %11371
  store i32 %11373, ptr %36, align 4, !tbaa !9
  %11374 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11374, ptr %19, align 4, !tbaa !9
  br label %11375

11375:                                            ; preds = %11405, %11358
  %11376 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11376, ptr %36, align 4, !tbaa !9
  %11377 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11377, ptr %37, align 4, !tbaa !9
  store i32 4, ptr %38, align 4, !tbaa !9
  %11378 = load i32, ptr %38, align 4, !tbaa !9
  %11379 = load i32, ptr %37, align 4, !tbaa !9
  %11380 = sub i32 %11379, %11378
  store i32 %11380, ptr %37, align 4, !tbaa !9
  %11381 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %11381, ptr %18, align 4, !tbaa !9
  %11382 = load ptr, ptr %9, align 8, !tbaa !5
  %11383 = getelementptr inbounds %struct.w2c_hermes, ptr %11382, i32 0, i32 6
  %11384 = load i32, ptr %37, align 4, !tbaa !9
  %11385 = zext i32 %11384 to i64
  %11386 = call i32 @i32_load(ptr noundef %11383, i64 noundef %11385)
  store i32 %11386, ptr %37, align 4, !tbaa !9
  %11387 = load ptr, ptr %9, align 8, !tbaa !5
  %11388 = getelementptr inbounds %struct.w2c_hermes, ptr %11387, i32 0, i32 6
  %11389 = load i32, ptr %36, align 4, !tbaa !9
  %11390 = zext i32 %11389 to i64
  %11391 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11388, i64 noundef %11390, i32 noundef %11391)
  %11392 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11392, ptr %36, align 4, !tbaa !9
  store i32 4, ptr %37, align 4, !tbaa !9
  %11393 = load i32, ptr %37, align 4, !tbaa !9
  %11394 = load i32, ptr %36, align 4, !tbaa !9
  %11395 = add i32 %11394, %11393
  store i32 %11395, ptr %36, align 4, !tbaa !9
  %11396 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11396, ptr %19, align 4, !tbaa !9
  %11397 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11397, ptr %36, align 4, !tbaa !9
  %11398 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %11398, ptr %37, align 4, !tbaa !9
  %11399 = load i32, ptr %36, align 4, !tbaa !9
  %11400 = load i32, ptr %37, align 4, !tbaa !9
  %11401 = icmp ne i32 %11399, %11400
  %11402 = zext i1 %11401 to i32
  store i32 %11402, ptr %36, align 4, !tbaa !9
  %11403 = load i32, ptr %36, align 4, !tbaa !9
  %11404 = icmp ne i32 %11403, 0
  br i1 %11404, label %11405, label %11406

11405:                                            ; preds = %11375
  br label %11375

11406:                                            ; preds = %11375
  br label %11407

11407:                                            ; preds = %11406, %11349
  %11408 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %11408, ptr %36, align 4, !tbaa !9
  %11409 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %11409, ptr %37, align 4, !tbaa !9
  %11410 = load i32, ptr %37, align 4, !tbaa !9
  %11411 = load i32, ptr %36, align 4, !tbaa !9
  %11412 = add i32 %11411, %11410
  store i32 %11412, ptr %36, align 4, !tbaa !9
  %11413 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11413, ptr %18, align 4, !tbaa !9
  %11414 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11414, ptr %37, align 4, !tbaa !9
  %11415 = load ptr, ptr %9, align 8, !tbaa !5
  %11416 = getelementptr inbounds %struct.w2c_hermes, ptr %11415, i32 0, i32 6
  %11417 = load i32, ptr %37, align 4, !tbaa !9
  %11418 = zext i32 %11417 to i64
  %11419 = add i64 %11418, 412
  %11420 = call i32 @i32_load(ptr noundef %11416, i64 noundef %11419)
  store i32 %11420, ptr %37, align 4, !tbaa !9
  %11421 = load i32, ptr %36, align 4, !tbaa !9
  %11422 = load i32, ptr %37, align 4, !tbaa !9
  %11423 = icmp ugt i32 %11421, %11422
  %11424 = zext i1 %11423 to i32
  store i32 %11424, ptr %36, align 4, !tbaa !9
  %11425 = load i32, ptr %36, align 4, !tbaa !9
  %11426 = icmp ne i32 %11425, 0
  br i1 %11426, label %11427, label %11428

11427:                                            ; preds = %11407
  br label %13130

11428:                                            ; preds = %11407
  %11429 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11429, ptr %36, align 4, !tbaa !9
  %11430 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11430, ptr %37, align 4, !tbaa !9
  %11431 = load ptr, ptr %9, align 8, !tbaa !5
  %11432 = getelementptr inbounds %struct.w2c_hermes, ptr %11431, i32 0, i32 6
  %11433 = load i32, ptr %36, align 4, !tbaa !9
  %11434 = zext i32 %11433 to i64
  %11435 = add i64 %11434, 400
  %11436 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11432, i64 noundef %11435, i32 noundef %11436)
  %11437 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11437, ptr %36, align 4, !tbaa !9
  %11438 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11438, ptr %37, align 4, !tbaa !9
  %11439 = load ptr, ptr %9, align 8, !tbaa !5
  %11440 = getelementptr inbounds %struct.w2c_hermes, ptr %11439, i32 0, i32 6
  %11441 = load i32, ptr %37, align 4, !tbaa !9
  %11442 = zext i32 %11441 to i64
  %11443 = add i64 %11442, 404
  %11444 = call i32 @i32_load(ptr noundef %11440, i64 noundef %11443)
  store i32 %11444, ptr %37, align 4, !tbaa !9
  %11445 = load ptr, ptr %9, align 8, !tbaa !5
  %11446 = getelementptr inbounds %struct.w2c_hermes, ptr %11445, i32 0, i32 6
  %11447 = load i32, ptr %36, align 4, !tbaa !9
  %11448 = zext i32 %11447 to i64
  %11449 = add i64 %11448, 396
  %11450 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11446, i64 noundef %11449, i32 noundef %11450)
  %11451 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11451, ptr %36, align 4, !tbaa !9
  %11452 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11452, ptr %37, align 4, !tbaa !9
  %11453 = load ptr, ptr %9, align 8, !tbaa !5
  %11454 = getelementptr inbounds %struct.w2c_hermes, ptr %11453, i32 0, i32 6
  %11455 = load i32, ptr %36, align 4, !tbaa !9
  %11456 = zext i32 %11455 to i64
  %11457 = add i64 %11456, 408
  %11458 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11454, i64 noundef %11457, i32 noundef %11458)
  %11459 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11459, ptr %36, align 4, !tbaa !9
  %11460 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11460, ptr %37, align 4, !tbaa !9
  %11461 = load ptr, ptr %9, align 8, !tbaa !5
  %11462 = getelementptr inbounds %struct.w2c_hermes, ptr %11461, i32 0, i32 6
  %11463 = load i32, ptr %37, align 4, !tbaa !9
  %11464 = zext i32 %11463 to i64
  %11465 = add i64 %11464, 396
  %11466 = call i64 @i64_load(ptr noundef %11462, i64 noundef %11465)
  store i64 %11466, ptr %43, align 8, !tbaa !11
  %11467 = load ptr, ptr %9, align 8, !tbaa !5
  %11468 = getelementptr inbounds %struct.w2c_hermes, ptr %11467, i32 0, i32 6
  %11469 = load i32, ptr %36, align 4, !tbaa !9
  %11470 = zext i32 %11469 to i64
  %11471 = add i64 %11470, 8
  %11472 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11468, i64 noundef %11471, i64 noundef %11472)
  %11473 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11473, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %11474 = load i32, ptr %37, align 4, !tbaa !9
  %11475 = load i32, ptr %36, align 4, !tbaa !9
  %11476 = add i32 %11475, %11474
  store i32 %11476, ptr %36, align 4, !tbaa !9
  %11477 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11477, ptr %37, align 4, !tbaa !9
  store i32 8, ptr %38, align 4, !tbaa !9
  %11478 = load i32, ptr %38, align 4, !tbaa !9
  %11479 = load i32, ptr %37, align 4, !tbaa !9
  %11480 = add i32 %11479, %11478
  store i32 %11480, ptr %37, align 4, !tbaa !9
  %11481 = load ptr, ptr %9, align 8, !tbaa !5
  %11482 = load i32, ptr %36, align 4, !tbaa !9
  %11483 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Aallocate0x28llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ABasicBlock0x2A0x3E0x29(ptr noundef %11481, i32 noundef %11482, i32 noundef %11483)
  %11484 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11484, ptr %36, align 4, !tbaa !9
  %11485 = load ptr, ptr %9, align 8, !tbaa !5
  %11486 = getelementptr inbounds %struct.w2c_hermes, ptr %11485, i32 0, i32 6
  %11487 = load i32, ptr %36, align 4, !tbaa !9
  %11488 = zext i32 %11487 to i64
  %11489 = call i32 @i32_load(ptr noundef %11486, i64 noundef %11488)
  store i32 %11489, ptr %36, align 4, !tbaa !9
  store i32 7, ptr %37, align 4, !tbaa !9
  %11490 = load i32, ptr %36, align 4, !tbaa !9
  %11491 = load i32, ptr %37, align 4, !tbaa !9
  %11492 = icmp eq i32 %11490, %11491
  %11493 = zext i1 %11492 to i32
  store i32 %11493, ptr %36, align 4, !tbaa !9
  %11494 = load i32, ptr %36, align 4, !tbaa !9
  %11495 = icmp ne i32 %11494, 0
  br i1 %11495, label %11496, label %11503

11496:                                            ; preds = %11428
  %11497 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11497, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %11498 = load i32, ptr %37, align 4, !tbaa !9
  %11499 = load i32, ptr %36, align 4, !tbaa !9
  %11500 = add i32 %11499, %11498
  store i32 %11500, ptr %36, align 4, !tbaa !9
  %11501 = load ptr, ptr %9, align 8, !tbaa !5
  %11502 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Adump0x280x29(ptr noundef %11501, i32 noundef %11502)
  br label %11503

11503:                                            ; preds = %11496, %11428
  %11504 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11504, ptr %36, align 4, !tbaa !9
  store i32 380, ptr %37, align 4, !tbaa !9
  %11505 = load i32, ptr %37, align 4, !tbaa !9
  %11506 = load i32, ptr %36, align 4, !tbaa !9
  %11507 = add i32 %11506, %11505
  store i32 %11507, ptr %36, align 4, !tbaa !9
  %11508 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %11508, ptr %37, align 4, !tbaa !9
  %11509 = load ptr, ptr %9, align 8, !tbaa !5
  %11510 = getelementptr inbounds %struct.w2c_hermes, ptr %11509, i32 0, i32 6
  %11511 = load i32, ptr %37, align 4, !tbaa !9
  %11512 = zext i32 %11511 to i64
  %11513 = add i64 %11512, 28
  %11514 = call i32 @i32_load(ptr noundef %11510, i64 noundef %11513)
  store i32 %11514, ptr %37, align 4, !tbaa !9
  store i32 128, ptr %38, align 4, !tbaa !9
  %11515 = load i32, ptr %38, align 4, !tbaa !9
  %11516 = load i32, ptr %37, align 4, !tbaa !9
  %11517 = add i32 %11516, %11515
  store i32 %11517, ptr %37, align 4, !tbaa !9
  %11518 = load ptr, ptr %9, align 8, !tbaa !5
  %11519 = load i32, ptr %36, align 4, !tbaa !9
  %11520 = load i32, ptr %37, align 4, !tbaa !9
  %11521 = call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3APassManager0x28hermes0x3A0x3ACodeGenerationSettings0x20const0x260x29(ptr noundef %11518, i32 noundef %11519, i32 noundef %11520)
  store i32 %11521, ptr %36, align 4, !tbaa !9
  %11522 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11522, ptr %19, align 4, !tbaa !9
  store i32 20, ptr %36, align 4, !tbaa !9
  %11523 = load ptr, ptr %9, align 8, !tbaa !5
  %11524 = load i32, ptr %36, align 4, !tbaa !9
  %11525 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11523, i32 noundef %11524)
  store i32 %11525, ptr %36, align 4, !tbaa !9
  %11526 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11526, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11527 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %11527, ptr %20, align 4, !tbaa !9
  store i32 41299, ptr %38, align 4, !tbaa !9
  %11528 = load i32, ptr %38, align 4, !tbaa !9
  %11529 = load i32, ptr %37, align 4, !tbaa !9
  %11530 = add i32 %11529, %11528
  store i32 %11530, ptr %37, align 4, !tbaa !9
  %11531 = load ptr, ptr %9, align 8, !tbaa !5
  %11532 = getelementptr inbounds %struct.w2c_hermes, ptr %11531, i32 0, i32 6
  %11533 = load i32, ptr %36, align 4, !tbaa !9
  %11534 = zext i32 %11533 to i64
  %11535 = add i64 %11534, 8
  %11536 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11532, i64 noundef %11535, i32 noundef %11536)
  %11537 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11537, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11538 = load ptr, ptr %9, align 8, !tbaa !5
  %11539 = getelementptr inbounds %struct.w2c_hermes, ptr %11538, i32 0, i32 6
  %11540 = load i32, ptr %36, align 4, !tbaa !9
  %11541 = zext i32 %11540 to i64
  %11542 = add i64 %11541, 4
  %11543 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11539, i64 noundef %11542, i32 noundef %11543)
  %11544 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11544, ptr %36, align 4, !tbaa !9
  store i32 270584, ptr %37, align 4, !tbaa !9
  %11545 = load ptr, ptr %9, align 8, !tbaa !5
  %11546 = getelementptr inbounds %struct.w2c_hermes, ptr %11545, i32 0, i32 6
  %11547 = load i32, ptr %36, align 4, !tbaa !9
  %11548 = zext i32 %11547 to i64
  %11549 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11546, i64 noundef %11548, i32 noundef %11549)
  %11550 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11550, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %11551 = load ptr, ptr %9, align 8, !tbaa !5
  %11552 = getelementptr inbounds %struct.w2c_hermes, ptr %11551, i32 0, i32 6
  %11553 = load i32, ptr %36, align 4, !tbaa !9
  %11554 = zext i32 %11553 to i64
  %11555 = add i64 %11554, 12
  %11556 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11552, i64 noundef %11555, i32 noundef %11556)
  %11557 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11557, ptr %36, align 4, !tbaa !9
  %11558 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11558, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %11559 = load i32, ptr %38, align 4, !tbaa !9
  %11560 = load i32, ptr %37, align 4, !tbaa !9
  %11561 = add i32 %11560, %11559
  store i32 %11561, ptr %37, align 4, !tbaa !9
  %11562 = load ptr, ptr %9, align 8, !tbaa !5
  %11563 = getelementptr inbounds %struct.w2c_hermes, ptr %11562, i32 0, i32 6
  %11564 = load i32, ptr %36, align 4, !tbaa !9
  %11565 = zext i32 %11564 to i64
  %11566 = add i64 %11565, 16
  %11567 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11563, i64 noundef %11566, i32 noundef %11567)
  %11568 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11568, ptr %36, align 4, !tbaa !9
  %11569 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11569, ptr %37, align 4, !tbaa !9
  %11570 = load ptr, ptr %9, align 8, !tbaa !5
  %11571 = load i32, ptr %36, align 4, !tbaa !9
  %11572 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11570, i32 noundef %11571, i32 noundef %11572)
  store i32 20, ptr %36, align 4, !tbaa !9
  %11573 = load ptr, ptr %9, align 8, !tbaa !5
  %11574 = load i32, ptr %36, align 4, !tbaa !9
  %11575 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11573, i32 noundef %11574)
  store i32 %11575, ptr %36, align 4, !tbaa !9
  %11576 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11576, ptr %18, align 4, !tbaa !9
  %11577 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %11577, ptr %37, align 4, !tbaa !9
  store i32 43306, ptr %38, align 4, !tbaa !9
  %11578 = load i32, ptr %38, align 4, !tbaa !9
  %11579 = load i32, ptr %37, align 4, !tbaa !9
  %11580 = add i32 %11579, %11578
  store i32 %11580, ptr %37, align 4, !tbaa !9
  %11581 = load ptr, ptr %9, align 8, !tbaa !5
  %11582 = getelementptr inbounds %struct.w2c_hermes, ptr %11581, i32 0, i32 6
  %11583 = load i32, ptr %36, align 4, !tbaa !9
  %11584 = zext i32 %11583 to i64
  %11585 = add i64 %11584, 8
  %11586 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11582, i64 noundef %11585, i32 noundef %11586)
  %11587 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11587, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11588 = load ptr, ptr %9, align 8, !tbaa !5
  %11589 = getelementptr inbounds %struct.w2c_hermes, ptr %11588, i32 0, i32 6
  %11590 = load i32, ptr %36, align 4, !tbaa !9
  %11591 = zext i32 %11590 to i64
  %11592 = add i64 %11591, 4
  %11593 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11589, i64 noundef %11592, i32 noundef %11593)
  %11594 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11594, ptr %36, align 4, !tbaa !9
  store i32 270404, ptr %37, align 4, !tbaa !9
  %11595 = load ptr, ptr %9, align 8, !tbaa !5
  %11596 = getelementptr inbounds %struct.w2c_hermes, ptr %11595, i32 0, i32 6
  %11597 = load i32, ptr %36, align 4, !tbaa !9
  %11598 = zext i32 %11597 to i64
  %11599 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11596, i64 noundef %11598, i32 noundef %11599)
  %11600 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11600, ptr %36, align 4, !tbaa !9
  store i32 10, ptr %37, align 4, !tbaa !9
  %11601 = load ptr, ptr %9, align 8, !tbaa !5
  %11602 = getelementptr inbounds %struct.w2c_hermes, ptr %11601, i32 0, i32 6
  %11603 = load i32, ptr %36, align 4, !tbaa !9
  %11604 = zext i32 %11603 to i64
  %11605 = add i64 %11604, 12
  %11606 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11602, i64 noundef %11605, i32 noundef %11606)
  %11607 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11607, ptr %36, align 4, !tbaa !9
  %11608 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11608, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %11609 = load i32, ptr %38, align 4, !tbaa !9
  %11610 = load i32, ptr %37, align 4, !tbaa !9
  %11611 = add i32 %11610, %11609
  store i32 %11611, ptr %37, align 4, !tbaa !9
  %11612 = load ptr, ptr %9, align 8, !tbaa !5
  %11613 = getelementptr inbounds %struct.w2c_hermes, ptr %11612, i32 0, i32 6
  %11614 = load i32, ptr %36, align 4, !tbaa !9
  %11615 = zext i32 %11614 to i64
  %11616 = add i64 %11615, 16
  %11617 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11613, i64 noundef %11616, i32 noundef %11617)
  %11618 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11618, ptr %36, align 4, !tbaa !9
  %11619 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11619, ptr %37, align 4, !tbaa !9
  %11620 = load ptr, ptr %9, align 8, !tbaa !5
  %11621 = load i32, ptr %36, align 4, !tbaa !9
  %11622 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11620, i32 noundef %11621, i32 noundef %11622)
  %11623 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11623, ptr %36, align 4, !tbaa !9
  %11624 = load ptr, ptr %9, align 8, !tbaa !5
  %11625 = getelementptr inbounds %struct.w2c_hermes, ptr %11624, i32 0, i32 6
  %11626 = load i32, ptr %36, align 4, !tbaa !9
  %11627 = zext i32 %11626 to i64
  %11628 = add i64 %11627, 4
  %11629 = call i32 @i32_load8_u(ptr noundef %11625, i64 noundef %11628)
  store i32 %11629, ptr %36, align 4, !tbaa !9
  %11630 = load i32, ptr %36, align 4, !tbaa !9
  %11631 = icmp ne i32 %11630, 0
  br i1 %11631, label %11632, label %11782

11632:                                            ; preds = %11503
  store i32 20, ptr %36, align 4, !tbaa !9
  %11633 = load ptr, ptr %9, align 8, !tbaa !5
  %11634 = load i32, ptr %36, align 4, !tbaa !9
  %11635 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11633, i32 noundef %11634)
  store i32 %11635, ptr %36, align 4, !tbaa !9
  %11636 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11636, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 68954, ptr %38, align 4, !tbaa !9
  %11637 = load i32, ptr %38, align 4, !tbaa !9
  %11638 = load i32, ptr %37, align 4, !tbaa !9
  %11639 = add i32 %11638, %11637
  store i32 %11639, ptr %37, align 4, !tbaa !9
  %11640 = load ptr, ptr %9, align 8, !tbaa !5
  %11641 = getelementptr inbounds %struct.w2c_hermes, ptr %11640, i32 0, i32 6
  %11642 = load i32, ptr %36, align 4, !tbaa !9
  %11643 = zext i32 %11642 to i64
  %11644 = add i64 %11643, 8
  %11645 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11641, i64 noundef %11644, i32 noundef %11645)
  %11646 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11646, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11647 = load ptr, ptr %9, align 8, !tbaa !5
  %11648 = getelementptr inbounds %struct.w2c_hermes, ptr %11647, i32 0, i32 6
  %11649 = load i32, ptr %36, align 4, !tbaa !9
  %11650 = zext i32 %11649 to i64
  %11651 = add i64 %11650, 4
  %11652 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11648, i64 noundef %11651, i32 noundef %11652)
  %11653 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11653, ptr %36, align 4, !tbaa !9
  store i32 271128, ptr %37, align 4, !tbaa !9
  %11654 = load ptr, ptr %9, align 8, !tbaa !5
  %11655 = getelementptr inbounds %struct.w2c_hermes, ptr %11654, i32 0, i32 6
  %11656 = load i32, ptr %36, align 4, !tbaa !9
  %11657 = zext i32 %11656 to i64
  %11658 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11655, i64 noundef %11657, i32 noundef %11658)
  %11659 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11659, ptr %36, align 4, !tbaa !9
  store i32 14, ptr %37, align 4, !tbaa !9
  %11660 = load ptr, ptr %9, align 8, !tbaa !5
  %11661 = getelementptr inbounds %struct.w2c_hermes, ptr %11660, i32 0, i32 6
  %11662 = load i32, ptr %36, align 4, !tbaa !9
  %11663 = zext i32 %11662 to i64
  %11664 = add i64 %11663, 12
  %11665 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11661, i64 noundef %11664, i32 noundef %11665)
  %11666 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11666, ptr %36, align 4, !tbaa !9
  %11667 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11667, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %11668 = load i32, ptr %38, align 4, !tbaa !9
  %11669 = load i32, ptr %37, align 4, !tbaa !9
  %11670 = add i32 %11669, %11668
  store i32 %11670, ptr %37, align 4, !tbaa !9
  %11671 = load ptr, ptr %9, align 8, !tbaa !5
  %11672 = getelementptr inbounds %struct.w2c_hermes, ptr %11671, i32 0, i32 6
  %11673 = load i32, ptr %36, align 4, !tbaa !9
  %11674 = zext i32 %11673 to i64
  %11675 = add i64 %11674, 16
  %11676 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11672, i64 noundef %11675, i32 noundef %11676)
  %11677 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11677, ptr %36, align 4, !tbaa !9
  %11678 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11678, ptr %37, align 4, !tbaa !9
  %11679 = load ptr, ptr %9, align 8, !tbaa !5
  %11680 = load i32, ptr %36, align 4, !tbaa !9
  %11681 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11679, i32 noundef %11680, i32 noundef %11681)
  store i32 20, ptr %36, align 4, !tbaa !9
  %11682 = load ptr, ptr %9, align 8, !tbaa !5
  %11683 = load i32, ptr %36, align 4, !tbaa !9
  %11684 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11682, i32 noundef %11683)
  store i32 %11684, ptr %36, align 4, !tbaa !9
  %11685 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11685, ptr %18, align 4, !tbaa !9
  %11686 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %11686, ptr %37, align 4, !tbaa !9
  store i32 44089, ptr %38, align 4, !tbaa !9
  %11687 = load i32, ptr %38, align 4, !tbaa !9
  %11688 = load i32, ptr %37, align 4, !tbaa !9
  %11689 = add i32 %11688, %11687
  store i32 %11689, ptr %37, align 4, !tbaa !9
  %11690 = load ptr, ptr %9, align 8, !tbaa !5
  %11691 = getelementptr inbounds %struct.w2c_hermes, ptr %11690, i32 0, i32 6
  %11692 = load i32, ptr %36, align 4, !tbaa !9
  %11693 = zext i32 %11692 to i64
  %11694 = add i64 %11693, 8
  %11695 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11691, i64 noundef %11694, i32 noundef %11695)
  %11696 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11696, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11697 = load ptr, ptr %9, align 8, !tbaa !5
  %11698 = getelementptr inbounds %struct.w2c_hermes, ptr %11697, i32 0, i32 6
  %11699 = load i32, ptr %36, align 4, !tbaa !9
  %11700 = zext i32 %11699 to i64
  %11701 = add i64 %11700, 4
  %11702 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11698, i64 noundef %11701, i32 noundef %11702)
  %11703 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11703, ptr %36, align 4, !tbaa !9
  store i32 270424, ptr %37, align 4, !tbaa !9
  %11704 = load ptr, ptr %9, align 8, !tbaa !5
  %11705 = getelementptr inbounds %struct.w2c_hermes, ptr %11704, i32 0, i32 6
  %11706 = load i32, ptr %36, align 4, !tbaa !9
  %11707 = zext i32 %11706 to i64
  %11708 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11705, i64 noundef %11707, i32 noundef %11708)
  %11709 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11709, ptr %36, align 4, !tbaa !9
  store i32 19, ptr %37, align 4, !tbaa !9
  %11710 = load ptr, ptr %9, align 8, !tbaa !5
  %11711 = getelementptr inbounds %struct.w2c_hermes, ptr %11710, i32 0, i32 6
  %11712 = load i32, ptr %36, align 4, !tbaa !9
  %11713 = zext i32 %11712 to i64
  %11714 = add i64 %11713, 12
  %11715 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11711, i64 noundef %11714, i32 noundef %11715)
  %11716 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11716, ptr %36, align 4, !tbaa !9
  %11717 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11717, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %11718 = load i32, ptr %38, align 4, !tbaa !9
  %11719 = load i32, ptr %37, align 4, !tbaa !9
  %11720 = add i32 %11719, %11718
  store i32 %11720, ptr %37, align 4, !tbaa !9
  %11721 = load ptr, ptr %9, align 8, !tbaa !5
  %11722 = getelementptr inbounds %struct.w2c_hermes, ptr %11721, i32 0, i32 6
  %11723 = load i32, ptr %36, align 4, !tbaa !9
  %11724 = zext i32 %11723 to i64
  %11725 = add i64 %11724, 16
  %11726 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11722, i64 noundef %11725, i32 noundef %11726)
  %11727 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11727, ptr %36, align 4, !tbaa !9
  %11728 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11728, ptr %37, align 4, !tbaa !9
  %11729 = load ptr, ptr %9, align 8, !tbaa !5
  %11730 = load i32, ptr %36, align 4, !tbaa !9
  %11731 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11729, i32 noundef %11730, i32 noundef %11731)
  store i32 20, ptr %36, align 4, !tbaa !9
  %11732 = load ptr, ptr %9, align 8, !tbaa !5
  %11733 = load i32, ptr %36, align 4, !tbaa !9
  %11734 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11732, i32 noundef %11733)
  store i32 %11734, ptr %36, align 4, !tbaa !9
  %11735 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11735, ptr %18, align 4, !tbaa !9
  %11736 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %11736, ptr %37, align 4, !tbaa !9
  store i32 87383, ptr %38, align 4, !tbaa !9
  %11737 = load i32, ptr %38, align 4, !tbaa !9
  %11738 = load i32, ptr %37, align 4, !tbaa !9
  %11739 = add i32 %11738, %11737
  store i32 %11739, ptr %37, align 4, !tbaa !9
  %11740 = load ptr, ptr %9, align 8, !tbaa !5
  %11741 = getelementptr inbounds %struct.w2c_hermes, ptr %11740, i32 0, i32 6
  %11742 = load i32, ptr %36, align 4, !tbaa !9
  %11743 = zext i32 %11742 to i64
  %11744 = add i64 %11743, 8
  %11745 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11741, i64 noundef %11744, i32 noundef %11745)
  %11746 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11746, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11747 = load ptr, ptr %9, align 8, !tbaa !5
  %11748 = getelementptr inbounds %struct.w2c_hermes, ptr %11747, i32 0, i32 6
  %11749 = load i32, ptr %36, align 4, !tbaa !9
  %11750 = zext i32 %11749 to i64
  %11751 = add i64 %11750, 4
  %11752 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11748, i64 noundef %11751, i32 noundef %11752)
  %11753 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11753, ptr %36, align 4, !tbaa !9
  store i32 270444, ptr %37, align 4, !tbaa !9
  %11754 = load ptr, ptr %9, align 8, !tbaa !5
  %11755 = getelementptr inbounds %struct.w2c_hermes, ptr %11754, i32 0, i32 6
  %11756 = load i32, ptr %36, align 4, !tbaa !9
  %11757 = zext i32 %11756 to i64
  %11758 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11755, i64 noundef %11757, i32 noundef %11758)
  %11759 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11759, ptr %36, align 4, !tbaa !9
  store i32 26, ptr %37, align 4, !tbaa !9
  %11760 = load ptr, ptr %9, align 8, !tbaa !5
  %11761 = getelementptr inbounds %struct.w2c_hermes, ptr %11760, i32 0, i32 6
  %11762 = load i32, ptr %36, align 4, !tbaa !9
  %11763 = zext i32 %11762 to i64
  %11764 = add i64 %11763, 12
  %11765 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11761, i64 noundef %11764, i32 noundef %11765)
  %11766 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11766, ptr %36, align 4, !tbaa !9
  %11767 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11767, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %11768 = load i32, ptr %38, align 4, !tbaa !9
  %11769 = load i32, ptr %37, align 4, !tbaa !9
  %11770 = add i32 %11769, %11768
  store i32 %11770, ptr %37, align 4, !tbaa !9
  %11771 = load ptr, ptr %9, align 8, !tbaa !5
  %11772 = getelementptr inbounds %struct.w2c_hermes, ptr %11771, i32 0, i32 6
  %11773 = load i32, ptr %36, align 4, !tbaa !9
  %11774 = zext i32 %11773 to i64
  %11775 = add i64 %11774, 16
  %11776 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11772, i64 noundef %11775, i32 noundef %11776)
  %11777 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11777, ptr %36, align 4, !tbaa !9
  %11778 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11778, ptr %37, align 4, !tbaa !9
  %11779 = load ptr, ptr %9, align 8, !tbaa !5
  %11780 = load i32, ptr %36, align 4, !tbaa !9
  %11781 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11779, i32 noundef %11780, i32 noundef %11781)
  br label %11782

11782:                                            ; preds = %11632, %11503
  store i32 20, ptr %36, align 4, !tbaa !9
  %11783 = load ptr, ptr %9, align 8, !tbaa !5
  %11784 = load i32, ptr %36, align 4, !tbaa !9
  %11785 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11783, i32 noundef %11784)
  store i32 %11785, ptr %36, align 4, !tbaa !9
  %11786 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11786, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 41592, ptr %38, align 4, !tbaa !9
  %11787 = load i32, ptr %38, align 4, !tbaa !9
  %11788 = load i32, ptr %37, align 4, !tbaa !9
  %11789 = add i32 %11788, %11787
  store i32 %11789, ptr %37, align 4, !tbaa !9
  %11790 = load ptr, ptr %9, align 8, !tbaa !5
  %11791 = getelementptr inbounds %struct.w2c_hermes, ptr %11790, i32 0, i32 6
  %11792 = load i32, ptr %36, align 4, !tbaa !9
  %11793 = zext i32 %11792 to i64
  %11794 = add i64 %11793, 8
  %11795 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11791, i64 noundef %11794, i32 noundef %11795)
  %11796 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11796, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11797 = load ptr, ptr %9, align 8, !tbaa !5
  %11798 = getelementptr inbounds %struct.w2c_hermes, ptr %11797, i32 0, i32 6
  %11799 = load i32, ptr %36, align 4, !tbaa !9
  %11800 = zext i32 %11799 to i64
  %11801 = add i64 %11800, 4
  %11802 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11798, i64 noundef %11801, i32 noundef %11802)
  %11803 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11803, ptr %36, align 4, !tbaa !9
  store i32 270464, ptr %37, align 4, !tbaa !9
  %11804 = load ptr, ptr %9, align 8, !tbaa !5
  %11805 = getelementptr inbounds %struct.w2c_hermes, ptr %11804, i32 0, i32 6
  %11806 = load i32, ptr %36, align 4, !tbaa !9
  %11807 = zext i32 %11806 to i64
  %11808 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11805, i64 noundef %11807, i32 noundef %11808)
  %11809 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11809, ptr %36, align 4, !tbaa !9
  store i32 14, ptr %37, align 4, !tbaa !9
  %11810 = load ptr, ptr %9, align 8, !tbaa !5
  %11811 = getelementptr inbounds %struct.w2c_hermes, ptr %11810, i32 0, i32 6
  %11812 = load i32, ptr %36, align 4, !tbaa !9
  %11813 = zext i32 %11812 to i64
  %11814 = add i64 %11813, 12
  %11815 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11811, i64 noundef %11814, i32 noundef %11815)
  %11816 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11816, ptr %36, align 4, !tbaa !9
  %11817 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11817, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %11818 = load i32, ptr %38, align 4, !tbaa !9
  %11819 = load i32, ptr %37, align 4, !tbaa !9
  %11820 = add i32 %11819, %11818
  store i32 %11820, ptr %37, align 4, !tbaa !9
  %11821 = load ptr, ptr %9, align 8, !tbaa !5
  %11822 = getelementptr inbounds %struct.w2c_hermes, ptr %11821, i32 0, i32 6
  %11823 = load i32, ptr %36, align 4, !tbaa !9
  %11824 = zext i32 %11823 to i64
  %11825 = add i64 %11824, 16
  %11826 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11822, i64 noundef %11825, i32 noundef %11826)
  %11827 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11827, ptr %36, align 4, !tbaa !9
  %11828 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11828, ptr %37, align 4, !tbaa !9
  %11829 = load ptr, ptr %9, align 8, !tbaa !5
  %11830 = load i32, ptr %36, align 4, !tbaa !9
  %11831 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11829, i32 noundef %11830, i32 noundef %11831)
  %11832 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11832, ptr %36, align 4, !tbaa !9
  %11833 = load ptr, ptr %9, align 8, !tbaa !5
  %11834 = getelementptr inbounds %struct.w2c_hermes, ptr %11833, i32 0, i32 6
  %11835 = load i32, ptr %36, align 4, !tbaa !9
  %11836 = zext i32 %11835 to i64
  %11837 = add i64 %11836, 7
  %11838 = call i32 @i32_load8_u(ptr noundef %11834, i64 noundef %11837)
  store i32 %11838, ptr %36, align 4, !tbaa !9
  %11839 = load i32, ptr %36, align 4, !tbaa !9
  %11840 = icmp ne i32 %11839, 0
  br i1 %11840, label %11841, label %11880

11841:                                            ; preds = %11782
  store i32 16, ptr %36, align 4, !tbaa !9
  %11842 = load ptr, ptr %9, align 8, !tbaa !5
  %11843 = load i32, ptr %36, align 4, !tbaa !9
  %11844 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11842, i32 noundef %11843)
  store i32 %11844, ptr %36, align 4, !tbaa !9
  %11845 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11845, ptr %18, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  store i32 25574, ptr %38, align 4, !tbaa !9
  %11846 = load i32, ptr %38, align 4, !tbaa !9
  %11847 = load i32, ptr %37, align 4, !tbaa !9
  %11848 = add i32 %11847, %11846
  store i32 %11848, ptr %37, align 4, !tbaa !9
  %11849 = load ptr, ptr %9, align 8, !tbaa !5
  %11850 = getelementptr inbounds %struct.w2c_hermes, ptr %11849, i32 0, i32 6
  %11851 = load i32, ptr %36, align 4, !tbaa !9
  %11852 = zext i32 %11851 to i64
  %11853 = add i64 %11852, 8
  %11854 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11850, i64 noundef %11853, i32 noundef %11854)
  %11855 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11855, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11856 = load ptr, ptr %9, align 8, !tbaa !5
  %11857 = getelementptr inbounds %struct.w2c_hermes, ptr %11856, i32 0, i32 6
  %11858 = load i32, ptr %36, align 4, !tbaa !9
  %11859 = zext i32 %11858 to i64
  %11860 = add i64 %11859, 4
  %11861 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11857, i64 noundef %11860, i32 noundef %11861)
  %11862 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11862, ptr %36, align 4, !tbaa !9
  store i32 271148, ptr %37, align 4, !tbaa !9
  %11863 = load ptr, ptr %9, align 8, !tbaa !5
  %11864 = getelementptr inbounds %struct.w2c_hermes, ptr %11863, i32 0, i32 6
  %11865 = load i32, ptr %36, align 4, !tbaa !9
  %11866 = zext i32 %11865 to i64
  %11867 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11864, i64 noundef %11866, i32 noundef %11867)
  %11868 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11868, ptr %36, align 4, !tbaa !9
  store i32 18, ptr %37, align 4, !tbaa !9
  %11869 = load ptr, ptr %9, align 8, !tbaa !5
  %11870 = getelementptr inbounds %struct.w2c_hermes, ptr %11869, i32 0, i32 6
  %11871 = load i32, ptr %36, align 4, !tbaa !9
  %11872 = zext i32 %11871 to i64
  %11873 = add i64 %11872, 12
  %11874 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %11870, i64 noundef %11873, i32 noundef %11874)
  %11875 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11875, ptr %36, align 4, !tbaa !9
  %11876 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11876, ptr %37, align 4, !tbaa !9
  %11877 = load ptr, ptr %9, align 8, !tbaa !5
  %11878 = load i32, ptr %36, align 4, !tbaa !9
  %11879 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %11877, i32 noundef %11878, i32 noundef %11879)
  br label %11880

11880:                                            ; preds = %11841, %11782
  %11881 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %11881, ptr %36, align 4, !tbaa !9
  %11882 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11882, ptr %37, align 4, !tbaa !9
  %11883 = load ptr, ptr %9, align 8, !tbaa !5
  %11884 = load i32, ptr %36, align 4, !tbaa !9
  %11885 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %11883, i32 noundef %11884, i32 noundef %11885)
  %11886 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11886, ptr %36, align 4, !tbaa !9
  %11887 = load ptr, ptr %9, align 8, !tbaa !5
  %11888 = getelementptr inbounds %struct.w2c_hermes, ptr %11887, i32 0, i32 6
  %11889 = load i32, ptr %36, align 4, !tbaa !9
  %11890 = zext i32 %11889 to i64
  %11891 = call i32 @i32_load(ptr noundef %11888, i64 noundef %11890)
  store i32 %11891, ptr %36, align 4, !tbaa !9
  %11892 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11892, ptr %18, align 4, !tbaa !9
  store i32 8, ptr %37, align 4, !tbaa !9
  %11893 = load i32, ptr %36, align 4, !tbaa !9
  %11894 = load i32, ptr %37, align 4, !tbaa !9
  %11895 = icmp eq i32 %11893, %11894
  %11896 = zext i1 %11895 to i32
  store i32 %11896, ptr %36, align 4, !tbaa !9
  %11897 = load i32, ptr %36, align 4, !tbaa !9
  %11898 = icmp ne i32 %11897, 0
  br i1 %11898, label %11899, label %11913

11899:                                            ; preds = %11880
  %11900 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11900, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %11901 = load i32, ptr %37, align 4, !tbaa !9
  %11902 = load i32, ptr %36, align 4, !tbaa !9
  %11903 = add i32 %11902, %11901
  store i32 %11903, ptr %36, align 4, !tbaa !9
  %11904 = load ptr, ptr %9, align 8, !tbaa !5
  %11905 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Adump0x280x29(ptr noundef %11904, i32 noundef %11905)
  %11906 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %11906, ptr %36, align 4, !tbaa !9
  %11907 = load ptr, ptr %9, align 8, !tbaa !5
  %11908 = getelementptr inbounds %struct.w2c_hermes, ptr %11907, i32 0, i32 6
  %11909 = load i32, ptr %36, align 4, !tbaa !9
  %11910 = zext i32 %11909 to i64
  %11911 = call i32 @i32_load(ptr noundef %11908, i64 noundef %11910)
  store i32 %11911, ptr %36, align 4, !tbaa !9
  %11912 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11912, ptr %18, align 4, !tbaa !9
  br label %11913

11913:                                            ; preds = %11899, %11880
  %11914 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11914, ptr %36, align 4, !tbaa !9
  store i32 9, ptr %37, align 4, !tbaa !9
  %11915 = load i32, ptr %36, align 4, !tbaa !9
  %11916 = load i32, ptr %37, align 4, !tbaa !9
  %11917 = icmp eq i32 %11915, %11916
  %11918 = zext i1 %11917 to i32
  store i32 %11918, ptr %36, align 4, !tbaa !9
  %11919 = load i32, ptr %36, align 4, !tbaa !9
  %11920 = icmp ne i32 %11919, 0
  br i1 %11920, label %11921, label %11928

11921:                                            ; preds = %11913
  %11922 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %11922, ptr %36, align 4, !tbaa !9
  %11923 = load ptr, ptr %9, align 8, !tbaa !5
  %11924 = call i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef %11923)
  store i32 %11924, ptr %37, align 4, !tbaa !9
  %11925 = load ptr, ptr %9, align 8, !tbaa !5
  %11926 = load i32, ptr %36, align 4, !tbaa !9
  %11927 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef %11925, i32 noundef %11926, i32 noundef %11927)
  br label %11928

11928:                                            ; preds = %11921, %11913
  %11929 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11929, ptr %36, align 4, !tbaa !9
  %11930 = load ptr, ptr %9, align 8, !tbaa !5
  %11931 = getelementptr inbounds %struct.w2c_hermes, ptr %11930, i32 0, i32 6
  %11932 = load i32, ptr %36, align 4, !tbaa !9
  %11933 = zext i32 %11932 to i64
  %11934 = add i64 %11933, 1652
  %11935 = call i32 @i32_load(ptr noundef %11931, i64 noundef %11934)
  store i32 %11935, ptr %36, align 4, !tbaa !9
  %11936 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11936, ptr %20, align 4, !tbaa !9
  %11937 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11937, ptr %36, align 4, !tbaa !9
  %11938 = load ptr, ptr %9, align 8, !tbaa !5
  %11939 = getelementptr inbounds %struct.w2c_hermes, ptr %11938, i32 0, i32 6
  %11940 = load i32, ptr %36, align 4, !tbaa !9
  %11941 = zext i32 %11940 to i64
  %11942 = add i64 %11941, 1628
  %11943 = call i32 @i32_load(ptr noundef %11939, i64 noundef %11942)
  store i32 %11943, ptr %36, align 4, !tbaa !9
  %11944 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11944, ptr %24, align 4, !tbaa !9
  %11945 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %11945, ptr %36, align 4, !tbaa !9
  %11946 = load ptr, ptr %9, align 8, !tbaa !5
  %11947 = getelementptr inbounds %struct.w2c_hermes, ptr %11946, i32 0, i32 6
  %11948 = load i32, ptr %36, align 4, !tbaa !9
  %11949 = zext i32 %11948 to i64
  %11950 = add i64 %11949, 1656
  %11951 = call i32 @i32_load(ptr noundef %11947, i64 noundef %11950)
  store i32 %11951, ptr %36, align 4, !tbaa !9
  %11952 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11952, ptr %29, align 4, !tbaa !9
  store i32 124, ptr %36, align 4, !tbaa !9
  %11953 = load ptr, ptr %9, align 8, !tbaa !5
  %11954 = load i32, ptr %36, align 4, !tbaa !9
  %11955 = call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %11953, i32 noundef %11954)
  store i32 %11955, ptr %36, align 4, !tbaa !9
  %11956 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %11956, ptr %18, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11957 = load ptr, ptr %9, align 8, !tbaa !5
  %11958 = getelementptr inbounds %struct.w2c_hermes, ptr %11957, i32 0, i32 6
  %11959 = load i32, ptr %36, align 4, !tbaa !9
  %11960 = zext i32 %11959 to i64
  %11961 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11958, i64 noundef %11960, i64 noundef %11961)
  %11962 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11962, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11963 = load ptr, ptr %9, align 8, !tbaa !5
  %11964 = getelementptr inbounds %struct.w2c_hermes, ptr %11963, i32 0, i32 6
  %11965 = load i32, ptr %36, align 4, !tbaa !9
  %11966 = zext i32 %11965 to i64
  %11967 = add i64 %11966, 36
  %11968 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11964, i64 noundef %11967, i64 noundef %11968)
  %11969 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11969, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11970 = load ptr, ptr %9, align 8, !tbaa !5
  %11971 = getelementptr inbounds %struct.w2c_hermes, ptr %11970, i32 0, i32 6
  %11972 = load i32, ptr %36, align 4, !tbaa !9
  %11973 = zext i32 %11972 to i64
  %11974 = add i64 %11973, 20
  %11975 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11971, i64 noundef %11974, i64 noundef %11975)
  %11976 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11976, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11977 = load ptr, ptr %9, align 8, !tbaa !5
  %11978 = getelementptr inbounds %struct.w2c_hermes, ptr %11977, i32 0, i32 6
  %11979 = load i32, ptr %36, align 4, !tbaa !9
  %11980 = zext i32 %11979 to i64
  %11981 = add i64 %11980, 112
  %11982 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11978, i64 noundef %11981, i64 noundef %11982)
  %11983 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11983, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %11984 = load ptr, ptr %9, align 8, !tbaa !5
  %11985 = getelementptr inbounds %struct.w2c_hermes, ptr %11984, i32 0, i32 6
  %11986 = load i32, ptr %36, align 4, !tbaa !9
  %11987 = zext i32 %11986 to i64
  %11988 = add i64 %11987, 100
  %11989 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store8(ptr noundef %11985, i64 noundef %11988, i32 noundef %11989)
  %11990 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11990, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11991 = load ptr, ptr %9, align 8, !tbaa !5
  %11992 = getelementptr inbounds %struct.w2c_hermes, ptr %11991, i32 0, i32 6
  %11993 = load i32, ptr %36, align 4, !tbaa !9
  %11994 = zext i32 %11993 to i64
  %11995 = add i64 %11994, 68
  %11996 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11992, i64 noundef %11995, i64 noundef %11996)
  %11997 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %11997, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %11998 = load ptr, ptr %9, align 8, !tbaa !5
  %11999 = getelementptr inbounds %struct.w2c_hermes, ptr %11998, i32 0, i32 6
  %12000 = load i32, ptr %36, align 4, !tbaa !9
  %12001 = zext i32 %12000 to i64
  %12002 = add i64 %12001, 5
  %12003 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %11999, i64 noundef %12002, i64 noundef %12003)
  %12004 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12004, ptr %36, align 4, !tbaa !9
  %12005 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %12005, ptr %37, align 4, !tbaa !9
  %12006 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %12006, ptr %38, align 4, !tbaa !9
  %12007 = load i32, ptr %29, align 4, !tbaa !9
  store i32 %12007, ptr %39, align 4, !tbaa !9
  %12008 = load i32, ptr %39, align 4, !tbaa !9
  %12009 = load i32, ptr %38, align 4, !tbaa !9
  %12010 = add i32 %12009, %12008
  store i32 %12010, ptr %38, align 4, !tbaa !9
  %12011 = load i32, ptr %38, align 4, !tbaa !9
  %12012 = load i32, ptr %37, align 4, !tbaa !9
  %12013 = add i32 %12012, %12011
  store i32 %12013, ptr %37, align 4, !tbaa !9
  %12014 = load ptr, ptr %9, align 8, !tbaa !5
  %12015 = getelementptr inbounds %struct.w2c_hermes, ptr %12014, i32 0, i32 6
  %12016 = load i32, ptr %36, align 4, !tbaa !9
  %12017 = zext i32 %12016 to i64
  %12018 = add i64 %12017, 32
  %12019 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12015, i64 noundef %12018, i32 noundef %12019)
  %12020 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12020, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12021 = load ptr, ptr %9, align 8, !tbaa !5
  %12022 = getelementptr inbounds %struct.w2c_hermes, ptr %12021, i32 0, i32 6
  %12023 = load i32, ptr %36, align 4, !tbaa !9
  %12024 = zext i32 %12023 to i64
  %12025 = add i64 %12024, 28
  %12026 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12022, i64 noundef %12025, i32 noundef %12026)
  %12027 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12027, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12028 = load ptr, ptr %9, align 8, !tbaa !5
  %12029 = getelementptr inbounds %struct.w2c_hermes, ptr %12028, i32 0, i32 6
  %12030 = load i32, ptr %36, align 4, !tbaa !9
  %12031 = zext i32 %12030 to i64
  %12032 = add i64 %12031, 44
  %12033 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12029, i64 noundef %12032, i64 noundef %12033)
  %12034 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12034, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12035 = load ptr, ptr %9, align 8, !tbaa !5
  %12036 = getelementptr inbounds %struct.w2c_hermes, ptr %12035, i32 0, i32 6
  %12037 = load i32, ptr %36, align 4, !tbaa !9
  %12038 = zext i32 %12037 to i64
  %12039 = add i64 %12038, 52
  %12040 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12036, i64 noundef %12039, i64 noundef %12040)
  %12041 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12041, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12042 = load ptr, ptr %9, align 8, !tbaa !5
  %12043 = getelementptr inbounds %struct.w2c_hermes, ptr %12042, i32 0, i32 6
  %12044 = load i32, ptr %36, align 4, !tbaa !9
  %12045 = zext i32 %12044 to i64
  %12046 = add i64 %12045, 120
  %12047 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12043, i64 noundef %12046, i32 noundef %12047)
  %12048 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12048, ptr %36, align 4, !tbaa !9
  store i64 -4294967296, ptr %43, align 8, !tbaa !11
  %12049 = load ptr, ptr %9, align 8, !tbaa !5
  %12050 = getelementptr inbounds %struct.w2c_hermes, ptr %12049, i32 0, i32 6
  %12051 = load i32, ptr %36, align 4, !tbaa !9
  %12052 = zext i32 %12051 to i64
  %12053 = add i64 %12052, 60
  %12054 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12050, i64 noundef %12053, i64 noundef %12054)
  %12055 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12055, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12056 = load ptr, ptr %9, align 8, !tbaa !5
  %12057 = getelementptr inbounds %struct.w2c_hermes, ptr %12056, i32 0, i32 6
  %12058 = load i32, ptr %36, align 4, !tbaa !9
  %12059 = zext i32 %12058 to i64
  %12060 = add i64 %12059, 76
  %12061 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12057, i64 noundef %12060, i64 noundef %12061)
  %12062 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12062, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12063 = load ptr, ptr %9, align 8, !tbaa !5
  %12064 = getelementptr inbounds %struct.w2c_hermes, ptr %12063, i32 0, i32 6
  %12065 = load i32, ptr %36, align 4, !tbaa !9
  %12066 = zext i32 %12065 to i64
  %12067 = add i64 %12066, 84
  %12068 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12064, i64 noundef %12067, i64 noundef %12068)
  %12069 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12069, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12070 = load ptr, ptr %9, align 8, !tbaa !5
  %12071 = getelementptr inbounds %struct.w2c_hermes, ptr %12070, i32 0, i32 6
  %12072 = load i32, ptr %36, align 4, !tbaa !9
  %12073 = zext i32 %12072 to i64
  %12074 = add i64 %12073, 89
  %12075 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12071, i64 noundef %12074, i64 noundef %12075)
  %12076 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12076, ptr %36, align 4, !tbaa !9
  %12077 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12077, ptr %37, align 4, !tbaa !9
  store i32 2232, ptr %38, align 4, !tbaa !9
  %12078 = load i32, ptr %38, align 4, !tbaa !9
  %12079 = load i32, ptr %37, align 4, !tbaa !9
  %12080 = add i32 %12079, %12078
  store i32 %12080, ptr %37, align 4, !tbaa !9
  %12081 = load ptr, ptr %9, align 8, !tbaa !5
  %12082 = getelementptr inbounds %struct.w2c_hermes, ptr %12081, i32 0, i32 6
  %12083 = load i32, ptr %36, align 4, !tbaa !9
  %12084 = zext i32 %12083 to i64
  %12085 = add i64 %12084, 16
  %12086 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12082, i64 noundef %12085, i32 noundef %12086)
  %12087 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12087, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12088 = load ptr, ptr %9, align 8, !tbaa !5
  %12089 = getelementptr inbounds %struct.w2c_hermes, ptr %12088, i32 0, i32 6
  %12090 = load i32, ptr %36, align 4, !tbaa !9
  %12091 = zext i32 %12090 to i64
  %12092 = add i64 %12091, 107
  %12093 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12089, i64 noundef %12092, i32 noundef %12093)
  %12094 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12094, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12095 = load ptr, ptr %9, align 8, !tbaa !5
  %12096 = getelementptr inbounds %struct.w2c_hermes, ptr %12095, i32 0, i32 6
  %12097 = load i32, ptr %36, align 4, !tbaa !9
  %12098 = zext i32 %12097 to i64
  %12099 = add i64 %12098, 104
  %12100 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12096, i64 noundef %12099, i32 noundef %12100)
  %12101 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12101, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12102 = load ptr, ptr %9, align 8, !tbaa !5
  %12103 = getelementptr inbounds %struct.w2c_hermes, ptr %12102, i32 0, i32 6
  %12104 = load i32, ptr %36, align 4, !tbaa !9
  %12105 = zext i32 %12104 to i64
  %12106 = add i64 %12105, 120
  %12107 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12103, i64 noundef %12106, i32 noundef %12107)
  %12108 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12108, ptr %36, align 4, !tbaa !9
  %12109 = load ptr, ptr %9, align 8, !tbaa !5
  %12110 = getelementptr inbounds %struct.w2c_hermes, ptr %12109, i32 0, i32 6
  %12111 = load i32, ptr %36, align 4, !tbaa !9
  %12112 = zext i32 %12111 to i64
  %12113 = add i64 %12112, 2752
  %12114 = call i32 @i32_load(ptr noundef %12110, i64 noundef %12113)
  store i32 %12114, ptr %36, align 4, !tbaa !9
  %12115 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12115, ptr %20, align 4, !tbaa !9
  %12116 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12116, ptr %36, align 4, !tbaa !9
  %12117 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12117, ptr %37, align 4, !tbaa !9
  %12118 = load ptr, ptr %9, align 8, !tbaa !5
  %12119 = getelementptr inbounds %struct.w2c_hermes, ptr %12118, i32 0, i32 6
  %12120 = load i32, ptr %36, align 4, !tbaa !9
  %12121 = zext i32 %12120 to i64
  %12122 = add i64 %12121, 2752
  %12123 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12119, i64 noundef %12122, i32 noundef %12123)
  %12124 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %12124, ptr %36, align 4, !tbaa !9
  %12125 = load i32, ptr %36, align 4, !tbaa !9
  %12126 = icmp ne i32 %12125, 0
  %12127 = xor i1 %12126, true
  %12128 = zext i1 %12127 to i32
  store i32 %12128, ptr %36, align 4, !tbaa !9
  %12129 = load i32, ptr %36, align 4, !tbaa !9
  %12130 = icmp ne i32 %12129, 0
  br i1 %12130, label %12131, label %12132

12131:                                            ; preds = %11928
  br label %12173

12132:                                            ; preds = %11928
  %12133 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12133, ptr %36, align 4, !tbaa !9
  store i32 2752, ptr %37, align 4, !tbaa !9
  %12134 = load i32, ptr %37, align 4, !tbaa !9
  %12135 = load i32, ptr %36, align 4, !tbaa !9
  %12136 = add i32 %12135, %12134
  store i32 %12136, ptr %36, align 4, !tbaa !9
  %12137 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %12137, ptr %37, align 4, !tbaa !9
  %12138 = load ptr, ptr %9, align 8, !tbaa !5
  %12139 = load i32, ptr %36, align 4, !tbaa !9
  %12140 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef %12138, i32 noundef %12139, i32 noundef %12140)
  %12141 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12141, ptr %36, align 4, !tbaa !9
  %12142 = load ptr, ptr %9, align 8, !tbaa !5
  %12143 = getelementptr inbounds %struct.w2c_hermes, ptr %12142, i32 0, i32 6
  %12144 = load i32, ptr %36, align 4, !tbaa !9
  %12145 = zext i32 %12144 to i64
  %12146 = add i64 %12145, 120
  %12147 = call i32 @i32_load(ptr noundef %12143, i64 noundef %12146)
  store i32 %12147, ptr %36, align 4, !tbaa !9
  %12148 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12148, ptr %18, align 4, !tbaa !9
  %12149 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12149, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12150 = load ptr, ptr %9, align 8, !tbaa !5
  %12151 = getelementptr inbounds %struct.w2c_hermes, ptr %12150, i32 0, i32 6
  %12152 = load i32, ptr %36, align 4, !tbaa !9
  %12153 = zext i32 %12152 to i64
  %12154 = add i64 %12153, 120
  %12155 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12151, i64 noundef %12154, i32 noundef %12155)
  %12156 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12156, ptr %36, align 4, !tbaa !9
  %12157 = load i32, ptr %36, align 4, !tbaa !9
  %12158 = icmp ne i32 %12157, 0
  %12159 = xor i1 %12158, true
  %12160 = zext i1 %12159 to i32
  store i32 %12160, ptr %36, align 4, !tbaa !9
  %12161 = load i32, ptr %36, align 4, !tbaa !9
  %12162 = icmp ne i32 %12161, 0
  br i1 %12162, label %12163, label %12164

12163:                                            ; preds = %12132
  br label %12173

12164:                                            ; preds = %12132
  %12165 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12165, ptr %36, align 4, !tbaa !9
  store i32 120, ptr %37, align 4, !tbaa !9
  %12166 = load i32, ptr %37, align 4, !tbaa !9
  %12167 = load i32, ptr %36, align 4, !tbaa !9
  %12168 = add i32 %12167, %12166
  store i32 %12168, ptr %36, align 4, !tbaa !9
  %12169 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12169, ptr %37, align 4, !tbaa !9
  %12170 = load ptr, ptr %9, align 8, !tbaa !5
  %12171 = load i32, ptr %36, align 4, !tbaa !9
  %12172 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef %12170, i32 noundef %12171, i32 noundef %12172)
  br label %12173

12173:                                            ; preds = %12164, %12163, %12131
  %12174 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12174, ptr %36, align 4, !tbaa !9
  %12175 = load i32, ptr %32, align 4, !tbaa !9
  store i32 %12175, ptr %37, align 4, !tbaa !9
  %12176 = load ptr, ptr %9, align 8, !tbaa !5
  %12177 = getelementptr inbounds %struct.w2c_hermes, ptr %12176, i32 0, i32 6
  %12178 = load i32, ptr %36, align 4, !tbaa !9
  %12179 = zext i32 %12178 to i64
  %12180 = add i64 %12179, 136
  %12181 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12177, i64 noundef %12180, i32 noundef %12181)
  %12182 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12182, ptr %36, align 4, !tbaa !9
  %12183 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12183, ptr %37, align 4, !tbaa !9
  %12184 = load ptr, ptr %9, align 8, !tbaa !5
  %12185 = getelementptr inbounds %struct.w2c_hermes, ptr %12184, i32 0, i32 6
  %12186 = load i32, ptr %37, align 4, !tbaa !9
  %12187 = zext i32 %12186 to i64
  %12188 = add i64 %12187, 2752
  %12189 = call i32 @i32_load(ptr noundef %12185, i64 noundef %12188)
  store i32 %12189, ptr %37, align 4, !tbaa !9
  %12190 = load ptr, ptr %9, align 8, !tbaa !5
  %12191 = getelementptr inbounds %struct.w2c_hermes, ptr %12190, i32 0, i32 6
  %12192 = load i32, ptr %36, align 4, !tbaa !9
  %12193 = zext i32 %12192 to i64
  %12194 = add i64 %12193, 124
  %12195 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12191, i64 noundef %12194, i32 noundef %12195)
  %12196 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12196, ptr %36, align 4, !tbaa !9
  %12197 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12197, ptr %37, align 4, !tbaa !9
  %12198 = load ptr, ptr %9, align 8, !tbaa !5
  %12199 = getelementptr inbounds %struct.w2c_hermes, ptr %12198, i32 0, i32 6
  %12200 = load i32, ptr %36, align 4, !tbaa !9
  %12201 = zext i32 %12200 to i64
  %12202 = add i64 %12201, 120
  %12203 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12199, i64 noundef %12202, i32 noundef %12203)
  %12204 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12204, ptr %36, align 4, !tbaa !9
  %12205 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12205, ptr %37, align 4, !tbaa !9
  store i32 1720, ptr %38, align 4, !tbaa !9
  %12206 = load i32, ptr %38, align 4, !tbaa !9
  %12207 = load i32, ptr %37, align 4, !tbaa !9
  %12208 = add i32 %12207, %12206
  store i32 %12208, ptr %37, align 4, !tbaa !9
  %12209 = load ptr, ptr %9, align 8, !tbaa !5
  %12210 = getelementptr inbounds %struct.w2c_hermes, ptr %12209, i32 0, i32 6
  %12211 = load i32, ptr %36, align 4, !tbaa !9
  %12212 = zext i32 %12211 to i64
  %12213 = add i64 %12212, 132
  %12214 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12210, i64 noundef %12213, i32 noundef %12214)
  %12215 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12215, ptr %36, align 4, !tbaa !9
  %12216 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12216, ptr %37, align 4, !tbaa !9
  store i32 520, ptr %38, align 4, !tbaa !9
  %12217 = load i32, ptr %38, align 4, !tbaa !9
  %12218 = load i32, ptr %37, align 4, !tbaa !9
  %12219 = add i32 %12218, %12217
  store i32 %12219, ptr %37, align 4, !tbaa !9
  %12220 = load ptr, ptr %9, align 8, !tbaa !5
  %12221 = getelementptr inbounds %struct.w2c_hermes, ptr %12220, i32 0, i32 6
  %12222 = load i32, ptr %36, align 4, !tbaa !9
  %12223 = zext i32 %12222 to i64
  %12224 = add i64 %12223, 128
  %12225 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12221, i64 noundef %12224, i32 noundef %12225)
  %12226 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %12226, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12227 = load ptr, ptr %9, align 8, !tbaa !5
  %12228 = getelementptr inbounds %struct.w2c_hermes, ptr %12227, i32 0, i32 6
  %12229 = load i32, ptr %36, align 4, !tbaa !9
  %12230 = zext i32 %12229 to i64
  %12231 = add i64 %12230, 24
  %12232 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12228, i64 noundef %12231, i64 noundef %12232)
  %12233 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %12233, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12234 = load ptr, ptr %9, align 8, !tbaa !5
  %12235 = getelementptr inbounds %struct.w2c_hermes, ptr %12234, i32 0, i32 6
  %12236 = load i32, ptr %36, align 4, !tbaa !9
  %12237 = zext i32 %12236 to i64
  %12238 = add i64 %12237, 16
  %12239 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12235, i64 noundef %12238, i64 noundef %12239)
  %12240 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %12240, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12241 = load ptr, ptr %9, align 8, !tbaa !5
  %12242 = getelementptr inbounds %struct.w2c_hermes, ptr %12241, i32 0, i32 6
  %12243 = load i32, ptr %36, align 4, !tbaa !9
  %12244 = zext i32 %12243 to i64
  %12245 = add i64 %12244, 8
  %12246 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12242, i64 noundef %12245, i64 noundef %12246)
  %12247 = load i32, ptr %27, align 4, !tbaa !9
  store i32 %12247, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12248 = load ptr, ptr %9, align 8, !tbaa !5
  %12249 = getelementptr inbounds %struct.w2c_hermes, ptr %12248, i32 0, i32 6
  %12250 = load i32, ptr %36, align 4, !tbaa !9
  %12251 = zext i32 %12250 to i64
  %12252 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12249, i64 noundef %12251, i64 noundef %12252)
  %12253 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12253, ptr %36, align 4, !tbaa !9
  store i64 34359738368, ptr %43, align 8, !tbaa !11
  %12254 = load ptr, ptr %9, align 8, !tbaa !5
  %12255 = getelementptr inbounds %struct.w2c_hermes, ptr %12254, i32 0, i32 6
  %12256 = load i32, ptr %36, align 4, !tbaa !9
  %12257 = zext i32 %12256 to i64
  %12258 = add i64 %12257, 176
  %12259 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12255, i64 noundef %12258, i64 noundef %12259)
  %12260 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12260, ptr %36, align 4, !tbaa !9
  %12261 = load i32, ptr %12, align 4, !tbaa !9
  store i32 %12261, ptr %37, align 4, !tbaa !9
  %12262 = load ptr, ptr %9, align 8, !tbaa !5
  %12263 = getelementptr inbounds %struct.w2c_hermes, ptr %12262, i32 0, i32 6
  %12264 = load i32, ptr %36, align 4, !tbaa !9
  %12265 = zext i32 %12264 to i64
  %12266 = add i64 %12265, 172
  %12267 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12263, i64 noundef %12266, i32 noundef %12267)
  %12268 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12268, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12269 = load ptr, ptr %9, align 8, !tbaa !5
  %12270 = getelementptr inbounds %struct.w2c_hermes, ptr %12269, i32 0, i32 6
  %12271 = load i32, ptr %36, align 4, !tbaa !9
  %12272 = zext i32 %12271 to i64
  %12273 = add i64 %12272, 24
  %12274 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12270, i64 noundef %12273, i64 noundef %12274)
  %12275 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12275, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12276 = load ptr, ptr %9, align 8, !tbaa !5
  %12277 = getelementptr inbounds %struct.w2c_hermes, ptr %12276, i32 0, i32 6
  %12278 = load i32, ptr %36, align 4, !tbaa !9
  %12279 = zext i32 %12278 to i64
  %12280 = add i64 %12279, 16
  %12281 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12277, i64 noundef %12280, i64 noundef %12281)
  %12282 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12282, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12283 = load ptr, ptr %9, align 8, !tbaa !5
  %12284 = getelementptr inbounds %struct.w2c_hermes, ptr %12283, i32 0, i32 6
  %12285 = load i32, ptr %36, align 4, !tbaa !9
  %12286 = zext i32 %12285 to i64
  %12287 = add i64 %12286, 8
  %12288 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12284, i64 noundef %12287, i64 noundef %12288)
  %12289 = load i32, ptr %25, align 4, !tbaa !9
  store i32 %12289, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12290 = load ptr, ptr %9, align 8, !tbaa !5
  %12291 = getelementptr inbounds %struct.w2c_hermes, ptr %12290, i32 0, i32 6
  %12292 = load i32, ptr %36, align 4, !tbaa !9
  %12293 = zext i32 %12292 to i64
  %12294 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12291, i64 noundef %12293, i64 noundef %12294)
  %12295 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12295, ptr %36, align 4, !tbaa !9
  %12296 = load i32, ptr %13, align 4, !tbaa !9
  store i32 %12296, ptr %37, align 4, !tbaa !9
  %12297 = load ptr, ptr %9, align 8, !tbaa !5
  %12298 = getelementptr inbounds %struct.w2c_hermes, ptr %12297, i32 0, i32 6
  %12299 = load i32, ptr %36, align 4, !tbaa !9
  %12300 = zext i32 %12299 to i64
  %12301 = add i64 %12300, 312
  %12302 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12298, i64 noundef %12301, i32 noundef %12302)
  %12303 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %12303, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12304 = load ptr, ptr %9, align 8, !tbaa !5
  %12305 = getelementptr inbounds %struct.w2c_hermes, ptr %12304, i32 0, i32 6
  %12306 = load i32, ptr %36, align 4, !tbaa !9
  %12307 = zext i32 %12306 to i64
  %12308 = add i64 %12307, 14
  %12309 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12305, i64 noundef %12308, i64 noundef %12309)
  %12310 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %12310, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12311 = load ptr, ptr %9, align 8, !tbaa !5
  %12312 = getelementptr inbounds %struct.w2c_hermes, ptr %12311, i32 0, i32 6
  %12313 = load i32, ptr %36, align 4, !tbaa !9
  %12314 = zext i32 %12313 to i64
  %12315 = add i64 %12314, 8
  %12316 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12312, i64 noundef %12315, i64 noundef %12316)
  %12317 = load i32, ptr %28, align 4, !tbaa !9
  store i32 %12317, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12318 = load ptr, ptr %9, align 8, !tbaa !5
  %12319 = getelementptr inbounds %struct.w2c_hermes, ptr %12318, i32 0, i32 6
  %12320 = load i32, ptr %36, align 4, !tbaa !9
  %12321 = zext i32 %12320 to i64
  %12322 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12319, i64 noundef %12321, i64 noundef %12322)
  %12323 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12323, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12324 = load ptr, ptr %9, align 8, !tbaa !5
  %12325 = getelementptr inbounds %struct.w2c_hermes, ptr %12324, i32 0, i32 6
  %12326 = load i32, ptr %36, align 4, !tbaa !9
  %12327 = zext i32 %12326 to i64
  %12328 = add i64 %12327, 24
  %12329 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12325, i64 noundef %12328, i64 noundef %12329)
  %12330 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12330, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12331 = load ptr, ptr %9, align 8, !tbaa !5
  %12332 = getelementptr inbounds %struct.w2c_hermes, ptr %12331, i32 0, i32 6
  %12333 = load i32, ptr %36, align 4, !tbaa !9
  %12334 = zext i32 %12333 to i64
  %12335 = add i64 %12334, 16
  %12336 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12332, i64 noundef %12335, i64 noundef %12336)
  %12337 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12337, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12338 = load ptr, ptr %9, align 8, !tbaa !5
  %12339 = getelementptr inbounds %struct.w2c_hermes, ptr %12338, i32 0, i32 6
  %12340 = load i32, ptr %36, align 4, !tbaa !9
  %12341 = zext i32 %12340 to i64
  %12342 = add i64 %12341, 8
  %12343 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12339, i64 noundef %12342, i64 noundef %12343)
  %12344 = load i32, ptr %23, align 4, !tbaa !9
  store i32 %12344, ptr %36, align 4, !tbaa !9
  store i64 0, ptr %43, align 8, !tbaa !11
  %12345 = load ptr, ptr %9, align 8, !tbaa !5
  %12346 = getelementptr inbounds %struct.w2c_hermes, ptr %12345, i32 0, i32 6
  %12347 = load i32, ptr %36, align 4, !tbaa !9
  %12348 = zext i32 %12347 to i64
  %12349 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12346, i64 noundef %12348, i64 noundef %12349)
  %12350 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12350, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12351 = load ptr, ptr %9, align 8, !tbaa !5
  %12352 = getelementptr inbounds %struct.w2c_hermes, ptr %12351, i32 0, i32 6
  %12353 = load i32, ptr %36, align 4, !tbaa !9
  %12354 = zext i32 %12353 to i64
  %12355 = add i64 %12354, 376
  %12356 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12352, i64 noundef %12355, i32 noundef %12356)
  %12357 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12357, ptr %36, align 4, !tbaa !9
  %12358 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12358, ptr %37, align 4, !tbaa !9
  store i32 1664, ptr %38, align 4, !tbaa !9
  %12359 = load i32, ptr %38, align 4, !tbaa !9
  %12360 = load i32, ptr %37, align 4, !tbaa !9
  %12361 = add i32 %12360, %12359
  store i32 %12361, ptr %37, align 4, !tbaa !9
  %12362 = load ptr, ptr %9, align 8, !tbaa !5
  %12363 = getelementptr inbounds %struct.w2c_hermes, ptr %12362, i32 0, i32 6
  %12364 = load i32, ptr %36, align 4, !tbaa !9
  %12365 = zext i32 %12364 to i64
  %12366 = add i64 %12365, 372
  %12367 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12363, i64 noundef %12366, i32 noundef %12367)
  %12368 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12368, ptr %36, align 4, !tbaa !9
  %12369 = load ptr, ptr %9, align 8, !tbaa !5
  %12370 = load i32, ptr %36, align 4, !tbaa !9
  %12371 = call i32 @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetContext0x280x290x20const(ptr noundef %12369, i32 noundef %12370)
  store i32 %12371, ptr %36, align 4, !tbaa !9
  %12372 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12372, ptr %18, align 4, !tbaa !9
  %12373 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12373, ptr %36, align 4, !tbaa !9
  store i32 9, ptr %37, align 4, !tbaa !9
  %12374 = load ptr, ptr %9, align 8, !tbaa !5
  %12375 = getelementptr inbounds %struct.w2c_hermes, ptr %12374, i32 0, i32 6
  %12376 = load i32, ptr %36, align 4, !tbaa !9
  %12377 = zext i32 %12376 to i64
  %12378 = add i64 %12377, 2764
  %12379 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12375, i64 noundef %12378, i32 noundef %12379)
  %12380 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12380, ptr %36, align 4, !tbaa !9
  store i32 108182, ptr %37, align 4, !tbaa !9
  %12381 = load ptr, ptr %9, align 8, !tbaa !5
  %12382 = getelementptr inbounds %struct.w2c_hermes, ptr %12381, i32 0, i32 6
  %12383 = load i32, ptr %36, align 4, !tbaa !9
  %12384 = zext i32 %12383 to i64
  %12385 = add i64 %12384, 2760
  %12386 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12382, i64 noundef %12385, i32 noundef %12386)
  %12387 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12387, ptr %36, align 4, !tbaa !9
  %12388 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12388, ptr %37, align 4, !tbaa !9
  %12389 = load ptr, ptr %9, align 8, !tbaa !5
  %12390 = getelementptr inbounds %struct.w2c_hermes, ptr %12389, i32 0, i32 6
  %12391 = load i32, ptr %37, align 4, !tbaa !9
  %12392 = zext i32 %12391 to i64
  %12393 = add i64 %12392, 2760
  %12394 = call i64 @i64_load(ptr noundef %12390, i64 noundef %12393)
  store i64 %12394, ptr %43, align 8, !tbaa !11
  %12395 = load ptr, ptr %9, align 8, !tbaa !5
  %12396 = getelementptr inbounds %struct.w2c_hermes, ptr %12395, i32 0, i32 6
  %12397 = load i32, ptr %36, align 4, !tbaa !9
  %12398 = zext i32 %12397 to i64
  %12399 = load i64, ptr %43, align 8, !tbaa !11
  call void @i64_store(ptr noundef %12396, i64 noundef %12398, i64 noundef %12399)
  %12400 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12400, ptr %36, align 4, !tbaa !9
  %12401 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12401, ptr %37, align 4, !tbaa !9
  store i32 36, ptr %38, align 4, !tbaa !9
  %12402 = load i32, ptr %38, align 4, !tbaa !9
  %12403 = load i32, ptr %37, align 4, !tbaa !9
  %12404 = add i32 %12403, %12402
  store i32 %12404, ptr %37, align 4, !tbaa !9
  %12405 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12405, ptr %38, align 4, !tbaa !9
  %12406 = load ptr, ptr %9, align 8, !tbaa !5
  %12407 = load i32, ptr %37, align 4, !tbaa !9
  %12408 = load i32, ptr %38, align 4, !tbaa !9
  %12409 = call i32 @w2c_hermes_hermes0x3A0x3AStringTable0x3A0x3AgetString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %12406, i32 noundef %12407, i32 noundef %12408)
  store i32 %12409, ptr %37, align 4, !tbaa !9
  %12410 = load ptr, ptr %9, align 8, !tbaa !5
  %12411 = getelementptr inbounds %struct.w2c_hermes, ptr %12410, i32 0, i32 6
  %12412 = load i32, ptr %36, align 4, !tbaa !9
  %12413 = zext i32 %12412 to i64
  %12414 = add i64 %12413, 332
  %12415 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12411, i64 noundef %12414, i32 noundef %12415)
  %12416 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12416, ptr %36, align 4, !tbaa !9
  store i32 120, ptr %37, align 4, !tbaa !9
  %12417 = load i32, ptr %37, align 4, !tbaa !9
  %12418 = load i32, ptr %36, align 4, !tbaa !9
  %12419 = add i32 %12418, %12417
  store i32 %12419, ptr %36, align 4, !tbaa !9
  %12420 = load i32, ptr %15, align 4, !tbaa !9
  store i32 %12420, ptr %37, align 4, !tbaa !9
  %12421 = load ptr, ptr %9, align 8, !tbaa !5
  %12422 = load i32, ptr %36, align 4, !tbaa !9
  %12423 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AHBCISel0x3A0x3Agenerate0x28hermes0x3A0x3ASourceMapGenerator0x2A0x29(ptr noundef %12421, i32 noundef %12422, i32 noundef %12423)
  %12424 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12424, ptr %36, align 4, !tbaa !9
  store i32 120, ptr %37, align 4, !tbaa !9
  %12425 = load i32, ptr %37, align 4, !tbaa !9
  %12426 = load i32, ptr %36, align 4, !tbaa !9
  %12427 = add i32 %12426, %12425
  store i32 %12427, ptr %36, align 4, !tbaa !9
  %12428 = load ptr, ptr %9, align 8, !tbaa !5
  %12429 = load i32, ptr %36, align 4, !tbaa !9
  %12430 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AHBCISel0x3A0x3A0x7EHBCISel0x280x29(ptr noundef %12428, i32 noundef %12429)
  store i32 %12430, ptr %36, align 4, !tbaa !9
  %12431 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12431, ptr %36, align 4, !tbaa !9
  %12432 = load ptr, ptr %9, align 8, !tbaa !5
  %12433 = load i32, ptr %36, align 4, !tbaa !9
  %12434 = call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3A0x7EPassManager0x280x29(ptr noundef %12432, i32 noundef %12433)
  store i32 %12434, ptr %36, align 4, !tbaa !9
  %12435 = load i32, ptr %26, align 4, !tbaa !9
  store i32 %12435, ptr %36, align 4, !tbaa !9
  %12436 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12436, ptr %37, align 4, !tbaa !9
  %12437 = load ptr, ptr %9, align 8, !tbaa !5
  %12438 = getelementptr inbounds %struct.w2c_hermes, ptr %12437, i32 0, i32 6
  %12439 = load i32, ptr %37, align 4, !tbaa !9
  %12440 = zext i32 %12439 to i64
  %12441 = add i64 %12440, 404
  %12442 = call i32 @i32_load(ptr noundef %12438, i64 noundef %12441)
  store i32 %12442, ptr %37, align 4, !tbaa !9
  %12443 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %12443, ptr %18, align 4, !tbaa !9
  %12444 = load i32, ptr %36, align 4, !tbaa !9
  %12445 = load i32, ptr %37, align 4, !tbaa !9
  %12446 = icmp ne i32 %12444, %12445
  %12447 = zext i1 %12446 to i32
  store i32 %12447, ptr %36, align 4, !tbaa !9
  %12448 = load i32, ptr %36, align 4, !tbaa !9
  %12449 = icmp ne i32 %12448, 0
  br i1 %12449, label %12450, label %12454

12450:                                            ; preds = %12173
  %12451 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12451, ptr %36, align 4, !tbaa !9
  %12452 = load ptr, ptr %9, align 8, !tbaa !5
  %12453 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %12452, i32 noundef %12453)
  br label %12454

12454:                                            ; preds = %12450, %12173
  %12455 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12455, ptr %36, align 4, !tbaa !9
  %12456 = load ptr, ptr %9, align 8, !tbaa !5
  %12457 = getelementptr inbounds %struct.w2c_hermes, ptr %12456, i32 0, i32 6
  %12458 = load i32, ptr %36, align 4, !tbaa !9
  %12459 = zext i32 %12458 to i64
  %12460 = add i64 %12459, 484
  %12461 = call i32 @i32_load(ptr noundef %12457, i64 noundef %12460)
  store i32 %12461, ptr %36, align 4, !tbaa !9
  %12462 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12462, ptr %18, align 4, !tbaa !9
  %12463 = load i32, ptr %36, align 4, !tbaa !9
  %12464 = icmp ne i32 %12463, 0
  br i1 %12464, label %12465, label %12477

12465:                                            ; preds = %12454
  %12466 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12466, ptr %36, align 4, !tbaa !9
  %12467 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12467, ptr %37, align 4, !tbaa !9
  %12468 = load ptr, ptr %9, align 8, !tbaa !5
  %12469 = getelementptr inbounds %struct.w2c_hermes, ptr %12468, i32 0, i32 6
  %12470 = load i32, ptr %36, align 4, !tbaa !9
  %12471 = zext i32 %12470 to i64
  %12472 = add i64 %12471, 488
  %12473 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12469, i64 noundef %12472, i32 noundef %12473)
  %12474 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12474, ptr %36, align 4, !tbaa !9
  %12475 = load ptr, ptr %9, align 8, !tbaa !5
  %12476 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %12475, i32 noundef %12476)
  br label %12477

12477:                                            ; preds = %12465, %12454
  %12478 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12478, ptr %36, align 4, !tbaa !9
  %12479 = load ptr, ptr %9, align 8, !tbaa !5
  %12480 = getelementptr inbounds %struct.w2c_hermes, ptr %12479, i32 0, i32 6
  %12481 = load i32, ptr %36, align 4, !tbaa !9
  %12482 = zext i32 %12481 to i64
  %12483 = add i64 %12482, 500
  %12484 = call i32 @i32_load(ptr noundef %12480, i64 noundef %12483)
  store i32 %12484, ptr %36, align 4, !tbaa !9
  %12485 = load ptr, ptr %9, align 8, !tbaa !5
  %12486 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %12485, i32 noundef %12486)
  %12487 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12487, ptr %36, align 4, !tbaa !9
  store i32 520, ptr %37, align 4, !tbaa !9
  %12488 = load i32, ptr %37, align 4, !tbaa !9
  %12489 = load i32, ptr %36, align 4, !tbaa !9
  %12490 = add i32 %12489, %12488
  store i32 %12490, ptr %36, align 4, !tbaa !9
  %12491 = load ptr, ptr %9, align 8, !tbaa !5
  %12492 = load i32, ptr %36, align 4, !tbaa !9
  %12493 = call i32 @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3A0x7ERegisterAllocator0x280x29(ptr noundef %12491, i32 noundef %12492)
  store i32 %12493, ptr %36, align 4, !tbaa !9
  %12494 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12494, ptr %36, align 4, !tbaa !9
  %12495 = load ptr, ptr %9, align 8, !tbaa !5
  %12496 = getelementptr inbounds %struct.w2c_hermes, ptr %12495, i32 0, i32 6
  %12497 = load i32, ptr %36, align 4, !tbaa !9
  %12498 = zext i32 %12497 to i64
  %12499 = add i64 %12498, 2752
  %12500 = call i32 @i32_load(ptr noundef %12496, i64 noundef %12499)
  store i32 %12500, ptr %36, align 4, !tbaa !9
  %12501 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12501, ptr %18, align 4, !tbaa !9
  br label %12502

12502:                                            ; preds = %12477, %10973
  %12503 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12503, ptr %36, align 4, !tbaa !9
  %12504 = load ptr, ptr %9, align 8, !tbaa !5
  %12505 = getelementptr inbounds %struct.w2c_hermes, ptr %12504, i32 0, i32 6
  %12506 = load i32, ptr %36, align 4, !tbaa !9
  %12507 = zext i32 %12506 to i64
  %12508 = add i64 %12507, 12
  %12509 = call i32 @i32_load8_u(ptr noundef %12505, i64 noundef %12508)
  store i32 %12509, ptr %36, align 4, !tbaa !9
  %12510 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12510, ptr %19, align 4, !tbaa !9
  %12511 = load i32, ptr %36, align 4, !tbaa !9
  %12512 = icmp ne i32 %12511, 0
  br i1 %12512, label %12513, label %12566

12513:                                            ; preds = %12502
  %12514 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12514, ptr %36, align 4, !tbaa !9
  %12515 = load ptr, ptr %9, align 8, !tbaa !5
  %12516 = getelementptr inbounds %struct.w2c_hermes, ptr %12515, i32 0, i32 6
  %12517 = load i32, ptr %36, align 4, !tbaa !9
  %12518 = zext i32 %12517 to i64
  %12519 = add i64 %12518, 112
  %12520 = call i32 @i32_load(ptr noundef %12516, i64 noundef %12519)
  store i32 %12520, ptr %36, align 4, !tbaa !9
  %12521 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12521, ptr %20, align 4, !tbaa !9
  %12522 = load i32, ptr %10, align 4, !tbaa !9
  store i32 %12522, ptr %36, align 4, !tbaa !9
  %12523 = load ptr, ptr %9, align 8, !tbaa !5
  %12524 = getelementptr inbounds %struct.w2c_hermes, ptr %12523, i32 0, i32 6
  %12525 = load i32, ptr %36, align 4, !tbaa !9
  %12526 = zext i32 %12525 to i64
  %12527 = add i64 %12526, 28
  %12528 = call i32 @i32_load(ptr noundef %12524, i64 noundef %12527)
  store i32 %12528, ptr %36, align 4, !tbaa !9
  %12529 = load ptr, ptr %9, align 8, !tbaa !5
  %12530 = getelementptr inbounds %struct.w2c_hermes, ptr %12529, i32 0, i32 6
  %12531 = load i32, ptr %36, align 4, !tbaa !9
  %12532 = zext i32 %12531 to i64
  %12533 = add i64 %12532, 72
  %12534 = call i32 @i32_load(ptr noundef %12530, i64 noundef %12533)
  store i32 %12534, ptr %36, align 4, !tbaa !9
  %12535 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12535, ptr %24, align 4, !tbaa !9
  %12536 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12536, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12537 = load i32, ptr %37, align 4, !tbaa !9
  store i32 %12537, ptr %18, align 4, !tbaa !9
  store i32 100658, ptr %38, align 4, !tbaa !9
  %12538 = load i32, ptr %38, align 4, !tbaa !9
  %12539 = load i32, ptr %37, align 4, !tbaa !9
  %12540 = add i32 %12539, %12538
  store i32 %12540, ptr %37, align 4, !tbaa !9
  %12541 = load ptr, ptr %9, align 8, !tbaa !5
  %12542 = getelementptr inbounds %struct.w2c_hermes, ptr %12541, i32 0, i32 6
  %12543 = load i32, ptr %36, align 4, !tbaa !9
  %12544 = zext i32 %12543 to i64
  %12545 = add i64 %12544, 520
  %12546 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12542, i64 noundef %12545, i32 noundef %12546)
  %12547 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12547, ptr %36, align 4, !tbaa !9
  store i32 259, ptr %37, align 4, !tbaa !9
  %12548 = load ptr, ptr %9, align 8, !tbaa !5
  %12549 = getelementptr inbounds %struct.w2c_hermes, ptr %12548, i32 0, i32 6
  %12550 = load i32, ptr %36, align 4, !tbaa !9
  %12551 = zext i32 %12550 to i64
  %12552 = add i64 %12551, 528
  %12553 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store16(ptr noundef %12549, i64 noundef %12552, i32 noundef %12553)
  %12554 = load i32, ptr %24, align 4, !tbaa !9
  store i32 %12554, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12555 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %12555, ptr %38, align 4, !tbaa !9
  %12556 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12556, ptr %39, align 4, !tbaa !9
  store i32 520, ptr %40, align 4, !tbaa !9
  %12557 = load i32, ptr %40, align 4, !tbaa !9
  %12558 = load i32, ptr %39, align 4, !tbaa !9
  %12559 = add i32 %12558, %12557
  store i32 %12559, ptr %39, align 4, !tbaa !9
  store i32 0, ptr %40, align 4, !tbaa !9
  %12560 = load ptr, ptr %9, align 8, !tbaa !5
  %12561 = load i32, ptr %36, align 4, !tbaa !9
  %12562 = load i32, ptr %37, align 4, !tbaa !9
  %12563 = load i32, ptr %38, align 4, !tbaa !9
  %12564 = load i32, ptr %39, align 4, !tbaa !9
  %12565 = load i32, ptr %40, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %12560, i32 noundef %12561, i32 noundef %12562, i32 noundef %12563, i32 noundef %12564, i32 noundef %12565)
  br label %12584

12566:                                            ; preds = %12502
  %12567 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12567, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12568 = load ptr, ptr %9, align 8, !tbaa !5
  %12569 = getelementptr inbounds %struct.w2c_hermes, ptr %12568, i32 0, i32 6
  %12570 = load i32, ptr %36, align 4, !tbaa !9
  %12571 = zext i32 %12570 to i64
  %12572 = add i64 %12571, 2752
  %12573 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12569, i64 noundef %12572, i32 noundef %12573)
  %12574 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12574, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %12575 = load i32, ptr %37, align 4, !tbaa !9
  %12576 = load i32, ptr %36, align 4, !tbaa !9
  %12577 = add i32 %12576, %12575
  store i32 %12577, ptr %36, align 4, !tbaa !9
  %12578 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12578, ptr %37, align 4, !tbaa !9
  %12579 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12579, ptr %38, align 4, !tbaa !9
  %12580 = load ptr, ptr %9, align 8, !tbaa !5
  %12581 = load i32, ptr %36, align 4, !tbaa !9
  %12582 = load i32, ptr %37, align 4, !tbaa !9
  %12583 = load i32, ptr %38, align 4, !tbaa !9
  call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AsetFunctionGenerator0x28hermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3E0x29(ptr noundef %12580, i32 noundef %12581, i32 noundef %12582, i32 noundef %12583)
  br label %12584

12584:                                            ; preds = %12566, %12513
  %12585 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12585, ptr %36, align 4, !tbaa !9
  %12586 = load ptr, ptr %9, align 8, !tbaa !5
  %12587 = getelementptr inbounds %struct.w2c_hermes, ptr %12586, i32 0, i32 6
  %12588 = load i32, ptr %36, align 4, !tbaa !9
  %12589 = zext i32 %12588 to i64
  %12590 = add i64 %12589, 2752
  %12591 = call i32 @i32_load(ptr noundef %12587, i64 noundef %12590)
  store i32 %12591, ptr %36, align 4, !tbaa !9
  %12592 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12592, ptr %18, align 4, !tbaa !9
  %12593 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12593, ptr %36, align 4, !tbaa !9
  store i32 0, ptr %37, align 4, !tbaa !9
  %12594 = load ptr, ptr %9, align 8, !tbaa !5
  %12595 = getelementptr inbounds %struct.w2c_hermes, ptr %12594, i32 0, i32 6
  %12596 = load i32, ptr %36, align 4, !tbaa !9
  %12597 = zext i32 %12596 to i64
  %12598 = add i64 %12597, 2752
  %12599 = load i32, ptr %37, align 4, !tbaa !9
  call void @i32_store(ptr noundef %12595, i64 noundef %12598, i32 noundef %12599)
  %12600 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12600, ptr %36, align 4, !tbaa !9
  %12601 = load i32, ptr %36, align 4, !tbaa !9
  %12602 = icmp ne i32 %12601, 0
  br i1 %12602, label %12603, label %12612

12603:                                            ; preds = %12584
  %12604 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12604, ptr %36, align 4, !tbaa !9
  store i32 2752, ptr %37, align 4, !tbaa !9
  %12605 = load i32, ptr %37, align 4, !tbaa !9
  %12606 = load i32, ptr %36, align 4, !tbaa !9
  %12607 = add i32 %12606, %12605
  store i32 %12607, ptr %36, align 4, !tbaa !9
  %12608 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12608, ptr %37, align 4, !tbaa !9
  %12609 = load ptr, ptr %9, align 8, !tbaa !5
  %12610 = load i32, ptr %36, align 4, !tbaa !9
  %12611 = load i32, ptr %37, align 4, !tbaa !9
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef %12609, i32 noundef %12610, i32 noundef %12611)
  br label %12612

12612:                                            ; preds = %12603, %12584
  %12613 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12613, ptr %36, align 4, !tbaa !9
  %12614 = load i32, ptr %36, align 4, !tbaa !9
  %12615 = icmp ne i32 %12614, 0
  %12616 = xor i1 %12615, true
  %12617 = zext i1 %12616 to i32
  store i32 %12617, ptr %36, align 4, !tbaa !9
  %12618 = load i32, ptr %36, align 4, !tbaa !9
  %12619 = icmp ne i32 %12618, 0
  br i1 %12619, label %12620, label %12621

12620:                                            ; preds = %12612
  br label %12622

12621:                                            ; preds = %12612
  store i32 0, ptr %36, align 4, !tbaa !9
  br label %12648

12622:                                            ; preds = %12620, %10955
  %12623 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12623, ptr %36, align 4, !tbaa !9
  %12624 = load ptr, ptr %9, align 8, !tbaa !5
  %12625 = getelementptr inbounds %struct.w2c_hermes, ptr %12624, i32 0, i32 6
  %12626 = load i32, ptr %36, align 4, !tbaa !9
  %12627 = zext i32 %12626 to i64
  %12628 = add i64 %12627, 4
  %12629 = call i32 @i32_load(ptr noundef %12625, i64 noundef %12628)
  store i32 %12629, ptr %36, align 4, !tbaa !9
  %12630 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12630, ptr %14, align 4, !tbaa !9
  %12631 = load i32, ptr %33, align 4, !tbaa !9
  store i32 %12631, ptr %37, align 4, !tbaa !9
  %12632 = load i32, ptr %36, align 4, !tbaa !9
  %12633 = load i32, ptr %37, align 4, !tbaa !9
  %12634 = icmp ne i32 %12632, %12633
  %12635 = zext i1 %12634 to i32
  store i32 %12635, ptr %36, align 4, !tbaa !9
  %12636 = load i32, ptr %36, align 4, !tbaa !9
  %12637 = icmp ne i32 %12636, 0
  br i1 %12637, label %12638, label %12639

12638:                                            ; preds = %12622
  br label %10844

12639:                                            ; preds = %12622
  br label %12640

12640:                                            ; preds = %12639, %10733
  %12641 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12641, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %12642 = load i32, ptr %37, align 4, !tbaa !9
  %12643 = load i32, ptr %36, align 4, !tbaa !9
  %12644 = add i32 %12643, %12642
  store i32 %12644, ptr %36, align 4, !tbaa !9
  %12645 = load ptr, ptr %9, align 8, !tbaa !5
  %12646 = load i32, ptr %36, align 4, !tbaa !9
  %12647 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3Agenerate0x280x29(ptr noundef %12645, i32 noundef %12646)
  store i32 %12647, ptr %36, align 4, !tbaa !9
  br label %12648

12648:                                            ; preds = %12640, %12621
  %12649 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12649, ptr %20, align 4, !tbaa !9
  %12650 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12650, ptr %36, align 4, !tbaa !9
  %12651 = load ptr, ptr %9, align 8, !tbaa !5
  %12652 = getelementptr inbounds %struct.w2c_hermes, ptr %12651, i32 0, i32 6
  %12653 = load i32, ptr %36, align 4, !tbaa !9
  %12654 = zext i32 %12653 to i64
  %12655 = add i64 %12654, 1664
  %12656 = call i32 @i32_load8_u(ptr noundef %12652, i64 noundef %12655)
  store i32 %12656, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %12657 = load i32, ptr %37, align 4, !tbaa !9
  %12658 = load i32, ptr %36, align 4, !tbaa !9
  %12659 = and i32 %12658, %12657
  store i32 %12659, ptr %36, align 4, !tbaa !9
  %12660 = load i32, ptr %36, align 4, !tbaa !9
  %12661 = icmp ne i32 %12660, 0
  %12662 = xor i1 %12661, true
  %12663 = zext i1 %12662 to i32
  store i32 %12663, ptr %36, align 4, !tbaa !9
  %12664 = load i32, ptr %36, align 4, !tbaa !9
  %12665 = icmp ne i32 %12664, 0
  br i1 %12665, label %12666, label %12690

12666:                                            ; preds = %12648
  %12667 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12667, ptr %36, align 4, !tbaa !9
  %12668 = load ptr, ptr %9, align 8, !tbaa !5
  %12669 = getelementptr inbounds %struct.w2c_hermes, ptr %12668, i32 0, i32 6
  %12670 = load i32, ptr %36, align 4, !tbaa !9
  %12671 = zext i32 %12670 to i64
  %12672 = add i64 %12671, 1672
  %12673 = call i32 @i32_load(ptr noundef %12669, i64 noundef %12672)
  store i32 %12673, ptr %36, align 4, !tbaa !9
  %12674 = load ptr, ptr %9, align 8, !tbaa !5
  %12675 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %12674, i32 noundef %12675)
  %12676 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12676, ptr %36, align 4, !tbaa !9
  %12677 = load ptr, ptr %9, align 8, !tbaa !5
  %12678 = getelementptr inbounds %struct.w2c_hermes, ptr %12677, i32 0, i32 6
  %12679 = load i32, ptr %36, align 4, !tbaa !9
  %12680 = zext i32 %12679 to i64
  %12681 = add i64 %12680, 1664
  %12682 = call i32 @i32_load8_u(ptr noundef %12678, i64 noundef %12681)
  store i32 %12682, ptr %36, align 4, !tbaa !9
  store i32 1, ptr %37, align 4, !tbaa !9
  %12683 = load i32, ptr %37, align 4, !tbaa !9
  %12684 = load i32, ptr %36, align 4, !tbaa !9
  %12685 = and i32 %12684, %12683
  store i32 %12685, ptr %36, align 4, !tbaa !9
  %12686 = load i32, ptr %36, align 4, !tbaa !9
  %12687 = icmp ne i32 %12686, 0
  br i1 %12687, label %12688, label %12689

12688:                                            ; preds = %12666
  br label %13148

12689:                                            ; preds = %12666
  br label %12690

12690:                                            ; preds = %12689, %12648
  %12691 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12691, ptr %36, align 4, !tbaa !9
  %12692 = load ptr, ptr %9, align 8, !tbaa !5
  %12693 = getelementptr inbounds %struct.w2c_hermes, ptr %12692, i32 0, i32 6
  %12694 = load i32, ptr %36, align 4, !tbaa !9
  %12695 = zext i32 %12694 to i64
  %12696 = add i64 %12695, 1720
  %12697 = call i32 @i32_load(ptr noundef %12693, i64 noundef %12696)
  store i32 %12697, ptr %36, align 4, !tbaa !9
  %12698 = load ptr, ptr %9, align 8, !tbaa !5
  %12699 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %12698, i32 noundef %12699)
  %12700 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12700, ptr %36, align 4, !tbaa !9
  %12701 = load ptr, ptr %9, align 8, !tbaa !5
  %12702 = getelementptr inbounds %struct.w2c_hermes, ptr %12701, i32 0, i32 6
  %12703 = load i32, ptr %36, align 4, !tbaa !9
  %12704 = zext i32 %12703 to i64
  %12705 = add i64 %12704, 2188
  %12706 = call i32 @i32_load(ptr noundef %12702, i64 noundef %12705)
  store i32 %12706, ptr %36, align 4, !tbaa !9
  %12707 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12707, ptr %19, align 4, !tbaa !9
  %12708 = load i32, ptr %36, align 4, !tbaa !9
  %12709 = icmp ne i32 %12708, 0
  br i1 %12709, label %12710, label %12783

12710:                                            ; preds = %12690
  %12711 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12711, ptr %36, align 4, !tbaa !9
  %12712 = load ptr, ptr %9, align 8, !tbaa !5
  %12713 = getelementptr inbounds %struct.w2c_hermes, ptr %12712, i32 0, i32 6
  %12714 = load i32, ptr %36, align 4, !tbaa !9
  %12715 = zext i32 %12714 to i64
  %12716 = add i64 %12715, 2176
  %12717 = call i32 @i32_load(ptr noundef %12713, i64 noundef %12716)
  store i32 %12717, ptr %36, align 4, !tbaa !9
  %12718 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12718, ptr %18, align 4, !tbaa !9
  %12719 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12719, ptr %37, align 4, !tbaa !9
  store i32 52, ptr %38, align 4, !tbaa !9
  %12720 = load i32, ptr %38, align 4, !tbaa !9
  %12721 = load i32, ptr %37, align 4, !tbaa !9
  %12722 = mul i32 %12721, %12720
  store i32 %12722, ptr %37, align 4, !tbaa !9
  %12723 = load i32, ptr %37, align 4, !tbaa !9
  %12724 = load i32, ptr %36, align 4, !tbaa !9
  %12725 = add i32 %12724, %12723
  store i32 %12725, ptr %36, align 4, !tbaa !9
  %12726 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12726, ptr %19, align 4, !tbaa !9
  br label %12727

12727:                                            ; preds = %12781, %12710
  %12728 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12728, ptr %36, align 4, !tbaa !9
  %12729 = load ptr, ptr %9, align 8, !tbaa !5
  %12730 = getelementptr inbounds %struct.w2c_hermes, ptr %12729, i32 0, i32 6
  %12731 = load i32, ptr %36, align 4, !tbaa !9
  %12732 = zext i32 %12731 to i64
  %12733 = call i64 @i64_load(ptr noundef %12730, i64 noundef %12732)
  store i64 %12733, ptr %42, align 8, !tbaa !11
  store i64 4294967294, ptr %43, align 8, !tbaa !11
  %12734 = load i64, ptr %43, align 8, !tbaa !11
  %12735 = load i64, ptr %42, align 8, !tbaa !11
  %12736 = and i64 %12735, %12734
  store i64 %12736, ptr %42, align 8, !tbaa !11
  store i64 4294967294, ptr %43, align 8, !tbaa !11
  %12737 = load i64, ptr %42, align 8, !tbaa !11
  %12738 = load i64, ptr %43, align 8, !tbaa !11
  %12739 = icmp eq i64 %12737, %12738
  %12740 = zext i1 %12739 to i32
  store i32 %12740, ptr %36, align 4, !tbaa !9
  %12741 = load i32, ptr %36, align 4, !tbaa !9
  %12742 = icmp ne i32 %12741, 0
  br i1 %12742, label %12743, label %12744

12743:                                            ; preds = %12727
  br label %12768

12744:                                            ; preds = %12727
  %12745 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12745, ptr %36, align 4, !tbaa !9
  %12746 = load ptr, ptr %9, align 8, !tbaa !5
  %12747 = getelementptr inbounds %struct.w2c_hermes, ptr %12746, i32 0, i32 6
  %12748 = load i32, ptr %36, align 4, !tbaa !9
  %12749 = zext i32 %12748 to i64
  %12750 = add i64 %12749, 8
  %12751 = call i32 @i32_load(ptr noundef %12747, i64 noundef %12750)
  store i32 %12751, ptr %36, align 4, !tbaa !9
  %12752 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12752, ptr %14, align 4, !tbaa !9
  %12753 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12753, ptr %37, align 4, !tbaa !9
  store i32 20, ptr %38, align 4, !tbaa !9
  %12754 = load i32, ptr %38, align 4, !tbaa !9
  %12755 = load i32, ptr %37, align 4, !tbaa !9
  %12756 = add i32 %12755, %12754
  store i32 %12756, ptr %37, align 4, !tbaa !9
  %12757 = load i32, ptr %36, align 4, !tbaa !9
  %12758 = load i32, ptr %37, align 4, !tbaa !9
  %12759 = icmp eq i32 %12757, %12758
  %12760 = zext i1 %12759 to i32
  store i32 %12760, ptr %36, align 4, !tbaa !9
  %12761 = load i32, ptr %36, align 4, !tbaa !9
  %12762 = icmp ne i32 %12761, 0
  br i1 %12762, label %12763, label %12764

12763:                                            ; preds = %12744
  br label %12768

12764:                                            ; preds = %12744
  %12765 = load i32, ptr %14, align 4, !tbaa !9
  store i32 %12765, ptr %36, align 4, !tbaa !9
  %12766 = load ptr, ptr %9, align 8, !tbaa !5
  %12767 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_dlfree(ptr noundef %12766, i32 noundef %12767)
  br label %12768

12768:                                            ; preds = %12764, %12763, %12743
  %12769 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12769, ptr %36, align 4, !tbaa !9
  store i32 52, ptr %37, align 4, !tbaa !9
  %12770 = load i32, ptr %37, align 4, !tbaa !9
  %12771 = load i32, ptr %36, align 4, !tbaa !9
  %12772 = add i32 %12771, %12770
  store i32 %12772, ptr %36, align 4, !tbaa !9
  %12773 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12773, ptr %18, align 4, !tbaa !9
  %12774 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12774, ptr %37, align 4, !tbaa !9
  %12775 = load i32, ptr %36, align 4, !tbaa !9
  %12776 = load i32, ptr %37, align 4, !tbaa !9
  %12777 = icmp ne i32 %12775, %12776
  %12778 = zext i1 %12777 to i32
  store i32 %12778, ptr %36, align 4, !tbaa !9
  %12779 = load i32, ptr %36, align 4, !tbaa !9
  %12780 = icmp ne i32 %12779, 0
  br i1 %12780, label %12781, label %12782

12781:                                            ; preds = %12768
  br label %12727

12782:                                            ; preds = %12768
  br label %12783

12783:                                            ; preds = %12782, %12690
  %12784 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12784, ptr %36, align 4, !tbaa !9
  %12785 = load ptr, ptr %9, align 8, !tbaa !5
  %12786 = getelementptr inbounds %struct.w2c_hermes, ptr %12785, i32 0, i32 6
  %12787 = load i32, ptr %36, align 4, !tbaa !9
  %12788 = zext i32 %12787 to i64
  %12789 = add i64 %12788, 2176
  %12790 = call i32 @i32_load(ptr noundef %12786, i64 noundef %12789)
  store i32 %12790, ptr %36, align 4, !tbaa !9
  %12791 = load ptr, ptr %9, align 8, !tbaa !5
  %12792 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %12791, i32 noundef %12792)
  %12793 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12793, ptr %36, align 4, !tbaa !9
  %12794 = load ptr, ptr %9, align 8, !tbaa !5
  %12795 = getelementptr inbounds %struct.w2c_hermes, ptr %12794, i32 0, i32 6
  %12796 = load i32, ptr %36, align 4, !tbaa !9
  %12797 = zext i32 %12796 to i64
  %12798 = add i64 %12797, 2208
  %12799 = call i32 @i32_load(ptr noundef %12795, i64 noundef %12798)
  store i32 %12799, ptr %36, align 4, !tbaa !9
  %12800 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12800, ptr %18, align 4, !tbaa !9
  %12801 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12801, ptr %37, align 4, !tbaa !9
  store i32 2192, ptr %38, align 4, !tbaa !9
  %12802 = load i32, ptr %38, align 4, !tbaa !9
  %12803 = load i32, ptr %37, align 4, !tbaa !9
  %12804 = add i32 %12803, %12802
  store i32 %12804, ptr %37, align 4, !tbaa !9
  %12805 = load i32, ptr %36, align 4, !tbaa !9
  %12806 = load i32, ptr %37, align 4, !tbaa !9
  %12807 = icmp eq i32 %12805, %12806
  %12808 = zext i1 %12807 to i32
  store i32 %12808, ptr %36, align 4, !tbaa !9
  %12809 = load i32, ptr %36, align 4, !tbaa !9
  %12810 = icmp ne i32 %12809, 0
  br i1 %12810, label %12811, label %12827

12811:                                            ; preds = %12783
  %12812 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12812, ptr %36, align 4, !tbaa !9
  store i32 2192, ptr %37, align 4, !tbaa !9
  %12813 = load i32, ptr %37, align 4, !tbaa !9
  %12814 = load i32, ptr %36, align 4, !tbaa !9
  %12815 = add i32 %12814, %12813
  store i32 %12815, ptr %36, align 4, !tbaa !9
  %12816 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12816, ptr %18, align 4, !tbaa !9
  %12817 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12817, ptr %36, align 4, !tbaa !9
  %12818 = load ptr, ptr %9, align 8, !tbaa !5
  %12819 = getelementptr inbounds %struct.w2c_hermes, ptr %12818, i32 0, i32 6
  %12820 = load i32, ptr %36, align 4, !tbaa !9
  %12821 = zext i32 %12820 to i64
  %12822 = add i64 %12821, 2192
  %12823 = call i32 @i32_load(ptr noundef %12819, i64 noundef %12822)
  store i32 %12823, ptr %36, align 4, !tbaa !9
  store i32 16, ptr %37, align 4, !tbaa !9
  %12824 = load i32, ptr %37, align 4, !tbaa !9
  %12825 = load i32, ptr %36, align 4, !tbaa !9
  %12826 = add i32 %12825, %12824
  store i32 %12826, ptr %36, align 4, !tbaa !9
  br label %12846

12827:                                            ; preds = %12783
  %12828 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12828, ptr %36, align 4, !tbaa !9
  %12829 = load i32, ptr %36, align 4, !tbaa !9
  %12830 = icmp ne i32 %12829, 0
  %12831 = xor i1 %12830, true
  %12832 = zext i1 %12831 to i32
  store i32 %12832, ptr %36, align 4, !tbaa !9
  %12833 = load i32, ptr %36, align 4, !tbaa !9
  %12834 = icmp ne i32 %12833, 0
  br i1 %12834, label %12835, label %12836

12835:                                            ; preds = %12827
  br label %12916

12836:                                            ; preds = %12827
  %12837 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12837, ptr %36, align 4, !tbaa !9
  %12838 = load ptr, ptr %9, align 8, !tbaa !5
  %12839 = getelementptr inbounds %struct.w2c_hermes, ptr %12838, i32 0, i32 6
  %12840 = load i32, ptr %36, align 4, !tbaa !9
  %12841 = zext i32 %12840 to i64
  %12842 = call i32 @i32_load(ptr noundef %12839, i64 noundef %12841)
  store i32 %12842, ptr %36, align 4, !tbaa !9
  store i32 20, ptr %37, align 4, !tbaa !9
  %12843 = load i32, ptr %37, align 4, !tbaa !9
  %12844 = load i32, ptr %36, align 4, !tbaa !9
  %12845 = add i32 %12844, %12843
  store i32 %12845, ptr %36, align 4, !tbaa !9
  br label %12846

12846:                                            ; preds = %12836, %12811
  %12847 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %12847, ptr %19, align 4, !tbaa !9
  %12848 = load i32, ptr %18, align 4, !tbaa !9
  store i32 %12848, ptr %36, align 4, !tbaa !9
  %12849 = load i32, ptr %19, align 4, !tbaa !9
  store i32 %12849, ptr %37, align 4, !tbaa !9
  %12850 = load ptr, ptr %9, align 8, !tbaa !5
  %12851 = getelementptr inbounds %struct.w2c_hermes, ptr %12850, i32 0, i32 6
  %12852 = load i32, ptr %37, align 4, !tbaa !9
  %12853 = zext i32 %12852 to i64
  %12854 = call i32 @i32_load(ptr noundef %12851, i64 noundef %12853)
  store i32 %12854, ptr %37, align 4, !tbaa !9
  %12855 = load i32, ptr %37, align 4, !tbaa !9
  %12856 = load ptr, ptr %9, align 8, !tbaa !5
  %12857 = getelementptr inbounds %struct.w2c_hermes, ptr %12856, i32 0, i32 7
  %12858 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12857, i32 0, i32 2
  %12859 = load i32, ptr %12858, align 4, !tbaa !18
  %12860 = icmp ult i32 %12855, %12859
  br i1 %12860, label %12861, label %12884

12861:                                            ; preds = %12846
  %12862 = load ptr, ptr %9, align 8, !tbaa !5
  %12863 = getelementptr inbounds %struct.w2c_hermes, ptr %12862, i32 0, i32 7
  %12864 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12863, i32 0, i32 0
  %12865 = load ptr, ptr %12864, align 8, !tbaa !19
  %12866 = load i32, ptr %37, align 4, !tbaa !9
  %12867 = zext i32 %12866 to i64
  %12868 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12865, i64 %12867
  %12869 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12868, i32 0, i32 1
  %12870 = load ptr, ptr %12869, align 8, !tbaa !20
  %12871 = icmp ne ptr %12870, null
  br i1 %12871, label %12872, label %12884

12872:                                            ; preds = %12861
  %12873 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %12874 = load ptr, ptr %9, align 8, !tbaa !5
  %12875 = getelementptr inbounds %struct.w2c_hermes, ptr %12874, i32 0, i32 7
  %12876 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12875, i32 0, i32 0
  %12877 = load ptr, ptr %12876, align 8, !tbaa !19
  %12878 = load i32, ptr %37, align 4, !tbaa !9
  %12879 = zext i32 %12878 to i64
  %12880 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12877, i64 %12879
  %12881 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12880, i32 0, i32 0
  %12882 = load ptr, ptr %12881, align 8, !tbaa !22
  %12883 = call zeroext i1 @func_types_eq(ptr noundef %12873, ptr noundef %12882)
  br label %12884

12884:                                            ; preds = %12872, %12861, %12846
  %12885 = phi i1 [ false, %12861 ], [ false, %12846 ], [ %12883, %12872 ]
  %12886 = xor i1 %12885, true
  %12887 = xor i1 %12886, true
  %12888 = zext i1 %12887 to i32
  %12889 = sext i32 %12888 to i64
  %12890 = call i64 @llvm.expect.i64(i64 %12889, i64 1)
  %12891 = icmp ne i64 %12890, 0
  br i1 %12891, label %12894, label %12892

12892:                                            ; preds = %12884
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

12893:                                            ; No predecessors!
  br label %12894

12894:                                            ; preds = %12893, %12884
  %12895 = phi i1 [ true, %12884 ], [ false, %12893 ]
  %12896 = zext i1 %12895 to i32
  %12897 = load ptr, ptr %9, align 8, !tbaa !5
  %12898 = getelementptr inbounds %struct.w2c_hermes, ptr %12897, i32 0, i32 7
  %12899 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12898, i32 0, i32 0
  %12900 = load ptr, ptr %12899, align 8, !tbaa !19
  %12901 = load i32, ptr %37, align 4, !tbaa !9
  %12902 = zext i32 %12901 to i64
  %12903 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12900, i64 %12902
  %12904 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12903, i32 0, i32 1
  %12905 = load ptr, ptr %12904, align 8, !tbaa !20
  %12906 = load ptr, ptr %9, align 8, !tbaa !5
  %12907 = getelementptr inbounds %struct.w2c_hermes, ptr %12906, i32 0, i32 7
  %12908 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12907, i32 0, i32 0
  %12909 = load ptr, ptr %12908, align 8, !tbaa !19
  %12910 = load i32, ptr %37, align 4, !tbaa !9
  %12911 = zext i32 %12910 to i64
  %12912 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12909, i64 %12911
  %12913 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12912, i32 0, i32 2
  %12914 = load ptr, ptr %12913, align 8, !tbaa !23
  %12915 = load i32, ptr %36, align 4, !tbaa !9
  call void %12905(ptr noundef %12914, i32 noundef %12915)
  br label %12916

12916:                                            ; preds = %12894, %12835
  %12917 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12917, ptr %36, align 4, !tbaa !9
  %12918 = load ptr, ptr %9, align 8, !tbaa !5
  %12919 = getelementptr inbounds %struct.w2c_hermes, ptr %12918, i32 0, i32 6
  %12920 = load i32, ptr %36, align 4, !tbaa !9
  %12921 = zext i32 %12920 to i64
  %12922 = add i64 %12921, 2216
  %12923 = call i32 @i32_load(ptr noundef %12919, i64 noundef %12922)
  store i32 %12923, ptr %36, align 4, !tbaa !9
  %12924 = load ptr, ptr %9, align 8, !tbaa !5
  %12925 = load i32, ptr %36, align 4, !tbaa !9
  call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %12924, i32 noundef %12925)
  %12926 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %12926, ptr %36, align 4, !tbaa !9
  store i32 2232, ptr %37, align 4, !tbaa !9
  %12927 = load i32, ptr %37, align 4, !tbaa !9
  %12928 = load i32, ptr %36, align 4, !tbaa !9
  %12929 = add i32 %12928, %12927
  store i32 %12929, ptr %36, align 4, !tbaa !9
  %12930 = load ptr, ptr %9, align 8, !tbaa !5
  %12931 = load i32, ptr %36, align 4, !tbaa !9
  %12932 = call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3A0x7EBytecodeModuleGenerator0x280x29(ptr noundef %12930, i32 noundef %12931)
  store i32 %12932, ptr %36, align 4, !tbaa !9
  %12933 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12933, ptr %36, align 4, !tbaa !9
  %12934 = load i32, ptr %36, align 4, !tbaa !9
  %12935 = icmp ne i32 %12934, 0
  br i1 %12935, label %12936, label %13011

12936:                                            ; preds = %12916
  %12937 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12937, ptr %36, align 4, !tbaa !9
  %12938 = load i32, ptr %16, align 4, !tbaa !9
  store i32 %12938, ptr %37, align 4, !tbaa !9
  %12939 = load ptr, ptr %9, align 8, !tbaa !5
  %12940 = getelementptr inbounds %struct.w2c_hermes, ptr %12939, i32 0, i32 6
  %12941 = load i32, ptr %37, align 4, !tbaa !9
  %12942 = zext i32 %12941 to i64
  %12943 = call i32 @i32_load(ptr noundef %12940, i64 noundef %12942)
  store i32 %12943, ptr %37, align 4, !tbaa !9
  %12944 = load ptr, ptr %9, align 8, !tbaa !5
  %12945 = getelementptr inbounds %struct.w2c_hermes, ptr %12944, i32 0, i32 6
  %12946 = load i32, ptr %37, align 4, !tbaa !9
  %12947 = zext i32 %12946 to i64
  %12948 = add i64 %12947, 36
  %12949 = call i32 @i32_load(ptr noundef %12945, i64 noundef %12948)
  store i32 %12949, ptr %37, align 4, !tbaa !9
  %12950 = load i32, ptr %37, align 4, !tbaa !9
  %12951 = load ptr, ptr %9, align 8, !tbaa !5
  %12952 = getelementptr inbounds %struct.w2c_hermes, ptr %12951, i32 0, i32 7
  %12953 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12952, i32 0, i32 2
  %12954 = load i32, ptr %12953, align 4, !tbaa !18
  %12955 = icmp ult i32 %12950, %12954
  br i1 %12955, label %12956, label %12979

12956:                                            ; preds = %12936
  %12957 = load ptr, ptr %9, align 8, !tbaa !5
  %12958 = getelementptr inbounds %struct.w2c_hermes, ptr %12957, i32 0, i32 7
  %12959 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12958, i32 0, i32 0
  %12960 = load ptr, ptr %12959, align 8, !tbaa !19
  %12961 = load i32, ptr %37, align 4, !tbaa !9
  %12962 = zext i32 %12961 to i64
  %12963 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12960, i64 %12962
  %12964 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12963, i32 0, i32 1
  %12965 = load ptr, ptr %12964, align 8, !tbaa !20
  %12966 = icmp ne ptr %12965, null
  br i1 %12966, label %12967, label %12979

12967:                                            ; preds = %12956
  %12968 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !5
  %12969 = load ptr, ptr %9, align 8, !tbaa !5
  %12970 = getelementptr inbounds %struct.w2c_hermes, ptr %12969, i32 0, i32 7
  %12971 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12970, i32 0, i32 0
  %12972 = load ptr, ptr %12971, align 8, !tbaa !19
  %12973 = load i32, ptr %37, align 4, !tbaa !9
  %12974 = zext i32 %12973 to i64
  %12975 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12972, i64 %12974
  %12976 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12975, i32 0, i32 0
  %12977 = load ptr, ptr %12976, align 8, !tbaa !22
  %12978 = call zeroext i1 @func_types_eq(ptr noundef %12968, ptr noundef %12977)
  br label %12979

12979:                                            ; preds = %12967, %12956, %12936
  %12980 = phi i1 [ false, %12956 ], [ false, %12936 ], [ %12978, %12967 ]
  %12981 = xor i1 %12980, true
  %12982 = xor i1 %12981, true
  %12983 = zext i1 %12982 to i32
  %12984 = sext i32 %12983 to i64
  %12985 = call i64 @llvm.expect.i64(i64 %12984, i64 1)
  %12986 = icmp ne i64 %12985, 0
  br i1 %12986, label %12989, label %12987

12987:                                            ; preds = %12979
  call void @wasm_rt_trap(i32 noundef 6) #7
  unreachable

12988:                                            ; No predecessors!
  br label %12989

12989:                                            ; preds = %12988, %12979
  %12990 = phi i1 [ true, %12979 ], [ false, %12988 ]
  %12991 = zext i1 %12990 to i32
  %12992 = load ptr, ptr %9, align 8, !tbaa !5
  %12993 = getelementptr inbounds %struct.w2c_hermes, ptr %12992, i32 0, i32 7
  %12994 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %12993, i32 0, i32 0
  %12995 = load ptr, ptr %12994, align 8, !tbaa !19
  %12996 = load i32, ptr %37, align 4, !tbaa !9
  %12997 = zext i32 %12996 to i64
  %12998 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12995, i64 %12997
  %12999 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %12998, i32 0, i32 1
  %13000 = load ptr, ptr %12999, align 8, !tbaa !20
  %13001 = load ptr, ptr %9, align 8, !tbaa !5
  %13002 = getelementptr inbounds %struct.w2c_hermes, ptr %13001, i32 0, i32 7
  %13003 = getelementptr inbounds %struct.wasm_rt_funcref_table_t, ptr %13002, i32 0, i32 0
  %13004 = load ptr, ptr %13003, align 8, !tbaa !19
  %13005 = load i32, ptr %37, align 4, !tbaa !9
  %13006 = zext i32 %13005 to i64
  %13007 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13004, i64 %13006
  %13008 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %13007, i32 0, i32 2
  %13009 = load ptr, ptr %13008, align 8, !tbaa !23
  %13010 = load i32, ptr %36, align 4, !tbaa !9
  call void %13000(ptr noundef %13009, i32 noundef %13010)
  br label %13011

13011:                                            ; preds = %12989, %12916
  %13012 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13012, ptr %36, align 4, !tbaa !9
  store i32 2768, ptr %37, align 4, !tbaa !9
  %13013 = load i32, ptr %37, align 4, !tbaa !9
  %13014 = load i32, ptr %36, align 4, !tbaa !9
  %13015 = add i32 %13014, %13013
  store i32 %13015, ptr %36, align 4, !tbaa !9
  %13016 = load i32, ptr %36, align 4, !tbaa !9
  %13017 = load ptr, ptr %9, align 8, !tbaa !5
  %13018 = getelementptr inbounds %struct.w2c_hermes, ptr %13017, i32 0, i32 3
  store i32 %13016, ptr %13018, align 8, !tbaa !13
  %13019 = load i32, ptr %20, align 4, !tbaa !9
  store i32 %13019, ptr %36, align 4, !tbaa !9
  br label %13166

13020:                                            ; preds = %10867, %10034, %5791
  %13021 = load ptr, ptr %9, align 8, !tbaa !5
  call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_bad_function_call0x5Babi0x3Av150070x5D0x280x29(ptr noundef %13021)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13022:                                            ; preds = %9008
  store i32 0, ptr %36, align 4, !tbaa !9
  %13023 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13023, ptr %17, align 4, !tbaa !9
  store i32 176409, ptr %37, align 4, !tbaa !9
  %13024 = load i32, ptr %37, align 4, !tbaa !9
  %13025 = load i32, ptr %36, align 4, !tbaa !9
  %13026 = add i32 %13025, %13024
  store i32 %13026, ptr %36, align 4, !tbaa !9
  %13027 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13027, ptr %37, align 4, !tbaa !9
  store i32 85237, ptr %38, align 4, !tbaa !9
  %13028 = load i32, ptr %38, align 4, !tbaa !9
  %13029 = load i32, ptr %37, align 4, !tbaa !9
  %13030 = add i32 %13029, %13028
  store i32 %13030, ptr %37, align 4, !tbaa !9
  store i32 67, ptr %38, align 4, !tbaa !9
  %13031 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13031, ptr %39, align 4, !tbaa !9
  store i32 103502, ptr %40, align 4, !tbaa !9
  %13032 = load i32, ptr %40, align 4, !tbaa !9
  %13033 = load i32, ptr %39, align 4, !tbaa !9
  %13034 = add i32 %13033, %13032
  store i32 %13034, ptr %39, align 4, !tbaa !9
  %13035 = load ptr, ptr %9, align 8, !tbaa !5
  %13036 = load i32, ptr %36, align 4, !tbaa !9
  %13037 = load i32, ptr %37, align 4, !tbaa !9
  %13038 = load i32, ptr %38, align 4, !tbaa !9
  %13039 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13035, i32 noundef %13036, i32 noundef %13037, i32 noundef %13038, i32 noundef %13039)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13040:                                            ; preds = %9096
  store i32 0, ptr %36, align 4, !tbaa !9
  %13041 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13041, ptr %17, align 4, !tbaa !9
  store i32 176409, ptr %37, align 4, !tbaa !9
  %13042 = load i32, ptr %37, align 4, !tbaa !9
  %13043 = load i32, ptr %36, align 4, !tbaa !9
  %13044 = add i32 %13043, %13042
  store i32 %13044, ptr %36, align 4, !tbaa !9
  %13045 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13045, ptr %37, align 4, !tbaa !9
  store i32 85237, ptr %38, align 4, !tbaa !9
  %13046 = load i32, ptr %38, align 4, !tbaa !9
  %13047 = load i32, ptr %37, align 4, !tbaa !9
  %13048 = add i32 %13047, %13046
  store i32 %13048, ptr %37, align 4, !tbaa !9
  store i32 67, ptr %38, align 4, !tbaa !9
  %13049 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13049, ptr %39, align 4, !tbaa !9
  store i32 103502, ptr %40, align 4, !tbaa !9
  %13050 = load i32, ptr %40, align 4, !tbaa !9
  %13051 = load i32, ptr %39, align 4, !tbaa !9
  %13052 = add i32 %13051, %13050
  store i32 %13052, ptr %39, align 4, !tbaa !9
  %13053 = load ptr, ptr %9, align 8, !tbaa !5
  %13054 = load i32, ptr %36, align 4, !tbaa !9
  %13055 = load i32, ptr %37, align 4, !tbaa !9
  %13056 = load i32, ptr %38, align 4, !tbaa !9
  %13057 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13053, i32 noundef %13054, i32 noundef %13055, i32 noundef %13056, i32 noundef %13057)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13058:                                            ; preds = %9176
  store i32 0, ptr %36, align 4, !tbaa !9
  %13059 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13059, ptr %17, align 4, !tbaa !9
  store i32 176409, ptr %37, align 4, !tbaa !9
  %13060 = load i32, ptr %37, align 4, !tbaa !9
  %13061 = load i32, ptr %36, align 4, !tbaa !9
  %13062 = add i32 %13061, %13060
  store i32 %13062, ptr %36, align 4, !tbaa !9
  %13063 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13063, ptr %37, align 4, !tbaa !9
  store i32 85237, ptr %38, align 4, !tbaa !9
  %13064 = load i32, ptr %38, align 4, !tbaa !9
  %13065 = load i32, ptr %37, align 4, !tbaa !9
  %13066 = add i32 %13065, %13064
  store i32 %13066, ptr %37, align 4, !tbaa !9
  store i32 67, ptr %38, align 4, !tbaa !9
  %13067 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13067, ptr %39, align 4, !tbaa !9
  store i32 103502, ptr %40, align 4, !tbaa !9
  %13068 = load i32, ptr %40, align 4, !tbaa !9
  %13069 = load i32, ptr %39, align 4, !tbaa !9
  %13070 = add i32 %13069, %13068
  store i32 %13070, ptr %39, align 4, !tbaa !9
  %13071 = load ptr, ptr %9, align 8, !tbaa !5
  %13072 = load i32, ptr %36, align 4, !tbaa !9
  %13073 = load i32, ptr %37, align 4, !tbaa !9
  %13074 = load i32, ptr %38, align 4, !tbaa !9
  %13075 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13071, i32 noundef %13072, i32 noundef %13073, i32 noundef %13074, i32 noundef %13075)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13076:                                            ; preds = %10554
  store i32 0, ptr %36, align 4, !tbaa !9
  %13077 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13077, ptr %17, align 4, !tbaa !9
  store i32 74646, ptr %37, align 4, !tbaa !9
  %13078 = load i32, ptr %37, align 4, !tbaa !9
  %13079 = load i32, ptr %36, align 4, !tbaa !9
  %13080 = add i32 %13079, %13078
  store i32 %13080, ptr %36, align 4, !tbaa !9
  %13081 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13081, ptr %37, align 4, !tbaa !9
  store i32 82467, ptr %38, align 4, !tbaa !9
  %13082 = load i32, ptr %38, align 4, !tbaa !9
  %13083 = load i32, ptr %37, align 4, !tbaa !9
  %13084 = add i32 %13083, %13082
  store i32 %13084, ptr %37, align 4, !tbaa !9
  store i32 176, ptr %38, align 4, !tbaa !9
  %13085 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13085, ptr %39, align 4, !tbaa !9
  store i32 49706, ptr %40, align 4, !tbaa !9
  %13086 = load i32, ptr %40, align 4, !tbaa !9
  %13087 = load i32, ptr %39, align 4, !tbaa !9
  %13088 = add i32 %13087, %13086
  store i32 %13088, ptr %39, align 4, !tbaa !9
  %13089 = load ptr, ptr %9, align 8, !tbaa !5
  %13090 = load i32, ptr %36, align 4, !tbaa !9
  %13091 = load i32, ptr %37, align 4, !tbaa !9
  %13092 = load i32, ptr %38, align 4, !tbaa !9
  %13093 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13089, i32 noundef %13090, i32 noundef %13091, i32 noundef %13092, i32 noundef %13093)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13094:                                            ; preds = %10640
  store i32 0, ptr %36, align 4, !tbaa !9
  %13095 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13095, ptr %17, align 4, !tbaa !9
  store i32 183742, ptr %37, align 4, !tbaa !9
  %13096 = load i32, ptr %37, align 4, !tbaa !9
  %13097 = load i32, ptr %36, align 4, !tbaa !9
  %13098 = add i32 %13097, %13096
  store i32 %13098, ptr %36, align 4, !tbaa !9
  %13099 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13099, ptr %37, align 4, !tbaa !9
  store i32 62752, ptr %38, align 4, !tbaa !9
  %13100 = load i32, ptr %38, align 4, !tbaa !9
  %13101 = load i32, ptr %37, align 4, !tbaa !9
  %13102 = add i32 %13101, %13100
  store i32 %13102, ptr %37, align 4, !tbaa !9
  store i32 580, ptr %38, align 4, !tbaa !9
  %13103 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13103, ptr %39, align 4, !tbaa !9
  store i32 97041, ptr %40, align 4, !tbaa !9
  %13104 = load i32, ptr %40, align 4, !tbaa !9
  %13105 = load i32, ptr %39, align 4, !tbaa !9
  %13106 = add i32 %13105, %13104
  store i32 %13106, ptr %39, align 4, !tbaa !9
  %13107 = load ptr, ptr %9, align 8, !tbaa !5
  %13108 = load i32, ptr %36, align 4, !tbaa !9
  %13109 = load i32, ptr %37, align 4, !tbaa !9
  %13110 = load i32, ptr %38, align 4, !tbaa !9
  %13111 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13107, i32 noundef %13108, i32 noundef %13109, i32 noundef %13110, i32 noundef %13111)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13112:                                            ; preds = %10732, %10721
  store i32 0, ptr %36, align 4, !tbaa !9
  %13113 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13113, ptr %17, align 4, !tbaa !9
  store i32 111781, ptr %37, align 4, !tbaa !9
  %13114 = load i32, ptr %37, align 4, !tbaa !9
  %13115 = load i32, ptr %36, align 4, !tbaa !9
  %13116 = add i32 %13115, %13114
  store i32 %13116, ptr %36, align 4, !tbaa !9
  %13117 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13117, ptr %37, align 4, !tbaa !9
  store i32 78496, ptr %38, align 4, !tbaa !9
  %13118 = load i32, ptr %38, align 4, !tbaa !9
  %13119 = load i32, ptr %37, align 4, !tbaa !9
  %13120 = add i32 %13119, %13118
  store i32 %13120, ptr %37, align 4, !tbaa !9
  store i32 174, ptr %38, align 4, !tbaa !9
  %13121 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13121, ptr %39, align 4, !tbaa !9
  store i32 43558, ptr %40, align 4, !tbaa !9
  %13122 = load i32, ptr %40, align 4, !tbaa !9
  %13123 = load i32, ptr %39, align 4, !tbaa !9
  %13124 = add i32 %13123, %13122
  store i32 %13124, ptr %39, align 4, !tbaa !9
  %13125 = load ptr, ptr %9, align 8, !tbaa !5
  %13126 = load i32, ptr %36, align 4, !tbaa !9
  %13127 = load i32, ptr %37, align 4, !tbaa !9
  %13128 = load i32, ptr %38, align 4, !tbaa !9
  %13129 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13125, i32 noundef %13126, i32 noundef %13127, i32 noundef %13128, i32 noundef %13129)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13130:                                            ; preds = %11427
  store i32 0, ptr %36, align 4, !tbaa !9
  %13131 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13131, ptr %17, align 4, !tbaa !9
  store i32 117789, ptr %37, align 4, !tbaa !9
  %13132 = load i32, ptr %37, align 4, !tbaa !9
  %13133 = load i32, ptr %36, align 4, !tbaa !9
  %13134 = add i32 %13133, %13132
  store i32 %13134, ptr %36, align 4, !tbaa !9
  %13135 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13135, ptr %37, align 4, !tbaa !9
  store i32 79572, ptr %38, align 4, !tbaa !9
  %13136 = load i32, ptr %38, align 4, !tbaa !9
  %13137 = load i32, ptr %37, align 4, !tbaa !9
  %13138 = add i32 %13137, %13136
  store i32 %13138, ptr %37, align 4, !tbaa !9
  store i32 74, ptr %38, align 4, !tbaa !9
  %13139 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13139, ptr %39, align 4, !tbaa !9
  store i32 88407, ptr %40, align 4, !tbaa !9
  %13140 = load i32, ptr %40, align 4, !tbaa !9
  %13141 = load i32, ptr %39, align 4, !tbaa !9
  %13142 = add i32 %13141, %13140
  store i32 %13142, ptr %39, align 4, !tbaa !9
  %13143 = load ptr, ptr %9, align 8, !tbaa !5
  %13144 = load i32, ptr %36, align 4, !tbaa !9
  %13145 = load i32, ptr %37, align 4, !tbaa !9
  %13146 = load i32, ptr %38, align 4, !tbaa !9
  %13147 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13143, i32 noundef %13144, i32 noundef %13145, i32 noundef %13146, i32 noundef %13147)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13148:                                            ; preds = %12688
  store i32 0, ptr %36, align 4, !tbaa !9
  %13149 = load i32, ptr %36, align 4, !tbaa !9
  store i32 %13149, ptr %17, align 4, !tbaa !9
  store i32 73014, ptr %37, align 4, !tbaa !9
  %13150 = load i32, ptr %37, align 4, !tbaa !9
  %13151 = load i32, ptr %36, align 4, !tbaa !9
  %13152 = add i32 %13151, %13150
  store i32 %13152, ptr %36, align 4, !tbaa !9
  %13153 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13153, ptr %37, align 4, !tbaa !9
  store i32 81389, ptr %38, align 4, !tbaa !9
  %13154 = load i32, ptr %38, align 4, !tbaa !9
  %13155 = load i32, ptr %37, align 4, !tbaa !9
  %13156 = add i32 %13155, %13154
  store i32 %13156, ptr %37, align 4, !tbaa !9
  store i32 1074, ptr %38, align 4, !tbaa !9
  %13157 = load i32, ptr %17, align 4, !tbaa !9
  store i32 %13157, ptr %39, align 4, !tbaa !9
  store i32 63270, ptr %40, align 4, !tbaa !9
  %13158 = load i32, ptr %40, align 4, !tbaa !9
  %13159 = load i32, ptr %39, align 4, !tbaa !9
  %13160 = add i32 %13159, %13158
  store i32 %13160, ptr %39, align 4, !tbaa !9
  %13161 = load ptr, ptr %9, align 8, !tbaa !5
  %13162 = load i32, ptr %36, align 4, !tbaa !9
  %13163 = load i32, ptr %37, align 4, !tbaa !9
  %13164 = load i32, ptr %38, align 4, !tbaa !9
  %13165 = load i32, ptr %39, align 4, !tbaa !9
  call void @w2c_hermes_0x5F_assert_fail(ptr noundef %13161, i32 noundef %13162, i32 noundef %13163, i32 noundef %13164, i32 noundef %13165)
  call void @wasm_rt_trap(i32 noundef 5) #7
  unreachable

13166:                                            ; preds = %13011
  %13167 = load i32, ptr %36, align 4, !tbaa !9
  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 4, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  call void @llvm.lifetime.end.p0(i64 4, 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 8, 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
  ret i32 %13167
}

declare i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3APassManager0x28hermes0x3A0x3ACodeGenerationSettings0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef, i32 noundef, i32 noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AcreateCodeMotion0x280x29(ptr noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AcreateCSE0x280x29(ptr noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AcreateDCE0x280x29(ptr noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AcreateHoistStartGenerator0x280x29(ptr noundef) #4

declare void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AModule0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #4

declare i32 @w2c_hermes_llvh0x3A0x3Aerrs0x280x29(ptr noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3A0x7EPassManager0x280x29(ptr noundef, i32 noundef) #4

declare i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef) #4

declare void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetFunctionsInSegment0x28unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x3A0x3Aswap0x5Babi0x3Av150070x5D0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x260x29(ptr noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x3A0x3Areserve0x28unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef) #4

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

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

declare void @w2c_hermes_hermes0x3A0x3AHBCAllocObjectFromBufferInst0x3A0x3AgetKeyValuePair0x28unsigned0x20int0x290x20const(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AStringRef0x3E0x28llvh0x3A0x3AStringRef0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x20const0x2A0x260x290x20const(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3AFunctionScopeAnalysis0x3A0x3AcalculateFunctionScopeData0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20llvh0x3A0x3AOptional0x3Cint0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare i32 @w2c_hermes_hermes0x3A0x3AScopeRegisterAnalysis0x3A0x3AScopeRegisterAnalysis0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3ARegisterAllocator0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Aallocate0x28llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ABasicBlock0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Adump0x280x29(ptr noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) #4

declare void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef, i32 noundef, i32 noundef) #4

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

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

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { inlinehint nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { noreturn "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { nocallback nofree nosync nounwind willreturn memory(none) }
attributes #6 = { nounwind }
attributes #7 = { noreturn }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"long", !7, i64 0}
!13 = !{!14, !10, i64 24}
!14 = !{!"w2c_hermes", !6, i64 0, !6, i64 8, !6, i64 16, !10, i64 24, !10, i64 28, !10, i64 32, !15, i64 40, !17, i64 80}
!15 = !{!"", !6, i64 0, !12, i64 8, !12, i64 16, !12, i64 24, !16, i64 32}
!16 = !{!"_Bool", !7, i64 0}
!17 = !{!"", !6, i64 0, !10, i64 8, !10, i64 12}
!18 = !{!14, !10, i64 92}
!19 = !{!14, !6, i64 80}
!20 = !{!21, !6, i64 8}
!21 = !{!"", !6, i64 0, !6, i64 8, !6, i64 16}
!22 = !{!21, !6, i64 0}
!23 = !{!21, !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_t3 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t0 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t2 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t5 = external local_unnamed_addr constant ptr, align 8
@w2c_hermes_t1 = external local_unnamed_addr constant ptr, align 8

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

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

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

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef, i32 noundef) local_unnamed_addr #1

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

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

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

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

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

declare void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef, i32 noundef) local_unnamed_addr #3

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

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

declare void @w2c_hermes_0x5F_assert_fail(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

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

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

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

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

declare void @w2c_hermes_abort(ptr noundef) local_unnamed_addr #3

declare void @w2c_hermes_std0x3A0x3A_0x5Fthrow_bad_array_new_length0x5Babi0x3Av150070x5D0x280x29(ptr noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_0x5F_memcpy(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AStringTable0x3A0x3AgetString0x28llvh0x3A0x3AStringRef0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

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

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #3

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

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_bad_function_call0x5Babi0x3Av150070x5D0x280x29(ptr noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetContext0x280x290x20const(ptr noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetOperand0x28unsigned0x20int0x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetNumOperands0x280x290x20const(ptr noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3APostOrderAnalysis0x3A0x3APostOrderAnalysis0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3AverifyModule0x28hermes0x3A0x3AModule0x20const0x260x2C0x20llvh0x3A0x3Araw_ostream0x2A0x2C0x20hermes0x3A0x3AVerificationMode0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3AStringLiteralIDMapping0x28hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x3A0x3AtoTable0x28hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseFunctions0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetSourceRepresentationStr0x280x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseCJSModuleNames0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseLiteralStrings0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x2C0x20bool0x290x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AgetStringID0x28llvh0x3A0x3AStringRef0x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddFunction0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AsetFunctionGenerator0x28hermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AinitializeStringTable0x28hermes0x3A0x3Ahbc0x3A0x3AStringLiteralTable0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AinitializeSerializedLiterals0x28std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20llvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x260x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddCJSModule0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddCJSModuleStatic0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddFunctionSource0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3Agenerate0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x3A0x3AFindAndConstruct0x28hermes0x3A0x3AInstruction0x20const0x2A0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AHBCISel0x3A0x3Agenerate0x28hermes0x3A0x3ASourceMapGenerator0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

declare i32 @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3A0x7ERegisterAllocator0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
define dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AgenerateBytecodeModule0x28hermes0x3A0x3AModule0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3ABytecodeGenerationOptions0x20const0x260x2C0x20hermes0x3A0x3AOptValue0x3Cunsigned0x20int0x3E0x2C0x20hermes0x3A0x3ASourceMapGenerator0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3Ahbc0x3A0x3ABCProviderBase0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABCProviderBase0x3E0x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3, i32 noundef %4, i32 noundef %5, i32 noundef %6, i32 noundef %7) local_unnamed_addr #1 {
  %9 = getelementptr inbounds i8, ptr %0, i64 24
  %10 = load i32, ptr %9, align 8, !tbaa !5
  %11 = add i32 %10, -2768
  store i32 %11, ptr %9, align 8, !tbaa !5
  %12 = getelementptr inbounds i8, ptr %0, i64 40
  %13 = zext i32 %1 to i64
  %14 = add nuw nsw i64 %13, 596
  %15 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %14)
  %.not = icmp eq i32 %15, 0
  br i1 %.not, label %16, label %._crit_edge7505

._crit_edge7505:                                  ; preds = %8
  %.pre7506 = zext i32 %4 to i64
  br label %121

16:                                               ; preds = %8
  %17 = add i32 %10, -2248
  %18 = add nuw nsw i64 %13, 28
  %19 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %18)
  %20 = add i32 %19, 128
  %21 = tail call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3APassManager0x28hermes0x3A0x3ACodeGenerationSettings0x20const0x260x29(ptr noundef nonnull %0, i32 noundef %17, i32 noundef %20) #5
  %22 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %23 = zext i32 %22 to i64
  %24 = add nuw nsw i64 %23, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %24, i32 noundef 23598)
  %25 = add nuw nsw i64 %23, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %25, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %23, i32 noundef 270324)
  %26 = add nuw nsw i64 %23, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %26, i32 noundef 23)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %22) #5
  %27 = zext i32 %4 to i64
  %28 = add nuw nsw i64 %27, 4
  %29 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %28)
  %.not7218 = icmp eq i32 %29, 0
  br i1 %.not7218, label %36, label %30

30:                                               ; preds = %16
  %31 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %32 = zext i32 %31 to i64
  %33 = add nuw nsw i64 %32, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %33, i32 noundef 28129)
  %34 = add nuw nsw i64 %32, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %34, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %32, i32 noundef 270504)
  %35 = add nuw nsw i64 %32, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %35, i32 noundef 18)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %31) #5
  br label %36

36:                                               ; preds = %30, %16
  %37 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %38 = zext i32 %37 to i64
  %39 = add nuw nsw i64 %38, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %39, i32 noundef 48420)
  %40 = add nuw nsw i64 %38, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %40, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %38, i32 noundef 270664)
  %41 = add nuw nsw i64 %38, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %41, i32 noundef 27)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %37) #5
  %42 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %43 = zext i32 %42 to i64
  %44 = add nuw nsw i64 %43, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %44, i32 noundef 43317)
  %45 = add nuw nsw i64 %43, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %45, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %43, i32 noundef 270712)
  %46 = add nuw nsw i64 %43, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %46, i32 noundef 17)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %42) #5
  %47 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %48 = zext i32 %47 to i64
  %49 = add nuw nsw i64 %48, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %49, i32 noundef 45052)
  %50 = add nuw nsw i64 %48, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %50, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %48, i32 noundef 270604)
  %51 = add nuw nsw i64 %48, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %51, i32 noundef 22)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %47) #5
  %52 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %53 = zext i32 %52 to i64
  %54 = add nuw nsw i64 %53, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %54, i32 noundef 65252)
  %55 = add nuw nsw i64 %53, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %55, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %53, i32 noundef 270384)
  %56 = add nuw nsw i64 %53, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %56, i32 noundef 17)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %52) #5
  %57 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %58 = zext i32 %57 to i64
  %59 = add nuw nsw i64 %58, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %59, i32 noundef 18649)
  %60 = add nuw nsw i64 %58, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %60, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %58, i32 noundef 270344)
  %61 = add nuw nsw i64 %58, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %61, i32 noundef 19)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %57) #5
  %62 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 20) #5
  %63 = zext i32 %62 to i64
  %64 = add nuw nsw i64 %63, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %64, i32 noundef 19480)
  %65 = add nuw nsw i64 %63, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %65, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %63, i32 noundef 270624)
  %66 = add nuw nsw i64 %63, 12
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %66, i64 noundef 281470681743375)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %62) #5
  %67 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %68 = zext i32 %67 to i64
  %69 = add nuw nsw i64 %68, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %69, i32 noundef 40222)
  %70 = add nuw nsw i64 %68, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %70, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %68, i32 noundef 270364)
  %71 = add nuw nsw i64 %68, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %71, i32 noundef 19)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %67) #5
  %72 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %73 = zext i32 %72 to i64
  %74 = add nuw nsw i64 %73, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %74, i32 noundef 44936)
  %75 = add nuw nsw i64 %73, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %75, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %73, i32 noundef 270484)
  %76 = add nuw nsw i64 %73, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %76, i32 noundef 25)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %72) #5
  %77 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %78 = zext i32 %77 to i64
  %79 = add nuw nsw i64 %78, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %79, i32 noundef 87335)
  %80 = add nuw nsw i64 %78, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %80, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %78, i32 noundef 270544)
  %81 = add nuw nsw i64 %78, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %81, i32 noundef 14)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %77) #5
  %82 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %83 = zext i32 %82 to i64
  %84 = add nuw nsw i64 %83, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %84, i32 noundef 40569)
  %85 = add nuw nsw i64 %83, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %85, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %83, i32 noundef 270284)
  %86 = add nuw nsw i64 %83, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %86, i32 noundef 13)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %82) #5
  %87 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %88 = zext i32 %87 to i64
  %89 = add nuw nsw i64 %88, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %89, i32 noundef 41980)
  %90 = add nuw nsw i64 %88, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %90, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %88, i32 noundef 270304)
  %91 = add nuw nsw i64 %88, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %91, i32 noundef 14)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %87) #5
  %92 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %28)
  %.not7219 = icmp eq i32 %92, 0
  br i1 %.not7219, label %112, label %93

93:                                               ; preds = %36
  %94 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %95 = zext i32 %94 to i64
  %96 = add nuw nsw i64 %95, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %96, i32 noundef 39079)
  %97 = add nuw nsw i64 %95, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %97, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %95, i32 noundef 270564)
  %98 = add nuw nsw i64 %95, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %98, i32 noundef 16)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %94) #5
  %99 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %100 = zext i32 %99 to i64
  %101 = add nuw nsw i64 %100, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %101, i32 noundef 76171)
  %102 = add nuw nsw i64 %100, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %102, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %100, i32 noundef 270644)
  %103 = add nuw nsw i64 %100, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %103, i32 noundef 15)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %99) #5
  %104 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 16) #5
  %105 = zext i32 %104 to i64
  %106 = add nuw nsw i64 %105, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %106, i32 noundef 40043)
  %107 = add nuw nsw i64 %105, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %107, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %105, i32 noundef 270780)
  %108 = add nuw nsw i64 %105, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %108, i32 noundef 13)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %104) #5
  %109 = tail call i32 @w2c_hermes_hermes0x3A0x3AcreateCodeMotion0x280x29(ptr noundef nonnull %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %109) #5
  %110 = tail call i32 @w2c_hermes_hermes0x3A0x3AcreateCSE0x280x29(ptr noundef nonnull %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %110) #5
  %111 = tail call i32 @w2c_hermes_hermes0x3A0x3AcreateDCE0x280x29(ptr noundef nonnull %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %111) #5
  br label %112

112:                                              ; preds = %93, %36
  %113 = tail call i32 @w2c_hermes_hermes0x3A0x3AcreateHoistStartGenerator0x280x29(ptr noundef nonnull %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %113) #5
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AModule0x2A0x29(ptr noundef nonnull %0, i32 noundef %21, i32 noundef %1) #5
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %14, i32 noundef 1)
  %114 = add nuw nsw i64 %27, 9
  %115 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %114)
  %.not7220 = icmp eq i32 %115, 0
  br i1 %.not7220, label %119, label %116

116:                                              ; preds = %112
  %117 = tail call i32 @w2c_hermes_llvh0x3A0x3Aerrs0x280x29(ptr noundef nonnull %0) #5
  %118 = tail call i32 @w2c_hermes_hermes0x3A0x3AverifyModule0x28hermes0x3A0x3AModule0x20const0x260x2C0x20llvh0x3A0x3Araw_ostream0x2A0x2C0x20hermes0x3A0x3AVerificationMode0x29(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %117, i32 noundef 0)
  %.not7221 = icmp eq i32 %118, 0
  br i1 %.not7221, label %119, label %389

119:                                              ; preds = %116, %112
  %120 = tail call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3A0x7EPassManager0x280x29(ptr noundef nonnull %0, i32 noundef %21) #5
  br label %121

121:                                              ; preds = %._crit_edge7505, %119
  %.pre-phi7507 = phi i64 [ %.pre7506, %._crit_edge7505 ], [ %27, %119 ]
  %122 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.pre-phi7507)
  %123 = icmp eq i32 %122, 6
  br i1 %123, label %124, label %126

124:                                              ; preds = %121
  %125 = tail call i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef nonnull %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %125) #5
  br label %126

126:                                              ; preds = %124, %121
  %127 = add i32 %10, -512
  %128 = zext i32 %127 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %128, i64 noundef 0)
  %129 = add i32 %10, -520
  %130 = zext i32 %129 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %130, i64 noundef 0)
  %131 = add i32 %10, -460
  %132 = zext i32 %131 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %132, i64 noundef 0)
  %133 = add i32 %10, -452
  %134 = zext i32 %133 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %134, i64 noundef 0)
  %135 = add i32 %10, -480
  %136 = zext i32 %135 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %136, i32 noundef 0)
  %137 = add i32 %10, -488
  %138 = zext i32 %137 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %138, i64 noundef 0)
  %139 = add i32 %10, -496
  %140 = zext i32 %139 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %140, i64 noundef 0)
  %141 = add i32 %10, -504
  %142 = zext i32 %141 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %142, i64 noundef 0)
  %143 = add i32 %10, -528
  %144 = zext i32 %143 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %144, i64 noundef 0)
  %145 = add i32 %10, -468
  %146 = zext i32 %145 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %146, i64 noundef 0)
  %147 = add i32 %10, -444
  %148 = zext i32 %147 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %148, i64 noundef 0)
  %149 = add i32 %10, -436
  %150 = zext i32 %149 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %150, i64 noundef 0)
  %151 = add i32 %10, -428
  %152 = zext i32 %151 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %152, i64 noundef 0)
  %153 = add i32 %10, -420
  %154 = zext i32 %153 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %154, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %128, i32 noundef 8)
  %155 = add i32 %10, -508
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %130, i32 noundef %155)
  %156 = add i32 %10, -448
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %132, i32 noundef %156)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %134, i32 noundef 8)
  %157 = zext i32 %11 to i64
  %158 = add nuw nsw i64 %157, 2232
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %158, i64 noundef 0)
  %159 = add nuw nsw i64 %157, 2292
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %159, i64 noundef 0)
  %160 = add i32 %10, -416
  %161 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef nonnull %0, i32 noundef %160, i32 noundef 0, i32 noundef 88) #5
  %162 = add i32 %10, -332
  %163 = zext i32 %162 to i64
  tail call void @i32_store16(ptr noundef nonnull %12, i64 noundef %163, i32 noundef 257)
  %164 = add i32 %10, -328
  %165 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef nonnull %0, i32 noundef %164, i32 noundef 0, i32 noundef 252) #5
  %166 = add i32 %10, -60
  %167 = add nuw nsw i64 %.pre-phi7507, 16
  %168 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %167)
  %169 = zext i32 %166 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %169, i32 noundef %168)
  %170 = add i32 %10, -68
  %171 = add nuw nsw i64 %.pre-phi7507, 8
  %172 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %171)
  %173 = zext i32 %170 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %173, i64 noundef %172)
  %174 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %.pre-phi7507)
  %175 = add nuw nsw i64 %157, 2692
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %175, i64 noundef %174)
  %176 = add nuw nsw i64 %157, 2716
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %176, i32 noundef -1)
  %177 = add nuw nsw i64 %157, 2714
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %177, i32 noundef 1)
  %178 = add nuw nsw i64 %157, 2712
  tail call void @i32_store16(ptr noundef nonnull %12, i64 noundef %178, i32 noundef 0)
  %179 = zext i32 %5 to i64
  %180 = add nuw nsw i64 %179, 4
  %181 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %180)
  %.not7222 = icmp eq i32 %181, 0
  %182 = add nuw nsw i64 %157, 2208
  br i1 %.not7222, label %217, label %183

183:                                              ; preds = %126
  %184 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %179)
  %185 = add nuw nsw i64 %157, 2600
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %185, i32 noundef %184)
  %186 = add i32 %10, -552
  tail call void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetFunctionsInSegment0x28unsigned0x20int0x29(ptr noundef nonnull %0, i32 noundef %186, i32 noundef %1, i32 noundef %184) #5
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %182, i32 noundef 0)
  %187 = add nuw nsw i64 %157, 528
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %187, i32 noundef %186)
  %188 = add nuw nsw i64 %157, 524
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %188, i32 noundef %3)
  %189 = add nuw nsw i64 %157, 520
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %189, i32 noundef 271196)
  %190 = add i32 %10, -2248
  %191 = add nuw nsw i64 %157, 536
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %191, i32 noundef %190)
  %192 = add i32 %10, -576
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x3A0x3Aswap0x5Babi0x3Av150070x5D0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x260x29(ptr noundef nonnull %0, i32 noundef %190, i32 noundef %192) #5
  %193 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %191)
  %194 = icmp eq i32 %193, %190
  br i1 %194, label %198, label %195

195:                                              ; preds = %183
  %.not7225 = icmp eq i32 %193, 0
  br i1 %.not7225, label %255, label %196

196:                                              ; preds = %195
  %197 = zext i32 %193 to i64
  br label %198

198:                                              ; preds = %183, %196
  %.sink7531 = phi i64 [ %197, %196 ], [ %189, %183 ]
  %.sink7530 = phi i32 [ 20, %196 ], [ 16, %183 ]
  %.07018 = phi i32 [ %193, %196 ], [ %190, %183 ]
  %199 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7531)
  %200 = add i32 %199, %.sink7530
  %201 = zext i32 %200 to i64
  %202 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %201)
  %203 = getelementptr inbounds i8, ptr %0, i64 80
  %204 = getelementptr inbounds i8, ptr %0, i64 92
  %205 = load i32, ptr %204, align 4, !tbaa !15
  %206 = icmp ult i32 %202, %205
  br i1 %206, label %207, label %.critedge, !prof !16

207:                                              ; preds = %198
  %208 = load ptr, ptr %203, align 8, !tbaa !17
  %209 = zext i32 %202 to i64
  %210 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %208, i64 %209
  %211 = getelementptr inbounds i8, ptr %210, i64 8
  %212 = load ptr, ptr %211, align 8, !tbaa !18
  %.not7226 = icmp eq ptr %212, null
  br i1 %.not7226, label %.critedge, label %213, !prof !20

213:                                              ; preds = %207
  %214 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %215 = load ptr, ptr %210, align 8, !tbaa !22
  %216 = tail call zeroext i1 @func_types_eq(ptr noundef %214, ptr noundef %215)
  br i1 %216, label %.sink.split, label %.critedge, !prof !16

.critedge:                                        ; preds = %207, %198, %213
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

217:                                              ; preds = %126
  %218 = add i32 %10, -544
  %219 = zext i32 %218 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %219, i64 noundef 0)
  %220 = add nuw nsw i64 %157, 2216
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %220, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %182, i32 noundef 0)
  %221 = add nuw nsw i64 %157, 520
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %221, i32 noundef 271232)
  %222 = add i32 %10, -2248
  %223 = add nuw nsw i64 %157, 536
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %223, i32 noundef %222)
  %224 = add i32 %10, -576
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x3A0x3Aswap0x5Babi0x3Av150070x5D0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x260x29(ptr noundef nonnull %0, i32 noundef %222, i32 noundef %224) #5
  %225 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %223)
  %226 = icmp eq i32 %225, %222
  br i1 %226, label %230, label %227

227:                                              ; preds = %217
  %.not7223 = icmp eq i32 %225, 0
  br i1 %.not7223, label %255, label %228

228:                                              ; preds = %227
  %229 = zext i32 %225 to i64
  br label %230

230:                                              ; preds = %217, %228
  %.sink7533 = phi i64 [ %229, %228 ], [ %221, %217 ]
  %.sink7532 = phi i32 [ 20, %228 ], [ 16, %217 ]
  %.17019 = phi i32 [ %225, %228 ], [ %222, %217 ]
  %231 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7533)
  %232 = add i32 %231, %.sink7532
  %233 = zext i32 %232 to i64
  %234 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %233)
  %235 = getelementptr inbounds i8, ptr %0, i64 80
  %236 = getelementptr inbounds i8, ptr %0, i64 92
  %237 = load i32, ptr %236, align 4, !tbaa !15
  %238 = icmp ult i32 %234, %237
  br i1 %238, label %239, label %.critedge7389, !prof !16

239:                                              ; preds = %230
  %240 = load ptr, ptr %235, align 8, !tbaa !17
  %241 = zext i32 %234 to i64
  %242 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %240, i64 %241
  %243 = getelementptr inbounds i8, ptr %242, i64 8
  %244 = load ptr, ptr %243, align 8, !tbaa !18
  %.not7224 = icmp eq ptr %244, null
  br i1 %.not7224, label %.critedge7389, label %245, !prof !20

245:                                              ; preds = %239
  %246 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %247 = load ptr, ptr %242, align 8, !tbaa !22
  %248 = tail call zeroext i1 @func_types_eq(ptr noundef %246, ptr noundef %247)
  br i1 %248, label %.sink.split, label %.critedge7389, !prof !16

.critedge7389:                                    ; preds = %239, %230, %245
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

.sink.split:                                      ; preds = %245, %213
  %.sink = phi ptr [ %203, %213 ], [ %235, %245 ]
  %.sink7539 = phi i64 [ %209, %213 ], [ %241, %245 ]
  %.17019.sink = phi i32 [ %.07018, %213 ], [ %.17019, %245 ]
  %249 = load ptr, ptr %.sink, align 8, !tbaa !17
  %250 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %249, i64 %.sink7539
  %251 = getelementptr inbounds i8, ptr %250, i64 8
  %252 = load ptr, ptr %251, align 8, !tbaa !18
  %253 = getelementptr inbounds i8, ptr %250, i64 16
  %254 = load ptr, ptr %253, align 8, !tbaa !23
  tail call void %252(ptr noundef %254, i32 noundef %.17019.sink) #5
  br label %255

255:                                              ; preds = %.sink.split, %227, %195
  %256 = add i32 %10, -584
  %257 = zext i32 %256 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %257, i64 noundef 0)
  %258 = add nuw nsw i64 %157, 2176
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %258, i64 noundef 0)
  %.not7227 = icmp eq i32 %7, 0
  br i1 %.not7227, label %375, label %259

259:                                              ; preds = %255
  %260 = zext i32 %7 to i64
  %261 = add nuw nsw i64 %260, 16
  %262 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %261)
  %263 = add nuw nsw i64 %157, 412
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %263, i32 noundef 0)
  %264 = add nuw nsw i64 %157, 404
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %264, i64 noundef 0)
  %.not7228 = icmp eq i32 %262, 0
  br i1 %.not7228, label %271, label %265

265:                                              ; preds = %259
  %266 = icmp ugt i32 %262, 536870911
  br i1 %266, label %.loopexit7468, label %267

267:                                              ; preds = %265
  %268 = shl nuw i32 %262, 3
  %269 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %268) #5
  %270 = add i32 %269, %268
  br label %271

271:                                              ; preds = %267, %259
  %.07006 = phi i32 [ %269, %267 ], [ 0, %259 ]
  %.06990 = phi i32 [ %270, %267 ], [ 0, %259 ]
  %272 = add i32 %10, -2364
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x3A0x3Areserve0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %272, i32 noundef %262) #5
  %273 = add nuw nsw i64 %260, 24
  %274 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %273)
  %.not7229 = icmp eq i32 %274, 0
  br i1 %.not7229, label %.loopexit7477, label %275

275:                                              ; preds = %271
  %276 = add nuw nsw i64 %260, 20
  %277 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %276)
  %278 = shl i32 %274, 2
  %279 = add i32 %277, %278
  %280 = add i32 %10, -2248
  %281 = getelementptr inbounds i8, ptr %0, i64 80
  %282 = getelementptr inbounds i8, ptr %0, i64 92
  %283 = load ptr, ptr @w2c_hermes_t1, align 8
  %284 = add nuw nsw i64 %157, 520
  %285 = add nuw nsw i64 %157, 408
  br label %286

286:                                              ; preds = %.loopexit7476, %275
  %.07036 = phi i32 [ 0, %275 ], [ %.27038, %.loopexit7476 ]
  %.17007 = phi i32 [ %.07006, %275 ], [ %.47010, %.loopexit7476 ]
  %.06998 = phi i32 [ %.07006, %275 ], [ %.37001, %.loopexit7476 ]
  %.16991 = phi i32 [ %.06990, %275 ], [ %.46994, %.loopexit7476 ]
  %.06983 = phi i32 [ %277, %275 ], [ %374, %.loopexit7476 ]
  %287 = zext i32 %.06983 to i64
  %288 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %287)
  %289 = and i32 %288, 2147483647
  %.not7230 = icmp eq i32 %289, 0
  br i1 %.not7230, label %.loopexit7476, label %290

290:                                              ; preds = %286
  %291 = add i32 %289, %.07036
  %292 = icmp slt i32 %288, 0
  br label %293

293:                                              ; preds = %360, %290
  %.17037 = phi i32 [ %.07036, %290 ], [ %373, %360 ]
  %.27008 = phi i32 [ %.17007, %290 ], [ %.37009, %360 ]
  %.16999 = phi i32 [ %.06998, %290 ], [ %.27000, %360 ]
  %.26992 = phi i32 [ %.16991, %290 ], [ %.36993, %360 ]
  %294 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %260)
  %295 = zext i32 %294 to i64
  %296 = add nuw nsw i64 %295, 4
  %297 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %296)
  %298 = load i32, ptr %282, align 4, !tbaa !15
  %299 = icmp ult i32 %297, %298
  br i1 %299, label %300, label %.critedge7391, !prof !16

300:                                              ; preds = %293
  %301 = load ptr, ptr %281, align 8, !tbaa !17
  %302 = zext i32 %297 to i64
  %303 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %301, i64 %302
  %304 = getelementptr inbounds i8, ptr %303, i64 8
  %305 = load ptr, ptr %304, align 8, !tbaa !18
  %.not7231 = icmp eq ptr %305, null
  br i1 %.not7231, label %.critedge7391, label %306, !prof !20

306:                                              ; preds = %300
  %307 = load ptr, ptr %303, align 8, !tbaa !22
  %308 = tail call zeroext i1 @func_types_eq(ptr noundef %283, ptr noundef %307)
  br i1 %308, label %309, label %.critedge7391, !prof !16

.critedge7391:                                    ; preds = %300, %293, %306
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

309:                                              ; preds = %306
  %310 = load ptr, ptr %281, align 8, !tbaa !17
  %311 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %310, i64 %302
  %312 = getelementptr inbounds i8, ptr %311, i64 8
  %313 = load ptr, ptr %312, align 8, !tbaa !18
  %314 = getelementptr inbounds i8, ptr %311, i64 16
  %315 = load ptr, ptr %314, align 8, !tbaa !23
  tail call void %313(ptr noundef %315, i32 noundef %280, i32 noundef %7, i32 noundef %.17037) #5
  %316 = icmp ult i32 %.27008, %.26992
  br i1 %316, label %317, label %320

317:                                              ; preds = %309
  %318 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %284)
  %319 = zext i32 %.27008 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %319, i64 noundef %318)
  br label %343

320:                                              ; preds = %309
  %321 = sub i32 %.27008, %.16999
  %322 = ashr i32 %321, 3
  %323 = add nsw i32 %322, 1
  %324 = icmp ugt i32 %323, 536870911
  br i1 %324, label %.loopexit7468, label %325

325:                                              ; preds = %320
  %326 = sub i32 %.26992, %.16999
  %327 = ashr i32 %326, 2
  %328 = tail call i32 @llvm.umax.i32(i32 %323, i32 %327)
  %329 = icmp ugt i32 %326, 2147483639
  %330 = select i1 %329, i32 536870911, i32 %328
  %.not7232 = icmp eq i32 %330, 0
  br i1 %.not7232, label %._crit_edge, label %331

331:                                              ; preds = %325
  %332 = icmp ugt i32 %330, 536870911
  br i1 %332, label %.loopexit7469, label %333

333:                                              ; preds = %331
  %334 = shl nuw i32 %330, 3
  %335 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %334) #5
  br label %._crit_edge

._crit_edge:                                      ; preds = %325, %333
  %.pre-phi7519 = phi i32 [ %334, %333 ], [ 0, %325 ]
  %.26973 = phi i32 [ %335, %333 ], [ 0, %325 ]
  %336 = and i32 %321, -8
  %337 = add i32 %.26973, %336
  %338 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %284)
  %339 = zext i32 %337 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %339, i64 noundef %338)
  %340 = tail call i32 @w2c_hermes_memmove(ptr noundef nonnull %0, i32 noundef %.26973, i32 noundef %.16999, i32 noundef %321) #5
  %341 = add i32 %340, %.pre-phi7519
  %.not7233 = icmp eq i32 %.16999, 0
  br i1 %.not7233, label %343, label %342

342:                                              ; preds = %._crit_edge
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef nonnull %0, i32 noundef %.16999) #5
  br label %343

343:                                              ; preds = %._crit_edge, %342, %317
  %.37009.in = phi i32 [ %.27008, %317 ], [ %337, %342 ], [ %337, %._crit_edge ]
  %.27000 = phi i32 [ %.16999, %317 ], [ %340, %342 ], [ %340, %._crit_edge ]
  %.36993 = phi i32 [ %.26992, %317 ], [ %341, %342 ], [ %341, %._crit_edge ]
  %.37009 = add i32 %.37009.in, 8
  %344 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %285)
  %345 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %263)
  %346 = shl i32 %345, 5
  %347 = icmp eq i32 %344, %346
  br i1 %347, label %348, label %360

348:                                              ; preds = %343
  %349 = add nuw i32 %344, 1
  %350 = icmp slt i32 %349, 0
  br i1 %350, label %.loopexit7468, label %351

351:                                              ; preds = %348
  %352 = icmp ult i32 %344, 1073741823
  br i1 %352, label %353, label %358

353:                                              ; preds = %351
  %354 = shl i32 %345, 6
  %355 = and i32 %344, 1073741792
  %356 = add nuw nsw i32 %355, 32
  %357 = tail call i32 @llvm.umax.i32(i32 %356, i32 %354)
  br label %358

358:                                              ; preds = %353, %351
  %.06985 = phi i32 [ %357, %353 ], [ 2147483647, %351 ]
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x3A0x3Areserve0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %272, i32 noundef %.06985) #5
  %359 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %285)
  br label %360

360:                                              ; preds = %358, %343
  %.27020 = phi i32 [ %359, %358 ], [ %344, %343 ]
  %361 = add i32 %.27020, 1
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %285, i32 noundef %361)
  %362 = and i32 %.27020, 31
  %363 = shl nuw i32 1, %362
  %364 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %264)
  %365 = lshr i32 %.27020, 3
  %366 = and i32 %365, 536870908
  %367 = add i32 %364, %366
  %368 = zext i32 %367 to i64
  %369 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %368)
  %370 = xor i32 %363, -1
  %371 = and i32 %369, %370
  %372 = or i32 %369, %363
  %.0 = select i1 %292, i32 %372, i32 %371
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %368, i32 noundef %.0)
  %373 = add i32 %.17037, 1
  %.not7234 = icmp eq i32 %373, %291
  br i1 %.not7234, label %.loopexit7476, label %293

.loopexit7476:                                    ; preds = %360, %286
  %.27038 = phi i32 [ %.07036, %286 ], [ %291, %360 ]
  %.47010 = phi i32 [ %.17007, %286 ], [ %.37009, %360 ]
  %.37001 = phi i32 [ %.06998, %286 ], [ %.27000, %360 ]
  %.46994 = phi i32 [ %.16991, %286 ], [ %.36993, %360 ]
  %374 = add i32 %.06983, 4
  %.not7235 = icmp eq i32 %279, %374
  br i1 %.not7235, label %.loopexit7477, label %286

375:                                              ; preds = %255
  %376 = add i32 %10, -2224
  %377 = zext i32 %376 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %377, i32 noundef 0)
  %378 = add nuw nsw i64 %157, 536
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %378, i64 noundef 0)
  %379 = add nuw nsw i64 %157, 528
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %379, i64 noundef 0)
  %380 = add nuw nsw i64 %157, 556
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %380, i64 noundef 0)
  %381 = add nuw nsw i64 %157, 564
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %381, i64 noundef 0)
  %382 = add nuw nsw i64 %157, 572
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %382, i64 noundef 0)
  %383 = add nuw nsw i64 %157, 580
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %383, i64 noundef 0)
  %384 = add nuw nsw i64 %157, 588
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %384, i64 noundef 0)
  %385 = add nuw nsw i64 %157, 596
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %385, i64 noundef 0)
  %386 = add nuw nsw i64 %157, 604
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %386, i64 noundef 0)
  tail call void @i32_store16(ptr noundef nonnull %12, i64 noundef %377, i32 noundef 257)
  %387 = add nuw nsw i64 %157, 520
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %387, i64 noundef 0)
  %388 = add nuw nsw i64 %157, 548
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %388, i64 noundef 0)
  br label %434

389:                                              ; preds = %116
  %390 = tail call i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef nonnull %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef nonnull %0, i32 noundef %1, i32 noundef %390) #5
  tail call void @w2c_hermes_hermes0x3A0x3Ahermes_fatal0x28char0x20const0x2A0x29(ptr noundef nonnull %0, i32 noundef 105796)
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7477:                                    ; preds = %.loopexit7476, %271
  %.37039 = phi i32 [ 0, %271 ], [ %.27038, %.loopexit7476 ]
  %.57011 = phi i32 [ %.07006, %271 ], [ %.47010, %.loopexit7476 ]
  %.47002 = phi i32 [ %.07006, %271 ], [ %.37001, %.loopexit7476 ]
  %.56995 = phi i32 [ %.06990, %271 ], [ %.46994, %.loopexit7476 ]
  %.not7236 = icmp eq i32 %.37039, %262
  br i1 %.not7236, label %392, label %391

391:                                              ; preds = %.loopexit7477
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 162147, i32 noundef 62752, i32 noundef 128, i32 noundef 52356) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

392:                                              ; preds = %.loopexit7477
  %393 = add nuw nsw i64 %260, 40
  %394 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %393)
  %.not7237 = icmp eq i32 %394, 0
  br i1 %.not7237, label %403, label %395

395:                                              ; preds = %392
  %396 = icmp slt i32 %394, 0
  br i1 %396, label %.loopexit7468, label %397

397:                                              ; preds = %395
  %398 = add nuw nsw i64 %260, 36
  %399 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %398)
  %400 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %394) #5
  %401 = tail call i32 @w2c_hermes_0x5F_memcpy(ptr noundef %0, i32 noundef %400, i32 noundef %399, i32 noundef %394) #5
  %402 = add i32 %401, %394
  br label %403

403:                                              ; preds = %397, %392
  %.37021 = phi i32 [ %402, %397 ], [ 0, %392 ]
  %.06988 = phi i32 [ %400, %397 ], [ 0, %392 ]
  %404 = add nuw nsw i64 %157, 140
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %404, i32 noundef %.37021)
  %405 = add nuw nsw i64 %157, 136
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %405, i32 noundef %.37021)
  %406 = add nuw nsw i64 %157, 144
  tail call void @i32_store16(ptr noundef nonnull %12, i64 noundef %406, i32 noundef 257)
  %407 = add nuw nsw i64 %157, 132
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %407, i32 noundef %.06988)
  %408 = add nuw nsw i64 %157, 128
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %408, i32 noundef %.56995)
  %409 = add nuw nsw i64 %157, 124
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %409, i32 noundef %.57011)
  %410 = add nuw nsw i64 %157, 120
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %410, i32 noundef %.47002)
  %411 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %264)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %264, i32 noundef 0)
  %412 = add nuw nsw i64 %157, 1664
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %412, i32 noundef %411)
  %413 = add nuw nsw i64 %157, 408
  %414 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %413)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %413, i64 noundef 0)
  %415 = add nuw nsw i64 %157, 1668
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %415, i64 noundef %414)
  %416 = add i32 %10, -2248
  %417 = add i32 %10, -2648
  %418 = add i32 %10, -1104
  %419 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3AStringLiteralIDMapping0x28hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x29(ptr noundef %0, i32 noundef %416, i32 noundef %417, i32 noundef %418)
  %420 = zext i32 %419 to i64
  %421 = add nuw nsw i64 %420, 80
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %421, i64 noundef 0)
  %422 = add nuw nsw i64 %420, 88
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %422, i32 noundef 0)
  %423 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %412)
  %.not7238 = icmp eq i32 %423, 0
  br i1 %.not7238, label %425, label %424

424:                                              ; preds = %403
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %423) #5
  br label %425

425:                                              ; preds = %424, %403
  %426 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %407)
  %.not7239 = icmp eq i32 %426, 0
  br i1 %.not7239, label %428, label %427

427:                                              ; preds = %425
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %405, i32 noundef %426)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %426) #5
  br label %428

428:                                              ; preds = %427, %425
  %429 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %410)
  %.not7240 = icmp eq i32 %429, 0
  br i1 %.not7240, label %431, label %430

430:                                              ; preds = %428
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %409, i32 noundef %429)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %429) #5
  br label %431

431:                                              ; preds = %430, %428
  %432 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %264)
  %.not7241 = icmp eq i32 %432, 0
  br i1 %.not7241, label %434, label %433

433:                                              ; preds = %431
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %432) #5
  br label %434

434:                                              ; preds = %431, %433, %375
  %435 = add nuw nsw i64 %157, 2208
  %436 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %435)
  %.not7242 = icmp eq i32 %436, 0
  br i1 %.not7242, label %437, label %440

437:                                              ; preds = %434
  %438 = add nuw nsw i64 %157, 2168
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %438, i32 noundef 0)
  %439 = add nuw nsw i64 %157, 2144
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %439, i32 noundef 0)
  br label %542

440:                                              ; preds = %434
  %441 = add i32 %10, -576
  %442 = icmp eq i32 %441, %436
  br i1 %442, label %443, label %473

443:                                              ; preds = %440
  %444 = add i32 %10, -640
  %445 = add nuw nsw i64 %157, 2144
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %445, i32 noundef %444)
  %446 = add nuw nsw i64 %157, 2192
  %447 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %446)
  %448 = zext i32 %447 to i64
  %449 = add nuw nsw i64 %448, 12
  %450 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %449)
  %451 = getelementptr inbounds i8, ptr %0, i64 80
  %452 = getelementptr inbounds i8, ptr %0, i64 92
  %453 = load i32, ptr %452, align 4, !tbaa !15
  %454 = icmp ult i32 %450, %453
  br i1 %454, label %455, label %.critedge7393, !prof !16

455:                                              ; preds = %443
  %456 = load ptr, ptr %451, align 8, !tbaa !17
  %457 = zext i32 %450 to i64
  %458 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %456, i64 %457
  %459 = getelementptr inbounds i8, ptr %458, i64 8
  %460 = load ptr, ptr %459, align 8, !tbaa !18
  %.not7244 = icmp eq ptr %460, null
  br i1 %.not7244, label %.critedge7393, label %461, !prof !20

461:                                              ; preds = %455
  %462 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %463 = load ptr, ptr %458, align 8, !tbaa !22
  %464 = tail call zeroext i1 @func_types_eq(ptr noundef %462, ptr noundef %463)
  br i1 %464, label %465, label %.critedge7393, !prof !16

.critedge7393:                                    ; preds = %455, %443, %461
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

465:                                              ; preds = %461
  %466 = load ptr, ptr %451, align 8, !tbaa !17
  %467 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %466, i64 %457
  %468 = getelementptr inbounds i8, ptr %467, i64 8
  %469 = load ptr, ptr %468, align 8, !tbaa !18
  %470 = getelementptr inbounds i8, ptr %467, i64 16
  %471 = load ptr, ptr %470, align 8, !tbaa !23
  tail call void %469(ptr noundef %471, i32 noundef %441, i32 noundef %444) #5
  %472 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %445)
  br label %502

473:                                              ; preds = %440
  %474 = zext i32 %436 to i64
  %475 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %474)
  %476 = zext i32 %475 to i64
  %477 = add nuw nsw i64 %476, 8
  %478 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %477)
  %479 = getelementptr inbounds i8, ptr %0, i64 80
  %480 = getelementptr inbounds i8, ptr %0, i64 92
  %481 = load i32, ptr %480, align 4, !tbaa !15
  %482 = icmp ult i32 %478, %481
  br i1 %482, label %483, label %.critedge7395, !prof !16

483:                                              ; preds = %473
  %484 = load ptr, ptr %479, align 8, !tbaa !17
  %485 = zext i32 %478 to i64
  %486 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %484, i64 %485
  %487 = getelementptr inbounds i8, ptr %486, i64 8
  %488 = load ptr, ptr %487, align 8, !tbaa !18
  %.not7243 = icmp eq ptr %488, null
  br i1 %.not7243, label %.critedge7395, label %489, !prof !20

489:                                              ; preds = %483
  %490 = load ptr, ptr @w2c_hermes_t2, align 8, !tbaa !21
  %491 = load ptr, ptr %486, align 8, !tbaa !22
  %492 = tail call zeroext i1 @func_types_eq(ptr noundef %490, ptr noundef %491)
  br i1 %492, label %493, label %.critedge7395, !prof !16

.critedge7395:                                    ; preds = %483, %473, %489
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

493:                                              ; preds = %489
  %494 = load ptr, ptr %479, align 8, !tbaa !17
  %495 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %494, i64 %485
  %496 = getelementptr inbounds i8, ptr %495, i64 8
  %497 = load ptr, ptr %496, align 8, !tbaa !18
  %498 = getelementptr inbounds i8, ptr %495, i64 16
  %499 = load ptr, ptr %498, align 8, !tbaa !23
  %500 = tail call i32 %497(ptr noundef %499, i32 noundef %436) #5
  %501 = add nuw nsw i64 %157, 2144
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %501, i32 noundef %500)
  br label %502

502:                                              ; preds = %493, %465
  %.47022 = phi i32 [ %472, %465 ], [ %500, %493 ]
  %503 = add nuw nsw i64 %157, 2168
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %503, i32 noundef 0)
  %.not7245 = icmp eq i32 %.47022, 0
  br i1 %.not7245, label %542, label %504

504:                                              ; preds = %502
  %505 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 32) #5
  %506 = zext i32 %505 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %506, i32 noundef 271268)
  %507 = add i32 %10, -640
  %508 = icmp eq i32 %507, %.47022
  br i1 %508, label %509, label %538

509:                                              ; preds = %504
  %510 = add i32 %505, 8
  %511 = add nuw nsw i64 %506, 24
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %511, i32 noundef %510)
  %512 = add nuw nsw i64 %157, 2128
  %513 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %512)
  %514 = zext i32 %513 to i64
  %515 = add nuw nsw i64 %514, 12
  %516 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %515)
  %517 = getelementptr inbounds i8, ptr %0, i64 80
  %518 = getelementptr inbounds i8, ptr %0, i64 92
  %519 = load i32, ptr %518, align 4, !tbaa !15
  %520 = icmp ult i32 %516, %519
  br i1 %520, label %521, label %.critedge7397, !prof !16

521:                                              ; preds = %509
  %522 = load ptr, ptr %517, align 8, !tbaa !17
  %523 = zext i32 %516 to i64
  %524 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %522, i64 %523
  %525 = getelementptr inbounds i8, ptr %524, i64 8
  %526 = load ptr, ptr %525, align 8, !tbaa !18
  %.not7246 = icmp eq ptr %526, null
  br i1 %.not7246, label %.critedge7397, label %527, !prof !20

527:                                              ; preds = %521
  %528 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %529 = load ptr, ptr %524, align 8, !tbaa !22
  %530 = tail call zeroext i1 @func_types_eq(ptr noundef %528, ptr noundef %529)
  br i1 %530, label %531, label %.critedge7397, !prof !16

.critedge7397:                                    ; preds = %521, %509, %527
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

531:                                              ; preds = %527
  %532 = load ptr, ptr %517, align 8, !tbaa !17
  %533 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %532, i64 %523
  %534 = getelementptr inbounds i8, ptr %533, i64 8
  %535 = load ptr, ptr %534, align 8, !tbaa !18
  %536 = getelementptr inbounds i8, ptr %533, i64 16
  %537 = load ptr, ptr %536, align 8, !tbaa !23
  tail call void %535(ptr noundef %537, i32 noundef %507, i32 noundef %510) #5
  br label %541

538:                                              ; preds = %504
  %539 = add nuw nsw i64 %506, 24
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %539, i32 noundef %.47022)
  %540 = add nuw nsw i64 %157, 2144
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %540, i32 noundef 0)
  br label %541

541:                                              ; preds = %538, %531
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %503, i32 noundef %505)
  br label %542

542:                                              ; preds = %502, %541, %437
  %543 = add nuw nsw i64 %157, 2104
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %543, i32 noundef 271304)
  %544 = add i32 %10, -664
  %545 = add nuw nsw i64 %157, 2120
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %545, i32 noundef %544)
  %546 = add i32 %10, -2248
  %547 = add nuw nsw i64 %157, 2108
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %547, i32 noundef %546)
  %548 = add i32 %10, -616
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseLiteralStrings0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x2C0x20bool0x290x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef %548, i32 noundef %544)
  %549 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %545)
  %550 = icmp eq i32 %549, %544
  br i1 %550, label %554, label %551

551:                                              ; preds = %542
  %.not7247 = icmp eq i32 %549, 0
  br i1 %.not7247, label %580, label %552

552:                                              ; preds = %551
  %553 = zext i32 %549 to i64
  br label %554

554:                                              ; preds = %542, %552
  %.sink7542 = phi i64 [ %553, %552 ], [ %543, %542 ]
  %.sink7541 = phi i32 [ 20, %552 ], [ 16, %542 ]
  %.57023 = phi i32 [ %549, %552 ], [ %544, %542 ]
  %555 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7542)
  %556 = add i32 %555, %.sink7541
  %557 = zext i32 %556 to i64
  %558 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %557)
  %559 = getelementptr inbounds i8, ptr %0, i64 80
  %560 = getelementptr inbounds i8, ptr %0, i64 92
  %561 = load i32, ptr %560, align 4, !tbaa !15
  %562 = icmp ult i32 %558, %561
  br i1 %562, label %563, label %.critedge7399, !prof !16

563:                                              ; preds = %554
  %564 = load ptr, ptr %559, align 8, !tbaa !17
  %565 = zext i32 %558 to i64
  %566 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %564, i64 %565
  %567 = getelementptr inbounds i8, ptr %566, i64 8
  %568 = load ptr, ptr %567, align 8, !tbaa !18
  %.not7248 = icmp eq ptr %568, null
  br i1 %.not7248, label %.critedge7399, label %569, !prof !20

569:                                              ; preds = %563
  %570 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %571 = load ptr, ptr %566, align 8, !tbaa !22
  %572 = tail call zeroext i1 @func_types_eq(ptr noundef %570, ptr noundef %571)
  br i1 %572, label %573, label %.critedge7399, !prof !16

.critedge7399:                                    ; preds = %563, %554, %569
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

573:                                              ; preds = %569
  %574 = load ptr, ptr %559, align 8, !tbaa !17
  %575 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %574, i64 %565
  %576 = getelementptr inbounds i8, ptr %575, i64 8
  %577 = load ptr, ptr %576, align 8, !tbaa !18
  %578 = getelementptr inbounds i8, ptr %575, i64 16
  %579 = load ptr, ptr %578, align 8, !tbaa !23
  tail call void %577(ptr noundef %579, i32 noundef %.57023) #5
  br label %580

580:                                              ; preds = %551, %573
  %581 = add nuw nsw i64 %157, 2168
  %582 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %581)
  %583 = icmp eq i32 %582, %548
  br i1 %583, label %584, label %586

584:                                              ; preds = %580
  %585 = add nuw nsw i64 %157, 2152
  br label %589

586:                                              ; preds = %580
  %.not7249 = icmp eq i32 %582, 0
  br i1 %.not7249, label %615, label %587

587:                                              ; preds = %586
  %588 = zext i32 %582 to i64
  br label %589

589:                                              ; preds = %587, %584
  %.sink7545 = phi i64 [ %588, %587 ], [ %585, %584 ]
  %.sink7544 = phi i32 [ 20, %587 ], [ 16, %584 ]
  %.67024 = phi i32 [ %582, %587 ], [ %548, %584 ]
  %590 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7545)
  %591 = add i32 %590, %.sink7544
  %592 = zext i32 %591 to i64
  %593 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %592)
  %594 = getelementptr inbounds i8, ptr %0, i64 80
  %595 = getelementptr inbounds i8, ptr %0, i64 92
  %596 = load i32, ptr %595, align 4, !tbaa !15
  %597 = icmp ult i32 %593, %596
  br i1 %597, label %598, label %.critedge7401, !prof !16

598:                                              ; preds = %589
  %599 = load ptr, ptr %594, align 8, !tbaa !17
  %600 = zext i32 %593 to i64
  %601 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %599, i64 %600
  %602 = getelementptr inbounds i8, ptr %601, i64 8
  %603 = load ptr, ptr %602, align 8, !tbaa !18
  %.not7250 = icmp eq ptr %603, null
  br i1 %.not7250, label %.critedge7401, label %604, !prof !20

604:                                              ; preds = %598
  %605 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %606 = load ptr, ptr %601, align 8, !tbaa !22
  %607 = tail call zeroext i1 @func_types_eq(ptr noundef %605, ptr noundef %606)
  br i1 %607, label %608, label %.critedge7401, !prof !16

.critedge7401:                                    ; preds = %598, %589, %604
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

608:                                              ; preds = %604
  %609 = load ptr, ptr %594, align 8, !tbaa !17
  %610 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %609, i64 %600
  %611 = getelementptr inbounds i8, ptr %610, i64 8
  %612 = load ptr, ptr %611, align 8, !tbaa !18
  %613 = getelementptr inbounds i8, ptr %610, i64 16
  %614 = load ptr, ptr %613, align 8, !tbaa !23
  tail call void %612(ptr noundef %614, i32 noundef %.67024) #5
  br label %615

615:                                              ; preds = %586, %608
  %616 = add nuw nsw i64 %157, 2144
  %617 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %616)
  %618 = add i32 %10, -640
  %619 = icmp eq i32 %617, %618
  br i1 %619, label %620, label %622

620:                                              ; preds = %615
  %621 = add nuw nsw i64 %157, 2128
  br label %625

622:                                              ; preds = %615
  %.not7251 = icmp eq i32 %617, 0
  br i1 %.not7251, label %651, label %623

623:                                              ; preds = %622
  %624 = zext i32 %617 to i64
  br label %625

625:                                              ; preds = %623, %620
  %.sink7548 = phi i64 [ %624, %623 ], [ %621, %620 ]
  %.sink7547 = phi i32 [ 20, %623 ], [ 16, %620 ]
  %.77025 = phi i32 [ %617, %623 ], [ %618, %620 ]
  %626 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7548)
  %627 = add i32 %626, %.sink7547
  %628 = zext i32 %627 to i64
  %629 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %628)
  %630 = getelementptr inbounds i8, ptr %0, i64 80
  %631 = getelementptr inbounds i8, ptr %0, i64 92
  %632 = load i32, ptr %631, align 4, !tbaa !15
  %633 = icmp ult i32 %629, %632
  br i1 %633, label %634, label %.critedge7403, !prof !16

634:                                              ; preds = %625
  %635 = load ptr, ptr %630, align 8, !tbaa !17
  %636 = zext i32 %629 to i64
  %637 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %635, i64 %636
  %638 = getelementptr inbounds i8, ptr %637, i64 8
  %639 = load ptr, ptr %638, align 8, !tbaa !18
  %.not7252 = icmp eq ptr %639, null
  br i1 %.not7252, label %.critedge7403, label %640, !prof !20

640:                                              ; preds = %634
  %641 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %642 = load ptr, ptr %637, align 8, !tbaa !22
  %643 = tail call zeroext i1 @func_types_eq(ptr noundef %641, ptr noundef %642)
  br i1 %643, label %644, label %.critedge7403, !prof !16

.critedge7403:                                    ; preds = %634, %625, %640
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

644:                                              ; preds = %640
  %645 = load ptr, ptr %630, align 8, !tbaa !17
  %646 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %645, i64 %636
  %647 = getelementptr inbounds i8, ptr %646, i64 8
  %648 = load ptr, ptr %647, align 8, !tbaa !18
  %649 = getelementptr inbounds i8, ptr %646, i64 16
  %650 = load ptr, ptr %649, align 8, !tbaa !23
  tail call void %648(ptr noundef %650, i32 noundef %.77025) #5
  br label %651

651:                                              ; preds = %622, %644
  %652 = add nuw nsw i64 %.pre-phi7507, 10
  %653 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %652)
  %.not7253 = icmp eq i32 %653, 0
  br i1 %.not7253, label %660, label %654

654:                                              ; preds = %651
  %655 = add nuw nsw i64 %157, 124
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %655, i32 noundef 22)
  %656 = add nuw nsw i64 %157, 120
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %656, i32 noundef 105273)
  %657 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %656)
  %658 = add nuw nsw i64 %157, 112
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %658, i64 noundef %657)
  %659 = add i32 %10, -2656
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x3A0x3AaddString0x28llvh0x3A0x3AStringRef0x2C0x20bool0x29(ptr noundef %0, i32 noundef %546, i32 noundef %659, i32 noundef 0)
  br label %660

660:                                              ; preds = %654, %651
  %661 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %435)
  %.not7254 = icmp eq i32 %661, 0
  br i1 %.not7254, label %662, label %665

662:                                              ; preds = %660
  %663 = add nuw nsw i64 %157, 2096
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %663, i32 noundef 0)
  %664 = add nuw nsw i64 %157, 2072
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %664, i32 noundef 0)
  br label %767

665:                                              ; preds = %660
  %666 = add i32 %10, -576
  %667 = icmp eq i32 %666, %661
  br i1 %667, label %668, label %698

668:                                              ; preds = %665
  %669 = add i32 %10, -712
  %670 = add nuw nsw i64 %157, 2072
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %670, i32 noundef %669)
  %671 = add nuw nsw i64 %157, 2192
  %672 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %671)
  %673 = zext i32 %672 to i64
  %674 = add nuw nsw i64 %673, 12
  %675 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %674)
  %676 = getelementptr inbounds i8, ptr %0, i64 80
  %677 = getelementptr inbounds i8, ptr %0, i64 92
  %678 = load i32, ptr %677, align 4, !tbaa !15
  %679 = icmp ult i32 %675, %678
  br i1 %679, label %680, label %.critedge7405, !prof !16

680:                                              ; preds = %668
  %681 = load ptr, ptr %676, align 8, !tbaa !17
  %682 = zext i32 %675 to i64
  %683 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %681, i64 %682
  %684 = getelementptr inbounds i8, ptr %683, i64 8
  %685 = load ptr, ptr %684, align 8, !tbaa !18
  %.not7256 = icmp eq ptr %685, null
  br i1 %.not7256, label %.critedge7405, label %686, !prof !20

686:                                              ; preds = %680
  %687 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %688 = load ptr, ptr %683, align 8, !tbaa !22
  %689 = tail call zeroext i1 @func_types_eq(ptr noundef %687, ptr noundef %688)
  br i1 %689, label %690, label %.critedge7405, !prof !16

.critedge7405:                                    ; preds = %680, %668, %686
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

690:                                              ; preds = %686
  %691 = load ptr, ptr %676, align 8, !tbaa !17
  %692 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %691, i64 %682
  %693 = getelementptr inbounds i8, ptr %692, i64 8
  %694 = load ptr, ptr %693, align 8, !tbaa !18
  %695 = getelementptr inbounds i8, ptr %692, i64 16
  %696 = load ptr, ptr %695, align 8, !tbaa !23
  tail call void %694(ptr noundef %696, i32 noundef %666, i32 noundef %669) #5
  %697 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %670)
  br label %727

698:                                              ; preds = %665
  %699 = zext i32 %661 to i64
  %700 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %699)
  %701 = zext i32 %700 to i64
  %702 = add nuw nsw i64 %701, 8
  %703 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %702)
  %704 = getelementptr inbounds i8, ptr %0, i64 80
  %705 = getelementptr inbounds i8, ptr %0, i64 92
  %706 = load i32, ptr %705, align 4, !tbaa !15
  %707 = icmp ult i32 %703, %706
  br i1 %707, label %708, label %.critedge7407, !prof !16

708:                                              ; preds = %698
  %709 = load ptr, ptr %704, align 8, !tbaa !17
  %710 = zext i32 %703 to i64
  %711 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %709, i64 %710
  %712 = getelementptr inbounds i8, ptr %711, i64 8
  %713 = load ptr, ptr %712, align 8, !tbaa !18
  %.not7255 = icmp eq ptr %713, null
  br i1 %.not7255, label %.critedge7407, label %714, !prof !20

714:                                              ; preds = %708
  %715 = load ptr, ptr @w2c_hermes_t2, align 8, !tbaa !21
  %716 = load ptr, ptr %711, align 8, !tbaa !22
  %717 = tail call zeroext i1 @func_types_eq(ptr noundef %715, ptr noundef %716)
  br i1 %717, label %718, label %.critedge7407, !prof !16

.critedge7407:                                    ; preds = %708, %698, %714
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

718:                                              ; preds = %714
  %719 = load ptr, ptr %704, align 8, !tbaa !17
  %720 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %719, i64 %710
  %721 = getelementptr inbounds i8, ptr %720, i64 8
  %722 = load ptr, ptr %721, align 8, !tbaa !18
  %723 = getelementptr inbounds i8, ptr %720, i64 16
  %724 = load ptr, ptr %723, align 8, !tbaa !23
  %725 = tail call i32 %722(ptr noundef %724, i32 noundef %661) #5
  %726 = add nuw nsw i64 %157, 2072
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %726, i32 noundef %725)
  br label %727

727:                                              ; preds = %718, %690
  %.87026 = phi i32 [ %697, %690 ], [ %725, %718 ]
  %728 = add nuw nsw i64 %157, 2096
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %728, i32 noundef 0)
  %.not7257 = icmp eq i32 %.87026, 0
  br i1 %.not7257, label %767, label %729

729:                                              ; preds = %727
  %730 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 32) #5
  %731 = zext i32 %730 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %731, i32 noundef 271268)
  %732 = add i32 %10, -712
  %733 = icmp eq i32 %732, %.87026
  br i1 %733, label %734, label %763

734:                                              ; preds = %729
  %735 = add i32 %730, 8
  %736 = add nuw nsw i64 %731, 24
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %736, i32 noundef %735)
  %737 = add nuw nsw i64 %157, 2056
  %738 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %737)
  %739 = zext i32 %738 to i64
  %740 = add nuw nsw i64 %739, 12
  %741 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %740)
  %742 = getelementptr inbounds i8, ptr %0, i64 80
  %743 = getelementptr inbounds i8, ptr %0, i64 92
  %744 = load i32, ptr %743, align 4, !tbaa !15
  %745 = icmp ult i32 %741, %744
  br i1 %745, label %746, label %.critedge7409, !prof !16

746:                                              ; preds = %734
  %747 = load ptr, ptr %742, align 8, !tbaa !17
  %748 = zext i32 %741 to i64
  %749 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %747, i64 %748
  %750 = getelementptr inbounds i8, ptr %749, i64 8
  %751 = load ptr, ptr %750, align 8, !tbaa !18
  %.not7258 = icmp eq ptr %751, null
  br i1 %.not7258, label %.critedge7409, label %752, !prof !20

752:                                              ; preds = %746
  %753 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %754 = load ptr, ptr %749, align 8, !tbaa !22
  %755 = tail call zeroext i1 @func_types_eq(ptr noundef %753, ptr noundef %754)
  br i1 %755, label %756, label %.critedge7409, !prof !16

.critedge7409:                                    ; preds = %746, %734, %752
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

756:                                              ; preds = %752
  %757 = load ptr, ptr %742, align 8, !tbaa !17
  %758 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %757, i64 %748
  %759 = getelementptr inbounds i8, ptr %758, i64 8
  %760 = load ptr, ptr %759, align 8, !tbaa !18
  %761 = getelementptr inbounds i8, ptr %758, i64 16
  %762 = load ptr, ptr %761, align 8, !tbaa !23
  tail call void %760(ptr noundef %762, i32 noundef %732, i32 noundef %735) #5
  br label %766

763:                                              ; preds = %729
  %764 = add nuw nsw i64 %731, 24
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %764, i32 noundef %.87026)
  %765 = add nuw nsw i64 %157, 2072
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %765, i32 noundef 0)
  br label %766

766:                                              ; preds = %763, %756
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %728, i32 noundef %730)
  br label %767

767:                                              ; preds = %727, %766, %662
  %768 = add i32 %10, -752
  %769 = add i32 %10, -592
  %770 = zext i32 %768 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %770, i32 noundef %769)
  %771 = add nuw nsw i64 %157, 2032
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %771, i32 noundef 271340)
  %772 = add nuw nsw i64 %157, 2008
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %772, i32 noundef 271376)
  %773 = add i32 %10, -736
  %774 = add nuw nsw i64 %157, 2048
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %774, i32 noundef %773)
  %775 = add nuw nsw i64 %157, 2036
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %775, i32 noundef %546)
  %776 = add i32 %10, -760
  %777 = add nuw nsw i64 %157, 2024
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %777, i32 noundef %776)
  %778 = add nuw nsw i64 %157, 2012
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %778, i32 noundef %546)
  %779 = add i32 %10, -688
  %780 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %652)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseFunctions0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1, i32 noundef %779, i32 noundef %773, i32 noundef %776, i32 noundef %780)
  %781 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %777)
  %782 = icmp eq i32 %781, %776
  br i1 %782, label %786, label %783

783:                                              ; preds = %767
  %.not7259 = icmp eq i32 %781, 0
  br i1 %.not7259, label %812, label %784

784:                                              ; preds = %783
  %785 = zext i32 %781 to i64
  br label %786

786:                                              ; preds = %767, %784
  %.sink7551 = phi i64 [ %785, %784 ], [ %772, %767 ]
  %.sink7550 = phi i32 [ 20, %784 ], [ 16, %767 ]
  %.97027 = phi i32 [ %781, %784 ], [ %776, %767 ]
  %787 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7551)
  %788 = add i32 %787, %.sink7550
  %789 = zext i32 %788 to i64
  %790 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %789)
  %791 = getelementptr inbounds i8, ptr %0, i64 80
  %792 = getelementptr inbounds i8, ptr %0, i64 92
  %793 = load i32, ptr %792, align 4, !tbaa !15
  %794 = icmp ult i32 %790, %793
  br i1 %794, label %795, label %.critedge7411, !prof !16

795:                                              ; preds = %786
  %796 = load ptr, ptr %791, align 8, !tbaa !17
  %797 = zext i32 %790 to i64
  %798 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %796, i64 %797
  %799 = getelementptr inbounds i8, ptr %798, i64 8
  %800 = load ptr, ptr %799, align 8, !tbaa !18
  %.not7260 = icmp eq ptr %800, null
  br i1 %.not7260, label %.critedge7411, label %801, !prof !20

801:                                              ; preds = %795
  %802 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %803 = load ptr, ptr %798, align 8, !tbaa !22
  %804 = tail call zeroext i1 @func_types_eq(ptr noundef %802, ptr noundef %803)
  br i1 %804, label %805, label %.critedge7411, !prof !16

.critedge7411:                                    ; preds = %795, %786, %801
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

805:                                              ; preds = %801
  %806 = load ptr, ptr %791, align 8, !tbaa !17
  %807 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %806, i64 %797
  %808 = getelementptr inbounds i8, ptr %807, i64 8
  %809 = load ptr, ptr %808, align 8, !tbaa !18
  %810 = getelementptr inbounds i8, ptr %807, i64 16
  %811 = load ptr, ptr %810, align 8, !tbaa !23
  tail call void %809(ptr noundef %811, i32 noundef %.97027) #5
  br label %812

812:                                              ; preds = %783, %805
  %813 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %774)
  %814 = icmp eq i32 %813, %773
  br i1 %814, label %818, label %815

815:                                              ; preds = %812
  %.not7261 = icmp eq i32 %813, 0
  br i1 %.not7261, label %844, label %816

816:                                              ; preds = %815
  %817 = zext i32 %813 to i64
  br label %818

818:                                              ; preds = %812, %816
  %.sink7554 = phi i64 [ %817, %816 ], [ %771, %812 ]
  %.sink7553 = phi i32 [ 20, %816 ], [ 16, %812 ]
  %.107028 = phi i32 [ %813, %816 ], [ %773, %812 ]
  %819 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7554)
  %820 = add i32 %819, %.sink7553
  %821 = zext i32 %820 to i64
  %822 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %821)
  %823 = getelementptr inbounds i8, ptr %0, i64 80
  %824 = getelementptr inbounds i8, ptr %0, i64 92
  %825 = load i32, ptr %824, align 4, !tbaa !15
  %826 = icmp ult i32 %822, %825
  br i1 %826, label %827, label %.critedge7413, !prof !16

827:                                              ; preds = %818
  %828 = load ptr, ptr %823, align 8, !tbaa !17
  %829 = zext i32 %822 to i64
  %830 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %828, i64 %829
  %831 = getelementptr inbounds i8, ptr %830, i64 8
  %832 = load ptr, ptr %831, align 8, !tbaa !18
  %.not7262 = icmp eq ptr %832, null
  br i1 %.not7262, label %.critedge7413, label %833, !prof !20

833:                                              ; preds = %827
  %834 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %835 = load ptr, ptr %830, align 8, !tbaa !22
  %836 = tail call zeroext i1 @func_types_eq(ptr noundef %834, ptr noundef %835)
  br i1 %836, label %837, label %.critedge7413, !prof !16

.critedge7413:                                    ; preds = %827, %818, %833
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

837:                                              ; preds = %833
  %838 = load ptr, ptr %823, align 8, !tbaa !17
  %839 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %838, i64 %829
  %840 = getelementptr inbounds i8, ptr %839, i64 8
  %841 = load ptr, ptr %840, align 8, !tbaa !18
  %842 = getelementptr inbounds i8, ptr %839, i64 16
  %843 = load ptr, ptr %842, align 8, !tbaa !23
  tail call void %841(ptr noundef %843, i32 noundef %.107028) #5
  br label %844

844:                                              ; preds = %815, %837
  %845 = add nuw nsw i64 %157, 2096
  %846 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %845)
  %847 = icmp eq i32 %846, %779
  br i1 %847, label %848, label %850

848:                                              ; preds = %844
  %849 = add nuw nsw i64 %157, 2080
  br label %853

850:                                              ; preds = %844
  %.not7263 = icmp eq i32 %846, 0
  br i1 %.not7263, label %879, label %851

851:                                              ; preds = %850
  %852 = zext i32 %846 to i64
  br label %853

853:                                              ; preds = %851, %848
  %.sink7557 = phi i64 [ %852, %851 ], [ %849, %848 ]
  %.sink7556 = phi i32 [ 20, %851 ], [ 16, %848 ]
  %.117029 = phi i32 [ %846, %851 ], [ %779, %848 ]
  %854 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7557)
  %855 = add i32 %854, %.sink7556
  %856 = zext i32 %855 to i64
  %857 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %856)
  %858 = getelementptr inbounds i8, ptr %0, i64 80
  %859 = getelementptr inbounds i8, ptr %0, i64 92
  %860 = load i32, ptr %859, align 4, !tbaa !15
  %861 = icmp ult i32 %857, %860
  br i1 %861, label %862, label %.critedge7415, !prof !16

862:                                              ; preds = %853
  %863 = load ptr, ptr %858, align 8, !tbaa !17
  %864 = zext i32 %857 to i64
  %865 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %863, i64 %864
  %866 = getelementptr inbounds i8, ptr %865, i64 8
  %867 = load ptr, ptr %866, align 8, !tbaa !18
  %.not7264 = icmp eq ptr %867, null
  br i1 %.not7264, label %.critedge7415, label %868, !prof !20

868:                                              ; preds = %862
  %869 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %870 = load ptr, ptr %865, align 8, !tbaa !22
  %871 = tail call zeroext i1 @func_types_eq(ptr noundef %869, ptr noundef %870)
  br i1 %871, label %872, label %.critedge7415, !prof !16

.critedge7415:                                    ; preds = %862, %853, %868
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

872:                                              ; preds = %868
  %873 = load ptr, ptr %858, align 8, !tbaa !17
  %874 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %873, i64 %864
  %875 = getelementptr inbounds i8, ptr %874, i64 8
  %876 = load ptr, ptr %875, align 8, !tbaa !18
  %877 = getelementptr inbounds i8, ptr %874, i64 16
  %878 = load ptr, ptr %877, align 8, !tbaa !23
  tail call void %876(ptr noundef %878, i32 noundef %.117029) #5
  br label %879

879:                                              ; preds = %850, %872
  %880 = add nuw nsw i64 %157, 2072
  %881 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %880)
  %882 = add i32 %10, -712
  %883 = icmp eq i32 %881, %882
  br i1 %883, label %884, label %886

884:                                              ; preds = %879
  %885 = add nuw nsw i64 %157, 2056
  br label %889

886:                                              ; preds = %879
  %.not7265 = icmp eq i32 %881, 0
  br i1 %.not7265, label %915, label %887

887:                                              ; preds = %886
  %888 = zext i32 %881 to i64
  br label %889

889:                                              ; preds = %887, %884
  %.sink7560 = phi i64 [ %888, %887 ], [ %885, %884 ]
  %.sink7559 = phi i32 [ 20, %887 ], [ 16, %884 ]
  %.127030 = phi i32 [ %881, %887 ], [ %882, %884 ]
  %890 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7560)
  %891 = add i32 %890, %.sink7559
  %892 = zext i32 %891 to i64
  %893 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %892)
  %894 = getelementptr inbounds i8, ptr %0, i64 80
  %895 = getelementptr inbounds i8, ptr %0, i64 92
  %896 = load i32, ptr %895, align 4, !tbaa !15
  %897 = icmp ult i32 %893, %896
  br i1 %897, label %898, label %.critedge7417, !prof !16

898:                                              ; preds = %889
  %899 = load ptr, ptr %894, align 8, !tbaa !17
  %900 = zext i32 %893 to i64
  %901 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %899, i64 %900
  %902 = getelementptr inbounds i8, ptr %901, i64 8
  %903 = load ptr, ptr %902, align 8, !tbaa !18
  %.not7266 = icmp eq ptr %903, null
  br i1 %.not7266, label %.critedge7417, label %904, !prof !20

904:                                              ; preds = %898
  %905 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %906 = load ptr, ptr %901, align 8, !tbaa !22
  %907 = tail call zeroext i1 @func_types_eq(ptr noundef %905, ptr noundef %906)
  br i1 %907, label %908, label %.critedge7417, !prof !16

.critedge7417:                                    ; preds = %898, %889, %904
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

908:                                              ; preds = %904
  %909 = load ptr, ptr %894, align 8, !tbaa !17
  %910 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %909, i64 %900
  %911 = getelementptr inbounds i8, ptr %910, i64 8
  %912 = load ptr, ptr %911, align 8, !tbaa !18
  %913 = getelementptr inbounds i8, ptr %910, i64 16
  %914 = load ptr, ptr %913, align 8, !tbaa !23
  tail call void %912(ptr noundef %914, i32 noundef %.127030) #5
  br label %915

915:                                              ; preds = %886, %908
  %916 = add nuw nsw i64 %13, 552
  %917 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %916)
  %.not7267 = icmp eq i32 %917, 0
  br i1 %.not7267, label %918, label %1133

918:                                              ; preds = %915
  %919 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %435)
  %.not7268 = icmp eq i32 %919, 0
  br i1 %.not7268, label %920, label %923

920:                                              ; preds = %918
  %921 = add nuw nsw i64 %157, 2000
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %921, i32 noundef 0)
  %922 = add nuw nsw i64 %157, 1976
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %922, i32 noundef 0)
  br label %1025

923:                                              ; preds = %918
  %924 = add i32 %10, -576
  %925 = icmp eq i32 %924, %919
  br i1 %925, label %926, label %956

926:                                              ; preds = %923
  %927 = add i32 %10, -808
  %928 = add nuw nsw i64 %157, 1976
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %928, i32 noundef %927)
  %929 = add nuw nsw i64 %157, 2192
  %930 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %929)
  %931 = zext i32 %930 to i64
  %932 = add nuw nsw i64 %931, 12
  %933 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %932)
  %934 = getelementptr inbounds i8, ptr %0, i64 80
  %935 = getelementptr inbounds i8, ptr %0, i64 92
  %936 = load i32, ptr %935, align 4, !tbaa !15
  %937 = icmp ult i32 %933, %936
  br i1 %937, label %938, label %.critedge7419, !prof !16

938:                                              ; preds = %926
  %939 = load ptr, ptr %934, align 8, !tbaa !17
  %940 = zext i32 %933 to i64
  %941 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %939, i64 %940
  %942 = getelementptr inbounds i8, ptr %941, i64 8
  %943 = load ptr, ptr %942, align 8, !tbaa !18
  %.not7270 = icmp eq ptr %943, null
  br i1 %.not7270, label %.critedge7419, label %944, !prof !20

944:                                              ; preds = %938
  %945 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %946 = load ptr, ptr %941, align 8, !tbaa !22
  %947 = tail call zeroext i1 @func_types_eq(ptr noundef %945, ptr noundef %946)
  br i1 %947, label %948, label %.critedge7419, !prof !16

.critedge7419:                                    ; preds = %938, %926, %944
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

948:                                              ; preds = %944
  %949 = load ptr, ptr %934, align 8, !tbaa !17
  %950 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %949, i64 %940
  %951 = getelementptr inbounds i8, ptr %950, i64 8
  %952 = load ptr, ptr %951, align 8, !tbaa !18
  %953 = getelementptr inbounds i8, ptr %950, i64 16
  %954 = load ptr, ptr %953, align 8, !tbaa !23
  tail call void %952(ptr noundef %954, i32 noundef %924, i32 noundef %927) #5
  %955 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %928)
  br label %985

956:                                              ; preds = %923
  %957 = zext i32 %919 to i64
  %958 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %957)
  %959 = zext i32 %958 to i64
  %960 = add nuw nsw i64 %959, 8
  %961 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %960)
  %962 = getelementptr inbounds i8, ptr %0, i64 80
  %963 = getelementptr inbounds i8, ptr %0, i64 92
  %964 = load i32, ptr %963, align 4, !tbaa !15
  %965 = icmp ult i32 %961, %964
  br i1 %965, label %966, label %.critedge7421, !prof !16

966:                                              ; preds = %956
  %967 = load ptr, ptr %962, align 8, !tbaa !17
  %968 = zext i32 %961 to i64
  %969 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %967, i64 %968
  %970 = getelementptr inbounds i8, ptr %969, i64 8
  %971 = load ptr, ptr %970, align 8, !tbaa !18
  %.not7269 = icmp eq ptr %971, null
  br i1 %.not7269, label %.critedge7421, label %972, !prof !20

972:                                              ; preds = %966
  %973 = load ptr, ptr @w2c_hermes_t2, align 8, !tbaa !21
  %974 = load ptr, ptr %969, align 8, !tbaa !22
  %975 = tail call zeroext i1 @func_types_eq(ptr noundef %973, ptr noundef %974)
  br i1 %975, label %976, label %.critedge7421, !prof !16

.critedge7421:                                    ; preds = %966, %956, %972
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

976:                                              ; preds = %972
  %977 = load ptr, ptr %962, align 8, !tbaa !17
  %978 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %977, i64 %968
  %979 = getelementptr inbounds i8, ptr %978, i64 8
  %980 = load ptr, ptr %979, align 8, !tbaa !18
  %981 = getelementptr inbounds i8, ptr %978, i64 16
  %982 = load ptr, ptr %981, align 8, !tbaa !23
  %983 = tail call i32 %980(ptr noundef %982, i32 noundef %919) #5
  %984 = add nuw nsw i64 %157, 1976
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %984, i32 noundef %983)
  br label %985

985:                                              ; preds = %976, %948
  %.137031 = phi i32 [ %955, %948 ], [ %983, %976 ]
  %986 = add nuw nsw i64 %157, 2000
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %986, i32 noundef 0)
  %.not7271 = icmp eq i32 %.137031, 0
  br i1 %.not7271, label %1025, label %987

987:                                              ; preds = %985
  %988 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 32) #5
  %989 = zext i32 %988 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %989, i32 noundef 271268)
  %990 = add i32 %10, -808
  %991 = icmp eq i32 %990, %.137031
  br i1 %991, label %992, label %1021

992:                                              ; preds = %987
  %993 = add i32 %988, 8
  %994 = add nuw nsw i64 %989, 24
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %994, i32 noundef %993)
  %995 = add nuw nsw i64 %157, 1960
  %996 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %995)
  %997 = zext i32 %996 to i64
  %998 = add nuw nsw i64 %997, 12
  %999 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %998)
  %1000 = getelementptr inbounds i8, ptr %0, i64 80
  %1001 = getelementptr inbounds i8, ptr %0, i64 92
  %1002 = load i32, ptr %1001, align 4, !tbaa !15
  %1003 = icmp ult i32 %999, %1002
  br i1 %1003, label %1004, label %.critedge7423, !prof !16

1004:                                             ; preds = %992
  %1005 = load ptr, ptr %1000, align 8, !tbaa !17
  %1006 = zext i32 %999 to i64
  %1007 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1005, i64 %1006
  %1008 = getelementptr inbounds i8, ptr %1007, i64 8
  %1009 = load ptr, ptr %1008, align 8, !tbaa !18
  %.not7272 = icmp eq ptr %1009, null
  br i1 %.not7272, label %.critedge7423, label %1010, !prof !20

1010:                                             ; preds = %1004
  %1011 = load ptr, ptr @w2c_hermes_t0, align 8, !tbaa !21
  %1012 = load ptr, ptr %1007, align 8, !tbaa !22
  %1013 = tail call zeroext i1 @func_types_eq(ptr noundef %1011, ptr noundef %1012)
  br i1 %1013, label %1014, label %.critedge7423, !prof !16

.critedge7423:                                    ; preds = %1004, %992, %1010
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

1014:                                             ; preds = %1010
  %1015 = load ptr, ptr %1000, align 8, !tbaa !17
  %1016 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1015, i64 %1006
  %1017 = getelementptr inbounds i8, ptr %1016, i64 8
  %1018 = load ptr, ptr %1017, align 8, !tbaa !18
  %1019 = getelementptr inbounds i8, ptr %1016, i64 16
  %1020 = load ptr, ptr %1019, align 8, !tbaa !23
  tail call void %1018(ptr noundef %1020, i32 noundef %990, i32 noundef %993) #5
  br label %1024

1021:                                             ; preds = %987
  %1022 = add nuw nsw i64 %989, 24
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1022, i32 noundef %.137031)
  %1023 = add nuw nsw i64 %157, 1976
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1023, i32 noundef 0)
  br label %1024

1024:                                             ; preds = %1021, %1014
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %986, i32 noundef %988)
  br label %1025

1025:                                             ; preds = %985, %1024, %920
  %1026 = add nuw nsw i64 %157, 1936
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1026, i32 noundef 271340)
  %1027 = add i32 %10, -832
  %1028 = add nuw nsw i64 %157, 1952
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1028, i32 noundef %1027)
  %1029 = add nuw nsw i64 %157, 1940
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1029, i32 noundef %546)
  %1030 = add i32 %10, -784
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AtraverseCJSModuleNames0x28hermes0x3A0x3AModule0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cbool0x200x28hermes0x3A0x3AFunction0x2A0x290x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Afunction0x3Cvoid0x200x28llvh0x3A0x3AStringRef0x290x3E0x29(ptr noundef %0, i32 noundef %1, i32 noundef %1030, i32 noundef %1027)
  %1031 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1028)
  %1032 = icmp eq i32 %1031, %1027
  br i1 %1032, label %1036, label %1033

1033:                                             ; preds = %1025
  %.not7273 = icmp eq i32 %1031, 0
  br i1 %.not7273, label %1062, label %1034

1034:                                             ; preds = %1033
  %1035 = zext i32 %1031 to i64
  br label %1036

1036:                                             ; preds = %1025, %1034
  %.sink7563 = phi i64 [ %1035, %1034 ], [ %1026, %1025 ]
  %.sink7562 = phi i32 [ 20, %1034 ], [ 16, %1025 ]
  %.147032 = phi i32 [ %1031, %1034 ], [ %1027, %1025 ]
  %1037 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7563)
  %1038 = add i32 %1037, %.sink7562
  %1039 = zext i32 %1038 to i64
  %1040 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1039)
  %1041 = getelementptr inbounds i8, ptr %0, i64 80
  %1042 = getelementptr inbounds i8, ptr %0, i64 92
  %1043 = load i32, ptr %1042, align 4, !tbaa !15
  %1044 = icmp ult i32 %1040, %1043
  br i1 %1044, label %1045, label %.critedge7425, !prof !16

1045:                                             ; preds = %1036
  %1046 = load ptr, ptr %1041, align 8, !tbaa !17
  %1047 = zext i32 %1040 to i64
  %1048 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1046, i64 %1047
  %1049 = getelementptr inbounds i8, ptr %1048, i64 8
  %1050 = load ptr, ptr %1049, align 8, !tbaa !18
  %.not7274 = icmp eq ptr %1050, null
  br i1 %.not7274, label %.critedge7425, label %1051, !prof !20

1051:                                             ; preds = %1045
  %1052 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %1053 = load ptr, ptr %1048, align 8, !tbaa !22
  %1054 = tail call zeroext i1 @func_types_eq(ptr noundef %1052, ptr noundef %1053)
  br i1 %1054, label %1055, label %.critedge7425, !prof !16

.critedge7425:                                    ; preds = %1045, %1036, %1051
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

1055:                                             ; preds = %1051
  %1056 = load ptr, ptr %1041, align 8, !tbaa !17
  %1057 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1056, i64 %1047
  %1058 = getelementptr inbounds i8, ptr %1057, i64 8
  %1059 = load ptr, ptr %1058, align 8, !tbaa !18
  %1060 = getelementptr inbounds i8, ptr %1057, i64 16
  %1061 = load ptr, ptr %1060, align 8, !tbaa !23
  tail call void %1059(ptr noundef %1061, i32 noundef %.147032) #5
  br label %1062

1062:                                             ; preds = %1033, %1055
  %1063 = add nuw nsw i64 %157, 2000
  %1064 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1063)
  %1065 = icmp eq i32 %1064, %1030
  br i1 %1065, label %1066, label %1068

1066:                                             ; preds = %1062
  %1067 = add nuw nsw i64 %157, 1984
  br label %1071

1068:                                             ; preds = %1062
  %.not7275 = icmp eq i32 %1064, 0
  br i1 %.not7275, label %1097, label %1069

1069:                                             ; preds = %1068
  %1070 = zext i32 %1064 to i64
  br label %1071

1071:                                             ; preds = %1069, %1066
  %.sink7566 = phi i64 [ %1070, %1069 ], [ %1067, %1066 ]
  %.sink7565 = phi i32 [ 20, %1069 ], [ 16, %1066 ]
  %.157033 = phi i32 [ %1064, %1069 ], [ %1030, %1066 ]
  %1072 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7566)
  %1073 = add i32 %1072, %.sink7565
  %1074 = zext i32 %1073 to i64
  %1075 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1074)
  %1076 = getelementptr inbounds i8, ptr %0, i64 80
  %1077 = getelementptr inbounds i8, ptr %0, i64 92
  %1078 = load i32, ptr %1077, align 4, !tbaa !15
  %1079 = icmp ult i32 %1075, %1078
  br i1 %1079, label %1080, label %.critedge7427, !prof !16

1080:                                             ; preds = %1071
  %1081 = load ptr, ptr %1076, align 8, !tbaa !17
  %1082 = zext i32 %1075 to i64
  %1083 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1081, i64 %1082
  %1084 = getelementptr inbounds i8, ptr %1083, i64 8
  %1085 = load ptr, ptr %1084, align 8, !tbaa !18
  %.not7276 = icmp eq ptr %1085, null
  br i1 %.not7276, label %.critedge7427, label %1086, !prof !20

1086:                                             ; preds = %1080
  %1087 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %1088 = load ptr, ptr %1083, align 8, !tbaa !22
  %1089 = tail call zeroext i1 @func_types_eq(ptr noundef %1087, ptr noundef %1088)
  br i1 %1089, label %1090, label %.critedge7427, !prof !16

.critedge7427:                                    ; preds = %1080, %1071, %1086
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

1090:                                             ; preds = %1086
  %1091 = load ptr, ptr %1076, align 8, !tbaa !17
  %1092 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1091, i64 %1082
  %1093 = getelementptr inbounds i8, ptr %1092, i64 8
  %1094 = load ptr, ptr %1093, align 8, !tbaa !18
  %1095 = getelementptr inbounds i8, ptr %1092, i64 16
  %1096 = load ptr, ptr %1095, align 8, !tbaa !23
  tail call void %1094(ptr noundef %1096, i32 noundef %.157033) #5
  br label %1097

1097:                                             ; preds = %1068, %1090
  %1098 = add nuw nsw i64 %157, 1976
  %1099 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1098)
  %1100 = add i32 %10, -808
  %1101 = icmp eq i32 %1099, %1100
  br i1 %1101, label %1102, label %1104

1102:                                             ; preds = %1097
  %1103 = add nuw nsw i64 %157, 1960
  br label %1107

1104:                                             ; preds = %1097
  %.not7277 = icmp eq i32 %1099, 0
  br i1 %.not7277, label %1133, label %1105

1105:                                             ; preds = %1104
  %1106 = zext i32 %1099 to i64
  br label %1107

1107:                                             ; preds = %1105, %1102
  %.sink7569 = phi i64 [ %1106, %1105 ], [ %1103, %1102 ]
  %.sink7568 = phi i32 [ 20, %1105 ], [ 16, %1102 ]
  %.167034 = phi i32 [ %1099, %1105 ], [ %1100, %1102 ]
  %1108 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7569)
  %1109 = add i32 %1108, %.sink7568
  %1110 = zext i32 %1109 to i64
  %1111 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1110)
  %1112 = getelementptr inbounds i8, ptr %0, i64 80
  %1113 = getelementptr inbounds i8, ptr %0, i64 92
  %1114 = load i32, ptr %1113, align 4, !tbaa !15
  %1115 = icmp ult i32 %1111, %1114
  br i1 %1115, label %1116, label %.critedge7429, !prof !16

1116:                                             ; preds = %1107
  %1117 = load ptr, ptr %1112, align 8, !tbaa !17
  %1118 = zext i32 %1111 to i64
  %1119 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1117, i64 %1118
  %1120 = getelementptr inbounds i8, ptr %1119, i64 8
  %1121 = load ptr, ptr %1120, align 8, !tbaa !18
  %.not7278 = icmp eq ptr %1121, null
  br i1 %.not7278, label %.critedge7429, label %1122, !prof !20

1122:                                             ; preds = %1116
  %1123 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %1124 = load ptr, ptr %1119, align 8, !tbaa !22
  %1125 = tail call zeroext i1 @func_types_eq(ptr noundef %1123, ptr noundef %1124)
  br i1 %1125, label %1126, label %.critedge7429, !prof !16

.critedge7429:                                    ; preds = %1116, %1107, %1122
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

1126:                                             ; preds = %1122
  %1127 = load ptr, ptr %1112, align 8, !tbaa !17
  %1128 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1127, i64 %1118
  %1129 = getelementptr inbounds i8, ptr %1128, i64 8
  %1130 = load ptr, ptr %1129, align 8, !tbaa !18
  %1131 = getelementptr inbounds i8, ptr %1128, i64 16
  %1132 = load ptr, ptr %1131, align 8, !tbaa !23
  tail call void %1130(ptr noundef %1132, i32 noundef %.167034) #5
  br label %1133

1133:                                             ; preds = %1104, %915, %1126
  %1134 = add i32 %10, -2232
  %1135 = zext i32 %1134 to i64
  %1136 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1135)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1135, i64 noundef 0)
  %1137 = add i32 %10, -988
  %1138 = zext i32 %1137 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1138, i64 noundef %1136)
  %1139 = add i32 %10, -968
  %1140 = add i32 %10, -2212
  %1141 = zext i32 %1140 to i64
  %1142 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1141)
  %1143 = zext i32 %1139 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1143, i64 noundef %1142)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1141, i64 noundef 0)
  %1144 = add nuw nsw i64 %157, 520
  %1145 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1144)
  %1146 = add nuw nsw i64 %157, 1764
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1146, i64 noundef %1145)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1144, i64 noundef 0)
  %1147 = add nuw nsw i64 %157, 528
  %1148 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1147)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1147, i64 noundef 0)
  %1149 = add nuw nsw i64 %157, 1772
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1149, i64 noundef %1148)
  %1150 = add nuw nsw i64 %157, 544
  %1151 = tail call i32 @i32_load16_u(ptr noundef nonnull %12, i64 noundef %1150)
  %1152 = add nuw nsw i64 %157, 1788
  tail call void @i32_store16(ptr noundef nonnull %12, i64 noundef %1152, i32 noundef %1151)
  %1153 = add nuw nsw i64 %157, 548
  %1154 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1153)
  %1155 = add nuw nsw i64 %157, 1792
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1155, i64 noundef %1154)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1153, i64 noundef 0)
  %1156 = add i32 %10, -960
  %1157 = add i32 %10, -2204
  %1158 = zext i32 %1157 to i64
  %1159 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1158)
  %1160 = zext i32 %1156 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1160, i32 noundef %1159)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1158, i32 noundef 0)
  %1161 = add i32 %10, -2200
  %1162 = zext i32 %1161 to i64
  %1163 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1162)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1162, i32 noundef 0)
  %1164 = add i32 %10, -956
  %1165 = zext i32 %1164 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1165, i32 noundef %1163)
  %1166 = add i32 %10, -2196
  %1167 = zext i32 %1166 to i64
  %1168 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1167)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1167, i32 noundef 0)
  %1169 = add i32 %10, -952
  %1170 = zext i32 %1169 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1170, i32 noundef %1168)
  %1171 = add i32 %10, -2192
  %1172 = zext i32 %1171 to i64
  %1173 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1172)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1172, i32 noundef 0)
  %1174 = add i32 %10, -948
  %1175 = zext i32 %1174 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1175, i32 noundef %1173)
  %1176 = add i32 %10, -2188
  %1177 = zext i32 %1176 to i64
  %1178 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1177)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1177, i32 noundef 0)
  %1179 = add i32 %10, -944
  %1180 = zext i32 %1179 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1180, i32 noundef %1178)
  %1181 = add i32 %10, -2184
  %1182 = zext i32 %1181 to i64
  %1183 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1182)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1182, i32 noundef 0)
  %1184 = add i32 %10, -940
  %1185 = zext i32 %1184 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1185, i32 noundef %1183)
  %1186 = add nuw nsw i64 %157, 588
  %1187 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1186)
  %1188 = add nuw nsw i64 %157, 1832
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1188, i32 noundef %1187)
  %1189 = add i32 %10, -932
  %1190 = add i32 %10, -2176
  %1191 = zext i32 %1190 to i64
  %1192 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1191)
  %1193 = zext i32 %1189 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1193, i32 noundef %1192)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1191, i32 noundef 0)
  %1194 = add i32 %10, -2172
  %1195 = zext i32 %1194 to i64
  %1196 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1195)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1195, i32 noundef 0)
  %1197 = add i32 %10, -928
  %1198 = zext i32 %1197 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1198, i32 noundef %1196)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1186, i32 noundef 0)
  %1199 = add nuw nsw i64 %157, 600
  %1200 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1199)
  %1201 = add nuw nsw i64 %157, 1844
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1201, i32 noundef %1200)
  %1202 = add i32 %10, -920
  %1203 = add i32 %10, -2164
  %1204 = zext i32 %1203 to i64
  %1205 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1204)
  %1206 = zext i32 %1202 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1206, i32 noundef %1205)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1204, i32 noundef 0)
  %1207 = add i32 %10, -2160
  %1208 = zext i32 %1207 to i64
  %1209 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1208)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1208, i32 noundef 0)
  %1210 = add i32 %10, -916
  %1211 = zext i32 %1210 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1211, i32 noundef %1209)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1199, i32 noundef 0)
  %1212 = add i32 %10, -912
  %1213 = add i32 %10, -1004
  %1214 = add nuw nsw i64 %.pre-phi7507, 4
  %1215 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1214)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x3A0x3AtoTable0x28hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1212, i32 noundef %1213, i32 noundef %1215)
  %1216 = add i32 %10, -536
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AinitializeStringTable0x28hermes0x3A0x3Ahbc0x3A0x3AStringLiteralTable0x29(ptr noundef %0, i32 noundef %1216, i32 noundef %1212)
  %1217 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef %0, i32 noundef %1212)
  %1218 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1201)
  %.not7279 = icmp eq i32 %1218, 0
  br i1 %.not7279, label %1221, label %1219

1219:                                             ; preds = %1133
  %1220 = add nuw nsw i64 %157, 1848
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1220, i32 noundef %1218)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1218) #5
  br label %1221

1221:                                             ; preds = %1219, %1133
  %1222 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef %0, i32 noundef %1213)
  %1223 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1199)
  %.not7280 = icmp eq i32 %1223, 0
  br i1 %.not7280, label %1226, label %1224

1224:                                             ; preds = %1221
  %1225 = add nuw nsw i64 %157, 604
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1225, i32 noundef %1223)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1223) #5
  br label %1226

1226:                                             ; preds = %1224, %1221
  %1227 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef %0, i32 noundef %546)
  %1228 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1214)
  %1229 = add nuw nsw i64 %157, 532
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %1229, i32 noundef %1228)
  %1230 = add nuw nsw i64 %157, 536
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1230, i32 noundef %1216)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1147, i32 noundef %1216)
  %1231 = add i32 %10, -576
  %1232 = add nuw nsw i64 %157, 524
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1232, i32 noundef %1231)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1144, i32 noundef %1)
  %1233 = add i32 %10, -2228
  %1234 = tail call i32 @w2c_hermes_0x5F_memset(ptr noundef %0, i32 noundef %1233, i32 noundef 0, i32 noundef 192) #5
  %1235 = add nuw nsw i64 %13, 44
  %1236 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1235)
  %1237 = add i32 %1, 40
  %1238 = icmp eq i32 %1236, %1237
  br i1 %1238, label %._crit_edge7520, label %1239

._crit_edge7520:                                  ; preds = %1226
  %.pre7521 = add i32 %10, -2648
  br label %1514

1239:                                             ; preds = %1226
  %1240 = add i32 %10, -2216
  %1241 = add i32 %10, -2636
  %1242 = add i32 %10, -2100
  %1243 = add i32 %10, -2152
  %1244 = add i32 %10, -2352
  %1245 = add nuw nsw i64 %157, 120
  %1246 = add i32 %10, -2648
  %1247 = getelementptr inbounds i8, ptr %0, i64 80
  %1248 = getelementptr inbounds i8, ptr %0, i64 92
  %1249 = load ptr, ptr @w2c_hermes_t5, align 8
  %1250 = add nuw nsw i64 %157, 124
  %1251 = add nuw nsw i64 %157, 128
  %1252 = add nuw nsw i64 %157, 408
  %1253 = add nuw nsw i64 %157, 404
  %1254 = add nuw nsw i64 %157, 88
  %1255 = add i32 %10, -2680
  %1256 = add nuw nsw i64 %157, 608
  %1257 = add nuw nsw i64 %157, 612
  %1258 = add nuw nsw i64 %157, 604
  %1259 = add i32 %10, -1104
  %1260 = add nuw nsw i64 %157, 1664
  %1261 = add nuw nsw i64 %157, 1668
  %1262 = add nuw nsw i64 %157, 412
  %1263 = add i32 %10, -2364
  %1264 = add nuw nsw i64 %157, 104
  %1265 = add i32 %10, -2664
  %1266 = add nuw nsw i64 %157, 496
  %1267 = add nuw nsw i64 %157, 96
  %1268 = add i32 %10, -2672
  %1269 = add nuw nsw i64 %157, 660
  %1270 = add nuw nsw i64 %157, 656
  %1271 = add nuw nsw i64 %157, 712
  %1272 = add nuw nsw i64 %157, 708
  %1273 = add nuw nsw i64 %157, 724
  %1274 = add nuw nsw i64 %157, 728
  %1275 = add nuw nsw i64 %157, 720
  br label %1276

1276:                                             ; preds = %.loopexit7472, %1239
  %.06978 = phi i32 [ %1236, %1239 ], [ %1483, %.loopexit7472 ]
  %1277 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1232)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1245, i32 noundef %.06978)
  %1278 = zext i32 %1277 to i64
  %1279 = add nuw nsw i64 %1278, 16
  %1280 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1279)
  %.not7281 = icmp eq i32 %1280, 0
  br i1 %.not7281, label %.loopexit7444, label %1281

1281:                                             ; preds = %1276
  %1282 = zext i32 %1280 to i64
  %1283 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1282)
  %1284 = zext i32 %1283 to i64
  %1285 = add nuw nsw i64 %1284, 24
  %1286 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1285)
  %1287 = load i32, ptr %1248, align 4, !tbaa !15
  %1288 = icmp ult i32 %1286, %1287
  br i1 %1288, label %1289, label %.critedge7431, !prof !16

1289:                                             ; preds = %1281
  %1290 = load ptr, ptr %1247, align 8, !tbaa !17
  %1291 = zext i32 %1286 to i64
  %1292 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1290, i64 %1291
  %1293 = getelementptr inbounds i8, ptr %1292, i64 8
  %1294 = load ptr, ptr %1293, align 8, !tbaa !18
  %.not7282 = icmp eq ptr %1294, null
  br i1 %.not7282, label %.critedge7431, label %1295, !prof !20

1295:                                             ; preds = %1289
  %1296 = load ptr, ptr %1292, align 8, !tbaa !22
  %1297 = tail call zeroext i1 @func_types_eq(ptr noundef %1249, ptr noundef %1296)
  br i1 %1297, label %1298, label %.critedge7431, !prof !16

.critedge7431:                                    ; preds = %1289, %1281, %1295
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

1298:                                             ; preds = %1295
  %1299 = load ptr, ptr %1247, align 8, !tbaa !17
  %1300 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1299, i64 %1291
  %1301 = getelementptr inbounds i8, ptr %1300, i64 8
  %1302 = load ptr, ptr %1301, align 8, !tbaa !18
  %1303 = getelementptr inbounds i8, ptr %1300, i64 16
  %1304 = load ptr, ptr %1303, align 8, !tbaa !23
  %1305 = tail call i32 %1302(ptr noundef %1304, i32 noundef %1280, i32 noundef %1246) #5
  %.not7283 = icmp eq i32 %1305, 0
  %.pre7512 = zext i32 %.06978 to i64
  br i1 %.not7283, label %.loopexit7472, label %1306

1306:                                             ; preds = %1298
  %1307 = add nuw nsw i64 %.pre7512, 52
  %1308 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1307)
  %1309 = add i32 %.06978, 48
  %1310 = icmp eq i32 %1308, %1309
  br i1 %1310, label %.loopexit7472, label %.preheader7471

.preheader7471:                                   ; preds = %1306, %.loopexit7470
  %.06980 = phi i32 [ %1481, %.loopexit7470 ], [ %1308, %1306 ]
  %1311 = zext i32 %.06980 to i64
  %1312 = add nuw nsw i64 %1311, 40
  %1313 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1312)
  %1314 = add i32 %.06980, 36
  %.not7284 = icmp eq i32 %1313, %1314
  br i1 %.not7284, label %.loopexit7470, label %.preheader7467

.preheader7467:                                   ; preds = %.preheader7471, %1477
  %.47040 = phi i32 [ %1479, %1477 ], [ %1313, %.preheader7471 ]
  %.not7285 = icmp eq i32 %.47040, 0
  br i1 %.not7285, label %1433, label %1315

1315:                                             ; preds = %.preheader7467
  %1316 = zext i32 %.47040 to i64
  %1317 = add nuw nsw i64 %1316, 8
  %1318 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1317)
  switch i32 %1318, label %1477 [
    i32 106, label %1347
    i32 54, label %1319
  ]

1319:                                             ; preds = %1315
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1250, i64 noundef 34359738368)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1245, i32 noundef %1241)
  %1320 = tail call i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetNumOperands0x280x290x20const(ptr noundef %0, i32 noundef %.47040) #5
  %1321 = add i32 %1320, -1
  %.not7297 = icmp eq i32 %1321, 0
  br i1 %.not7297, label %1322, label %.preheader7465

1322:                                             ; preds = %1319
  %1323 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  br label %.loopexit7466

.preheader7465:                                   ; preds = %1319, %1346
  %.177035 = phi i32 [ %1324, %1346 ], [ 0, %1319 ]
  %1324 = add nuw i32 %.177035, 1
  %1325 = tail call i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetOperand0x28unsigned0x20int0x290x20const(ptr noundef %0, i32 noundef %.47040, i32 noundef %1324) #5
  %.not7298 = icmp eq i32 %1325, 0
  br i1 %.not7298, label %1434, label %1326

1326:                                             ; preds = %.preheader7465
  %1327 = zext i32 %1325 to i64
  %1328 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1327)
  %1329 = add i32 %1328, 147
  %1330 = and i32 %1329, 255
  %1331 = icmp ugt i32 %1330, 10
  br i1 %1331, label %1435, label %1332

1332:                                             ; preds = %1326
  %1333 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  %1334 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1251)
  %.not7299 = icmp ult i32 %1333, %1334
  br i1 %.not7299, label %1337, label %1335

1335:                                             ; preds = %1332
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1246, i32 noundef %1241, i32 noundef 0, i32 noundef 4) #5
  %1336 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  br label %1337

1337:                                             ; preds = %1335, %1332
  %.57003 = phi i32 [ %1336, %1335 ], [ %1333, %1332 ]
  %1338 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1245)
  %1339 = shl i32 %.57003, 2
  %1340 = add i32 %1338, %1339
  %1341 = zext i32 %1340 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1341, i32 noundef %1325)
  %1342 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  %1343 = add i32 %1342, 1
  %1344 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1251)
  %1345 = icmp ugt i32 %1343, %1344
  br i1 %1345, label %1436, label %1346

1346:                                             ; preds = %1337
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1250, i32 noundef %1343)
  %.not7300 = icmp eq i32 %1324, %1321
  br i1 %.not7300, label %.loopexit7466, label %.preheader7465

1347:                                             ; preds = %1315
  %1348 = tail call i32 @w2c_hermes_hermes0x3A0x3AInstruction0x3A0x3AgetNumOperands0x280x290x20const(ptr noundef %0, i32 noundef %.47040) #5
  %1349 = add i32 %1348, -1
  %1350 = icmp ult i32 %1349, 2
  br i1 %1350, label %1477, label %1351

1351:                                             ; preds = %1347
  %1352 = lshr i32 %1349, 1
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1250, i64 noundef 34359738368)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1245, i32 noundef %1241)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1252, i64 noundef 34359738368)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1253, i32 noundef %1244)
  br label %1353

1353:                                             ; preds = %1385, %1351
  %.18 = phi i32 [ 0, %1351 ], [ %1386, %1385 ]
  tail call void @w2c_hermes_hermes0x3A0x3AHBCAllocObjectFromBufferInst0x3A0x3AgetKeyValuePair0x28unsigned0x20int0x290x20const(ptr noundef %0, i32 noundef %1259, i32 noundef %.47040, i32 noundef %.18) #5
  %1354 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1260)
  %.not7287 = icmp eq i32 %1354, 0
  br i1 %.not7287, label %1437, label %1355

1355:                                             ; preds = %1353
  %1356 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  %1357 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1251)
  %.not7288 = icmp ult i32 %1356, %1357
  br i1 %.not7288, label %1360, label %1358

1358:                                             ; preds = %1355
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1246, i32 noundef %1241, i32 noundef 0, i32 noundef 4) #5
  %1359 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  br label %1360

1360:                                             ; preds = %1358, %1355
  %.67012 = phi i32 [ %1359, %1358 ], [ %1356, %1355 ]
  %1361 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1245)
  %1362 = shl i32 %.67012, 2
  %1363 = add i32 %1361, %1362
  %1364 = zext i32 %1363 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1364, i32 noundef %1354)
  %1365 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1250)
  %1366 = add i32 %1365, 1
  %1367 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1251)
  %1368 = icmp ugt i32 %1366, %1367
  br i1 %1368, label %1438, label %1369

1369:                                             ; preds = %1360
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1250, i32 noundef %1366)
  %1370 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1261)
  %.not7289 = icmp eq i32 %1370, 0
  br i1 %.not7289, label %1439, label %1371

1371:                                             ; preds = %1369
  %1372 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1252)
  %1373 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1262)
  %.not7290 = icmp ult i32 %1372, %1373
  br i1 %.not7290, label %1376, label %1374

1374:                                             ; preds = %1371
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef %0, i32 noundef %1263, i32 noundef %1244, i32 noundef 0, i32 noundef 4) #5
  %1375 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1252)
  br label %1376

1376:                                             ; preds = %1374, %1371
  %.77013 = phi i32 [ %1375, %1374 ], [ %1372, %1371 ]
  %1377 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1253)
  %1378 = shl i32 %.77013, 2
  %1379 = add i32 %1377, %1378
  %1380 = zext i32 %1379 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1380, i32 noundef %1370)
  %1381 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1252)
  %1382 = add i32 %1381, 1
  %1383 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1262)
  %1384 = icmp ugt i32 %1382, %1383
  br i1 %1384, label %1440, label %1385

1385:                                             ; preds = %1376
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1252, i32 noundef %1382)
  %1386 = add i32 %.18, 1
  %.not7291 = icmp eq i32 %1386, %1352
  br i1 %.not7291, label %1387, label %1353

1387:                                             ; preds = %1385
  %1388 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1245)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1260, i64 noundef %1388)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1264, i64 noundef %1388)
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %546, i32 noundef %1243, i32 noundef %1265, i32 noundef 1) #5
  %1389 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1253)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1266, i64 noundef %1389)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1267, i64 noundef %1389)
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %546, i32 noundef %1242, i32 noundef %1268, i32 noundef 0) #5
  %1390 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1269)
  %1391 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1270)
  %1392 = sub i32 %1390, %1391
  %1393 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1271)
  %1394 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1272)
  %1395 = sub i32 %1393, %1394
  %.not7292 = icmp eq i32 %1392, %1395
  br i1 %.not7292, label %1396, label %1441

1396:                                             ; preds = %1387
  %1397 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1273)
  %1398 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1274)
  %1399 = icmp ult i32 %1397, %1398
  br i1 %1399, label %1400, label %1403

1400:                                             ; preds = %1396
  %1401 = zext i32 %1397 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1401, i32 noundef %.47040)
  %1402 = add i32 %1397, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1273, i32 noundef %1402)
  br label %1427

1403:                                             ; preds = %1396
  %1404 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1275)
  %1405 = sub i32 %1397, %1404
  %1406 = ashr i32 %1405, 2
  %1407 = add nsw i32 %1406, 1
  %1408 = icmp ugt i32 %1407, 1073741823
  br i1 %1408, label %.loopexit7468, label %1409

1409:                                             ; preds = %1403
  %1410 = sub i32 %1398, %1404
  %1411 = ashr i32 %1410, 1
  %1412 = tail call i32 @llvm.umax.i32(i32 %1407, i32 %1411)
  %1413 = icmp ugt i32 %1410, 2147483643
  %1414 = select i1 %1413, i32 1073741823, i32 %1412
  %.not7293 = icmp eq i32 %1414, 0
  br i1 %.not7293, label %._crit_edge7502, label %1415

1415:                                             ; preds = %1409
  %1416 = icmp ugt i32 %1414, 1073741823
  br i1 %1416, label %.loopexit7469, label %1417

1417:                                             ; preds = %1415
  %1418 = shl nuw i32 %1414, 2
  %1419 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1418) #5
  br label %._crit_edge7502

._crit_edge7502:                                  ; preds = %1409, %1417
  %.pre-phi7515 = phi i32 [ %1418, %1417 ], [ 0, %1409 ]
  %.13 = phi i32 [ %1419, %1417 ], [ 0, %1409 ]
  %1420 = and i32 %1405, -4
  %1421 = add i32 %.13, %1420
  %1422 = zext i32 %1421 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1422, i32 noundef %.47040)
  %1423 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.13, i32 noundef %1404, i32 noundef %1405) #5
  %1424 = add i32 %1423, %.pre-phi7515
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1274, i32 noundef %1424)
  %1425 = add i32 %1421, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1273, i32 noundef %1425)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1275, i32 noundef %1423)
  %.not7294 = icmp eq i32 %1404, 0
  br i1 %.not7294, label %1427, label %1426

1426:                                             ; preds = %._crit_edge7502
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1404) #5
  br label %1427

1427:                                             ; preds = %._crit_edge7502, %1426, %1400
  %1428 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1253)
  %.not7295 = icmp eq i32 %1244, %1428
  br i1 %.not7295, label %1430, label %1429

1429:                                             ; preds = %1427
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %1428) #5
  br label %1430

1430:                                             ; preds = %1429, %1427
  %1431 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1245)
  %1432 = icmp eq i32 %1431, %1241
  br i1 %1432, label %1477, label %.sink.split7570

1433:                                             ; preds = %.preheader7467
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 147142, i32 noundef 82611, i32 noundef 106, i32 noundef 28119) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1434:                                             ; preds = %.preheader7465
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 147142, i32 noundef 82611, i32 noundef 106, i32 noundef 28119) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1435:                                             ; preds = %1326
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 205012, i32 noundef 82611, i32 noundef 255, i32 noundef 24720) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1436:                                             ; preds = %1337
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 117789, i32 noundef 79572, i32 noundef 74, i32 noundef 88407) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1437:                                             ; preds = %1353
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 147142, i32 noundef 82611, i32 noundef 106, i32 noundef 28119) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1438:                                             ; preds = %1360
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 117789, i32 noundef 79572, i32 noundef 74, i32 noundef 88407) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1439:                                             ; preds = %1369
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 147142, i32 noundef 82611, i32 noundef 106, i32 noundef 28119) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1440:                                             ; preds = %1376
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 117789, i32 noundef 79572, i32 noundef 74, i32 noundef 88407) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1441:                                             ; preds = %1387
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 163974, i32 noundef 62752, i32 noundef 372, i32 noundef 48945) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7466:                                    ; preds = %1346, %1322
  %.87014 = phi i32 [ %1323, %1322 ], [ %1343, %1346 ]
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1252, i32 noundef %.87014)
  %1442 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1245)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1253, i32 noundef %1442)
  %1443 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1253)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1254, i64 noundef %1443)
  tail call void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %546, i32 noundef %1240, i32 noundef %1255, i32 noundef 0) #5
  %1444 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1256)
  %1445 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1257)
  %1446 = icmp ult i32 %1444, %1445
  br i1 %1446, label %1447, label %1450

1447:                                             ; preds = %.loopexit7466
  %1448 = zext i32 %1444 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1448, i32 noundef %.47040)
  %1449 = add i32 %1444, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1256, i32 noundef %1449)
  br label %1474

1450:                                             ; preds = %.loopexit7466
  %1451 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1258)
  %1452 = sub i32 %1444, %1451
  %1453 = ashr i32 %1452, 2
  %1454 = add nsw i32 %1453, 1
  %1455 = icmp ugt i32 %1454, 1073741823
  br i1 %1455, label %.loopexit7468, label %1456

1456:                                             ; preds = %1450
  %1457 = sub i32 %1445, %1451
  %1458 = ashr i32 %1457, 1
  %1459 = tail call i32 @llvm.umax.i32(i32 %1454, i32 %1458)
  %1460 = icmp ugt i32 %1457, 2147483643
  %1461 = select i1 %1460, i32 1073741823, i32 %1459
  %.not7301 = icmp eq i32 %1461, 0
  br i1 %.not7301, label %._crit_edge7501, label %1462

1462:                                             ; preds = %1456
  %1463 = icmp ugt i32 %1461, 1073741823
  br i1 %1463, label %.loopexit7469, label %1464

1464:                                             ; preds = %1462
  %1465 = shl nuw i32 %1461, 2
  %1466 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef %1465) #5
  br label %._crit_edge7501

._crit_edge7501:                                  ; preds = %1456, %1464
  %.pre-phi7517 = phi i32 [ %1465, %1464 ], [ 0, %1456 ]
  %.14 = phi i32 [ %1466, %1464 ], [ 0, %1456 ]
  %1467 = and i32 %1452, -4
  %1468 = add i32 %.14, %1467
  %1469 = zext i32 %1468 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1469, i32 noundef %.47040)
  %1470 = tail call i32 @w2c_hermes_memmove(ptr noundef %0, i32 noundef %.14, i32 noundef %1451, i32 noundef %1452) #5
  %1471 = add i32 %1470, %.pre-phi7517
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1257, i32 noundef %1471)
  %1472 = add i32 %1468, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1256, i32 noundef %1472)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1258, i32 noundef %1470)
  %.not7302 = icmp eq i32 %1451, 0
  br i1 %.not7302, label %1474, label %1473

1473:                                             ; preds = %._crit_edge7501
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1451) #5
  br label %1474

1474:                                             ; preds = %._crit_edge7501, %1473, %1447
  %1475 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1245)
  %1476 = icmp eq i32 %1475, %1241
  br i1 %1476, label %1477, label %.sink.split7570

.sink.split7570:                                  ; preds = %1474, %1430
  %.sink7571 = phi i32 [ %1431, %1430 ], [ %1475, %1474 ]
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %.sink7571) #5
  br label %1477

1477:                                             ; preds = %.sink.split7570, %1315, %1474, %1430, %1347
  %1478 = add nuw nsw i64 %1316, 4
  %1479 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1478)
  %.not7303 = icmp eq i32 %1479, %1314
  br i1 %.not7303, label %.loopexit7470, label %.preheader7467

.loopexit7470:                                    ; preds = %1477, %.preheader7471
  %1480 = add nuw nsw i64 %1311, 4
  %1481 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1480)
  %.not7304 = icmp eq i32 %1481, %1309
  br i1 %.not7304, label %.loopexit7472, label %.preheader7471

.loopexit7472:                                    ; preds = %.loopexit7470, %1298, %1306
  %1482 = add nuw nsw i64 %.pre7512, 4
  %1483 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1482)
  %.not7305 = icmp eq i32 %1483, %1237
  br i1 %.not7305, label %1484, label %1276

1484:                                             ; preds = %.loopexit7472
  %1485 = add nuw nsw i64 %157, 556
  %1486 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1485)
  %1487 = add nuw nsw i64 %157, 568
  %1488 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1487)
  %1489 = udiv i32 %1488, 341
  %1490 = shl nuw nsw i32 %1489, 2
  %1491 = add i32 %1490, %1486
  %1492 = add nuw nsw i64 %157, 560
  %1493 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1492)
  %1494 = icmp eq i32 %1493, %1486
  br i1 %1494, label %1514, label %1495

1495:                                             ; preds = %1484
  %1496 = zext i32 %1491 to i64
  %1497 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1496)
  %1498 = add nuw nsw i64 %157, 2760
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1498, i32 noundef %1491)
  %.neg = mul i32 %1489, -341
  %1499 = add i32 %.neg, %1488
  %1500 = mul i32 %1499, 12
  %1501 = add i32 %1497, %1500
  %1502 = add nuw nsw i64 %157, 2764
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1502, i32 noundef %1501)
  %1503 = add nuw nsw i64 %157, 572
  %1504 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1503)
  %1505 = add i32 %1504, %1488
  %1506 = udiv i32 %1505, 341
  %1507 = shl nuw nsw i32 %1506, 2
  %1508 = add i32 %1507, %1486
  %1509 = zext i32 %1508 to i64
  %1510 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1509)
  %.neg7306 = mul i32 %1506, -341
  %1511 = add i32 %.neg7306, %1505
  %1512 = mul i32 %1511, 12
  %1513 = add i32 %1512, %1510
  br label %1523

.loopexit7469:                                    ; preds = %331, %1462, %1415
  tail call void @w2c_hermes_std0x3A0x3A_0x5Fthrow_bad_array_new_length0x5Babi0x3Av150070x5D0x280x29(ptr noundef %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7468:                                    ; preds = %348, %320, %1450, %1403, %395, %265
  tail call void @w2c_hermes_abort(ptr noundef %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1514:                                             ; preds = %._crit_edge7520, %1484
  %.pre.pre-phi = phi i32 [ %.pre7521, %._crit_edge7520 ], [ %1246, %1484 ]
  %.19 = phi i32 [ 0, %._crit_edge7520 ], [ %1491, %1484 ]
  %.97015 = phi i32 [ 0, %._crit_edge7520 ], [ %1488, %1484 ]
  %.67004 = phi i32 [ 0, %._crit_edge7520 ], [ %1486, %1484 ]
  %1515 = add nuw nsw i64 %157, 2764
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1515, i32 noundef 0)
  %1516 = add nuw nsw i64 %157, 2760
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1516, i32 noundef %.19)
  %1517 = add nuw nsw i64 %157, 572
  %1518 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1517)
  %1519 = add i32 %1518, %.97015
  %1520 = udiv i32 %1519, 341
  %1521 = shl nuw nsw i32 %1520, 2
  %1522 = add i32 %1521, %.67004
  br label %1523

1523:                                             ; preds = %1514, %1495
  %.pre-phi7495 = phi i32 [ %.pre.pre-phi, %1514 ], [ %1246, %1495 ]
  %.pre-phi = phi i64 [ %1516, %1514 ], [ %1498, %1495 ]
  %.20 = phi i32 [ %1522, %1514 ], [ %1508, %1495 ]
  %.15 = phi i32 [ 0, %1514 ], [ %1513, %1495 ]
  %1524 = add nuw nsw i64 %157, 2756
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1524, i32 noundef %.15)
  %1525 = add nuw nsw i64 %157, 2752
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1525, i32 noundef %.20)
  %1526 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %.pre-phi)
  %1527 = add nuw nsw i64 %157, 80
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1527, i64 noundef %1526)
  %1528 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1525)
  %1529 = add nuw nsw i64 %157, 72
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1529, i64 noundef %1528)
  %1530 = add i32 %10, -2688
  %1531 = add i32 %10, -2696
  %1532 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1229)
  %1533 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %.pre-phi7495, i32 noundef %1530, i32 noundef %1531, i32 noundef %1532)
  %1534 = add nuw nsw i64 %157, 620
  %1535 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1534)
  %1536 = add nuw nsw i64 %157, 632
  %1537 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1536)
  %1538 = udiv i32 %1537, 341
  %1539 = shl nuw nsw i32 %1538, 2
  %1540 = add i32 %1539, %1535
  %1541 = add nuw nsw i64 %157, 624
  %1542 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1541)
  %1543 = icmp eq i32 %1535, %1542
  %1544 = add nuw nsw i64 %157, 2744
  br i1 %1543, label %1545, label %1553

1545:                                             ; preds = %1523
  %1546 = add nuw nsw i64 %157, 2748
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1546, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1544, i32 noundef %1540)
  %1547 = add nuw nsw i64 %157, 636
  %1548 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1547)
  %1549 = add i32 %1548, %1537
  %1550 = udiv i32 %1549, 341
  %1551 = shl nuw nsw i32 %1550, 2
  %1552 = add i32 %1551, %1535
  br label %1571

1553:                                             ; preds = %1523
  %1554 = zext i32 %1540 to i64
  %1555 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1554)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1544, i32 noundef %1540)
  %.neg7307 = mul i32 %1538, -341
  %1556 = add i32 %.neg7307, %1537
  %1557 = mul i32 %1556, 12
  %1558 = add i32 %1555, %1557
  %1559 = add nuw nsw i64 %157, 2748
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1559, i32 noundef %1558)
  %1560 = add nuw nsw i64 %157, 636
  %1561 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1560)
  %1562 = add i32 %1561, %1537
  %1563 = udiv i32 %1562, 341
  %1564 = shl nuw nsw i32 %1563, 2
  %1565 = add i32 %1564, %1535
  %1566 = zext i32 %1565 to i64
  %1567 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1566)
  %.neg7308 = mul i32 %1563, -341
  %1568 = add i32 %.neg7308, %1562
  %1569 = mul i32 %1568, 12
  %1570 = add i32 %1569, %1567
  br label %1571

1571:                                             ; preds = %1553, %1545
  %.107016 = phi i32 [ %1565, %1553 ], [ %1552, %1545 ]
  %.1 = phi i32 [ %1570, %1553 ], [ 0, %1545 ]
  %1572 = add nuw nsw i64 %157, 2740
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1572, i32 noundef %.1)
  %1573 = add nuw nsw i64 %157, 2736
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1573, i32 noundef %.107016)
  %1574 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1544)
  %1575 = add nuw nsw i64 %157, 64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1575, i64 noundef %1574)
  %1576 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1573)
  %1577 = add nuw nsw i64 %157, 56
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1577, i64 noundef %1576)
  %1578 = add i32 %10, -2364
  %1579 = add i32 %10, -2704
  %1580 = add i32 %10, -2712
  %1581 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1229)
  %1582 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1578, i32 noundef %1579, i32 noundef %1580, i32 noundef %1581)
  %1583 = add nuw nsw i64 %157, 672
  %1584 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1583)
  %1585 = add nuw nsw i64 %157, 684
  %1586 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1585)
  %1587 = udiv i32 %1586, 341
  %1588 = shl nuw nsw i32 %1587, 2
  %1589 = add i32 %1588, %1584
  %1590 = add nuw nsw i64 %157, 676
  %1591 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1590)
  %1592 = icmp eq i32 %1584, %1591
  %1593 = add nuw nsw i64 %157, 2728
  br i1 %1592, label %1594, label %1602

1594:                                             ; preds = %1571
  %1595 = add nuw nsw i64 %157, 2732
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1595, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1593, i32 noundef %1589)
  %1596 = add nuw nsw i64 %157, 688
  %1597 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1596)
  %1598 = add i32 %1597, %1586
  %1599 = udiv i32 %1598, 341
  %1600 = shl nuw nsw i32 %1599, 2
  %1601 = add i32 %1600, %1584
  br label %1620

1602:                                             ; preds = %1571
  %1603 = zext i32 %1589 to i64
  %1604 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1603)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1593, i32 noundef %1589)
  %.neg7309 = mul i32 %1587, -341
  %1605 = add i32 %.neg7309, %1586
  %1606 = mul i32 %1605, 12
  %1607 = add i32 %1604, %1606
  %1608 = add nuw nsw i64 %157, 2732
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1608, i32 noundef %1607)
  %1609 = add nuw nsw i64 %157, 688
  %1610 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1609)
  %1611 = add i32 %1610, %1586
  %1612 = udiv i32 %1611, 341
  %1613 = shl nuw nsw i32 %1612, 2
  %1614 = add i32 %1613, %1584
  %1615 = zext i32 %1614 to i64
  %1616 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1615)
  %.neg7310 = mul i32 %1612, -341
  %1617 = add i32 %.neg7310, %1611
  %1618 = mul i32 %1617, 12
  %1619 = add i32 %1618, %1616
  br label %1620

1620:                                             ; preds = %1602, %1594
  %.57041 = phi i32 [ %1614, %1602 ], [ %1601, %1594 ]
  %.2 = phi i32 [ %1619, %1602 ], [ 0, %1594 ]
  %1621 = add nuw nsw i64 %157, 2724
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1621, i32 noundef %.2)
  %1622 = add nuw nsw i64 %157, 2720
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1622, i32 noundef %.57041)
  %1623 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1593)
  %1624 = add nuw nsw i64 %157, 48
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1624, i64 noundef %1623)
  %1625 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %1622)
  %1626 = add nuw nsw i64 %157, 40
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1626, i64 noundef %1625)
  %1627 = add i32 %10, -1104
  %1628 = add i32 %10, -2720
  %1629 = add i32 %10, -2728
  %1630 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1229)
  %1631 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AConsecutiveStringStorage0x3A0x3AConsecutiveStringStorage0x3Cstd0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x3E0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_iterator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x20const0x2A0x20const0x2A0x2C0x20long0x2C0x200l0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aintegral_constant0x3Cbool0x2C0x20true0x3E0x2C0x20bool0x29(ptr noundef %0, i32 noundef %1627, i32 noundef %1628, i32 noundef %1629, i32 noundef %1630)
  %1632 = add nuw nsw i64 %157, 504
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1632, i64 noundef 0)
  %1633 = add nuw nsw i64 %157, 496
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1633, i64 noundef 0)
  %1634 = zext i32 %1533 to i64
  %1635 = add nuw nsw i64 %1634, 24
  %1636 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1635)
  %.not7311 = icmp eq i32 %1636, 0
  br i1 %.not7311, label %1697, label %1637

1637:                                             ; preds = %1620
  %1638 = add nuw nsw i64 %157, 608
  %1639 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1638)
  %1640 = add nuw nsw i64 %157, 604
  %1641 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1640)
  %1642 = icmp eq i32 %1639, %1641
  br i1 %1642, label %.loopexit7464, label %1643

1643:                                             ; preds = %1637
  %1644 = add nuw nsw i64 %1634, 4
  %1645 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1644)
  %1646 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1634)
  %1647 = sub i32 %1645, %1646
  %1648 = ashr i32 %1647, 3
  %1649 = sub i32 %1639, %1641
  %1650 = ashr i32 %1649, 2
  %1651 = add nuw nsw i64 %157, 508
  %1652 = add nuw nsw i64 %157, 592
  %1653 = add i32 %10, -2272
  br label %1654

1654:                                             ; preds = %1687, %1643
  %.66996 = phi i32 [ 0, %1643 ], [ %1696, %1687 ]
  %1655 = shl i32 %.66996, 2
  %1656 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1640)
  %1657 = add i32 %1655, %1656
  %1658 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1651)
  %.not7312 = icmp eq i32 %1658, 0
  br i1 %.not7312, label %.loopexit7461, label %1659

1659:                                             ; preds = %1654
  %1660 = zext i32 %1657 to i64
  %1661 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1660)
  switch i32 %1661, label %1663 [
    i32 -8, label %1662
    i32 -4, label %1662
  ]

1662:                                             ; preds = %1659, %1659
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 204136, i32 noundef 81389, i32 noundef 597, i32 noundef 48929) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1663:                                             ; preds = %1659
  %1664 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1633)
  %1665 = add i32 %1658, -1
  %1666 = lshr i32 %1661, 4
  %1667 = lshr i32 %1661, 9
  %1668 = xor i32 %1666, %1667
  %1669 = and i32 %1668, %1665
  %1670 = mul nuw i32 %1669, 12
  %1671 = add i32 %1664, %1670
  %1672 = zext i32 %1671 to i64
  %1673 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1672)
  %.not7313 = icmp eq i32 %1661, %1673
  br i1 %.not7313, label %.loopexit7462, label %.preheader7460

.preheader7460:                                   ; preds = %1663, %1675
  %.16986 = phi i32 [ %1682, %1675 ], [ %1673, %1663 ]
  %.16981 = phi i32 [ %1678, %1675 ], [ %1669, %1663 ]
  %.06977 = phi i32 [ %1677, %1675 ], [ 1, %1663 ]
  %1674 = icmp eq i32 %.16986, -4
  br i1 %1674, label %.loopexit7461, label %1675

1675:                                             ; preds = %.preheader7460
  %1676 = add i32 %.06977, %.16981
  %1677 = add i32 %.06977, 1
  %1678 = and i32 %1676, %1665
  %1679 = mul i32 %1678, 12
  %1680 = add i32 %1679, %1664
  %1681 = zext i32 %1680 to i64
  %1682 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1681)
  %.not7314 = icmp eq i32 %1682, %1661
  br i1 %.not7314, label %.loopexit7462, label %.preheader7460

.loopexit7462:                                    ; preds = %1663, %1675
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 173379, i32 noundef 62752, i32 noundef 289, i32 noundef 91294) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7461:                                    ; preds = %.preheader7460, %1654
  %1683 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1652)
  %1684 = add i32 %1683, %1655
  %1685 = zext i32 %1684 to i64
  %1686 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1685)
  %.not7315 = icmp ugt i32 %1648, %1686
  br i1 %.not7315, label %1687, label %1698

1687:                                             ; preds = %.loopexit7461
  %1688 = shl i32 %1686, 3
  %1689 = add i32 %1688, %1646
  %1690 = zext i32 %1689 to i64
  %1691 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1690)
  %1692 = tail call i32 @w2c_hermes_llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x3A0x3AFindAndConstruct0x28hermes0x3A0x3AInstruction0x20const0x2A0x20const0x260x29(ptr noundef %0, i32 noundef %1653, i32 noundef %1657) #5
  %1693 = zext i32 %1692 to i64
  %1694 = add nuw nsw i64 %1693, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1694, i32 noundef %1691)
  %1695 = add nuw nsw i64 %1693, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1695, i32 noundef -1)
  %1696 = add i32 %.66996, 1
  %.not7316 = icmp eq i32 %1696, %1650
  br i1 %.not7316, label %.loopexit7464, label %1654

1697:                                             ; preds = %1620
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 176361, i32 noundef 85237, i32 noundef 64, i32 noundef 103485) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1698:                                             ; preds = %.loopexit7461
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 202939, i32 noundef 82833, i32 noundef 241, i32 noundef 108367) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7464:                                    ; preds = %1687, %1637
  %1699 = zext i32 %1582 to i64
  %1700 = add nuw nsw i64 %1699, 24
  %1701 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1700)
  %.not7317 = icmp eq i32 %1701, 0
  br i1 %.not7317, label %1781, label %1702

1702:                                             ; preds = %.loopexit7464
  %1703 = zext i32 %1631 to i64
  %1704 = add nuw nsw i64 %1703, 24
  %1705 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1704)
  %.not7318 = icmp eq i32 %1705, 0
  br i1 %.not7318, label %1782, label %1706

1706:                                             ; preds = %1702
  %1707 = add nuw nsw i64 %157, 724
  %1708 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1707)
  %1709 = add nuw nsw i64 %157, 720
  %1710 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1709)
  %1711 = icmp eq i32 %1708, %1710
  br i1 %1711, label %.loopexit7459, label %1712

1712:                                             ; preds = %1706
  %1713 = add nuw nsw i64 %1699, 4
  %1714 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1713)
  %1715 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1699)
  %1716 = sub i32 %1714, %1715
  %1717 = ashr i32 %1716, 3
  %1718 = add nuw nsw i64 %1703, 4
  %1719 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1718)
  %1720 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1703)
  %1721 = sub i32 %1719, %1720
  %1722 = ashr i32 %1721, 3
  %1723 = sub i32 %1708, %1710
  %1724 = ashr i32 %1723, 2
  %1725 = add nuw nsw i64 %157, 508
  %1726 = add nuw nsw i64 %157, 656
  %1727 = add nuw nsw i64 %157, 708
  %1728 = add i32 %10, -2272
  br label %1729

1729:                                             ; preds = %1767, %1712
  %.76997 = phi i32 [ 0, %1712 ], [ %1780, %1767 ]
  %1730 = shl i32 %.76997, 2
  %1731 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1709)
  %1732 = add i32 %1730, %1731
  %1733 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1725)
  %.not7319 = icmp eq i32 %1733, 0
  br i1 %.not7319, label %.loopexit7456, label %1734

1734:                                             ; preds = %1729
  %1735 = zext i32 %1732 to i64
  %1736 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1735)
  switch i32 %1736, label %1738 [
    i32 -8, label %1737
    i32 -4, label %1737
  ]

1737:                                             ; preds = %1734, %1734
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 204136, i32 noundef 81389, i32 noundef 597, i32 noundef 48929) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1738:                                             ; preds = %1734
  %1739 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1633)
  %1740 = add i32 %1733, -1
  %1741 = lshr i32 %1736, 4
  %1742 = lshr i32 %1736, 9
  %1743 = xor i32 %1741, %1742
  %1744 = and i32 %1743, %1740
  %1745 = mul nuw i32 %1744, 12
  %1746 = add i32 %1739, %1745
  %1747 = zext i32 %1746 to i64
  %1748 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1747)
  %.not7320 = icmp eq i32 %1736, %1748
  br i1 %.not7320, label %.loopexit7457, label %.preheader7455

.preheader7455:                                   ; preds = %1738, %1750
  %.06982 = phi i32 [ %1757, %1750 ], [ %1748, %1738 ]
  %.06976 = phi i32 [ %1753, %1750 ], [ %1744, %1738 ]
  %.06975 = phi i32 [ %1752, %1750 ], [ 1, %1738 ]
  %1749 = icmp eq i32 %.06982, -4
  br i1 %1749, label %.loopexit7456, label %1750

1750:                                             ; preds = %.preheader7455
  %1751 = add i32 %.06975, %.06976
  %1752 = add i32 %.06975, 1
  %1753 = and i32 %1751, %1740
  %1754 = mul i32 %1753, 12
  %1755 = add i32 %1754, %1739
  %1756 = zext i32 %1755 to i64
  %1757 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1756)
  %.not7321 = icmp eq i32 %1757, %1736
  br i1 %.not7321, label %.loopexit7457, label %.preheader7455

.loopexit7457:                                    ; preds = %1738, %1750
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 173474, i32 noundef 62752, i32 noundef 303, i32 noundef 91294) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7456:                                    ; preds = %.preheader7455, %1729
  %1758 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1726)
  %1759 = add i32 %1758, %1730
  %1760 = zext i32 %1759 to i64
  %1761 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1760)
  %.not7322 = icmp ugt i32 %1717, %1761
  br i1 %.not7322, label %1762, label %1783

1762:                                             ; preds = %.loopexit7456
  %1763 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1727)
  %1764 = add i32 %1763, %1730
  %1765 = zext i32 %1764 to i64
  %1766 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1765)
  %.not7323 = icmp ugt i32 %1722, %1766
  br i1 %.not7323, label %1767, label %1784

1767:                                             ; preds = %1762
  %1768 = shl i32 %1766, 3
  %1769 = add i32 %1768, %1720
  %1770 = zext i32 %1769 to i64
  %1771 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1770)
  %1772 = shl i32 %1761, 3
  %1773 = add i32 %1772, %1715
  %1774 = zext i32 %1773 to i64
  %1775 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1774)
  %1776 = tail call i32 @w2c_hermes_llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x2C0x20hermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x3A0x3AFindAndConstruct0x28hermes0x3A0x3AInstruction0x20const0x2A0x20const0x260x29(ptr noundef %0, i32 noundef %1728, i32 noundef %1732) #5
  %1777 = zext i32 %1776 to i64
  %1778 = add nuw nsw i64 %1777, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1778, i32 noundef %1775)
  %1779 = add nuw nsw i64 %1777, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1779, i32 noundef %1771)
  %1780 = add i32 %.76997, 1
  %.not7324 = icmp eq i32 %1780, %1724
  br i1 %.not7324, label %.loopexit7459, label %1729

1781:                                             ; preds = %.loopexit7464
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 176361, i32 noundef 85237, i32 noundef 64, i32 noundef 103485) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1782:                                             ; preds = %1702
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 176361, i32 noundef 85237, i32 noundef 64, i32 noundef 103485) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1783:                                             ; preds = %.loopexit7456
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 202939, i32 noundef 82833, i32 noundef 241, i32 noundef 108367) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

1784:                                             ; preds = %1762
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 202939, i32 noundef 82833, i32 noundef 241, i32 noundef 108367) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

.loopexit7459:                                    ; preds = %1767, %1706
  %1785 = add nuw nsw i64 %1634, 25
  %1786 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1785)
  %.not7325 = icmp eq i32 %1786, 0
  br i1 %.not7325, label %2467, label %1787

1787:                                             ; preds = %.loopexit7459
  %1788 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1147)
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %1785, i32 noundef 0)
  %1789 = add nuw nsw i64 %1634, 12
  %1790 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1789)
  %1791 = add nuw nsw i64 %157, 1720
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1791, i32 noundef %1790)
  %1792 = add nuw nsw i64 %1634, 16
  %1793 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1792)
  %1794 = add nuw nsw i64 %157, 1724
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1794, i32 noundef %1793)
  %1795 = add i32 %1533, 20
  %1796 = zext i32 %1795 to i64
  %1797 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1796)
  %1798 = add nuw nsw i64 %157, 1728
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1798, i32 noundef %1797)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1796, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1789, i64 noundef 0)
  %1799 = add nuw nsw i64 %1699, 25
  %1800 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1799)
  %.not7326 = icmp eq i32 %1800, 0
  br i1 %.not7326, label %2468, label %1801

1801:                                             ; preds = %1787
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %1799, i32 noundef 0)
  %1802 = add nuw nsw i64 %1699, 12
  %1803 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1802)
  %1804 = add nuw nsw i64 %157, 480
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1804, i32 noundef %1803)
  %1805 = add nuw nsw i64 %1699, 16
  %1806 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1805)
  %1807 = add nuw nsw i64 %157, 484
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1807, i32 noundef %1806)
  %1808 = add i32 %1582, 20
  %1809 = zext i32 %1808 to i64
  %1810 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1809)
  %1811 = add nuw nsw i64 %157, 488
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1811, i32 noundef %1810)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1809, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1802, i64 noundef 0)
  %1812 = add nuw nsw i64 %1703, 25
  %1813 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1812)
  %.not7327 = icmp eq i32 %1813, 0
  br i1 %.not7327, label %2469, label %1814

1814:                                             ; preds = %1801
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %1812, i32 noundef 0)
  %1815 = add nuw nsw i64 %1703, 12
  %1816 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1815)
  %1817 = add nuw nsw i64 %157, 380
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1817, i32 noundef %1816)
  %1818 = add nuw nsw i64 %1703, 16
  %1819 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1818)
  %1820 = add nuw nsw i64 %157, 384
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1820, i32 noundef %1819)
  %1821 = add i32 %1631, 20
  %1822 = zext i32 %1821 to i64
  %1823 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1822)
  %1824 = add nuw nsw i64 %157, 388
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1824, i32 noundef %1823)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1822, i32 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1815, i64 noundef 0)
  %1825 = add i32 %10, -1048
  %1826 = add i32 %10, -2288
  %1827 = add i32 %10, -2388
  %1828 = add i32 %10, -2272
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AinitializeSerializedLiterals0x28std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20std0x3A0x3A_0x5F20x3A0x3Avector0x3Cunsigned0x20char0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cunsigned0x20char0x3E0x3E0x260x260x2C0x20llvh0x3A0x3ADenseMap0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Chermes0x3A0x3AInstruction0x20const0x2A0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Chermes0x3A0x3AInstruction0x20const0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Apair0x3Cunsigned0x20int0x2C0x20unsigned0x20int0x3E0x3E0x3E0x260x260x29(ptr noundef %0, i32 noundef %1788, i32 noundef %1825, i32 noundef %1826, i32 noundef %1827, i32 noundef %1828)
  %1829 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1817)
  %.not7328 = icmp eq i32 %1829, 0
  br i1 %.not7328, label %1831, label %1830

1830:                                             ; preds = %1814
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1820, i32 noundef %1829)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1829) #5
  br label %1831

1831:                                             ; preds = %1830, %1814
  %1832 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1804)
  %.not7329 = icmp eq i32 %1832, 0
  br i1 %.not7329, label %1834, label %1833

1833:                                             ; preds = %1831
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1807, i32 noundef %1832)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1832) #5
  br label %1834

1834:                                             ; preds = %1833, %1831
  %1835 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1791)
  %.not7330 = icmp eq i32 %1835, 0
  br i1 %.not7330, label %1837, label %1836

1836:                                             ; preds = %1834
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1794, i32 noundef %1835)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1835) #5
  br label %1837

1837:                                             ; preds = %1836, %1834
  %1838 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1633)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1838) #5
  %1839 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1815)
  %.not7331 = icmp eq i32 %1839, 0
  br i1 %.not7331, label %1841, label %1840

1840:                                             ; preds = %1837
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1818, i32 noundef %1839)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1839) #5
  br label %1841

1841:                                             ; preds = %1840, %1837
  %1842 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1703)
  %.not7332 = icmp eq i32 %1842, 0
  br i1 %.not7332, label %1845, label %1843

1843:                                             ; preds = %1841
  %1844 = add nuw nsw i64 %1703, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1844, i32 noundef %1842)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1842) #5
  br label %1845

1845:                                             ; preds = %1843, %1841
  %1846 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1802)
  %.not7333 = icmp eq i32 %1846, 0
  br i1 %.not7333, label %1848, label %1847

1847:                                             ; preds = %1845
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1805, i32 noundef %1846)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1846) #5
  br label %1848

1848:                                             ; preds = %1847, %1845
  %1849 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1699)
  %.not7334 = icmp eq i32 %1849, 0
  br i1 %.not7334, label %1852, label %1850

1850:                                             ; preds = %1848
  %1851 = add nuw nsw i64 %1699, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1851, i32 noundef %1849)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1849) #5
  br label %1852

1852:                                             ; preds = %1850, %1848
  %1853 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1789)
  %.not7335 = icmp eq i32 %1853, 0
  br i1 %.not7335, label %1855, label %1854

1854:                                             ; preds = %1852
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1792, i32 noundef %1853)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1853) #5
  br label %1855

1855:                                             ; preds = %1854, %1852
  %1856 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1634)
  %.not7336 = icmp eq i32 %1856, 0
  br i1 %.not7336, label %1859, label %1857

1857:                                             ; preds = %1855
  %1858 = add nuw nsw i64 %1634, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1858, i32 noundef %1856)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1856) #5
  br label %1859

1859:                                             ; preds = %1857, %1855
  %1860 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1709)
  %.not7337 = icmp eq i32 %1860, 0
  br i1 %.not7337, label %1862, label %1861

1861:                                             ; preds = %1859
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1707, i32 noundef %1860)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1860) #5
  br label %1862

1862:                                             ; preds = %1861, %1859
  %1863 = add i32 %10, -2100
  %1864 = add nuw nsw i64 %157, 708
  %1865 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1864)
  %.not7338 = icmp eq i32 %1865, 0
  br i1 %.not7338, label %1868, label %1866

1866:                                             ; preds = %1862
  %1867 = add nuw nsw i64 %157, 712
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1867, i32 noundef %1865)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1865) #5
  br label %1868

1868:                                             ; preds = %1866, %1862
  %1869 = add nuw nsw i64 %157, 692
  %1870 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1869)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1870) #5
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef %0, i32 noundef %1863) #5
  %1871 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1583)
  %1872 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1590)
  %1873 = icmp eq i32 %1871, %1872
  br i1 %1873, label %1885, label %.preheader7454

.preheader7454:                                   ; preds = %1868, %.preheader7454
  %.21 = phi i32 [ %1876, %.preheader7454 ], [ %1871, %1868 ]
  %1874 = zext i32 %.21 to i64
  %1875 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1874)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1875) #5
  %1876 = add i32 %.21, 4
  %.not7339 = icmp eq i32 %1876, %1872
  br i1 %.not7339, label %1877, label %.preheader7454

1877:                                             ; preds = %.preheader7454
  %1878 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1590)
  %1879 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1583)
  %1880 = icmp eq i32 %1878, %1879
  br i1 %1880, label %1885, label %1881

1881:                                             ; preds = %1877
  %reass.sub = sub i32 %1879, %1878
  %1882 = add i32 %reass.sub, 3
  %1883 = and i32 %1882, -4
  %1884 = add i32 %1883, %1878
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1590, i32 noundef %1884)
  br label %1885

1885:                                             ; preds = %1877, %1868, %1881
  %1886 = add nuw nsw i64 %157, 668
  %1887 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1886)
  %.not7340 = icmp eq i32 %1887, 0
  br i1 %.not7340, label %1889, label %1888

1888:                                             ; preds = %1885
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1887) #5
  br label %1889

1889:                                             ; preds = %1888, %1885
  %1890 = add i32 %10, -2152
  %1891 = add nuw nsw i64 %157, 656
  %1892 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1891)
  %.not7341 = icmp eq i32 %1892, 0
  br i1 %.not7341, label %1895, label %1893

1893:                                             ; preds = %1889
  %1894 = add nuw nsw i64 %157, 660
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1894, i32 noundef %1892)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1892) #5
  br label %1895

1895:                                             ; preds = %1893, %1889
  %1896 = add nuw nsw i64 %157, 640
  %1897 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1896)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1897) #5
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef %0, i32 noundef %1890) #5
  %1898 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1534)
  %1899 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1541)
  %1900 = icmp eq i32 %1898, %1899
  br i1 %1900, label %1912, label %.preheader7453

.preheader7453:                                   ; preds = %1895, %.preheader7453
  %.22 = phi i32 [ %1903, %.preheader7453 ], [ %1898, %1895 ]
  %1901 = zext i32 %.22 to i64
  %1902 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1901)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1902) #5
  %1903 = add i32 %.22, 4
  %.not7342 = icmp eq i32 %1903, %1899
  br i1 %.not7342, label %1904, label %.preheader7453

1904:                                             ; preds = %.preheader7453
  %1905 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1541)
  %1906 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1534)
  %1907 = icmp eq i32 %1905, %1906
  br i1 %1907, label %1912, label %1908

1908:                                             ; preds = %1904
  %reass.sub7485 = sub i32 %1906, %1905
  %1909 = add i32 %reass.sub7485, 3
  %1910 = and i32 %1909, -4
  %1911 = add i32 %1910, %1905
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1541, i32 noundef %1911)
  br label %1912

1912:                                             ; preds = %1904, %1895, %1908
  %1913 = add nuw nsw i64 %157, 616
  %1914 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1913)
  %.not7343 = icmp eq i32 %1914, 0
  br i1 %.not7343, label %1916, label %1915

1915:                                             ; preds = %1912
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1914) #5
  br label %1916

1916:                                             ; preds = %1915, %1912
  %1917 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1640)
  %.not7344 = icmp eq i32 %1917, 0
  br i1 %.not7344, label %1919, label %1918

1918:                                             ; preds = %1916
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1638, i32 noundef %1917)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1917) #5
  br label %1919

1919:                                             ; preds = %1918, %1916
  %1920 = add i32 %10, -2216
  %1921 = add nuw nsw i64 %157, 592
  %1922 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1921)
  %.not7345 = icmp eq i32 %1922, 0
  br i1 %.not7345, label %1925, label %1923

1923:                                             ; preds = %1919
  %1924 = add nuw nsw i64 %157, 596
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1924, i32 noundef %1922)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1922) #5
  br label %1925

1925:                                             ; preds = %1923, %1919
  %1926 = add nuw nsw i64 %157, 576
  %1927 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1926)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1927) #5
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fdeque_base0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cstd0x3A0x3A_0x5F20x3A0x3Abasic_string0x3Cchar0x2C0x20std0x3A0x3A_0x5F20x3A0x3Achar_traits0x3Cchar0x3E0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cchar0x3E0x3E0x3E0x3E0x3A0x3Aclear0x280x29(ptr noundef %0, i32 noundef %1920) #5
  %1928 = add nuw nsw i64 %157, 556
  %1929 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1928)
  %1930 = add nuw nsw i64 %157, 560
  %1931 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1930)
  %1932 = icmp eq i32 %1929, %1931
  br i1 %1932, label %1944, label %.preheader7452

.preheader7452:                                   ; preds = %1925, %.preheader7452
  %.23 = phi i32 [ %1935, %.preheader7452 ], [ %1929, %1925 ]
  %1933 = zext i32 %.23 to i64
  %1934 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1933)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1934) #5
  %1935 = add i32 %.23, 4
  %.not7346 = icmp eq i32 %1935, %1931
  br i1 %.not7346, label %1936, label %.preheader7452

1936:                                             ; preds = %.preheader7452
  %1937 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1930)
  %1938 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1928)
  %1939 = icmp eq i32 %1937, %1938
  br i1 %1939, label %1944, label %1940

1940:                                             ; preds = %1936
  %reass.sub7486 = sub i32 %1938, %1937
  %1941 = add i32 %reass.sub7486, 3
  %1942 = and i32 %1941, -4
  %1943 = add i32 %1942, %1937
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1930, i32 noundef %1943)
  br label %1944

1944:                                             ; preds = %1936, %1925, %1940
  %1945 = add nuw nsw i64 %157, 552
  %1946 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1945)
  %.not7347 = icmp eq i32 %1946, 0
  br i1 %.not7347, label %1948, label %1947

1947:                                             ; preds = %1944
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1946) #5
  br label %1948

1948:                                             ; preds = %1947, %1944
  %1949 = add nuw nsw i64 %157, 540
  %1950 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1949)
  %.not7348 = icmp eq i32 %1950, 0
  br i1 %.not7348, label %1952, label %1951

1951:                                             ; preds = %1948
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1150, i32 noundef %1950)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %1950) #5
  br label %1952

1952:                                             ; preds = %1951, %1948
  %1953 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1235)
  %.not7349 = icmp eq i32 %1237, %1953
  br i1 %.not7349, label %.loopexit7451, label %.preheader7449

.preheader7449:                                   ; preds = %1952
  %1954 = getelementptr inbounds i8, ptr %0, i64 80
  %1955 = getelementptr inbounds i8, ptr %0, i64 92
  %1956 = load ptr, ptr @w2c_hermes_t5, align 8
  %1957 = add nuw nsw i64 %13, 504
  %1958 = add nuw nsw i64 %13, 516
  %1959 = add nuw nsw i64 %157, 32
  %1960 = add nuw nsw i64 %157, 1752
  %1961 = add i32 %10, -2736
  %1962 = add nuw nsw i64 %157, 120
  %1963 = add nuw nsw i64 %157, 2188
  %1964 = add nuw nsw i64 %157, 1744
  %1965 = add i32 %10, -1024
  %1966 = add nuw nsw i64 %157, 1736
  %1967 = add i32 %10, -1032
  %1968 = add nuw nsw i64 %157, 24
  %1969 = add i32 %10, -2744
  br label %1970

1970:                                             ; preds = %.preheader7449, %2071
  %.24 = phi i32 [ %2073, %2071 ], [ %1953, %.preheader7449 ]
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1144, i32 noundef %.24)
  %1971 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %435)
  %.not7350 = icmp eq i32 %1971, 0
  br i1 %.not7350, label %.loopexit7444, label %1972

1972:                                             ; preds = %1970
  %1973 = zext i32 %1971 to i64
  %1974 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1973)
  %1975 = zext i32 %1974 to i64
  %1976 = add nuw nsw i64 %1975, 24
  %1977 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1976)
  %1978 = load i32, ptr %1955, align 4, !tbaa !15
  %1979 = icmp ult i32 %1977, %1978
  br i1 %1979, label %1980, label %.critedge7433, !prof !16

1980:                                             ; preds = %1972
  %1981 = load ptr, ptr %1954, align 8, !tbaa !17
  %1982 = zext i32 %1977 to i64
  %1983 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1981, i64 %1982
  %1984 = getelementptr inbounds i8, ptr %1983, i64 8
  %1985 = load ptr, ptr %1984, align 8, !tbaa !18
  %.not7351 = icmp eq ptr %1985, null
  br i1 %.not7351, label %.critedge7433, label %1986, !prof !20

1986:                                             ; preds = %1980
  %1987 = load ptr, ptr %1983, align 8, !tbaa !22
  %1988 = tail call zeroext i1 @func_types_eq(ptr noundef %1956, ptr noundef %1987)
  br i1 %1988, label %1989, label %.critedge7433, !prof !16

.critedge7433:                                    ; preds = %1980, %1972, %1986
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

1989:                                             ; preds = %1986
  %1990 = load ptr, ptr %1954, align 8, !tbaa !17
  %1991 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %1990, i64 %1982
  %1992 = getelementptr inbounds i8, ptr %1991, i64 8
  %1993 = load ptr, ptr %1992, align 8, !tbaa !18
  %1994 = getelementptr inbounds i8, ptr %1991, i64 16
  %1995 = load ptr, ptr %1994, align 8, !tbaa !23
  %1996 = tail call i32 %1993(ptr noundef %1995, i32 noundef %1971, i32 noundef %546) #5
  %.not7352 = icmp eq i32 %1996, 0
  br i1 %.not7352, label %._crit_edge7503, label %1997

._crit_edge7503:                                  ; preds = %1989
  %.pre7510 = zext i32 %.24 to i64
  br label %2071

1997:                                             ; preds = %1989
  %1998 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddFunction0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %1216, i32 noundef %.24)
  %1999 = icmp eq i32 %.24, %3
  br i1 %1999, label %2000, label %2001

2000:                                             ; preds = %1997
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %176, i32 noundef %1998)
  br label %2001

2001:                                             ; preds = %2000, %1997
  %2002 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1957)
  %2003 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1958)
  %.not7353 = icmp eq i32 %2003, 0
  br i1 %.not7353, label %.loopexit7447, label %2004

2004:                                             ; preds = %2001
  switch i32 %.24, label %2006 [
    i32 -8, label %2005
    i32 -4, label %2005
  ]

2005:                                             ; preds = %2004, %2004
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef nonnull %0, i32 noundef 204136, i32 noundef 81389, i32 noundef 597, i32 noundef 48929) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2006:                                             ; preds = %2004
  %2007 = add i32 %2003, -1
  %2008 = lshr i32 %.24, 4
  %2009 = lshr i32 %.24, 9
  %2010 = xor i32 %2008, %2009
  %2011 = and i32 %2007, %2010
  %2012 = shl nuw nsw i32 %2011, 3
  %2013 = add i32 %2012, %2002
  %2014 = zext i32 %2013 to i64
  %2015 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2014)
  %2016 = icmp eq i32 %2015, %.24
  br i1 %2016, label %.loopexit7448, label %.preheader

.preheader:                                       ; preds = %2006, %2018
  %.16989 = phi i32 [ %2025, %2018 ], [ %2015, %2006 ]
  %.26987 = phi i32 [ %2021, %2018 ], [ %2011, %2006 ]
  %.06979 = phi i32 [ %2020, %2018 ], [ 1, %2006 ]
  %2017 = icmp eq i32 %.16989, -4
  br i1 %2017, label %.loopexit7447, label %2018

2018:                                             ; preds = %.preheader
  %2019 = add i32 %.06979, %.26987
  %2020 = add i32 %.06979, 1
  %2021 = and i32 %2019, %2007
  %2022 = shl i32 %2021, 3
  %2023 = add i32 %2022, %2002
  %2024 = zext i32 %2023 to i64
  %2025 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2024)
  %.not7354 = icmp eq i32 %2025, %.24
  br i1 %.not7354, label %.loopexit7448, label %.preheader

.loopexit7447:                                    ; preds = %.preheader, %2001
  %2026 = shl i32 %2003, 3
  %2027 = add i32 %2026, %2002
  br label %.loopexit7448

.loopexit7448:                                    ; preds = %2018, %2006, %.loopexit7447
  %.77005 = phi i32 [ %2027, %.loopexit7447 ], [ %2013, %2006 ], [ %2023, %2018 ]
  %2028 = shl i32 %2003, 3
  %2029 = add i32 %2028, %2002
  %2030 = icmp eq i32 %.77005, %2029
  br i1 %2030, label %2046, label %2031

2031:                                             ; preds = %.loopexit7448
  %2032 = zext i32 %.77005 to i64
  %2033 = add nuw nsw i64 %2032, 4
  %2034 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2033)
  %.not7355 = icmp eq i32 %2034, 0
  br i1 %.not7355, label %2046, label %2035

2035:                                             ; preds = %2031
  %2036 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %916)
  %.not7356 = icmp eq i32 %2036, 0
  %2037 = zext i32 %2034 to i64
  br i1 %.not7356, label %2040, label %2038

2038:                                             ; preds = %2035
  %2039 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2037)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddCJSModuleStatic0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %1216, i32 noundef %2039, i32 noundef %1998)
  br label %2046

2040:                                             ; preds = %2035
  %2041 = add nuw nsw i64 %2037, 4
  %2042 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2041)
  %2043 = zext i32 %2042 to i64
  %2044 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %2043)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1959, i64 noundef %2044)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1960, i64 noundef %2044)
  %2045 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AgetStringID0x28llvh0x3A0x3AStringRef0x290x20const(ptr noundef %0, i32 noundef %1216, i32 noundef %1961)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddCJSModule0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %1216, i32 noundef %1998, i32 noundef %2045)
  br label %2046

2046:                                             ; preds = %2031, %.loopexit7448, %2040, %2038
  %2047 = zext i32 %.24 to i64
  %2048 = add nuw nsw i64 %2047, 40
  %2049 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %2048)
  %.not7357 = icmp eq i32 %2049, 0
  br i1 %.not7357, label %2050, label %2071

2050:                                             ; preds = %2046
  tail call void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetSourceRepresentationStr0x280x290x20const(ptr noundef %0, i32 noundef %546, i32 noundef %.24) #5
  %2051 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1147)
  %.not7358 = icmp eq i32 %2051, 0
  br i1 %.not7358, label %2071, label %2052

2052:                                             ; preds = %2050
  %2053 = tail call i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AStringRef0x3E0x28llvh0x3A0x3AStringRef0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x20const0x2A0x260x290x20const(ptr noundef %0, i32 noundef %769, i32 noundef %546, i32 noundef %.pre-phi7495) #5
  %.not7359 = icmp eq i32 %2053, 0
  br i1 %.not7359, label %2064, label %2054

2054:                                             ; preds = %2052
  %2055 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1962)
  %2056 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %258)
  %2057 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1963)
  %2058 = mul i32 %2057, 52
  %2059 = add i32 %2058, %2056
  %2060 = icmp eq i32 %2055, %2059
  br i1 %2060, label %2064, label %2061

2061:                                             ; preds = %2054
  %2062 = zext i32 %2055 to i64
  %2063 = add nuw nsw i64 %2062, 8
  br label %2066

2064:                                             ; preds = %2054, %2052
  %2065 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1147)
  %.not7360 = icmp eq i32 %2065, 0
  br i1 %.not7360, label %2470, label %2066

2066:                                             ; preds = %2064, %2061
  %.sink7574 = phi i64 [ %2063, %2061 ], [ %1144, %2064 ]
  %.sink7572 = phi i64 [ %1964, %2061 ], [ %1966, %2064 ]
  %.3 = phi i32 [ %1965, %2061 ], [ %1967, %2064 ]
  %2067 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %.sink7574)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %.sink7572, i64 noundef %2067)
  %2068 = zext i32 %.3 to i64
  %2069 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %2068)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1968, i64 noundef %2069)
  %2070 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AgetStringID0x28llvh0x3A0x3AStringRef0x290x20const(ptr noundef %0, i32 noundef %1216, i32 noundef %1969)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AaddFunctionSource0x28unsigned0x20int0x2C0x20unsigned0x20int0x29(ptr noundef %0, i32 noundef %1216, i32 noundef %1998, i32 noundef %2070)
  br label %2071

2071:                                             ; preds = %._crit_edge7503, %2050, %2046, %2066
  %.pre-phi7511 = phi i64 [ %.pre7510, %._crit_edge7503 ], [ %2047, %2050 ], [ %2047, %2046 ], [ %2047, %2066 ]
  %2072 = add nuw nsw i64 %.pre-phi7511, 4
  %2073 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2072)
  %.not7361 = icmp eq i32 %2073, %1237
  br i1 %.not7361, label %.loopexit7451, label %1970

.loopexit7451:                                    ; preds = %2071, %1952
  %2074 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %176)
  %2075 = icmp eq i32 %2074, -1
  br i1 %2075, label %2471, label %2076

2076:                                             ; preds = %.loopexit7451
  %2077 = add i32 %10, -1040
  %2078 = zext i32 %2077 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2078, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1791, i64 noundef 0)
  %2079 = zext i32 %2 to i64
  %2080 = add nuw nsw i64 %2079, 44
  %2081 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2080)
  %2082 = add nuw nsw i64 %157, 120
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2082, i32 noundef 0)
  %2083 = add nuw nsw i64 %157, 124
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %2083, i32 noundef 1)
  %2084 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %2082)
  %2085 = add nuw nsw i64 %157, 16
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2085, i64 noundef %2084)
  %2086 = add i32 %10, -2752
  tail call void @w2c_hermes_hermes0x3A0x3AFunctionScopeAnalysis0x3A0x3AcalculateFunctionScopeData0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20llvh0x3A0x3AOptional0x3Cint0x3E0x29(ptr noundef %0, i32 noundef %546, i32 noundef %1825, i32 noundef %2081, i32 noundef %2086) #5
  %2087 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1232)
  %.not7362 = icmp eq i32 %2087, 0
  br i1 %.not7362, label %2088, label %2472

2088:                                             ; preds = %2076
  %2089 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1144)
  %.not7363 = icmp eq i32 %2089, 0
  br i1 %.not7363, label %2090, label %2472

2090:                                             ; preds = %2088
  %2091 = add i32 %10, -1060
  %2092 = zext i32 %2091 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2092, i32 noundef -1)
  %2093 = add i32 %10, -1072
  %2094 = zext i32 %2093 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2094, i32 noundef -1)
  %2095 = add i32 %10, -1084
  %2096 = zext i32 %2095 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2096, i32 noundef -1)
  %2097 = add nuw nsw i64 %157, 1672
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2097, i32 noundef -1)
  %2098 = add nuw nsw i64 %157, 1664
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2098, i64 noundef 1)
  %2099 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1235)
  %.not7364 = icmp eq i32 %1237, %2099
  br i1 %.not7364, label %.loopexit7446, label %2100

2100:                                             ; preds = %2090
  %2101 = add i32 %10, -2428
  %2102 = add i32 %10, -2452
  %2103 = add i32 %10, -2488
  %2104 = add i32 %10, -2584
  %2105 = add i32 %10, -2628
  %2106 = add i32 %10, -2352
  %2107 = add i32 %10, -1164
  %2108 = add i32 %10, -2060
  %2109 = or i32 %546, 4
  %2110 = getelementptr inbounds i8, ptr %0, i64 80
  %2111 = getelementptr inbounds i8, ptr %0, i64 92
  %2112 = load ptr, ptr @w2c_hermes_t5, align 8
  %2113 = zext i32 %2109 to i64
  %2114 = add nuw nsw i64 %2113, 24
  %2115 = add nuw nsw i64 %2113, 16
  %2116 = add nuw nsw i64 %2113, 8
  %2117 = add nuw nsw i64 %157, 700
  %2118 = add nuw nsw i64 %157, 696
  %2119 = zext i32 %2107 to i64
  %2120 = add nuw nsw i64 %2119, 24
  %2121 = add nuw nsw i64 %2119, 16
  %2122 = add nuw nsw i64 %2119, 8
  %2123 = add nuw nsw i64 %157, 1648
  %2124 = add nuw nsw i64 %157, 1640
  %2125 = add nuw nsw i64 %157, 1652
  %2126 = add nuw nsw i64 %157, 1632
  %2127 = add nuw nsw i64 %157, 408
  %2128 = add nuw nsw i64 %157, 404
  %2129 = add nuw nsw i64 %157, 412
  %2130 = add nuw nsw i64 %157, 400
  %2131 = add nuw nsw i64 %157, 396
  %2132 = add nuw nsw i64 %157, 8
  %2133 = add i32 %10, -2760
  %2134 = add nuw nsw i64 %13, 28
  %2135 = add nuw nsw i64 %.pre-phi7507, 7
  %2136 = add nuw nsw i64 %157, 1628
  %2137 = add nuw nsw i64 %157, 1656
  %2138 = add i32 %10, -16
  %2139 = add nuw nsw i64 %157, 136
  %2140 = add nuw nsw i64 %157, 132
  %2141 = add nuw nsw i64 %157, 128
  %2142 = zext i32 %2105 to i64
  %2143 = add nuw nsw i64 %2142, 24
  %2144 = add nuw nsw i64 %2142, 16
  %2145 = add nuw nsw i64 %2142, 8
  %2146 = add nuw nsw i64 %157, 176
  %2147 = add nuw nsw i64 %157, 172
  %2148 = zext i32 %2103 to i64
  %2149 = add nuw nsw i64 %2148, 24
  %2150 = add nuw nsw i64 %2148, 16
  %2151 = add nuw nsw i64 %2148, 8
  %2152 = add nuw nsw i64 %157, 312
  %2153 = zext i32 %2102 to i64
  %2154 = add nuw nsw i64 %2153, 14
  %2155 = add nuw nsw i64 %2153, 8
  %2156 = zext i32 %2101 to i64
  %2157 = add nuw nsw i64 %2156, 24
  %2158 = add nuw nsw i64 %2156, 16
  %2159 = add nuw nsw i64 %2156, 8
  %2160 = add nuw nsw i64 %157, 376
  %2161 = add nuw nsw i64 %157, 372
  %2162 = add nuw nsw i64 %157, 2764
  %2163 = add nuw nsw i64 %157, 332
  %2164 = add nuw nsw i64 %157, 500
  br label %2165

2165:                                             ; preds = %2370, %2100
  %.67042 = phi i32 [ %2099, %2100 ], [ %2372, %2370 ]
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1144, i32 noundef %.67042)
  %2166 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %435)
  %.not7365 = icmp eq i32 %2166, 0
  br i1 %.not7365, label %.loopexit7444, label %2167

2167:                                             ; preds = %2165
  %2168 = zext i32 %2166 to i64
  %2169 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2168)
  %2170 = zext i32 %2169 to i64
  %2171 = add nuw nsw i64 %2170, 24
  %2172 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2171)
  %2173 = load i32, ptr %2111, align 4, !tbaa !15
  %2174 = icmp ult i32 %2172, %2173
  br i1 %2174, label %2175, label %.critedge7435, !prof !16

2175:                                             ; preds = %2167
  %2176 = load ptr, ptr %2110, align 8, !tbaa !17
  %2177 = zext i32 %2172 to i64
  %2178 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2176, i64 %2177
  %2179 = getelementptr inbounds i8, ptr %2178, i64 8
  %2180 = load ptr, ptr %2179, align 8, !tbaa !18
  %.not7366 = icmp eq ptr %2180, null
  br i1 %.not7366, label %.critedge7435, label %2181, !prof !20

2181:                                             ; preds = %2175
  %2182 = load ptr, ptr %2178, align 8, !tbaa !22
  %2183 = tail call zeroext i1 @func_types_eq(ptr noundef %2112, ptr noundef %2182)
  br i1 %2183, label %2184, label %.critedge7435, !prof !16

.critedge7435:                                    ; preds = %2175, %2167, %2181
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

2184:                                             ; preds = %2181
  %2185 = load ptr, ptr %2110, align 8, !tbaa !17
  %2186 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2185, i64 %2177
  %2187 = getelementptr inbounds i8, ptr %2186, i64 8
  %2188 = load ptr, ptr %2187, align 8, !tbaa !18
  %2189 = getelementptr inbounds i8, ptr %2186, i64 16
  %2190 = load ptr, ptr %2189, align 8, !tbaa !23
  %2191 = tail call i32 %2188(ptr noundef %2190, i32 noundef %2166, i32 noundef %546) #5
  %.not7367 = icmp eq i32 %2191, 0
  br i1 %.not7367, label %._crit_edge7504, label %2192

._crit_edge7504:                                  ; preds = %2184
  %.pre7508 = zext i32 %.67042 to i64
  br label %2370

2192:                                             ; preds = %2184
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1525, i32 noundef 0)
  %2193 = zext i32 %.67042 to i64
  %2194 = add nuw nsw i64 %2193, 144
  %2195 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2194)
  %.not7368 = icmp eq i32 %2195, 0
  br i1 %.not7368, label %2216, label %2196

2196:                                             ; preds = %2192
  %2197 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef 124) #5
  %2198 = zext i32 %2197 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2198, i64 noundef 0)
  %2199 = add nuw nsw i64 %2198, 20
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2199, i64 noundef 0)
  %2200 = add nuw nsw i64 %2198, 112
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2200, i64 noundef 0)
  %2201 = add nuw nsw i64 %2198, 100
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %2201, i32 noundef 0)
  %2202 = add nuw nsw i64 %2198, 68
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2202, i64 noundef 0)
  %2203 = add nuw nsw i64 %2198, 104
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2203, i32 noundef 0)
  %2204 = add nuw nsw i64 %2198, 5
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2204, i64 noundef 0)
  %2205 = add nuw nsw i64 %2198, 28
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2205, i64 noundef 0)
  %2206 = add nuw nsw i64 %2198, 36
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2206, i64 noundef 0)
  %2207 = add nuw nsw i64 %2198, 44
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2207, i64 noundef 0)
  %2208 = add nuw nsw i64 %2198, 52
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2208, i64 noundef 0)
  %2209 = add nuw nsw i64 %2198, 120
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2209, i32 noundef 0)
  %2210 = add nuw nsw i64 %2198, 60
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2210, i64 noundef -4294967296)
  %2211 = add nuw nsw i64 %2198, 76
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2211, i64 noundef 0)
  %2212 = add nuw nsw i64 %2198, 84
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2212, i64 noundef 0)
  %2213 = add nuw nsw i64 %2198, 89
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2213, i64 noundef 0)
  %2214 = add nuw nsw i64 %2198, 107
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2214, i32 noundef 0)
  %2215 = add nuw nsw i64 %2198, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2215, i32 noundef %1216)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1525, i32 noundef %2197)
  br label %2355

2216:                                             ; preds = %2192
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2113, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2114, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2115, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2116, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2117, i64 noundef 137438953472)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2118, i32 noundef %2108)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %1930, i64 noundef 137438953472)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1928, i32 noundef %1161)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2120, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2121, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2122, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2119, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2123, i32 noundef %.67042)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2124, i64 noundef -1)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2125, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1144, i32 noundef 271020)
  %2217 = tail call i32 @w2c_hermes_hermes0x3A0x3AScopeRegisterAnalysis0x3A0x3AScopeRegisterAnalysis0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3ARegisterAllocator0x260x29(ptr noundef nonnull %0, i32 noundef %1828, i32 noundef %.67042, i32 noundef %546) #5
  %2218 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1214)
  %.not7369 = icmp eq i32 %2218, 0
  br i1 %.not7369, label %2219, label %2220

2219:                                             ; preds = %2216
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2124, i64 noundef 10485760)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2126, i32 noundef 250)
  br label %2220

2220:                                             ; preds = %2219, %2216
  %2221 = tail call i32 @w2c_hermes_hermes0x3A0x3APostOrderAnalysis0x3A0x3APostOrderAnalysis0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef nonnull %0, i32 noundef %1826, i32 noundef %.67042) #5
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2127, i64 noundef 68719476736)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2128, i32 noundef %2106)
  %2222 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1811)
  %2223 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1807)
  %2224 = sub i32 %2222, %2223
  %2225 = ashr i32 %2224, 2
  %2226 = icmp ugt i32 %2224, 64
  br i1 %2226, label %2227, label %2229

2227:                                             ; preds = %2220
  tail call void @w2c_hermes_llvh0x3A0x3ASmallVectorBase0x3A0x3Agrow_pod0x28void0x2A0x2C0x20unsigned0x20long0x2C0x20unsigned0x20long0x29(ptr noundef nonnull %0, i32 noundef %1578, i32 noundef %2106, i32 noundef %2225, i32 noundef 4) #5
  %2228 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2127)
  br label %2229

2229:                                             ; preds = %2227, %2220
  %.16984 = phi i32 [ %2228, %2227 ], [ 0, %2220 ]
  %.not7370 = icmp eq i32 %2222, %2223
  br i1 %.not7370, label %.loopexit7443, label %2230

2230:                                             ; preds = %2229
  %2231 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2128)
  %2232 = shl i32 %.16984, 2
  %2233 = add i32 %2231, %2232
  br label %2234

2234:                                             ; preds = %2234, %2230
  %.25 = phi i32 [ %2222, %2230 ], [ %2235, %2234 ]
  %.117017 = phi i32 [ %2233, %2230 ], [ %2239, %2234 ]
  %2235 = add i32 %.25, -4
  %2236 = zext i32 %2235 to i64
  %2237 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2236)
  %2238 = zext i32 %.117017 to i64
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2238, i32 noundef %2237)
  %2239 = add i32 %.117017, 4
  %.not7371 = icmp eq i32 %2235, %2223
  br i1 %.not7371, label %.loopexit7443, label %2234

.loopexit7443:                                    ; preds = %2234, %2229
  %2240 = add i32 %.16984, %2225
  %2241 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2129)
  %2242 = icmp ugt i32 %2240, %2241
  br i1 %2242, label %2473, label %2243

2243:                                             ; preds = %.loopexit7443
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2130, i32 noundef %2240)
  %2244 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2128)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2131, i32 noundef %2244)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2127, i32 noundef %2240)
  %2245 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %2131)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2132, i64 noundef %2245)
  tail call void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Aallocate0x28llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ABasicBlock0x2A0x3E0x29(ptr noundef %0, i32 noundef %546, i32 noundef %2133) #5
  %2246 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.pre-phi7507)
  %2247 = icmp eq i32 %2246, 7
  br i1 %2247, label %2248, label %2249

2248:                                             ; preds = %2243
  tail call void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Adump0x280x29(ptr noundef %0, i32 noundef %546) #5
  br label %2249

2249:                                             ; preds = %2248, %2243
  %2250 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2134)
  %2251 = add i32 %2250, 128
  %2252 = tail call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3APassManager0x28hermes0x3A0x3ACodeGenerationSettings0x20const0x260x29(ptr noundef %0, i32 noundef %1827, i32 noundef %2251) #5
  %2253 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #5
  %2254 = zext i32 %2253 to i64
  %2255 = add nuw nsw i64 %2254, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2255, i32 noundef 41299)
  %2256 = add nuw nsw i64 %2254, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2256, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2254, i32 noundef 270584)
  %2257 = add nuw nsw i64 %2254, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2257, i32 noundef 16)
  %2258 = add nuw nsw i64 %2254, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2258, i32 noundef %546)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2253) #5
  %2259 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #5
  %2260 = zext i32 %2259 to i64
  %2261 = add nuw nsw i64 %2260, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2261, i32 noundef 43306)
  %2262 = add nuw nsw i64 %2260, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2262, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2260, i32 noundef 270404)
  %2263 = add nuw nsw i64 %2260, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2263, i32 noundef 10)
  %2264 = add nuw nsw i64 %2260, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2264, i32 noundef %546)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2259) #5
  %2265 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %1214)
  %.not7372 = icmp eq i32 %2265, 0
  br i1 %.not7372, label %2285, label %2266

2266:                                             ; preds = %2249
  %2267 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #5
  %2268 = zext i32 %2267 to i64
  %2269 = add nuw nsw i64 %2268, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2269, i32 noundef 68954)
  %2270 = add nuw nsw i64 %2268, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2270, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2268, i32 noundef 271128)
  %2271 = add nuw nsw i64 %2268, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2271, i32 noundef 14)
  %2272 = add nuw nsw i64 %2268, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2272, i32 noundef %546)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2267) #5
  %2273 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #5
  %2274 = zext i32 %2273 to i64
  %2275 = add nuw nsw i64 %2274, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2275, i32 noundef 44089)
  %2276 = add nuw nsw i64 %2274, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2276, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2274, i32 noundef 270424)
  %2277 = add nuw nsw i64 %2274, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2277, i32 noundef 19)
  %2278 = add nuw nsw i64 %2274, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2278, i32 noundef %546)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2273) #5
  %2279 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #5
  %2280 = zext i32 %2279 to i64
  %2281 = add nuw nsw i64 %2280, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2281, i32 noundef 87383)
  %2282 = add nuw nsw i64 %2280, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2282, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2280, i32 noundef 270444)
  %2283 = add nuw nsw i64 %2280, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2283, i32 noundef 26)
  %2284 = add nuw nsw i64 %2280, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2284, i32 noundef %546)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2279) #5
  br label %2285

2285:                                             ; preds = %2266, %2249
  %2286 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 20) #5
  %2287 = zext i32 %2286 to i64
  %2288 = add nuw nsw i64 %2287, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2288, i32 noundef 41592)
  %2289 = add nuw nsw i64 %2287, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2289, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2287, i32 noundef 270464)
  %2290 = add nuw nsw i64 %2287, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2290, i32 noundef 14)
  %2291 = add nuw nsw i64 %2287, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2291, i32 noundef %546)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2286) #5
  %2292 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %2135)
  %.not7373 = icmp eq i32 %2292, 0
  br i1 %.not7373, label %2299, label %2293

2293:                                             ; preds = %2285
  %2294 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 16) #5
  %2295 = zext i32 %2294 to i64
  %2296 = add nuw nsw i64 %2295, 8
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2296, i32 noundef 25574)
  %2297 = add nuw nsw i64 %2295, 4
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2297, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2295, i32 noundef 271148)
  %2298 = add nuw nsw i64 %2295, 12
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2298, i32 noundef 18)
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %2294) #5
  br label %2299

2299:                                             ; preds = %2293, %2285
  tail call void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef %0, i32 noundef %2252, i32 noundef %.67042) #5
  %2300 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.pre-phi7507)
  %2301 = icmp eq i32 %2300, 8
  br i1 %2301, label %2302, label %2304

2302:                                             ; preds = %2299
  tail call void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Adump0x280x29(ptr noundef %0, i32 noundef %546) #5
  %2303 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.pre-phi7507)
  br label %2304

2304:                                             ; preds = %2302, %2299
  %.26 = phi i32 [ %2303, %2302 ], [ %2300, %2299 ]
  %2305 = icmp eq i32 %.26, 9
  br i1 %2305, label %2306, label %2308

2306:                                             ; preds = %2304
  %2307 = tail call i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef %0) #5
  tail call void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef %0, i32 noundef %.67042, i32 noundef %2307) #5
  br label %2308

2308:                                             ; preds = %2306, %2304
  %2309 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2125)
  %2310 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2136)
  %2311 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2137)
  %2312 = tail call i32 @w2c_hermes_operator0x20new0x28unsigned0x20long0x29(ptr noundef %0, i32 noundef 124) #5
  %2313 = zext i32 %2312 to i64
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2313, i64 noundef 0)
  %2314 = add nuw nsw i64 %2313, 36
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2314, i64 noundef 0)
  %2315 = add nuw nsw i64 %2313, 20
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2315, i64 noundef 0)
  %2316 = add nuw nsw i64 %2313, 112
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2316, i64 noundef 0)
  %2317 = add nuw nsw i64 %2313, 100
  tail call void @i32_store8(ptr noundef nonnull %12, i64 noundef %2317, i32 noundef 0)
  %2318 = add nuw nsw i64 %2313, 68
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2318, i64 noundef 0)
  %2319 = add nuw nsw i64 %2313, 5
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2319, i64 noundef 0)
  %2320 = add i32 %2310, %2309
  %2321 = add i32 %2320, %2311
  %2322 = add nuw nsw i64 %2313, 32
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2322, i32 noundef %2321)
  %2323 = add nuw nsw i64 %2313, 28
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2323, i32 noundef 0)
  %2324 = add nuw nsw i64 %2313, 44
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2324, i64 noundef 0)
  %2325 = add nuw nsw i64 %2313, 52
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2325, i64 noundef 0)
  %2326 = add nuw nsw i64 %2313, 120
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2326, i32 noundef 0)
  %2327 = add nuw nsw i64 %2313, 60
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2327, i64 noundef -4294967296)
  %2328 = add nuw nsw i64 %2313, 76
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2328, i64 noundef 0)
  %2329 = add nuw nsw i64 %2313, 84
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2329, i64 noundef 0)
  %2330 = add nuw nsw i64 %2313, 89
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2330, i64 noundef 0)
  %2331 = add nuw nsw i64 %2313, 16
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2331, i32 noundef %1216)
  %2332 = add nuw nsw i64 %2313, 107
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2332, i32 noundef 0)
  %2333 = add nuw nsw i64 %2313, 104
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2333, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2082, i32 noundef 0)
  %2334 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1525)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1525, i32 noundef %2312)
  %.not7374 = icmp eq i32 %2334, 0
  br i1 %.not7374, label %2338, label %2335

2335:                                             ; preds = %2308
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef %0, i32 noundef %2138, i32 noundef %2334) #5
  %2336 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2082)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2082, i32 noundef 0)
  %.not7375 = icmp eq i32 %2336, 0
  br i1 %.not7375, label %2338, label %2337

2337:                                             ; preds = %2335
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef %0, i32 noundef %.pre-phi7495, i32 noundef %2336) #5
  br label %2338

2338:                                             ; preds = %2335, %2308, %2337
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2139, i32 noundef %2217)
  %2339 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1525)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2083, i32 noundef %2339)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2082, i32 noundef %.67042)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2140, i32 noundef %1825)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2141, i32 noundef %546)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2143, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2144, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2145, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2142, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2146, i64 noundef 34359738368)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2147, i32 noundef %2104)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2149, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2150, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2151, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2148, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2152, i32 noundef %4)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2154, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2155, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2153, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2157, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2158, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2159, i64 noundef 0)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %2156, i64 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2160, i32 noundef 0)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2161, i32 noundef %1627)
  %2340 = tail call i32 @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3AgetContext0x280x290x20const(ptr noundef %0, i32 noundef %.67042) #5
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2162, i32 noundef 9)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %.pre-phi, i32 noundef 108182)
  %2341 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %.pre-phi)
  tail call void @i64_store(ptr noundef nonnull %12, i64 noundef %157, i64 noundef %2341)
  %2342 = add i32 %2340, 36
  %2343 = tail call i32 @w2c_hermes_hermes0x3A0x3AStringTable0x3A0x3AgetString0x28llvh0x3A0x3AStringRef0x29(ptr noundef %0, i32 noundef %2342, i32 noundef %11) #5
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %2163, i32 noundef %2343)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AHBCISel0x3A0x3Agenerate0x28hermes0x3A0x3ASourceMapGenerator0x2A0x29(ptr noundef %0, i32 noundef %.pre-phi7495, i32 noundef %6)
  %2344 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AHBCISel0x3A0x3A0x7EHBCISel0x280x29(ptr noundef %0, i32 noundef %.pre-phi7495)
  %2345 = tail call i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3A0x7EPassManager0x280x29(ptr noundef %0, i32 noundef %2252) #5
  %2346 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2128)
  %.not7376 = icmp eq i32 %2106, %2346
  br i1 %.not7376, label %2348, label %2347

2347:                                             ; preds = %2338
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2346) #5
  br label %2348

2348:                                             ; preds = %2347, %2338
  %2349 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1807)
  %.not7377 = icmp eq i32 %2349, 0
  br i1 %.not7377, label %2351, label %2350

2350:                                             ; preds = %2348
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1811, i32 noundef %2349)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %2349) #5
  br label %2351

2351:                                             ; preds = %2350, %2348
  %2352 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2164)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %2352) #5
  %2353 = tail call i32 @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3A0x7ERegisterAllocator0x280x29(ptr noundef %0, i32 noundef %546) #5
  %2354 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1525)
  %.pre7498 = zext i32 %2354 to i64
  br label %2355

2355:                                             ; preds = %2351, %2196
  %.pre-phi7499 = phi i64 [ %.pre7498, %2351 ], [ %2198, %2196 ]
  %.27 = phi i32 [ %2354, %2351 ], [ %2197, %2196 ]
  %2356 = add nuw nsw i64 %.pre-phi7499, 12
  %2357 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %2356)
  %.not7378 = icmp eq i32 %2357, 0
  br i1 %.not7378, label %2365, label %2358

2358:                                             ; preds = %2355
  %2359 = add nuw nsw i64 %2193, 112
  %2360 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2359)
  %2361 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2134)
  %2362 = zext i32 %2361 to i64
  %2363 = add nuw nsw i64 %2362, 72
  %2364 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2363)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1144, i32 noundef 100658)
  tail call void @i32_store16(ptr noundef nonnull %12, i64 noundef %1147, i32 noundef 259)
  tail call void @w2c_hermes_hermes0x3A0x3ASourceErrorManager0x3A0x3Amessage0x28hermes0x3A0x3ASourceErrorManager0x3A0x3ADiagKind0x2C0x20llvh0x3A0x3ASMLoc0x2C0x20llvh0x3A0x3ATwine0x20const0x260x2C0x20hermes0x3A0x3ASubsystem0x29(ptr noundef %0, i32 noundef %2364, i32 noundef 0, i32 noundef %2360, i32 noundef %546, i32 noundef 0) #5
  br label %2366

2365:                                             ; preds = %2355
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1525, i32 noundef 0)
  tail call void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3AsetFunctionGenerator0x28hermes0x3A0x3AFunction0x2A0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3E0x29(ptr noundef %0, i32 noundef %1216, i32 noundef %.67042, i32 noundef %.27)
  br label %2366

2366:                                             ; preds = %2365, %2358
  %2367 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1525)
  tail call void @i32_store(ptr noundef nonnull %12, i64 noundef %1525, i32 noundef 0)
  %.not7379 = icmp eq i32 %2367, 0
  br i1 %.not7379, label %2369, label %2368

2368:                                             ; preds = %2366
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x3E0x3A0x3Aoperator0x280x290x5Babi0x3Av150070x5D0x28hermes0x3A0x3Ahbc0x3A0x3ABytecodeFunctionGenerator0x2A0x290x20const(ptr noundef %0, i32 noundef %2138, i32 noundef %2367) #5
  br label %2369

2369:                                             ; preds = %2368, %2366
  br i1 %.not7378, label %2370, label %.loopexit7445

2370:                                             ; preds = %._crit_edge7504, %2369
  %.pre-phi7509 = phi i64 [ %.pre7508, %._crit_edge7504 ], [ %2193, %2369 ]
  %2371 = add nuw nsw i64 %.pre-phi7509, 4
  %2372 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2371)
  %.not7380 = icmp eq i32 %2372, %1237
  br i1 %.not7380, label %.loopexit7446, label %2165

.loopexit7446:                                    ; preds = %2370, %2090
  %2373 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3Agenerate0x280x29(ptr noundef %0, i32 noundef %1216)
  br label %.loopexit7445

.loopexit7445:                                    ; preds = %2369, %.loopexit7446
  %.16 = phi i32 [ %2373, %.loopexit7446 ], [ 0, %2369 ]
  %2374 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %2098)
  %2375 = and i32 %2374, 1
  %.not7381 = icmp eq i32 %2375, 0
  br i1 %.not7381, label %2376, label %2380

2376:                                             ; preds = %.loopexit7445
  %2377 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2097)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %2377) #5
  %2378 = tail call i32 @i32_load8_u(ptr noundef nonnull %12, i64 noundef %2098)
  %2379 = and i32 %2378, 1
  %.not7382 = icmp eq i32 %2379, 0
  br i1 %.not7382, label %2380, label %2474

2380:                                             ; preds = %2376, %.loopexit7445
  %2381 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %1791)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %2381) #5
  %2382 = add nuw nsw i64 %157, 2188
  %2383 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2382)
  %.not7383 = icmp eq i32 %2383, 0
  br i1 %.not7383, label %.loopexit, label %2384

2384:                                             ; preds = %2380
  %2385 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %258)
  %2386 = mul i32 %2383, 52
  %2387 = add i32 %2385, %2386
  br label %2388

2388:                                             ; preds = %2399, %2384
  %.28 = phi i32 [ %2385, %2384 ], [ %2400, %2399 ]
  %2389 = zext i32 %.28 to i64
  %2390 = tail call i64 @i64_load(ptr noundef nonnull %12, i64 noundef %2389)
  %2391 = and i64 %2390, 4294967294
  %2392 = icmp eq i64 %2391, 4294967294
  br i1 %2392, label %2399, label %2393

2393:                                             ; preds = %2388
  %2394 = add nuw nsw i64 %2389, 8
  %2395 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2394)
  %2396 = add i32 %.28, 20
  %2397 = icmp eq i32 %2395, %2396
  br i1 %2397, label %2399, label %2398

2398:                                             ; preds = %2393
  tail call void @w2c_hermes_dlfree(ptr noundef %0, i32 noundef %2395) #5
  br label %2399

2399:                                             ; preds = %2393, %2388, %2398
  %2400 = add i32 %.28, 52
  %.not7384 = icmp eq i32 %2400, %2387
  br i1 %.not7384, label %.loopexit, label %2388

.loopexit:                                        ; preds = %2399, %2380
  %2401 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %258)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %2401) #5
  %2402 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %435)
  %2403 = icmp eq i32 %2402, %1231
  br i1 %2403, label %2404, label %2406

2404:                                             ; preds = %.loopexit
  %2405 = add nuw nsw i64 %157, 2192
  br label %2409

2406:                                             ; preds = %.loopexit
  %.not7385 = icmp eq i32 %2402, 0
  br i1 %.not7385, label %2435, label %2407

2407:                                             ; preds = %2406
  %2408 = zext i32 %2402 to i64
  br label %2409

2409:                                             ; preds = %2407, %2404
  %.sink7577 = phi i64 [ %2408, %2407 ], [ %2405, %2404 ]
  %.sink7576 = phi i32 [ 20, %2407 ], [ 16, %2404 ]
  %.29 = phi i32 [ %2402, %2407 ], [ %1231, %2404 ]
  %2410 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %.sink7577)
  %2411 = add i32 %2410, %.sink7576
  %2412 = zext i32 %2411 to i64
  %2413 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2412)
  %2414 = getelementptr inbounds i8, ptr %0, i64 80
  %2415 = getelementptr inbounds i8, ptr %0, i64 92
  %2416 = load i32, ptr %2415, align 4, !tbaa !15
  %2417 = icmp ult i32 %2413, %2416
  br i1 %2417, label %2418, label %.critedge7437, !prof !16

2418:                                             ; preds = %2409
  %2419 = load ptr, ptr %2414, align 8, !tbaa !17
  %2420 = zext i32 %2413 to i64
  %2421 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2419, i64 %2420
  %2422 = getelementptr inbounds i8, ptr %2421, i64 8
  %2423 = load ptr, ptr %2422, align 8, !tbaa !18
  %.not7386 = icmp eq ptr %2423, null
  br i1 %.not7386, label %.critedge7437, label %2424, !prof !20

2424:                                             ; preds = %2418
  %2425 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %2426 = load ptr, ptr %2421, align 8, !tbaa !22
  %2427 = tail call zeroext i1 @func_types_eq(ptr noundef %2425, ptr noundef %2426)
  br i1 %2427, label %2428, label %.critedge7437, !prof !16

.critedge7437:                                    ; preds = %2418, %2409, %2424
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

2428:                                             ; preds = %2424
  %2429 = load ptr, ptr %2414, align 8, !tbaa !17
  %2430 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2429, i64 %2420
  %2431 = getelementptr inbounds i8, ptr %2430, i64 8
  %2432 = load ptr, ptr %2431, align 8, !tbaa !18
  %2433 = getelementptr inbounds i8, ptr %2430, i64 16
  %2434 = load ptr, ptr %2433, align 8, !tbaa !23
  tail call void %2432(ptr noundef %2434, i32 noundef %.29) #5
  br label %2435

2435:                                             ; preds = %2406, %2428
  %2436 = add nuw nsw i64 %157, 2216
  %2437 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2436)
  tail call void @w2c_hermes_operator0x20delete0x28void0x2A0x29(ptr noundef %0, i32 noundef %2437) #5
  %2438 = tail call i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3A0x7EBytecodeModuleGenerator0x280x29(ptr noundef %0, i32 noundef %1216)
  br i1 %.not7227, label %2466, label %2439

2439:                                             ; preds = %2435
  %2440 = zext i32 %7 to i64
  %2441 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2440)
  %2442 = zext i32 %2441 to i64
  %2443 = add nuw nsw i64 %2442, 36
  %2444 = tail call i32 @i32_load(ptr noundef nonnull %12, i64 noundef %2443)
  %2445 = getelementptr inbounds i8, ptr %0, i64 80
  %2446 = getelementptr inbounds i8, ptr %0, i64 92
  %2447 = load i32, ptr %2446, align 4, !tbaa !15
  %2448 = icmp ult i32 %2444, %2447
  br i1 %2448, label %2449, label %.critedge7439, !prof !16

2449:                                             ; preds = %2439
  %2450 = load ptr, ptr %2445, align 8, !tbaa !17
  %2451 = zext i32 %2444 to i64
  %2452 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2450, i64 %2451
  %2453 = getelementptr inbounds i8, ptr %2452, i64 8
  %2454 = load ptr, ptr %2453, align 8, !tbaa !18
  %.not7387 = icmp eq ptr %2454, null
  br i1 %.not7387, label %.critedge7439, label %2455, !prof !20

2455:                                             ; preds = %2449
  %2456 = load ptr, ptr @w2c_hermes_t3, align 8, !tbaa !21
  %2457 = load ptr, ptr %2452, align 8, !tbaa !22
  %2458 = tail call zeroext i1 @func_types_eq(ptr noundef %2456, ptr noundef %2457)
  br i1 %2458, label %2459, label %.critedge7439, !prof !16

.critedge7439:                                    ; preds = %2449, %2439, %2455
  tail call void @wasm_rt_trap(i32 noundef 6) #6
  unreachable

2459:                                             ; preds = %2455
  %2460 = load ptr, ptr %2445, align 8, !tbaa !17
  %2461 = getelementptr inbounds %struct.wasm_rt_funcref_t, ptr %2460, i64 %2451
  %2462 = getelementptr inbounds i8, ptr %2461, i64 8
  %2463 = load ptr, ptr %2462, align 8, !tbaa !18
  %2464 = getelementptr inbounds i8, ptr %2461, i64 16
  %2465 = load ptr, ptr %2464, align 8, !tbaa !23
  tail call void %2463(ptr noundef %2465, i32 noundef %7) #5
  br label %2466

2466:                                             ; preds = %2459, %2435
  store i32 %10, ptr %9, align 8, !tbaa !5
  ret i32 %.16

.loopexit7444:                                    ; preds = %1276, %1970, %2165
  tail call void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Fthrow_bad_function_call0x5Babi0x3Av150070x5D0x280x29(ptr noundef %0) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2467:                                             ; preds = %.loopexit7459
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 176409, i32 noundef 85237, i32 noundef 67, i32 noundef 103502) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2468:                                             ; preds = %1787
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 176409, i32 noundef 85237, i32 noundef 67, i32 noundef 103502) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2469:                                             ; preds = %1801
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 176409, i32 noundef 85237, i32 noundef 67, i32 noundef 103502) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2470:                                             ; preds = %2064
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 74646, i32 noundef 82467, i32 noundef 176, i32 noundef 49706) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2471:                                             ; preds = %.loopexit7451
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 183742, i32 noundef 62752, i32 noundef 580, i32 noundef 97041) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2472:                                             ; preds = %2088, %2076
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 111781, i32 noundef 78496, i32 noundef 174, i32 noundef 43558) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2473:                                             ; preds = %.loopexit7443
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 117789, i32 noundef 79572, i32 noundef 74, i32 noundef 88407) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable

2474:                                             ; preds = %2376
  tail call void @w2c_hermes_0x5F_assert_fail(ptr noundef %0, i32 noundef 73014, i32 noundef 81389, i32 noundef 1074, i32 noundef 63270) #5
  tail call void @wasm_rt_trap(i32 noundef 5) #6
  unreachable
}

declare i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3APassManager0x28hermes0x3A0x3ACodeGenerationSettings0x20const0x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3AaddPass0x28std0x3A0x3A_0x5F20x3A0x3Aunique_ptr0x3Chermes0x3A0x3APass0x2C0x20std0x3A0x3A_0x5F20x3A0x3Adefault_delete0x3Chermes0x3A0x3APass0x3E0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AcreateCodeMotion0x280x29(ptr noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AcreateCSE0x280x29(ptr noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AcreateDCE0x280x29(ptr noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AcreateHoistStartGenerator0x280x29(ptr noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AModule0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_llvh0x3A0x3Aerrs0x280x29(ptr noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3A0x7EPassManager0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_llvh0x3A0x3Aouts0x280x29(ptr noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3AModule0x3A0x3AgetFunctionsInSegment0x28unsigned0x20int0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x3A0x3Aswap0x5Babi0x3Av150070x5D0x28std0x3A0x3A_0x5F20x3A0x3A_0x5Ffunction0x3A0x3A_0x5Fvalue_func0x3Cbool0x200x28hermes0x3A0x3AFunction0x20const0x2A0x290x3E0x260x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_std0x3A0x3A_0x5F20x3A0x3Avector0x3Cbool0x2C0x20std0x3A0x3A_0x5F20x3A0x3Aallocator0x3Cbool0x3E0x3E0x3A0x3Areserve0x28unsigned0x20long0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
declare dso_local void @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AUniquingStringLiteralAccumulator0x3A0x3AaddString0x28llvh0x3A0x3AStringRef0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AStringLiteralIDMapping0x3A0x3A0x7EStringLiteralIDMapping0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

declare void @w2c_hermes_hermes0x3A0x3AHBCAllocObjectFromBufferInst0x3A0x3AgetKeyValuePair0x28unsigned0x20int0x290x20const(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_0x28anonymous0x20namespace0x290x3A0x3ALiteralBufferBuilder0x3A0x3AserializeInto0x280x28anonymous0x20namespace0x290x3A0x3AUniquedStringVector0x260x2C0x20llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ALiteral0x2A0x3E0x2C0x20bool0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_bool0x20llvh0x3A0x3ADenseMapBase0x3Cllvh0x3A0x3ADenseMap0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x2C0x20llvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x2C0x20llvh0x3A0x3ADenseMapInfo0x3Cllvh0x3A0x3AStringRef0x3E0x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x3E0x3A0x3ALookupBucketFor0x3Cllvh0x3A0x3AStringRef0x3E0x28llvh0x3A0x3AStringRef0x20const0x260x2C0x20llvh0x3A0x3Adetail0x3A0x3ADenseMapPair0x3Cllvh0x3A0x3AStringRef0x2C0x20llvh0x3A0x3ASmallVector0x3Cchar0x2C0x2032u0x3E0x3E0x20const0x2A0x260x290x20const(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3AFunctionScopeAnalysis0x3A0x3AcalculateFunctionScopeData0x28hermes0x3A0x3AScopeDesc0x2A0x2C0x20llvh0x3A0x3AOptional0x3Cint0x3E0x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare i32 @w2c_hermes_hermes0x3A0x3AScopeRegisterAnalysis0x3A0x3AScopeRegisterAnalysis0x28hermes0x3A0x3AFunction0x2A0x2C0x20hermes0x3A0x3ARegisterAllocator0x260x29(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Aallocate0x28llvh0x3A0x3AArrayRef0x3Chermes0x3A0x3ABasicBlock0x2A0x3E0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3ARegisterAllocator0x3A0x3Adump0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3APassManager0x3A0x3Arun0x28hermes0x3A0x3AFunction0x2A0x29(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

declare void @w2c_hermes_hermes0x3A0x3AFunction0x3A0x3Adump0x28llvh0x3A0x3Araw_ostream0x260x290x20const(ptr noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3AHBCISel0x3A0x3A0x7EHBCISel0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare dso_local i32 @w2c_hermes_hermes0x3A0x3Ahbc0x3A0x3ABytecodeModuleGenerator0x3A0x3A0x7EBytecodeModuleGenerator0x280x29(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare i32 @llvm.umax.i32(i32, i32) #4

attributes #0 = { inlinehint nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { 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 = { 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 #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 = { 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 92}
!16 = !{!"branch_weights", !"expected", i32 2000, i32 1}
!17 = !{!6, !7, i64 80}
!18 = !{!19, !7, i64 8}
!19 = !{!"", !7, i64 0, !7, i64 8, !7, i64 16}
!20 = !{!"branch_weights", !"expected", i32 1, i32 2000}
!21 = !{!7, !7, i64 0}
!22 = !{!19, !7, i64 0}
!23 = !{!19, !7, i64 16}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,InstSimplifyPass,JumpThreadingPass,LCSSAPass,LICMPass,LoopInstSimplifyPass,LoopSimplifyPass,LoopUnrollPass,LowerExpectIntrinsicPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass