// File: zhjw1998[P]Merkle-Tree/src/main.cpp
// Function: InitLeaves(std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>>>&)
void InitLeaves(std::vector<std::string>& leaves){
    // 加入数据
    leaves.push_back(hash_sha256("abcdefg"));
    leaves.push_back(hash_sha256("qwerty12345"));
    leaves.push_back(hash_sha256("!@(@#)E&"));
    leaves.push_back(hash_sha256("ajosdhuhsdioa adsijd asjiod q9p0ad a."));
    leaves.push_back(hash_sha256("test01234"));
    leaves.push_back(hash_sha256("7846546521"));
    leaves.push_back(hash_sha256("asd970123+_?>?< f"));
    leaves.push_back(hash_sha256("op_) 4654asd21"));
    leaves.push_back(hash_sha256("12893 d970123+_qweawdf"));
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x330, %rsp            # imm = 0x330
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x2b0(%rbp)
leaq -0x49(%rbp), %rdi
movq %rdi, -0x2a8(%rbp)
callq 0x2350
movq -0x2a8(%rbp), %rdx
leaq 0xd458(%rip), %rsi      # 0x10090
leaq -0x48(%rbp), %rdi
callq 0x3ee0
jmp 0x2c43
leaq -0x28(%rbp), %rdi
leaq -0x48(%rbp), %rsi
callq 0x3d10
jmp 0x2c52
movq -0x2b0(%rbp), %rdi
leaq -0x28(%rbp), %rsi
callq 0x3ce0
jmp 0x2c64
leaq -0x28(%rbp), %rdi
callq 0x20f0
leaq -0x48(%rbp), %rdi
callq 0x20f0
leaq -0x49(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x2c0(%rbp)
leaq -0xa1(%rbp), %rdi
movq %rdi, -0x2b8(%rbp)
callq 0x2350
movq -0x2b8(%rbp), %rdx
leaq 0xd3ed(%rip), %rsi      # 0x10098
leaq -0xa0(%rbp), %rdi
callq 0x3ee0
jmp 0x2cb9
leaq -0x80(%rbp), %rdi
leaq -0xa0(%rbp), %rsi
callq 0x3d10
jmp 0x2ccb
movq -0x2c0(%rbp), %rdi
leaq -0x80(%rbp), %rsi
callq 0x3ce0
jmp 0x2cdd
leaq -0x80(%rbp), %rdi
callq 0x20f0
leaq -0xa0(%rbp), %rdi
callq 0x20f0
leaq -0xa1(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x2d0(%rbp)
leaq -0xe9(%rbp), %rdi
movq %rdi, -0x2c8(%rbp)
callq 0x2350
movq -0x2c8(%rbp), %rdx
leaq 0xd37a(%rip), %rsi      # 0x100a4
leaq -0xe8(%rbp), %rdi
callq 0x3ee0
jmp 0x2d38
leaq -0xc8(%rbp), %rdi
leaq -0xe8(%rbp), %rsi
callq 0x3d10
jmp 0x2d4d
movq -0x2d0(%rbp), %rdi
leaq -0xc8(%rbp), %rsi
callq 0x3ce0
jmp 0x2d62
leaq -0xc8(%rbp), %rdi
callq 0x20f0
leaq -0xe8(%rbp), %rdi
callq 0x20f0
leaq -0xe9(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x2e0(%rbp)
leaq -0x131(%rbp), %rdi
movq %rdi, -0x2d8(%rbp)
callq 0x2350
movq -0x2d8(%rbp), %rdx
leaq 0xd2fb(%rip), %rsi      # 0x100ad
leaq -0x130(%rbp), %rdi
callq 0x3ee0
jmp 0x2dc0
leaq -0x110(%rbp), %rdi
leaq -0x130(%rbp), %rsi
callq 0x3d10
jmp 0x2dd5
movq -0x2e0(%rbp), %rdi
leaq -0x110(%rbp), %rsi
callq 0x3ce0
jmp 0x2dea
leaq -0x110(%rbp), %rdi
callq 0x20f0
leaq -0x130(%rbp), %rdi
callq 0x20f0
leaq -0x131(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x2f0(%rbp)
leaq -0x179(%rbp), %rdi
movq %rdi, -0x2e8(%rbp)
callq 0x2350
movq -0x2e8(%rbp), %rdx
leaq 0xd299(%rip), %rsi      # 0x100d3
leaq -0x178(%rbp), %rdi
callq 0x3ee0
jmp 0x2e48
leaq -0x158(%rbp), %rdi
leaq -0x178(%rbp), %rsi
callq 0x3d10
jmp 0x2e5d
movq -0x2f0(%rbp), %rdi
leaq -0x158(%rbp), %rsi
callq 0x3ce0
jmp 0x2e72
leaq -0x158(%rbp), %rdi
callq 0x20f0
leaq -0x178(%rbp), %rdi
callq 0x20f0
leaq -0x179(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x300(%rbp)
leaq -0x1c1(%rbp), %rdi
movq %rdi, -0x2f8(%rbp)
callq 0x2350
movq -0x2f8(%rbp), %rdx
leaq 0xd21b(%rip), %rsi      # 0x100dd
leaq -0x1c0(%rbp), %rdi
callq 0x3ee0
jmp 0x2ed0
leaq -0x1a0(%rbp), %rdi
leaq -0x1c0(%rbp), %rsi
callq 0x3d10
jmp 0x2ee5
movq -0x300(%rbp), %rdi
leaq -0x1a0(%rbp), %rsi
callq 0x3ce0
jmp 0x2efa
leaq -0x1a0(%rbp), %rdi
callq 0x20f0
leaq -0x1c0(%rbp), %rdi
callq 0x20f0
leaq -0x1c1(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x310(%rbp)
leaq -0x209(%rbp), %rdi
movq %rdi, -0x308(%rbp)
callq 0x2350
movq -0x308(%rbp), %rdx
leaq 0xd19e(%rip), %rsi      # 0x100e8
leaq -0x208(%rbp), %rdi
callq 0x3ee0
jmp 0x2f58
leaq -0x1e8(%rbp), %rdi
leaq -0x208(%rbp), %rsi
callq 0x3d10
jmp 0x2f6d
movq -0x310(%rbp), %rdi
leaq -0x1e8(%rbp), %rsi
callq 0x3ce0
jmp 0x2f82
leaq -0x1e8(%rbp), %rdi
callq 0x20f0
leaq -0x208(%rbp), %rdi
callq 0x20f0
leaq -0x209(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x320(%rbp)
leaq -0x251(%rbp), %rdi
movq %rdi, -0x318(%rbp)
callq 0x2350
movq -0x318(%rbp), %rdx
leaq 0xd128(%rip), %rsi      # 0x100fa
leaq -0x250(%rbp), %rdi
callq 0x3ee0
jmp 0x2fe0
leaq -0x230(%rbp), %rdi
leaq -0x250(%rbp), %rsi
callq 0x3d10
jmp 0x2ff5
movq -0x320(%rbp), %rdi
leaq -0x230(%rbp), %rsi
callq 0x3ce0
jmp 0x300a
leaq -0x230(%rbp), %rdi
callq 0x20f0
leaq -0x250(%rbp), %rdi
callq 0x20f0
leaq -0x251(%rbp), %rdi
callq 0x2220
movq -0x8(%rbp), %rax
movq %rax, -0x330(%rbp)
leaq -0x299(%rbp), %rdi
movq %rdi, -0x328(%rbp)
callq 0x2350
movq -0x328(%rbp), %rdx
leaq 0xd0af(%rip), %rsi      # 0x10109
leaq -0x298(%rbp), %rdi
callq 0x3ee0
jmp 0x3068
leaq -0x278(%rbp), %rdi
leaq -0x298(%rbp), %rsi
callq 0x3d10
jmp 0x307d
movq -0x330(%rbp), %rdi
leaq -0x278(%rbp), %rsi
callq 0x3ce0
jmp 0x3092
leaq -0x278(%rbp), %rdi
callq 0x20f0
leaq -0x298(%rbp), %rdi
callq 0x20f0
leaq -0x299(%rbp), %rdi
callq 0x2220
addq $0x330, %rsp            # imm = 0x330
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x30f9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x30f0
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x28(%rbp), %rdi
callq 0x20f0
leaq -0x48(%rbp), %rdi
callq 0x20f0
leaq -0x49(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3144
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3138
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x80(%rbp), %rdi
callq 0x20f0
leaq -0xa0(%rbp), %rdi
callq 0x20f0
leaq -0xa1(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3195
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3189
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0xc8(%rbp), %rdi
callq 0x20f0
leaq -0xe8(%rbp), %rdi
callq 0x20f0
leaq -0xe9(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x31e6
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x31da
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x110(%rbp), %rdi
callq 0x20f0
leaq -0x130(%rbp), %rdi
callq 0x20f0
leaq -0x131(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3237
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x322b
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x158(%rbp), %rdi
callq 0x20f0
leaq -0x178(%rbp), %rdi
callq 0x20f0
leaq -0x179(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3288
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x327c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1a0(%rbp), %rdi
callq 0x20f0
leaq -0x1c0(%rbp), %rdi
callq 0x20f0
leaq -0x1c1(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x32d9
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x32cd
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x1e8(%rbp), %rdi
callq 0x20f0
leaq -0x208(%rbp), %rdi
callq 0x20f0
leaq -0x209(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x332a
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x331e
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x230(%rbp), %rdi
callq 0x20f0
leaq -0x250(%rbp), %rdi
callq 0x20f0
leaq -0x251(%rbp), %rdi
callq 0x2220
jmp 0x3384
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x3378
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
jmp 0x336c
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x58(%rbp)
movl %eax, -0x5c(%rbp)
leaq -0x278(%rbp), %rdi
callq 0x20f0
leaq -0x298(%rbp), %rdi
callq 0x20f0
leaq -0x299(%rbp), %rdi
callq 0x2220
movq -0x58(%rbp), %rdi
callq 0x2340
nopl (%rax)