// File: /workspace/github_cpp_makefile_star2_O3/FFY00[P]uicc/include/uicc.h
// Function: USIM::openFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>)
bool openFile(string filename) {
        string order(u8"\x00\xa4\x08\x04",4);
        string answer(u8"\x61",1);
        string filenameBin=UICCFile(filename);

        if (! send_check(order+(char)(filenameBin.size())+filenameBin, answer))
            return false;

        string size=read(1);

        if (size.size() !=1)
            return false;

        return readFileInfo(size);
    }

// Assembly:
pushq %rbp
movq %rsp, %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x108, %rsp            # imm = 0x108
movq %rdi, %rbx
leaq -0x98(%rbp), %rax
movq %rax, -0x10(%rax)
movl $0x408a400, (%rax)      # imm = 0x408A400
movq $0x4, -0x8(%rax)
movb $0x0, 0x4(%rax)
leaq -0x78(%rbp), %rax
movq %rax, -0x10(%rax)
movw $0x61, (%rax)
movq $0x1, -0x8(%rax)
leaq -0x118(%rbp), %r14
movq %r14, -0x10(%r14)
movq (%rsi), %rax
movq 0x8(%rsi), %rdx
addq %rax, %rdx
leaq -0x128(%rbp), %rdi
movq %rax, %rsi
callq 0x1394e
leaq -0xc8(%rbp), %rdi
leaq -0x128(%rbp), %rdx
movq %rbx, %rsi
callq 0x119a6
movq -0x128(%rbp), %rdi
cmpq %r14, %rdi
je 0x11722
callq 0x2220
movq -0xc0(%rbp), %r14
leaq -0x38(%rbp), %r15
movq %r15, -0x10(%r15)
movq -0xa8(%rbp), %rsi
movq -0xa0(%rbp), %rdx
addq %rsi, %rdx
leaq -0x48(%rbp), %rdi
callq 0x1394e
leaq -0x48(%rbp), %rdi
movq 0x8(%rdi), %rsi
movsbl %r14b, %r8d
movl $0x1, %ecx
xorl %edx, %edx
callq 0x2440
movq -0xc8(%rbp), %rsi
movq -0xc0(%rbp), %rdx
leaq -0x48(%rbp), %rdi
callq 0x20d0
leaq -0x58(%rbp), %r12
movq %r12, -0x10(%r12)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
je 0x1179f
movq %rdx, -0x68(%rbp)
movq (%rcx), %rdx
movq %rdx, -0x58(%rbp)
jmp 0x117a7
movups (%rcx), %xmm0
movups %xmm0, (%r12)
movq 0x8(%rax), %rdx
movq %rdx, -0x60(%rbp)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
leaq -0xf8(%rbp), %r13
movq %r13, -0x10(%r13)
movq -0x88(%rbp), %rsi
movq -0x80(%rbp), %rdx
addq %rsi, %rdx
leaq -0x108(%rbp), %rdi
callq 0x1394e
leaq -0x68(%rbp), %rsi
leaq -0x108(%rbp), %rdx
movq %rbx, %rdi
callq 0xeb32
movl %eax, %r14d
movq -0x108(%rbp), %rdi
cmpq %r13, %rdi
je 0x1180a
callq 0x2220
movq -0x68(%rbp), %rdi
cmpq %r12, %rdi
je 0x11818
callq 0x2220
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x11826
callq 0x2220
testb %r14b, %r14b
je 0x11886
leaq -0x48(%rbp), %rdi
movl $0x1, %edx
movq %rbx, %rsi
callq 0xe17e
cmpq $0x1, -0x40(%rbp)
jne 0x1188a
leaq -0xd8(%rbp), %r14
movq %r14, -0x10(%r14)
movq -0x48(%rbp), %rsi
leaq 0x1(%rsi), %rdx
leaq -0xe8(%rbp), %rdi
callq 0x1394e
leaq -0xe8(%rbp), %rsi
movq %rbx, %rdi
callq 0x12852
movl %eax, %ebx
movq -0xe8(%rbp), %rdi
cmpq %r14, %rdi
je 0x1188c
callq 0x2220
jmp 0x1188c
xorl %ebx, %ebx
jmp 0x1189a
xorl %ebx, %ebx
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x1189a
callq 0x2220
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x118af
callq 0x2220
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x118c4
callq 0x2220
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x118dc
callq 0x2220
movl %ebx, %eax
addq $0x108, %rsp            # imm = 0x108
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %rbx
movq -0xe8(%rbp), %rdi
cmpq %r14, %rdi
jne 0x11927
jmp 0x11933
jmp 0x11930
jmp 0x11943
movq %rax, %rbx
movq -0x108(%rbp), %rdi
cmpq %r13, %rdi
je 0x1191e
callq 0x2220
jmp 0x1191e
movq %rax, %rbx
movq -0x68(%rbp), %rdi
cmpq %r12, %rdi
je 0x11933
callq 0x2220
jmp 0x11933
jmp 0x11930
movq %rax, %rbx
movq -0x48(%rbp), %rdi
cmpq %r15, %rdi
je 0x11946
callq 0x2220
jmp 0x11946
movq %rax, %rbx
leaq -0xb8(%rbp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x11971
callq 0x2220
jmp 0x11971
movq %rax, %rbx
movq -0x128(%rbp), %rdi
cmpq %r14, %rdi
jne 0x11956
jmp 0x11971
movq %rax, %rbx
movq -0x88(%rbp), %rdi
leaq -0x78(%rbp), %rax
cmpq %rax, %rdi
je 0x11986
callq 0x2220
movq -0xa8(%rbp), %rdi
leaq -0x98(%rbp), %rax
cmpq %rax, %rdi
je 0x1199e
callq 0x2220
movq %rbx, %rdi
callq 0x2400