Function at 0x140240900
Capabilities:
Get file size
Read file on windows

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x540
lea rdi, [rsp + 0x40]
mov ecx, 0x140
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x550]
mov rax, qword [0x1404755e8]
xor rax, rsp
mov qword [rsp + 0x530], rax
mov qword [rsp + 0x48], 0xffffffffffffffff
mov qword [rsp + 0x68], 0
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 0
mov dword [rsp + 0x80], 0
mov rcx, qword [rsp + 0x558]
call fcn.14014b950
mov qword [rsp + 0x70], rax
cmp qword [rsp + 0x70], 0
jne 0x1402409d2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x100
lea rdx, [rsp + 0xa0]
mov ecx, eax
call fcn.140146c98
mov r9, rax
mov r8, qword [rsp + 0x558]
lea rdx, str.schannel:_invalid_path_name_for_CA_file__s:__s
mov rcx, qword [rsp + 0x560]
call fcn.14014c56c
mov dword [rsp + 0x40], Ordinal_79
jmp 0x140240c4a
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
mov r8d, 1
mov edx, 0x80000000
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0xffffffffffffffff
jne 0x140240a58
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x100
lea rdx, [rsp + 0x1c0]
mov ecx, eax
call fcn.140146c98
mov r9, rax
mov r8, qword [rsp + 0x558]
lea rdx, str.schannel:_failed_to_open_CA_file__s:__s
mov rcx, qword [rsp + 0x560]
call fcn.14014c56c
mov dword [rsp + 0x40], Ordinal_79
jmp 0x140240c4a
lea rdx, [rsp + 0x58]
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x140240ab3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x100
lea rdx, [rsp + 0x2e0]
mov ecx, eax
call fcn.140146c98
mov r9, rax
mov r8, qword [rsp + 0x558]
lea rdx, str.schannel:_failed_to_determine_size_of_CA_file__s:__s
mov rcx, qword [rsp + 0x560]
call fcn.14014c56c
mov dword [rsp + 0x40], Ordinal_79
jmp 0x140240c4a
cmp qword [rsp + 0x58], 0x100000
jle 0x140240ae5
mov r8d, 0x100000
lea rdx, str.schannel:_CA_file_exceeds_max_size_of__u_bytes
mov rcx, qword [rsp + 0x560]
call fcn.14014c56c
mov dword [rsp + 0x40], Ordinal_79
jmp 0x140240c4a
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
inc rax
mov rcx, rax
call qword [fcn.140148f89]
mov qword [rsp + 0x68], rax
cmp qword [rsp + 0x68], 0
jne 0x140240b1a
mov dword [rsp + 0x40], reloc.WLDAP32.dll_Ordinal_27
jmp 0x140240c4a
mov eax, dword [rsp + 0x80]
cmp rax, qword [rsp + 0x78]
jae 0x140240c07
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x78]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0x3e4], eax
mov dword [rsp + 0x3f4], 0
mov eax, dword [rsp + 0x80]
mov rcx, qword [rsp + 0x68]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x3f4]
mov r8d, dword [rsp + 0x3e4]
mov rdx, rax
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x140240bd1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x100
lea rdx, [rsp + 0x420]
mov ecx, eax
call fcn.140146c98
mov r9, rax
mov r8, qword [rsp + 0x558]
lea rdx, str.schannel:_failed_to_read_from_CA_file__s:__s
mov rcx, qword [rsp + 0x560]
call fcn.14014c56c
mov dword [rsp + 0x40], Ordinal_79
jmp 0x140240c4a
cmp dword [rsp + 0x3f4], 0
jne 0x140240be9
mov eax, dword [rsp + 0x80]
mov qword [rsp + 0x78], rax
jmp 0x140240c02
mov eax, dword [rsp + 0x3f4]
mov ecx, dword [rsp + 0x80]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x80], eax
jmp 0x140240b1a
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x68]
add rcx, rax
mov rax, rcx
mov byte [rax], 0
mov rax, qword [rsp + 0x560]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x558]
mov r8, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x550]
call fcn.1402404c0
mov dword [rsp + 0x40], eax
cmp qword [rsp + 0x48], 0xffffffffffffffff
je 0x140240c5d
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x68]
call qword [fcn.14014765c]
mov qword [rsp + 0x68], 0
xor eax, eax
test eax, eax
jne 0x140240c5d
cmp qword [rsp + 0x70], 0
je 0x140240c92
mov rcx, qword [rsp + 0x70]
call fcn.14014765c
mov qword [rsp + 0x70], 0
xor eax, eax
test eax, eax
jne 0x140240c77
mov eax, dword [rsp + 0x40]
mov edi, eax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_getsockname
call fcn.14014a8e8
mov eax, edi
mov rcx, qword [rsp + 0x530]
xor rcx, rsp
call fcn.140148417
add rsp, 0x540
pop rdi
ret