// File: /workspace/github_c_makefile_star2_O0/adsr[P]phpspy/phpspy.c
// Function: cleanup
static void cleanup() {
    varpeek_entry_t *entry, *entry_tmp;
    varpeek_var_t *var, *var_tmp;
    glopeek_entry_t *gentry, *gentry_tmp;

    if (opt_filter_re) {
        regfree(opt_filter_re);
    }

    HASH_ITER(hh, varpeek_map, entry, entry_tmp) {
        HASH_ITER(hh, entry->varmap, var, var_tmp) {
            HASH_DEL(entry->varmap, var);
            free(var);
        }
        HASH_DEL(varpeek_map, entry);
        free(entry);
    }

    HASH_ITER(hh, glopeek_map, gentry, gentry_tmp) {
        HASH_DEL(glopeek_map, gentry);
        free(gentry);
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0xb0, %rsp
cmpq $0x0, 0x2a64d(%rip)     # 0x3c520
je 0x11ee1
movq 0x2a644(%rip), %rdi     # 0x3c520
callq 0x6150
movq 0x2a668(%rip), %rax     # 0x3c550
movq %rax, -0x8(%rbp)
cmpq $0x0, 0x2a65c(%rip)     # 0x3c550
je 0x11f0a
movq 0x2a653(%rip), %rax     # 0x3c550
movq 0x118(%rax), %rax
movq %rax, -0x80(%rbp)
jmp 0x11f12
xorl %eax, %eax
movq %rax, -0x80(%rbp)
jmp 0x11f12
movq -0x80(%rbp), %rax
movq %rax, -0x10(%rbp)
cmpq $0x0, -0x8(%rbp)
je 0x123fe
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq %rax, -0x18(%rbp)
movq -0x8(%rbp), %rax
cmpq $0x0, 0x100(%rax)
je 0x11f5d
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x110(%rax), %rax
movq %rax, -0x88(%rbp)
jmp 0x11f68
xorl %eax, %eax
movq %rax, -0x88(%rbp)
jmp 0x11f68
movq -0x88(%rbp), %rax
movq %rax, -0x20(%rbp)
cmpq $0x0, -0x18(%rbp)
je 0x121d6
jmp 0x11f80
movq -0x18(%rbp), %rax
addq $0x100, %rax            # imm = 0x100
movq %rax, -0x38(%rbp)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x8(%rax)
jne 0x11fe9
movq -0x38(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jne 0x11fe9
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x100(%rax), %rax
movq (%rax), %rdi
callq 0x6050
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x100(%rax), %rdi
callq 0x6050
movq -0x8(%rbp), %rax
movq $0x0, 0x100(%rax)
jmp 0x1218d
movq -0x38(%rbp), %rax
movq -0x8(%rbp), %rcx
movq 0x100(%rcx), %rcx
movq 0x100(%rcx), %rcx
cmpq 0x18(%rcx), %rax
jne 0x12039
movq -0x38(%rbp), %rax
movq 0x8(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x100(%rax), %rax
addq 0x20(%rax), %rcx
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x100(%rax), %rax
movq %rcx, 0x18(%rax)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x8(%rax)
je 0x12071
movq -0x38(%rbp), %rax
movq 0x10(%rax), %rdx
movq -0x38(%rbp), %rax
movq 0x8(%rax), %rax
movq -0x8(%rbp), %rcx
movq 0x100(%rcx), %rcx
movq 0x100(%rcx), %rcx
movq 0x20(%rcx), %rcx
movq %rdx, 0x10(%rax,%rcx)
jmp 0x12088
jmp 0x12073
movq -0x38(%rbp), %rax
movq 0x10(%rax), %rcx
movq -0x8(%rbp), %rax
movq %rcx, 0x100(%rax)
jmp 0x12088
movq -0x38(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x120be
movq -0x38(%rbp), %rax
movq 0x8(%rax), %rdx
movq -0x38(%rbp), %rax
movq 0x10(%rax), %rax
movq -0x8(%rbp), %rcx
movq 0x100(%rcx), %rcx
movq 0x100(%rcx), %rcx
movq 0x20(%rcx), %rcx
movq %rdx, 0x8(%rax,%rcx)
jmp 0x120c0
movq -0x38(%rbp), %rax
movl 0x34(%rax), %eax
movq -0x8(%rbp), %rcx
movq 0x100(%rcx), %rcx
movq 0x100(%rcx), %rcx
movl 0x8(%rcx), %ecx
subl $0x1, %ecx
andl %ecx, %eax
movl %eax, -0x3c(%rbp)
jmp 0x120e6
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x100(%rax), %rax
movq (%rax), %rax
movl -0x3c(%rbp), %ecx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x48(%rbp)
movq -0x48(%rbp), %rax
movl 0x8(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x8(%rax)
movq -0x48(%rbp), %rax
movq (%rax), %rax
cmpq -0x38(%rbp), %rax
jne 0x12132
movq -0x38(%rbp), %rax
movq 0x20(%rax), %rcx
movq -0x48(%rbp), %rax
movq %rcx, (%rax)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x18(%rax)
je 0x12151
movq -0x38(%rbp), %rax
movq 0x20(%rax), %rcx
movq -0x38(%rbp), %rax
movq 0x18(%rax), %rax
movq %rcx, 0x20(%rax)
movq -0x38(%rbp), %rax
cmpq $0x0, 0x20(%rax)
je 0x12170
movq -0x38(%rbp), %rax
movq 0x18(%rax), %rcx
movq -0x38(%rbp), %rax
movq 0x20(%rax), %rax
movq %rcx, 0x18(%rax)
jmp 0x12172
movq -0x8(%rbp), %rax
movq 0x100(%rax), %rax
movq 0x100(%rax), %rax
movl 0x10(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x10(%rax)
jmp 0x1218f
movq -0x18(%rbp), %rdi
callq 0x6050
movq -0x20(%rbp), %rax
movq %rax, -0x18(%rbp)
cmpq $0x0, -0x20(%rbp)
je 0x121bb
movq -0x20(%rbp), %rax
movq 0x110(%rax), %rax
movq %rax, -0x90(%rbp)
jmp 0x121c6
xorl %eax, %eax
movq %rax, -0x90(%rbp)
jmp 0x121c6
movq -0x90(%rbp), %rax
movq %rax, -0x20(%rbp)
jmp 0x11f73
jmp 0x121d8
movq -0x8(%rbp), %rax
addq $0x108, %rax            # imm = 0x108
movq %rax, -0x50(%rbp)
movq -0x50(%rbp), %rax
cmpq $0x0, 0x8(%rax)
jne 0x12235
movq -0x50(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jne 0x12235
movq 0x2a34d(%rip), %rax     # 0x3c550
movq 0x108(%rax), %rax
movq (%rax), %rdi
callq 0x6050
movq 0x2a337(%rip), %rax     # 0x3c550
movq 0x108(%rax), %rdi
callq 0x6050
movq $0x0, 0x2a320(%rip) # 0x3c550
jmp 0x123b5
movq -0x50(%rbp), %rax
movq 0x2a310(%rip), %rcx     # 0x3c550
movq 0x108(%rcx), %rcx
cmpq 0x18(%rcx), %rax
jne 0x12279
movq -0x50(%rbp), %rax
movq 0x8(%rax), %rcx
movq 0x2a2f4(%rip), %rax     # 0x3c550
movq 0x108(%rax), %rax
addq 0x20(%rax), %rcx
movq 0x2a2e2(%rip), %rax     # 0x3c550
movq 0x108(%rax), %rax
movq %rcx, 0x18(%rax)
movq -0x50(%rbp), %rax
cmpq $0x0, 0x8(%rax)
je 0x122ad
movq -0x50(%rbp), %rax
movq 0x10(%rax), %rdx
movq -0x50(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x2a2b5(%rip), %rcx     # 0x3c550
movq 0x108(%rcx), %rcx
movq 0x20(%rcx), %rcx
movq %rdx, 0x10(%rax,%rcx)
jmp 0x122c0
jmp 0x122af
movq -0x50(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x2a292(%rip)     # 0x3c550
jmp 0x122c0
movq -0x50(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x122f2
movq -0x50(%rbp), %rax
movq 0x8(%rax), %rdx
movq -0x50(%rbp), %rax
movq 0x10(%rax), %rax
movq 0x2a26e(%rip), %rcx     # 0x3c550
movq 0x108(%rcx), %rcx
movq 0x20(%rcx), %rcx
movq %rdx, 0x8(%rax,%rcx)
jmp 0x122f4
movq -0x50(%rbp), %rax
movl 0x34(%rax), %eax
movq 0x2a24e(%rip), %rcx     # 0x3c550
movq 0x108(%rcx), %rcx
movl 0x8(%rcx), %ecx
subl $0x1, %ecx
andl %ecx, %eax
movl %eax, -0x54(%rbp)
jmp 0x12316
movq 0x2a233(%rip), %rax     # 0x3c550
movq 0x108(%rax), %rax
movq (%rax), %rax
movl -0x54(%rbp), %ecx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x60(%rbp)
movq -0x60(%rbp), %rax
movl 0x8(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x8(%rax)
movq -0x60(%rbp), %rax
movq (%rax), %rax
cmpq -0x50(%rbp), %rax
jne 0x1235e
movq -0x50(%rbp), %rax
movq 0x20(%rax), %rcx
movq -0x60(%rbp), %rax
movq %rcx, (%rax)
movq -0x50(%rbp), %rax
cmpq $0x0, 0x18(%rax)
je 0x1237d
movq -0x50(%rbp), %rax
movq 0x20(%rax), %rcx
movq -0x50(%rbp), %rax
movq 0x18(%rax), %rax
movq %rcx, 0x20(%rax)
movq -0x50(%rbp), %rax
cmpq $0x0, 0x20(%rax)
je 0x1239c
movq -0x50(%rbp), %rax
movq 0x18(%rax), %rcx
movq -0x50(%rbp), %rax
movq 0x20(%rax), %rax
movq %rcx, 0x18(%rax)
jmp 0x1239e
movq 0x2a1ab(%rip), %rax     # 0x3c550
movq 0x108(%rax), %rax
movl 0x10(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x10(%rax)
jmp 0x123b7
movq -0x8(%rbp), %rdi
callq 0x6050
movq -0x10(%rbp), %rax
movq %rax, -0x8(%rbp)
cmpq $0x0, -0x10(%rbp)
je 0x123e3
movq -0x10(%rbp), %rax
movq 0x118(%rax), %rax
movq %rax, -0x98(%rbp)
jmp 0x123ee
xorl %eax, %eax
movq %rax, -0x98(%rbp)
jmp 0x123ee
movq -0x98(%rbp), %rax
movq %rax, -0x10(%rbp)
jmp 0x11f1a
movq 0x2a153(%rip), %rax     # 0x3c558
movq %rax, -0x28(%rbp)
cmpq $0x0, 0x2a147(%rip)     # 0x3c558
je 0x1242a
movq 0x2a13e(%rip), %rax     # 0x3c558
movq 0x310(%rax), %rax
movq %rax, -0xa0(%rbp)
jmp 0x12435
xorl %eax, %eax
movq %rax, -0xa0(%rbp)
jmp 0x12435
movq -0xa0(%rbp), %rax
movq %rax, -0x30(%rbp)
cmpq $0x0, -0x28(%rbp)
je 0x12673
jmp 0x1244d
movq -0x28(%rbp), %rax
addq $0x300, %rax            # imm = 0x300
movq %rax, -0x68(%rbp)
movq -0x68(%rbp), %rax
cmpq $0x0, 0x8(%rax)
jne 0x124aa
movq -0x68(%rbp), %rax
cmpq $0x0, 0x10(%rax)
jne 0x124aa
movq 0x2a0e0(%rip), %rax     # 0x3c558
movq 0x300(%rax), %rax
movq (%rax), %rdi
callq 0x6050
movq 0x2a0ca(%rip), %rax     # 0x3c558
movq 0x300(%rax), %rdi
callq 0x6050
movq $0x0, 0x2a0b3(%rip) # 0x3c558
jmp 0x1262a
movq -0x68(%rbp), %rax
movq 0x2a0a3(%rip), %rcx     # 0x3c558
movq 0x300(%rcx), %rcx
cmpq 0x18(%rcx), %rax
jne 0x124ee
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rcx
movq 0x2a087(%rip), %rax     # 0x3c558
movq 0x300(%rax), %rax
addq 0x20(%rax), %rcx
movq 0x2a075(%rip), %rax     # 0x3c558
movq 0x300(%rax), %rax
movq %rcx, 0x18(%rax)
movq -0x68(%rbp), %rax
cmpq $0x0, 0x8(%rax)
je 0x12522
movq -0x68(%rbp), %rax
movq 0x10(%rax), %rdx
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rax
movq 0x2a048(%rip), %rcx     # 0x3c558
movq 0x300(%rcx), %rcx
movq 0x20(%rcx), %rcx
movq %rdx, 0x10(%rax,%rcx)
jmp 0x12535
jmp 0x12524
movq -0x68(%rbp), %rax
movq 0x10(%rax), %rax
movq %rax, 0x2a025(%rip)     # 0x3c558
jmp 0x12535
movq -0x68(%rbp), %rax
cmpq $0x0, 0x10(%rax)
je 0x12567
movq -0x68(%rbp), %rax
movq 0x8(%rax), %rdx
movq -0x68(%rbp), %rax
movq 0x10(%rax), %rax
movq 0x2a001(%rip), %rcx     # 0x3c558
movq 0x300(%rcx), %rcx
movq 0x20(%rcx), %rcx
movq %rdx, 0x8(%rax,%rcx)
jmp 0x12569
movq -0x68(%rbp), %rax
movl 0x34(%rax), %eax
movq 0x29fe1(%rip), %rcx     # 0x3c558
movq 0x300(%rcx), %rcx
movl 0x8(%rcx), %ecx
subl $0x1, %ecx
andl %ecx, %eax
movl %eax, -0x6c(%rbp)
jmp 0x1258b
movq 0x29fc6(%rip), %rax     # 0x3c558
movq 0x300(%rax), %rax
movq (%rax), %rax
movl -0x6c(%rbp), %ecx
shlq $0x4, %rcx
addq %rcx, %rax
movq %rax, -0x78(%rbp)
movq -0x78(%rbp), %rax
movl 0x8(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x8(%rax)
movq -0x78(%rbp), %rax
movq (%rax), %rax
cmpq -0x68(%rbp), %rax
jne 0x125d3
movq -0x68(%rbp), %rax
movq 0x20(%rax), %rcx
movq -0x78(%rbp), %rax
movq %rcx, (%rax)
movq -0x68(%rbp), %rax
cmpq $0x0, 0x18(%rax)
je 0x125f2
movq -0x68(%rbp), %rax
movq 0x20(%rax), %rcx
movq -0x68(%rbp), %rax
movq 0x18(%rax), %rax
movq %rcx, 0x20(%rax)
movq -0x68(%rbp), %rax
cmpq $0x0, 0x20(%rax)
je 0x12611
movq -0x68(%rbp), %rax
movq 0x18(%rax), %rcx
movq -0x68(%rbp), %rax
movq 0x20(%rax), %rax
movq %rcx, 0x18(%rax)
jmp 0x12613
movq 0x29f3e(%rip), %rax     # 0x3c558
movq 0x300(%rax), %rax
movl 0x10(%rax), %ecx
addl $-0x1, %ecx
movl %ecx, 0x10(%rax)
jmp 0x1262c
movq -0x28(%rbp), %rdi
callq 0x6050
movq -0x30(%rbp), %rax
movq %rax, -0x28(%rbp)
cmpq $0x0, -0x30(%rbp)
je 0x12658
movq -0x30(%rbp), %rax
movq 0x310(%rax), %rax
movq %rax, -0xa8(%rbp)
jmp 0x12663
xorl %eax, %eax
movq %rax, -0xa8(%rbp)
jmp 0x12663
movq -0xa8(%rbp), %rax
movq %rax, -0x30(%rbp)
jmp 0x12440
addq $0xb0, %rsp
popq %rbp
retq
nopl (%rax)