Function at 0x14002b5a9
Capabilities:
Read file on windows

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x50
mov sil, byte [rcx + 0x92]
mov byte [rcx + 0x92], 0
mov rbx, rcx
mov edi, edx
mov ebp, r8d
lea rcx, [rcx + 0x88]
mov r8d, 0xa
xor edx, edx
call sub.msvcrt.dll_strtoul
mov byte [rbx + 0x92], sil
mov r8d, eax
test eax, eax
jns 0x14002b600
mov rdx, qword [rbx]
lea rcx, str._s:_invalid_archive_header_size:__ld_n
call fcn.14002b2b5
jmp 0x14002b641
lea esi, [rax + 1]
mov rdx, qword [rbx + 0x48]
and esi, 0xfffffffe
mov eax, esi
lea rax, [rdx + rax + 0x3c]
mov qword [rbx + 0x48], rax
test ebp, ebp
jne 0x14002b648
mov rcx, qword [rbx + 8]
mov r8d, 1
mov edx, esi
call sub.msvcrt.dll_fseek
test eax, eax
je 0x14002b7d3
mov rdx, qword [rbx]
lea rcx, str._s:_failed_to_skip_archive_symbol_table_n
call fcn.14002b2b5
xor eax, eax
jmp 0x14002b80a
cmp esi, edi
jae 0x14002b658
mov rdx, qword [rbx]
lea rcx, str._s:_the_archive_index_is_empty_n
jmp 0x14002b63c
mov r12d, edi
lea rbp, [rsp + 0x48]
mov r9, qword [rbx + 8]
mov edx, 1
mov r8, r12
mov rcx, rbp
call sub.msvcrt.dll_fread
cmp r12, rax
jne 0x14002b702
mov edx, edi
mov rcx, rbp
sub esi, edi
call fcn.14002b4e8
mov rcx, r12
mov edx, esi
imul rcx, rax
mov r8, rax
mov qword [rbx + 0x10], rax
cmp rax, rcx
mov rax, rcx
cmovae rax, r8
cmp rdx, rax
jae 0x14002b6c0
mov dword [rsp + 0x20], esi
mov rdx, qword [rbx]
mov r9d, edi
lea rcx, str._s:_the_archive_index_is_supposed_to_have_0x_lx_entries_of__d_bytes__but_the_size_is_only_0x_lx_n
call fcn.14002b2b5
jmp 0x14002b641
mov qword [rsp + 0x38], r8
call sub.msvcrt.dll_malloc
mov r8, qword [rsp + 0x38]
lea rcx, str.Out_of_memory_whilst_trying_to_read_archive_symbol_index_n
test rax, rax
mov rbp, rax
je 0x14002b7a0
mov r9, qword [rbx + 8]
mov rcx, rax
mov rdx, r12
call sub.msvcrt.dll_fread
mov rcx, qword [rbx + 0x10]
cmp rcx, rax
je 0x14002b711
mov rcx, rbp
call sub.msvcrt.dll_free
mov rdx, qword [rbx]
lea rcx, str._s:_failed_to_read_archive_index_n
jmp 0x14002b63c
mov eax, edi
xor r13d, r13d
xor r12d, r12d
imul eax, ecx
shl rcx, 3
sub esi, eax
call sub.msvcrt.dll_malloc
mov qword [rbx + 0x18], rax
test rax, rax
jne 0x14002b741
mov rcx, rbp
call sub.msvcrt.dll_free
lea rcx, str.Out_of_memory_whilst_trying_to_convert_the_archive_symbol_index_n
jmp 0x14002b7a0
mov eax, r12d
cmp rax, qword [rbx + 0x10]
jae 0x14002b76a
mov rdx, qword [rbx + 0x18]
mov ecx, r13d
inc r12d
add r13d, edi
add rcx, rbp
lea r14, [rdx + rax*8]
mov edx, edi
call fcn.14002b4e8
mov qword [r14], rax
jmp 0x14002b741
mov rcx, rbp
call sub.msvcrt.dll_free
test esi, esi
jne 0x14002b785
mov rdx, qword [rbx]
lea rcx, str._s:_the_archive_has_an_index_but_no_symbols_n
jmp 0x14002b63c
mov rcx, rsi
call sub.msvcrt.dll_malloc
mov qword [rbx + 0x20], rax
mov rcx, rax
test rax, rax
jne 0x14002b7aa
lea rcx, str.Out_of_memory_whilst_trying_to_read_archive_index_symbol_table_n
call fcn.14002b2b5
jmp 0x14002b641
mov qword [rbx + 0x28], rsi
mov r9, qword [rbx + 8]
mov r8, rsi
mov edx, 1
call sub.msvcrt.dll_fread
cmp rsi, rax
je 0x14002b7d3
mov rdx, qword [rbx]
lea rcx, str._s:_failed_to_read_archive_index_symbol_table_n
jmp 0x14002b63c
mov r9, qword [rbx + 8]
lea rcx, [rbx + 0x58]
mov r8d, 0x3c
mov edx, 1
call sub.msvcrt.dll_fread
cmp rax, 0x3c
je 0x14002b805
test rax, rax
je 0x14002b805
mov rdx, qword [rbx]
lea rcx, str._s:_failed_to_read_archive_header_following_archive_index_n
jmp 0x14002b63c
mov eax, 1
add rsp, 0x50
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret