//
// This file was generated by the Retargetable Decompiler
// Website: https://retdec.com
// Copyright (c) 2019 Retargetable Decompiler <info@retdec.com>
//

#include <math.h>
#include <stdint.h>

// ----------------- Float Types Definitions ------------------

typedef double float64_t;
typedef long double float80_t;

// ------------------- Function Prototypes --------------------

int32_t function_0(int32_t a1);

// --------------------- Global Variables ---------------------

int32_t g1 = 0; // ecx

// ------------------------ Functions -------------------------

// Address range: 0x0 - 0x21
int32_t function_0(int32_t a1) {
    int32_t v1; // eax
    int32_t v2; // ebp
    int32_t v3; // esi
    int32_t v4;
    int32_t result;
    int32_t v5;
    float80_t v6; // bp+11
    int32_t v7;
    float64_t v8;
    float64_t v9;
    float80_t v10;
    // 0x0
    v4 = v2;
    v5 = v3;
    v3 = a1;
    v7 = *(int32_t *)(a1 + 48);
    v8 = *(float64_t *)&g1;
    v9 = *(float64_t *)(v7 + -16);
    v10 = (float80_t)v9;
    v6 = fabsl((float80_t)v8 + v10);
    *(float64_t *)(int32_t)(int64_t)v8 = (float64_t)(v6 - v10);
    v3 = v5;
    v2 = v4;
    result = v1;
    return result;
}

// --------------------- Meta-Information ---------------------

// Detected functions: 1
// Decompilation date: 2019-09-05 22:22:37
