// File: /workspace/github_cpp_makefile_star2_O2/Mariotti94[P]BigFloat/Test.cpp
// Function: main
int main()
{
    //Test
    BigFloat a, b, c;

    //NaN test
    std::cout << a << std::endl;
    std::cout << a.ToDouble() << std::endl;
    std::cout << a.ToFloat() << std::endl;
    std::cout << a.ToString() << std::endl;
    std::cout << std::endl;

    //Error Codes test
    if(a.HasError())
        std::cout << a.GetError() << std::endl;
    a = 11.5;
    if(a.HasError())
        std::cout << a.GetError() << std::endl;
    b = a % 2;
    std::cout << b.GetError() << std::endl;
    b = 15;
    std::cout << b.GetError() << std::endl;
    b = a / 0;
    std::cout << b.GetError() << std::endl;
    std::cout << std::endl;

    //Assignation,SetPrecision,Trim test
    BigFloat d(a);
    std::cout << "d " << d << std::endl;
    d = -14.34434340000;
    std::cout << "d " << d << std::endl;
    d = "000.645343400000";
    std::cout << "d " << d << std::endl;
    std::cout << "d dec " << d.Decimals() << std::endl;
    d.TrailTrim();
    d.LeadTrim();
    std::cout << "d " << d << std::endl;
    d.SetPrecision(2);
    std::cout << "d set(2) " << d << std::endl;
    d.SetPrecision(0);
    std::cout << "d set(0) " << d << std::endl;
    d = "-1000.12323";
    std::cout << "d exp " << d.Exp() << std::endl;
    d = "-1.1223222";
    std::cout << "d exp " << d.Exp() << std::endl;
    d = "-1";
    std::cout << "d exp " << d.Exp() << std::endl;
    d = "-0.0000123453434";
    std::cout << "d exp " << d.Exp() << std::endl;
    d = "-0.0000000000000";
    std::cout << "d exp " << d.Exp() << std::endl;
    std::cout << std::endl;


    std::cout << "Inserisci 2 numeri:" << std::endl;
    std::cin >> a >> b;
    std::cout << std::endl;
    std::cout << "a " << a << "\tb " << b << std::endl;
    std::cout << std::endl;

    //Operations +,-,*,/ Test
    c = a + b;
    std::cout << "a+b " << c << std::endl;

    c = a - b;
    std::cout << "a-b " << c << std::endl;

    c = a * b;
    std::cout << "a*b " << c << std::endl;

    c = a / b;
    std::cout << "a/b " << c << std::endl;

    c = BigFloat::PrecDiv(a, b, 10);
    std::cout << "PrecDiv(a,b,10) " << c << std::endl;

    c = a % b;
    std::cout << "a%b " << c << std::endl;

    c = BigFloat::Power(a, b);
    std::cout << "Power(a,b) " << c << std::endl;

    c = BigFloat::Power(a, b, 10); //for negative exponents
    std::cout << "Power(a,b,10) " << c << std::endl;

    //Comparation Test
    std::cout << std::endl;
    std::cout << "a==b " << (a == b) << std::endl;
    std::cout << "a>b " << (a > b) << std::endl;
    std::cout << "a<b " << (a < b) << std::endl;
    std::cout << "a>=b " << (a >= b) << std::endl;
    std::cout << "a<=b " << (a <= b) << std::endl;

    //Transformation Test
    std::cout << std::endl;
    std::cout << "ToDouble " << a.ToDouble() << std::endl;
    std::cout << "ToFloat " << a.ToFloat() << std::endl;
    std::cout << "ToString " << a.ToString() << std::endl;

    std::cout << std::endl;
    std::cout << "(double) " << (double)a << std::endl;
    std::cout << "(float) " << (float)a << std::endl;
    std::cout << "(string) " << (std::string)a << std::endl;

    //++,-- Test
    std::cout << std::endl;
    std::cout << "a++ " << a++ << std::endl;
    std::cout << "++a " << ++a << std::endl;
    std::cout << "a-- " << a-- << std::endl;
    std::cout << "--a " << --a << std::endl;

    a += 666;
    a -= 123;
    a *= 3.14;
    a /= 2.71f;

    std::cout << "a after some manipulations: " << a << std::endl;

    //Miscellaneous test
    std::cout << std::endl;
    std::cout << "a ints " << a.Ints() << std::endl;
    std::cout << "a decimals " << a.Decimals() << std::endl;
    std::cout << "a memory size " << a.MemorySize() << std::endl;

    return 0;
}

// Assembly:
pushq %r14
pushq %rbx
subq $0x288, %rsp            # imm = 0x288
leaq 0x108(%rsp), %rdi
callq 0x33ee
leaq 0x188(%rsp), %rdi
callq 0x33ee
leaq 0x208(%rsp), %rdi
callq 0x33ee
movq 0xcbcc(%rip), %rdi      # 0xefd0
leaq 0x108(%rsp), %rsi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x108(%rsp), %rdi
callq 0x7482
movq 0xcba3(%rip), %rdi      # 0xefd0
callq 0x2200
movq %rax, %rdi
callq 0x2090
leaq 0x108(%rsp), %rdi
callq 0x7558
movq 0xcb82(%rip), %rdi      # 0xefd0
callq 0x20e0
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x763c
movq 0xcb59(%rip), %rdi      # 0xefd0
leaq 0x88(%rsp), %rsi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x2080
movq 0xcb30(%rip), %rdi      # 0xefd0
callq 0x2090
cmpb $0x1, 0x164(%rsp)
jne 0x24ed
leaq 0x88(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x3456
movq 0xcb05(%rip), %rdi      # 0xefd0
leaq 0x88(%rsp), %rsi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x2080
leaq 0x108(%rsp), %rdi
movsd 0x7b0b(%rip), %xmm0     # 0xa008
callq 0x4bd2
cmpb $0x1, 0x164(%rsp)
jne 0x254a
leaq 0x88(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x3456
movq 0xcaa8(%rip), %rdi      # 0xefd0
leaq 0x88(%rsp), %rsi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x2080
leaq 0x8(%rsp), %rdx
movl $0x2, (%rdx)
leaq 0x88(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x48b9
leaq 0x188(%rsp), %rbx
leaq 0x88(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3490
movq %r14, %rdi
callq 0x34d4
leaq 0x88(%rsp), %rdi
movq %rbx, %rsi
callq 0x3456
movq 0xca2c(%rip), %rdi      # 0xefd0
leaq 0x88(%rsp), %rsi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x2080
leaq 0x188(%rsp), %rdi
pushq $0xf
popq %rsi
callq 0x4b86
leaq 0x88(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x3456
movq 0xc9de(%rip), %rdi      # 0xefd0
leaq 0x88(%rsp), %rsi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x2080
leaq 0x8(%rsp), %rdx
andl $0x0, (%rdx)
leaq 0x88(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x49e2
leaq 0x188(%rsp), %rbx
leaq 0x88(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x3490
movq %r14, %rdi
callq 0x34d4
leaq 0x88(%rsp), %rdi
movq %rbx, %rsi
callq 0x3456
movq 0xc965(%rip), %rdi      # 0xefd0
leaq 0x88(%rsp), %rsi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x2080
movq 0xc93c(%rip), %rdi      # 0xefd0
callq 0x2090
leaq 0x88(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x34ee
movq 0xc91b(%rip), %rdi      # 0xefd0
leaq 0x795c(%rip), %rsi      # 0xa018
callq 0x2150
leaq 0x88(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
movsd 0x7927(%rip), %xmm0     # 0xa010
callq 0x4bd2
movq 0xc8db(%rip), %rdi      # 0xefd0
leaq 0x791c(%rip), %rsi      # 0xa018
callq 0x2150
leaq 0x88(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x78fb(%rip), %rsi      # 0xa01b
leaq 0x88(%rsp), %rdi
callq 0x4a52
movq 0xc89c(%rip), %rdi      # 0xefd0
leaq 0x78dd(%rip), %rsi      # 0xa018
callq 0x2150
leaq 0x88(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
movq 0xc871(%rip), %rdi      # 0xefd0
leaq 0x78c6(%rip), %rsi      # 0xa02c
callq 0x2150
movl 0xe0(%rsp), %esi
movq %rax, %rdi
callq 0x2240
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x7900
leaq 0x88(%rsp), %rdi
callq 0x4b30
movq 0xc82d(%rip), %rdi      # 0xefd0
leaq 0x786e(%rip), %rsi      # 0xa018
callq 0x2150
leaq 0x88(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
pushq $0x2
popq %rsi
callq 0x7738
movq 0xc7f2(%rip), %rdi      # 0xefd0
leaq 0x784e(%rip), %rsi      # 0xa033
callq 0x2150
leaq 0x88(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
xorl %esi, %esi
callq 0x7738
movq 0xc7b8(%rip), %rdi      # 0xefd0
leaq 0x781e(%rip), %rsi      # 0xa03d
callq 0x2150
leaq 0x88(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x7804(%rip), %rsi      # 0xa047
leaq 0x88(%rsp), %rdi
callq 0x4a52
movq 0xc779(%rip), %rdi      # 0xefd0
leaq 0x77f5(%rip), %rsi      # 0xa053
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x793e
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
leaq 0x77bc(%rip), %rsi      # 0xa05a
leaq 0x88(%rsp), %rdi
callq 0x4a52
movq 0xc71e(%rip), %rdi      # 0xefd0
leaq 0x779a(%rip), %rsi      # 0xa053
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x793e
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
leaq 0x776c(%rip), %rsi      # 0xa065
leaq 0x88(%rsp), %rdi
callq 0x4a52
movq 0xc6c3(%rip), %rdi      # 0xefd0
leaq 0x773f(%rip), %rsi      # 0xa053
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x793e
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
leaq 0x7714(%rip), %rsi      # 0xa068
leaq 0x88(%rsp), %rdi
callq 0x4a52
movq 0xc668(%rip), %rdi      # 0xefd0
leaq 0x76e4(%rip), %rsi      # 0xa053
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x793e
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
leaq 0x76ca(%rip), %rsi      # 0xa079
leaq 0x88(%rsp), %rdi
callq 0x4a52
movq 0xc60d(%rip), %rdi      # 0xefd0
leaq 0x7689(%rip), %rsi      # 0xa053
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x793e
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
movq 0xc5c6(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xc5ba(%rip), %rdi      # 0xefd0
leaq 0x766d(%rip), %rsi      # 0xa08a
callq 0x2150
movq %rax, %rdi
callq 0x2090
movq 0xc5af(%rip), %rdi      # 0xefe0
leaq 0x108(%rsp), %rsi
callq 0x73f4
leaq 0x188(%rsp), %rsi
movq %rax, %rdi
callq 0x73f4
movq 0xc57b(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xc56f(%rip), %rdi      # 0xefd0
leaq 0x76dc(%rip), %rsi      # 0xa144
callq 0x2150
leaq 0x108(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
leaq 0x761a(%rip), %rsi      # 0xa09e
movq %rax, %rdi
callq 0x2150
leaq 0x188(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
movq 0xc525(%rip), %rdi      # 0xefd0
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x4c1e
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc4e2(%rip), %rdi      # 0xefd0
leaq 0x75ad(%rip), %rsi      # 0xa0a2
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x50e2
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc480(%rip), %rdi      # 0xefd0
leaq 0x7550(%rip), %rsi      # 0xa0a7
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x4929
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc41e(%rip), %rdi      # 0xefd0
leaq 0x74f3(%rip), %rsi      # 0xa0ac
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x573a
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc3bc(%rip), %rdi      # 0xefd0
leaq 0x7496(%rip), %rsi      # 0xa0b1
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
pushq $0xa
popq %rcx
callq 0x5f72
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc357(%rip), %rdi      # 0xefd0
leaq 0x7436(%rip), %rsi      # 0xa0b6
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
callq 0x6674
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc2f5(%rip), %rdi      # 0xefd0
leaq 0x73e5(%rip), %rsi      # 0xa0c7
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
xorl %ecx, %ecx
callq 0x6d0e
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc291(%rip), %rdi      # 0xefd0
leaq 0x7386(%rip), %rsi      # 0xa0cc
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
leaq 0x188(%rsp), %rdx
pushq $0xa
popq %rcx
callq 0x6d0e
leaq 0x208(%rsp), %rdi
leaq 0x8(%rsp), %rbx
movq %rbx, %rsi
callq 0x3490
movq %rbx, %rdi
callq 0x34d4
movq 0xc22c(%rip), %rdi      # 0xefd0
leaq 0x732d(%rip), %rsi      # 0xa0d8
callq 0x2150
leaq 0x208(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
movq 0xc201(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xc1f5(%rip), %rdi      # 0xefd0
leaq 0x7305(%rip), %rsi      # 0xa0e7
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x5d96
movzbl %al, %esi
movq %rbx, %rdi
callq 0x2230
movq %rax, %rdi
callq 0x2090
movq 0xc1b7(%rip), %rdi      # 0xefd0
leaq 0x72cd(%rip), %rsi      # 0xa0ed
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x5dce
movzbl %al, %esi
movq %rbx, %rdi
callq 0x2230
movq %rax, %rdi
callq 0x2090
movq 0xc179(%rip), %rdi      # 0xefd0
leaq 0x7294(%rip), %rsi      # 0xa0f2
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x70fa
movzbl %al, %esi
movq %rbx, %rdi
callq 0x2230
movq %rax, %rdi
callq 0x2090
movq 0xc13b(%rip), %rdi      # 0xefd0
leaq 0x725b(%rip), %rsi      # 0xa0f7
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x5e18
movzbl %al, %esi
movq %rbx, %rdi
callq 0x2230
movq %rax, %rdi
callq 0x2090
movq 0xc0fd(%rip), %rdi      # 0xefd0
leaq 0x7223(%rip), %rsi      # 0xa0fd
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
leaq 0x188(%rsp), %rsi
callq 0x72a0
movzbl %al, %esi
movq %rbx, %rdi
callq 0x2230
movq %rax, %rdi
callq 0x2090
movq 0xc0bf(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xc0b3(%rip), %rdi      # 0xefd0
leaq 0x71df(%rip), %rsi      # 0xa103
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x7482
movq %rbx, %rdi
callq 0x2200
movq %rax, %rdi
callq 0x2090
movq 0xc080(%rip), %rdi      # 0xefd0
leaq 0x71b6(%rip), %rsi      # 0xa10d
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x7558
movq %rbx, %rdi
callq 0x20e0
movq %rax, %rdi
callq 0x2090
movq 0xc04d(%rip), %rdi      # 0xefd0
leaq 0x718c(%rip), %rsi      # 0xa116
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x763c
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
movq 0xc006(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xbffa(%rip), %rdi      # 0xefd0
leaq 0x7143(%rip), %rsi      # 0xa120
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x747c
movq %rbx, %rdi
callq 0x2200
movq %rax, %rdi
callq 0x2090
movq 0xbfc7(%rip), %rdi      # 0xefd0
leaq 0x711a(%rip), %rsi      # 0xa12a
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x7552
movq %rbx, %rdi
callq 0x20e0
movq %rax, %rdi
callq 0x2090
movq 0xbf94(%rip), %rdi      # 0xefd0
leaq 0x70f0(%rip), %rsi      # 0xa133
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
callq 0x762e
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x2130
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x2080
movq 0xbf4d(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xbf41(%rip), %rdi      # 0xefd0
leaq 0x70a7(%rip), %rsi      # 0xa13d
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
xorl %edx, %edx
callq 0x354a
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x34d4
movq 0xbef8(%rip), %rdi      # 0xefd0
leaq 0x7063(%rip), %rsi      # 0xa142
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x35b4
movq %rbx, %rdi
movq %rax, %rsi
callq 0x7369
movq %rax, %rdi
callq 0x2090
movq 0xbec2(%rip), %rdi      # 0xefd0
leaq 0x7032(%rip), %rsi      # 0xa147
callq 0x2150
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
leaq 0x108(%rsp), %rsi
xorl %edx, %edx
callq 0x35fe
leaq 0x8(%rsp), %rsi
movq %rbx, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rdi
callq 0x34d4
movq 0xbe79(%rip), %rdi      # 0xefd0
leaq 0x6fee(%rip), %rsi      # 0xa14c
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x3668
movq %rbx, %rdi
movq %rax, %rsi
callq 0x7369
movq %rax, %rdi
callq 0x2090
leaq 0x8(%rsp), %rsi
movl $0x29a, (%rsi)          # imm = 0x29A
leaq 0x108(%rsp), %rdi
callq 0x505a
leaq 0x8(%rsp), %rsi
movl $0x7b, (%rsi)
leaq 0x108(%rsp), %rdi
callq 0x5504
movabsq $0x40091eb851eb851f, %rax # imm = 0x40091EB851EB851F
leaq 0x8(%rsp), %rsi
movq %rax, (%rsi)
leaq 0x108(%rsp), %rdi
callq 0x56f6
movabsq $0x4005ae1480000000, %rax # imm = 0x4005AE1480000000
leaq 0x8(%rsp), %rsi
movq %rax, (%rsi)
leaq 0x108(%rsp), %rdi
callq 0x5f2e
movq 0xbdd5(%rip), %rdi      # 0xefd0
leaq 0x6f4f(%rip), %rsi      # 0xa151
callq 0x2150
leaq 0x108(%rsp), %rsi
movq %rax, %rdi
callq 0x7369
movq %rax, %rdi
callq 0x2090
movq 0xbdaa(%rip), %rdi      # 0xefd0
callq 0x2090
movq 0xbd9e(%rip), %rdi      # 0xefd0
leaq 0x6f35(%rip), %rsi      # 0xa16e
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x36b2
movq %rbx, %rdi
movl %eax, %esi
callq 0x2240
movq %rax, %rdi
callq 0x2090
movq 0xbd69(%rip), %rdi      # 0xefd0
leaq 0x6f08(%rip), %rsi      # 0xa176
callq 0x2150
movl 0x160(%rsp), %esi
movq %rax, %rdi
callq 0x2240
movq %rax, %rdi
callq 0x2090
movq 0xbd3f(%rip), %rdi      # 0xefd0
leaq 0x6eea(%rip), %rsi      # 0xa182
callq 0x2150
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x36c4
movq %rbx, %rdi
movl %eax, %esi
callq 0x2240
movq %rax, %rdi
callq 0x2090
leaq 0x88(%rsp), %rdi
callq 0x34d4
leaq 0x208(%rsp), %rdi
callq 0x34d4
leaq 0x188(%rsp), %rdi
callq 0x34d4
leaq 0x108(%rsp), %rdi
callq 0x34d4
xorl %eax, %eax
addq $0x288, %rsp            # imm = 0x288
popq %rbx
popq %r14
retq
jmp 0x33a9
jmp 0x33a9
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33ae
jmp 0x33a9
jmp 0x33a9
jmp 0x33a9
jmp 0x33a9
jmp 0x33a9
jmp 0x33a9
jmp 0x3397
jmp 0x3397
jmp 0x33a9
movq %rax, %rbx
jmp 0x33cb
movq %rax, %rbx
jmp 0x33d8
jmp 0x3367
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x34d4
jmp 0x33b1
jmp 0x3382
jmp 0x3382
jmp 0x3382
jmp 0x3382
jmp 0x3382
jmp 0x3382
movq %rax, %rbx
leaq 0x8(%rsp), %rdi
callq 0x2080
jmp 0x33b1
jmp 0x3397
jmp 0x3397
jmp 0x3397
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x2080
jmp 0x33be
movq %rax, %rbx
jmp 0x33be
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
callq 0x34d4
leaq 0x208(%rsp), %rdi
callq 0x34d4
leaq 0x188(%rsp), %rdi
callq 0x34d4
leaq 0x108(%rsp), %rdi
callq 0x34d4
movq %rbx, %rdi
callq 0x2250
nop