// File: eiskalteschatten[P]developersnotebook/src/windows/ReleaseNotesWindow.cpp
// Function: ReleaseNotesWindow::fill_release_notes(_GtkTextBuffer*)
void ReleaseNotesWindow::fill_release_notes(GtkTextBuffer *buffer) {
    Resource release_notes_resource("release-notes", "html", path_to_exec_str);
    std::string path_to_release_notes = release_notes_resource.get_path();

    std::ifstream ifs(path_to_release_notes.c_str());
    std::string release_notes_str((std::istreambuf_iterator<char>(ifs)), (std::istreambuf_iterator<char>()));

    const gchar *release_notes = release_notes_str.c_str();

    GtkTextIter start;

    gtk_text_buffer_get_start_iter(buffer, &start);
    gtk_text_buffer_insert_markup(buffer, &start, release_notes, -1);
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x420, %rsp            # imm = 0x420
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x408(%rbp)
leaq -0xd1(%rbp), %rdi
movq %rdi, -0x400(%rbp)
callq 0xaf80
movq -0x400(%rbp), %rdx
leaq 0x3318b(%rip), %rsi     # 0x538da
leaq -0xd0(%rbp), %rdi
callq 0x10f00
jmp 0x2075d
leaq -0x109(%rbp), %rdi
movq %rdi, -0x410(%rbp)
callq 0xaf80
movq -0x410(%rbp), %rdx
leaq 0x3316a(%rip), %rsi     # 0x538e8
leaq -0x108(%rbp), %rdi
callq 0x10f00
jmp 0x2078c
movq -0x408(%rbp), %rsi
leaq -0x130(%rbp), %rdi
callq 0xa230
jmp 0x207a1
leaq -0xb0(%rbp), %rdi
leaq -0xd0(%rbp), %rsi
leaq -0x108(%rbp), %rdx
leaq -0x130(%rbp), %rcx
callq 0x14390
jmp 0x207c4
leaq -0x130(%rbp), %rdi
callq 0xb430
leaq -0x108(%rbp), %rdi
callq 0xb430
leaq -0x109(%rbp), %rdi
callq 0xb410
leaq -0xd0(%rbp), %rdi
callq 0xb430
leaq -0xd1(%rbp), %rdi
callq 0xb410
leaq -0x150(%rbp), %rdi
leaq -0xb0(%rbp), %rsi
callq 0x20150
jmp 0x20815
leaq -0x150(%rbp), %rdi
callq 0xa1d0
movq %rax, %rsi
leaq -0x358(%rbp), %rdi
movl $0x8, %edx
callq 0xa080
jmp 0x20837
leaq -0x388(%rbp), %rdi
leaq -0x358(%rbp), %rsi
callq 0x13d90
leaq -0x398(%rbp), %rdi
callq 0x13df0
leaq -0x399(%rbp), %rdi
movq %rdi, -0x418(%rbp)
callq 0xaf80
movq -0x418(%rbp), %r9
movq -0x388(%rbp), %rsi
movl -0x380(%rbp), %edx
movq -0x398(%rbp), %rcx
movl -0x390(%rbp), %r8d
leaq -0x378(%rbp), %rdi
callq 0x13e20
jmp 0x20899
leaq -0x399(%rbp), %rdi
callq 0xb410
leaq -0x378(%rbp), %rdi
callq 0xa1d0
movq %rax, -0x3a8(%rbp)
movq -0x10(%rbp), %rdi
leaq -0x3f8(%rbp), %rsi
callq 0xa0f0
jmp 0x208ca
movq -0x10(%rbp), %rdi
movq -0x3a8(%rbp), %rdx
leaq -0x3f8(%rbp), %rsi
movl $0xffffffff, %ecx       # imm = 0xFFFFFFFF
callq 0xabb0
jmp 0x208e8
leaq -0x378(%rbp), %rdi
callq 0xb430
leaq -0x358(%rbp), %rdi
callq 0xa070
leaq -0x150(%rbp), %rdi
callq 0xb430
leaq -0xb0(%rbp), %rdi
callq 0x14820
addq $0x420, %rsp            # imm = 0x420
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
jmp 0x2099f
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
jmp 0x20987
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
jmp 0x2097b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
leaq -0x130(%rbp), %rdi
callq 0xb430
leaq -0x108(%rbp), %rdi
callq 0xb430
leaq -0x109(%rbp), %rdi
callq 0xb410
leaq -0xd0(%rbp), %rdi
callq 0xb430
leaq -0xd1(%rbp), %rdi
callq 0xb410
jmp 0x20a3a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
jmp 0x20a2e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
jmp 0x20a22
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
leaq -0x399(%rbp), %rdi
callq 0xb410
jmp 0x20a16
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0xe0(%rbp)
movl %eax, -0xe4(%rbp)
leaq -0x378(%rbp), %rdi
callq 0xb430
leaq -0x358(%rbp), %rdi
callq 0xa070
leaq -0x150(%rbp), %rdi
callq 0xb430
leaq -0xb0(%rbp), %rdi
callq 0x14820
movq -0xe0(%rbp), %rdi
callq 0xaa00
nopw %cs:(%rax,%rax)