Function at 0x1400a5c80
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x130]
sub rsp, 0x230
mov rax, qword [0x1404b3028]
xor rax, rsp
mov qword [rbp + 0x120], rax
mov r12, r8
mov rdi, rdx
mov r13, rcx
mov qword [rsp + 0x50], rcx
xor eax, eax
mov r14d, eax
mov dword [rsp + 0x30], eax
test rdx, rdx
je 0x1400a64ae
cmp qword [rcx], rax
je 0x1400a6490
call fcn.1400a4c90
test rax, rax
js 0x1400a6472
mov rcx, r13
call fcn.1400a4c90
mov rsi, rax
mov rcx, r13
call fcn.1400a4c90
cmp rsi, rax
jne 0x1400a6450
mov rcx, qword [r13]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_clearerr]
call fcn.140044e20
mov qword [rsp + 0x38], rax
lea rcx, [rsi + 1]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
test rax, rax
je 0x1400a5d51
mov byte [rax + rsi], 0
mov ecx, Ordinal_27
call fcn.14003b21c
mov qword [rsp + 0x38], rax
mov qword [rax], r15
mov qword [rax + 8], rsi
mov edx, 1
mov word [rax + 0x10], dx
mov byte [rax + 0x12], dl
jmp 0x1400a5d5b
call fcn.140044e20
mov edx, 1
mov r15, rax
mov qword [rsp + 0x38], rax
mov rbx, rax
mov r9, qword [r13]
mov r8, rsi
mov rcx, qword [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rsi, rax
mov rcx, r13
call fcn.1400a42f0
mov r13d, 0xffff
test al, al
je 0x1400a621f
xor al, al
lea r12, str.C:LibrarieswxWidgets3.2.4_srccommon_ffile.cpp
lea r13, str.wxFFile::ReadAll
xor r15d, r15d
lea rcx, [0x14033a5f8]
test al, al
jne 0x1400a5e02
mov rdx, rcx
lea rcx, [rbp + 0xc0]
call fcn.140044710
mov rdi, rax
or r14d, 1
mov dword [rsp + 0x30], r14d
cmp dword [0x1404c4ab8], 0
je 0x1400a5de5
call sub.KERNEL32.dll_GetCurrentThreadId
cmp eax, dword [0x1404c4ab8]
je 0x1400a5de5
call fcn.140051d10
jmp 0x1400a5dec
movzx eax, byte [reloc.WS2_32.dll_accept]
test al, al
je 0x1400a5e02
mov rcx, rdi
call fcn.1400518b0
cmp eax, 1
jb 0x1400a5e02
mov dil, 1
jmp 0x1400a5e05
xor dil, dil
test r14b, 1
je 0x1400a5e28
and r14d, 0xfffffffe
mov rcx, qword [rbp + 0xe0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rcx, [rbp + 0xc0]
call fcn.1400119a0
test dil, dil
je 0x1400a6211
lea rax, [rbp - 0x80]
mov qword [rsp + 0x30], rax
lea rdx, str.Read_error_on_file__s
lea rcx, [rbp + 0xf0]
call fcn.140010ee0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], r15w
mov qword [rbp + 0x30], r15
mov qword [rbp + 0x38], r15
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r15w
mov qword [rbp], r15
mov qword [rbp + 8], r15
call fcn.14007be90
test rax, rax
je 0x1400a5eb4
lea r9, [rbp + 0x10]
lea r8, [rbp - 0x20]
lea rdx, [rbp + 0xf0]
mov rcx, rax
call fcn.14007c2d0
mov rdi, rax
test rax, rax
jne 0x1400a5ec3
lea rcx, [rbp + 0xf0]
call fcn.14007d380
mov rdi, rax
call fcn.140044e20
mov qword [rsp + 0x58], rax
call fcn.140044e20
mov qword [rsp + 0x60], rax
call fcn.140044e20
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdi
mov qword [rsp + 0x78], r15
lea rdx, str.wx.sys_error
lea rcx, [rbp + 0xc0]
call fcn.140010ee0
nop
mov rdx, qword [rsp + 0x50]
add rdx, 8
lea rcx, [rbp - 0x80]
call fcn.14003d6e0
mov rsi, rax
mov qword [rsp + 0x40], rax
mov edi, 1
mov dword [rbp + 0x40], edi
mov qword [rbp + 0x48], r12
mov qword [rbp + 0x58], r13
mov dword [rbp + 0x50], WSAGetLastError
lea rax, [0x14033a5f8]
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x68], r15
mov qword [rbp + 0x70], r15
call sub.KERNEL32.dll_GetCurrentThreadId
mov dword [rbp + 0x78], eax
mov qword [rbp + 0x80], r15
xorps xmm0, xmm0
movups xmmword [rbp + 0x88], xmm0
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], 7
mov word [rbp + 0x88], r15w
mov qword [rbp + 0xa8], r15
mov qword [rbp + 0xb0], r15
call sub.KERNEL32.dll_GetLastError
mov r8d, eax
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x40]
call fcn.14005c970
mov r15, rax
mov qword [rsp + 0x30], rsi
mov edx, edi
lea rcx, [rsp + 0x58]
call fcn.1400559f0
mov ecx, eax
and ecx, 6
cmp ecx, eax
je 0x1400a5fff
cmp qword [0x1404b3060], 0
je 0x1400a5fff
lea rax, str.format_specifier_doesnt_match_argument_type
mov qword [rsp + 0x20], rax
lea r9, str._argtype___wxFormatString::Arg_String____argtype
lea r8, str.wxArgNormalizerWchar_class_wxString_const__::wxArgNormalizerWchar
mov edx, 0x230
lea rcx, str.C:LibrarieswxWidgets3.2.4includewx_strvararg.h
call fcn.140041e40
cmp byte [0x1404c47a8], 0
je 0x1400a5fff
mov byte [0x1404c47a8], 0
int3
lea rcx, [rsp + 0x58]
call fcn.140055070
mov rdi, rax
lea rcx, [rsp + 0x30]
call fcn.140056960
mov r8, rax
mov rdx, rdi
mov rcx, r15
call fcn.14003f190
nop
mov rcx, qword [rsi + 0x20]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, rsi
call fcn.1400119a0
nop
mov rcx, qword [rbp + 0xa8]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [rbp + 0xa0]
cmp rdx, 8
jb 0x1400a608b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a6086
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a61fc
call fcn.14003b258
xor r15d, r15d
mov qword [rbp + 0x98], r15
mov qword [rbp + 0xa0], 7
mov word [rbp + 0x88], r15w
mov rdi, qword [rbp + 0x80]
test rdi, rdi
je 0x1400a6105
lea r8, [0x14003f090]
mov rdx, qword [rdi + 0x20]
mov rcx, qword [rdi + 0x28]
call fcn.140059540
mov qword [rdi + 0x30], r15
mov rcx, qword [rdi + 0x20]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
lea r8, [0x14003f050]
mov rdx, qword [rdi]
mov rcx, qword [rdi + 8]
call fcn.140059540
mov qword [rdi + 0x10], r15
mov rcx, qword [rdi]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
lea edx, [r15 + 0x40]
mov rcx, rdi
call fcn.14003b258
nop
mov rcx, qword [rbp + 0xe0]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rcx, [rbp + 0xc0]
call fcn.1400119a0
nop
lea rcx, [rsp + 0x58]
call fcn.14003dbf0
nop
mov rcx, qword [rbp]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [rbp - 8]
cmp rdx, 8
jb 0x1400a6174
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a616f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a6203
call fcn.14003b258
mov qword [rbp - 0x10], r15
mov qword [rbp - 8], 7
mov word [rbp - 0x20], r15w
mov rcx, qword [rbp + 0x30]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [rbp + 0x28]
cmp rdx, 8
jb 0x1400a61cb
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a61c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400a620a
call fcn.14003b258
mov qword [rbp + 0x20], r15
mov qword [rbp + 0x28], 7
mov word [rbp + 0x10], r15w
mov rcx, qword [rbp + 0x110]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea rcx, [rbp + 0xf0]
call fcn.1400119a0
mov al, 1
jmp 0x1400a5da2
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
xor dil, dil
mov r13d, 0xffff
jmp 0x1400a6414
cmp byte [r15 + 0x12], 0
jne 0x1400a626c
cmp qword [0x1404b3060], 0
je 0x1400a626c
lea rax, str.cannot_shrink_non_owned_buffer
mov qword [rsp + 0x20], rax
lea r9, str.this__m_data__m_owned
lea r8, str.wxCharTypeBuffer_char_::shrink
mov edx, 0x15b
lea rcx, str.C:LibrarieswxWidgets3.2.4includewx_buffer.h
call fcn.140041e40
cmp byte [0x1404c47a8], 0
je 0x1400a626c
mov byte [0x1404c47a8], 0
int3
cmp word [rbx + 0x10], 1
je 0x1400a62b9
cmp qword [0x1404b3060], 0
je 0x1400a62b9
lea rax, str.cant_shrink_shared_buffer
mov qword [rsp + 0x20], rax
lea r9, str.this__m_data__m_ref__1
lea r8, str.wxCharTypeBuffer_char_::shrink
mov edx, 0x15c
lea rcx, str.C:LibrarieswxWidgets3.2.4includewx_buffer.h
call fcn.140041e40
cmp byte [0x1404c47a8], 0
je 0x1400a62b9
mov byte [0x1404c47a8], 0
int3
cmp rsi, qword [rbx + 8]
jbe 0x1400a6302
cmp qword [0x1404b3060], 0
je 0x1400a6302
mov qword [rsp + 0x20], 0
lea r9, str.len___this__length__
lea r8, str.wxCharTypeBuffer_char_::shrink
mov edx, 0x15e
lea rcx, str.C:LibrarieswxWidgets3.2.4includewx_buffer.h
call fcn.140041e40
cmp byte [0x1404c47a8], 0
je 0x1400a6302
mov byte [0x1404c47a8], 0
int3
mov qword [rbx + 8], rsi
mov rax, qword [rbx]
mov byte [rsi + rax], 0
xorps xmm0, xmm0
movups xmmword [rbp - 0x50], xmm0
xor eax, eax
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 7
mov word [rbp - 0x50], ax
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x28], rax
mov r9, r12
mov r8, qword [rbx + 8]
mov rdx, qword [rbx]
lea rcx, [rsp + 0x40]
call fcn.140043df0
nop
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
mov rdx, qword [rdx]
lea rcx, [rbp - 0x50]
call fcn.140038360
nop
call fcn.140044e20
mov rcx, qword [rsp + 0x40]
cmp rcx, rax
je 0x1400a639c
add word [rcx + 0x10], r13w
jne 0x1400a6396
mov rsi, qword [rsp + 0x40]
test rsi, rsi
je 0x1400a6396
cmp byte [rsi + 0x12], 0
je 0x1400a6389
mov rcx, qword [rsi]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov edx, Ordinal_27
mov rcx, rsi
call fcn.14003b258
call fcn.140044e20
nop
lea rax, [rbp - 0x50]
cmp rdi, rax
je 0x1400a63c3
movups xmm2, xmmword [rdi]
movups xmm3, xmmword [rdi + 0x10]
movups xmm0, xmmword [rbp - 0x50]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rbp - 0x40]
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rbp - 0x50], xmm2
movups xmmword [rbp - 0x40], xmm3
mov dil, 1
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x1400a6414
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400a640e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400a640e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14003b258
nop
call fcn.140044e20
cmp rbx, rax
je 0x1400a6447
add word [rbx + 0x10], r13w
jne 0x1400a6441
cmp byte [rbx + 0x12], 0
je 0x1400a6434
mov rcx, qword [rbx]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov edx, Ordinal_27
mov rcx, rbx
call fcn.14003b258
call fcn.140044e20
nop
movzx eax, dil
jmp 0x1400a64f5
cmp qword [0x1404b3060], r14
je 0x1400a64f3
lea rax, str.huge_file_not_supported
lea r9, str.__wxFileOffset_length__Length___
mov edx, 0x5e
jmp 0x1400a64ca
cmp qword [0x1404b3060], r14
je 0x1400a64f3
lea rax, [0x14034b3d8]
lea r9, str._Length_____0_
mov edx, 0x5c
jmp 0x1400a64ca
cmp qword [0x1404b3060], rax
je 0x1400a64f3
lea rax, str.cant_read_from_closed_file
lea r9, str._IsOpened___
mov edx, 0x5b
jmp 0x1400a64ca
cmp qword [0x1404b3060], rax
je 0x1400a64f3
lea rax, str.invalid_parameter
lea r9, str._str_
mov edx, 0x5a
mov qword [rsp + 0x20], rax
lea r8, str.wxFFile::ReadAll
lea rcx, str.C:LibrarieswxWidgets3.2.4_srccommon_ffile.cpp
call fcn.140042050
cmp byte [0x1404c47a8], r14b
je 0x1400a64f3
mov byte [0x1404c47a8], r14b
int3
xor al, al
mov rcx, qword [rbp + 0x120]
xor rcx, rsp
call fcn.14003b100
mov rbx, qword [rsp + 0x288]
add rsp, 0x230
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret