Aboudek/ASM_TO_LLVM_V2
0
1; ModuleID = 'winfile/src/extr_wfdirrd.c_CreateDTABlock.c'2source_filename = "winfile/src/extr_wfdirrd.c_CreateDTABlock.c"3target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"4target triple = "x86_64-unknown-linux-gnu"5 6%struct.TYPE_3__ = type { i64 }7 8@GWL_IERROR = dso_local global i32 0, align 49@ERROR_SUCCESS = dso_local global i32 0, align 410@WM_KEYDOWN = dso_local global i32 0, align 411@PM_NOREMOVE = dso_local global i32 0, align 412@VK_UP = dso_local global i64 0, align 813@VK_DOWN = dso_local global i64 0, align 814@EDIRABORT_NULL = dso_local global i32 0, align 415@EDIRABORT_READREQUEST = dso_local global i32 0, align 416 17; Function Attrs: noinline nounwind optnone uwtable18define dso_local ptr @CreateDTABlock(i32 noundef %0, i32 noundef %1, i32 noundef %2, i32 noundef %3) #0 {19 %5 = alloca ptr, align 820 %6 = alloca i32, align 421 %7 = alloca i32, align 422 %8 = alloca i32, align 423 %9 = alloca i32, align 424 %10 = alloca ptr, align 825 %11 = alloca %struct.TYPE_3__, align 826 store i32 %0, ptr %6, align 427 store i32 %1, ptr %7, align 428 store i32 %2, ptr %8, align 429 store i32 %3, ptr %9, align 430 %12 = load i32, ptr %6, align 431 %13 = load i32, ptr @GWL_IERROR, align 432 %14 = load i32, ptr @ERROR_SUCCESS, align 433 %15 = call i32 @SetWindowLongPtr(i32 noundef %12, i32 noundef %13, i32 noundef %14)34 %16 = load i32, ptr %9, align 435 %17 = icmp ne i32 %16, 036 br i1 %17, label %50, label %1837 3818: ; preds = %439 %19 = load i32, ptr %6, align 440 %20 = load i32, ptr %7, align 441 %21 = load i32, ptr %8, align 442 %22 = call ptr @StealDTABlock(i32 noundef %19, i32 noundef %20, i32 noundef %21)43 store ptr %22, ptr %10, align 844 %23 = icmp ne ptr %22, null45 br i1 %23, label %24, label %5046 4724: ; preds = %1848 %25 = load i32, ptr @WM_KEYDOWN, align 449 %26 = load i32, ptr @WM_KEYDOWN, align 450 %27 = load i32, ptr @PM_NOREMOVE, align 451 %28 = call i64 @PeekMessage(ptr noundef %11, ptr noundef null, i32 noundef %25, i32 noundef %26, i32 noundef %27)52 %29 = icmp ne i64 %28, 053 br i1 %29, label %30, label %4454 5530: ; preds = %2456 %31 = getelementptr inbounds %struct.TYPE_3__, ptr %11, i32 0, i32 057 %32 = load i64, ptr %31, align 858 %33 = load i64, ptr @VK_UP, align 859 %34 = icmp eq i64 %32, %3360 br i1 %34, label %40, label %3561 6235: ; preds = %3063 %36 = getelementptr inbounds %struct.TYPE_3__, ptr %11, i32 0, i32 064 %37 = load i64, ptr %36, align 865 %38 = load i64, ptr @VK_DOWN, align 866 %39 = icmp eq i64 %37, %3867 br i1 %39, label %40, label %4368 6940: ; preds = %35, %3070 %41 = load ptr, ptr %10, align 871 %42 = call i32 @MemDelete(ptr noundef %41)72 br label %5173 7443: ; preds = %3575 br label %4476 7744: ; preds = %43, %2478 %45 = load i32, ptr %6, align 479 %46 = load ptr, ptr %10, align 880 %47 = load i32, ptr @EDIRABORT_NULL, align 481 %48 = call i32 @DirReadAbort(i32 noundef %45, ptr noundef %46, i32 noundef %47)82 %49 = load ptr, ptr %10, align 883 store ptr %49, ptr %5, align 884 br label %5585 8650: ; preds = %18, %487 br label %5188 8951: ; preds = %50, %4090 %52 = load i32, ptr %6, align 491 %53 = load i32, ptr @EDIRABORT_READREQUEST, align 492 %54 = call i32 @DirReadAbort(i32 noundef %52, ptr noundef null, i32 noundef %53)93 store ptr null, ptr %5, align 894 br label %5595 9655: ; preds = %51, %4497 %56 = load ptr, ptr %5, align 898 ret ptr %5699}100 101declare i32 @SetWindowLongPtr(i32 noundef, i32 noundef, i32 noundef) #1102 103declare ptr @StealDTABlock(i32 noundef, i32 noundef, i32 noundef) #1104 105declare i64 @PeekMessage(ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef) #1106 107declare i32 @MemDelete(ptr noundef) #1108 109declare i32 @DirReadAbort(i32 noundef, ptr noundef, i32 noundef) #1110 111attributes #0 = { noinline nounwind optnone uwtable "frame-pointer"="all" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }112attributes #1 = { "frame-pointer"="all" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }113 114!llvm.module.flags = !{!0, !1, !2, !3, !4}115!llvm.ident = !{!5}116 117!0 = !{i32 1, !"wchar_size", i32 4}118!1 = !{i32 7, !"PIC Level", i32 2}119!2 = !{i32 7, !"PIE Level", i32 2}120!3 = !{i32 7, !"uwtable", i32 2}121!4 = !{i32 7, !"frame-pointer", i32 2}122!5 = !{!"clang version 15.0.3"}123 