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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x418
mov rax, qword [0x180173200]
xor rax, rsp
mov qword [rsp + 0x400], rax
mov rax, qword [rsp + 0x430]
mov rax, qword [rax]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0xa0], 0xffffffffffffffff
mov qword [rsp + 0x88], 0
mov qword [rsp + 0xb0], 0
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0x90], 0
mov dword [rsp + 0x68], 0
mov byte [rsp + 0x60], 0
mov dword [rsp + 0x78], 0
mov rax, qword [rsp + 0x428]
mov qword [rsp + 0xb8], rax
cmp qword [rsp + 0xb8], 0
jne 0x1800d25b8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x80
lea rdx, [rsp + 0x100]
mov ecx, eax
call fcn.1800c2ee0
mov r9, rax
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_invalid_path_name_for_CA_file__s:__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
jmp 0x1800d2b58
mov qword [rsp + 0x30], 0
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 3
xor r9d, r9d
xor r8d, r8d
mov edx, 0x80000000
mov rcx, qword [rsp + 0xb8]
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov qword [rsp + 0xa0], rax
cmp qword [rsp + 0xa0], 0xffffffffffffffff
jne 0x1800d2641
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x80
lea rdx, [rsp + 0x180]
mov ecx, eax
call fcn.1800c2ee0
mov r9, rax
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_failed_to_open_CA_file__s:__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
jmp 0x1800d2b58
lea rdx, [rsp + 0xd0]
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
jne 0x1800d269f
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x80
lea rdx, [rsp + 0x200]
mov ecx, eax
call fcn.1800c2ee0
mov r9, rax
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_failed_to_determine_size_of_CA_file__s:__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
jmp 0x1800d2b58
cmp qword [rsp + 0xd0], 0x100000
jle 0x1800d26d1
mov r8d, 0x100000
lea rdx, str.schannel:_CA_file_exceeds_max_size_of__u_bytes
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
jmp 0x1800d2b58
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x90], rax
mov rax, qword [rsp + 0x90]
inc rax
mov rcx, rax
call qword [fcn.1800fb170]
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x88], 0
jne 0x1800d2715
mov dword [rsp + 0x64], reloc.WLDAP32.dll_Ordinal_27
jmp 0x1800d2b58
mov dword [rsp + 0x64], 0
mov eax, dword [rsp + 0x68]
cmp rax, qword [rsp + 0x90]
jae 0x1800d27fb
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x90]
sub rcx, rax
mov rax, rcx
mov dword [rsp + 0xc0], eax
mov dword [rsp + 0x7c], 0
mov eax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x20], 0
lea r9, [rsp + 0x7c]
mov r8d, dword [rsp + 0xc0]
mov rdx, rax
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
jne 0x1800d27d1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x80
lea rdx, [rsp + 0x280]
mov ecx, eax
call fcn.1800c2ee0
mov r9, rax
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_failed_to_read_from_CA_file__s:__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
jmp 0x1800d2b58
cmp dword [rsp + 0x7c], 0
jne 0x1800d27e6
mov eax, dword [rsp + 0x68]
mov qword [rsp + 0x90], rax
jmp 0x1800d27f6
mov eax, dword [rsp + 0x7c]
mov ecx, dword [rsp + 0x68]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x68], eax
jmp 0x1800d271d
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x88]
add rcx, rax
mov rax, rcx
mov byte [rax], 0
cmp dword [rsp + 0x64], 0
je 0x1800d2820
jmp 0x1800d2b58
lea rcx, [0x180171750]
call fcn.1800fb030
mov qword [rsp + 0xe0], rax
mov byte [rsp + 0x60], 1
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0xb0], rax
movzx eax, byte [rsp + 0x60]
test eax, eax
je 0x1800d2b11
mov rax, qword [rsp + 0xb0]
movsx eax, byte [rax]
test eax, eax
je 0x1800d2b11
lea rdx, [0x180171770]
mov rcx, qword [rsp + 0xb0]
call fcn.1800ea670
mov qword [rsp + 0x98], rax
cmp qword [rsp + 0x98], 0
je 0x1800d28b1
lea rcx, [0x180171790]
call fcn.1800fb030
mov rcx, qword [rsp + 0x98]
movzx ecx, byte [rcx + rax]
call fcn.1800d2490
test eax, eax
jne 0x1800d28bb
mov byte [rsp + 0x60], 0
jmp 0x1800d2b0c
lea rdx, str._n_____END_CERTIFICATE_____
mov rcx, qword [rsp + 0x98]
call fcn.1800ea670
mov qword [rsp + 0xd8], rax
cmp qword [rsp + 0xd8], 0
jne 0x1800d290d
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_CA_file__s_is_not_correctly_formatted
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
mov byte [rsp + 0x60], 0
jmp 0x1800d2b0c
mov qword [rsp + 0xc8], 0
mov dword [rsp + 0xac], 0
mov dword [rsp + 0x80], 0
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xd8]
add rcx, rax
mov rax, rcx
sub rax, qword [rsp + 0x98]
mov dword [rsp + 0xa8], eax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xf0], rax
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0xe8], eax
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x38], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
mov r9d, reloc.WS2_32.dll_ntohl
mov r8d, 2
lea rdx, [rsp + 0xe8]
mov ecx, 2
call qword [sym.imp.CRYPT32.dll_CryptQueryObject]
test eax, eax
jne 0x1800d2a24
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x80
lea rdx, [rsp + 0x300]
mov ecx, eax
call fcn.1800c2ee0
mov r9, rax
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_failed_to_extract_certificate_from_CA_file__s:__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
mov byte [rsp + 0x60], 0
jmp 0x1800d2b0c
mov eax, dword [rsp + 0xa8]
mov rcx, qword [rsp + 0x98]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0xb0], rax
cmp dword [rsp + 0x80], 1
je 0x1800d2a7e
mov r9, qword [rsp + 0x428]
mov r8d, dword [rsp + 0x80]
lea rdx, str.schannel:_unexpected_content_type__d_when_extracting_certificate_from_CA_file__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
mov byte [rsp + 0x60], 0
jmp 0x1800d2b0c
xor r9d, r9d
mov r8d, 4
mov rdx, qword [rsp + 0xc8]
mov rcx, qword [rsp + 0x420]
call qword [sym.imp.CRYPT32.dll_CertAddCertificateContextToStore]
mov dword [rsp + 0xac], eax
mov rcx, qword [rsp + 0xc8]
call qword [sym.imp.CRYPT32.dll_CertFreeCertificateContext]
cmp dword [rsp + 0xac], 0
jne 0x1800d2b02
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x80
lea rdx, [rsp + 0x380]
mov ecx, eax
call fcn.1800c2ee0
mov r9, rax
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_failed_to_add_certificate_from_CA_file__s_to_certificate_store:__s
mov rcx, qword [rsp + 0x70]
call fcn.180060120
mov dword [rsp + 0x64], Ordinal_79
mov byte [rsp + 0x60], 0
jmp 0x1800d2b0c
mov eax, dword [rsp + 0x78]
inc eax
mov dword [rsp + 0x78], eax
jmp 0x1800d2849
cmp dword [rsp + 0x64], 0
jne 0x1800d2b58
cmp dword [rsp + 0x78], 0
jne 0x1800d2b3a
mov r8, qword [rsp + 0x428]
lea rdx, str.schannel:_did_not_add_any_certificates_from_CA_file__s_n
mov rcx, qword [rsp + 0x70]
call fcn.18005ffc0
jmp 0x1800d2b58
mov r9, qword [rsp + 0x428]
mov r8d, dword [rsp + 0x78]
lea rdx, str.schannel:_added__d_certificate_s__from_CA_file__s_n
mov rcx, qword [rsp + 0x70]
call fcn.18005ffc0
cmp qword [rsp + 0xa0], 0xffffffffffffffff
je 0x1800d2b71
mov rcx, qword [rsp + 0xa0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x88]
call qword [fcn.1800fb1f8]
mov qword [rsp + 0x88], 0
xor eax, eax
test eax, eax
jne 0x1800d2b71
mov qword [rsp + 0xb8], 0
xor eax, eax
test eax, eax
jne 0x1800d2b91
mov eax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x400]
xor rcx, rsp
call fcn.1800e95d0
add rsp, 0x418
ret