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

Disassembly:
push rbx
push rsi
push rdi
push r13
push r14
mov eax, 0x1090
call fcn.180227e80
sub rsp, rax
mov rax, qword [0x18032d860]
xor rax, rsp
mov qword [rsp + 0x1070], rax
mov r14, r8
mov qword [rsp + 0x60], r8
mov rdi, rdx
mov qword [rsp + 0x50], rdx
mov rsi, rcx
mov qword [rsp + 0x48], rcx
mov ebx, 0x1000
lea rcx, [rsp + 0x70]
xor r13d, r13d
mov r8d, ebx
xor edx, edx
mov qword [rsp + 0x58], r13
call fcn.180229410
test rsi, rsi
je 0x18001389b
test rdi, rdi
je 0x18001389b
test r14, r14
je 0x18001389b
mov qword [rsi], r13
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x10d8], rbp
mov qword [rdi], r13
mov qword [rsp + 0x1088], r12
mov qword [rsp + 0x1080], r15
mov qword [r14], r13
call fcn.1800138d0
mov esi, eax
test eax, eax
jne 0x180013806
mov r14, qword [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x30], r13
mov rcx, r14
mov dword [rsp + 0x28], 0x80
xor r8d, r8d
mov edx, 0x80000000
mov dword [rsp + 0x40], r13d
mov dword [rsp + 0x44], r13d
mov esi, r13d
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
cmp rax, 0xffffffffffffffff
jne 0x180013536
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
lea edx, [rbp + 3]
call fcn.18001ed70
mov esi, eax
jmp 0x1800135ec
lea rdx, [rsp + 0x40]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_GetFileSize]
mov edi, eax
cmp eax, 0xffffffff
je 0x1800135d3
cmp dword [rsp + 0x40], esi
jne 0x1800135d3
cmp eax, ebx
ja 0x1800135d3
test eax, eax
je 0x1800135cc
test dil, 7
jne 0x1800135cc
mov dword [rsp + 0x30], eax
lea r8, str..._srcwinwslib_proxy.c
lea rax, str.read_proxy_settings_file
mov qword [rsp + 0x28], r14
mov r9d, 0xc5
mov qword [rsp + 0x20], rax
lea rdx, str.__s:_d___s:__S_size__u__n
mov ecx, 2
call fcn.18002b690
lea r9, [rsp + 0x44]
mov qword [rsp + 0x20], r13
mov r8d, edi
lea rdx, [rsp + 0x70]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x1800135bf
cmp edi, dword [rsp + 0x44]
jne 0x1800135bf
mov ebx, edi
jmp 0x1800135e7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0x271b
jmp 0x1800135de
mov esi, reloc.WS2_32.dll_shutdown
jmp 0x1800135e7
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0x4b
mov ecx, eax
call fcn.18001ed70
mov esi, eax
test rbp, rbp
je 0x1800135f5
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test esi, esi
jne 0x18001380d
lea edx, [rsi + 0x38]
lea rcx, [0x180326020]
call fcn.180003ba0
mov r8d, ebx
lea rdx, [rsp + 0x70]
lea rcx, [rsp + 0x70]
call fcn.180003ae0
mov r8d, ebx
lea rcx, [rsp + 0x70]
xor edx, edx
mov r15, r13
mov r14, r13
mov r12, r13
call fcn.180228cc0
test rax, rax
je 0x180013644
lea rcx, [rsp + 0x70]
sub eax, ecx
mov ebx, eax
test ebx, ebx
je 0x18001386d
mov r8d, ebx
lea rcx, [rsp + 0x70]
mov edx, 0xa
mov edi, ebx
call fcn.180228cc0
mov rbp, rax
test rax, rax
je 0x180013674
mov byte [rax], r12b
mov edi, ebp
lea rax, [rsp + 0x70]
sub edi, eax
mov r8d, edi
lea rcx, [rsp + 0x70]
mov edx, 0x3a
call fcn.180228cc0
test rax, rax
je 0x180013692
mov byte [rax], r12b
lea r15, [rax + 1]
test rbp, rbp
je 0x1800136fa
sub ebx, edi
sub ebx, 1
je 0x1800136fa
lea ecx, [rdi + 1]
mov r8d, ebx
lea r14, [rsp + 0x70]
mov edx, 0xa
add r14, rcx
mov rcx, r14
call fcn.180228cc0
mov edi, r14d
test rax, rax
je 0x1800136c9
mov ebx, eax
mov byte [rax], r12b
sub ebx, r14d
mov r8d, ebx
mov edx, 0x3a
mov rcx, r14
call fcn.180228cc0
test rax, rax
je 0x1800136fa
mov byte [rax], r12b
lea ecx, [rbx - 1]
mov edx, eax
lea r12, [rax + 1]
sub edx, edi
cmp ecx, edx
cmovbe r12, r13
cmp r14, rax
jne 0x1800136fa
mov r14, r13
test r15, r15
je 0x18001376a
mov rbp, 0xffffffffffffffff
lea rax, [rsp + 0x70]
mov rbx, rbp
nop
inc rbx
cmp byte [rax + rbx], r13b
jne 0x180013710
nop dword [rax]
inc rbp
cmp byte [r15 + rbp], r13b
jne 0x180013720
lea edi, [rbx + rbp]
lea ecx, [rdi + 2]
call fcn.18022c454
mov ebx, ebx
lea rdx, [rsp + 0x70]
mov r8d, ebx
mov rcx, rax
mov r13, rax
call fcn.180228d60
lea rcx, [r13 + 1]
mov r8d, ebp
add rcx, rbx
mov byte [rbx + r13], 0x3a
mov rdx, r15
call fcn.180228d60
lea ecx, [rdi + 1]
mov byte [rcx + r13], 0
jmp 0x180013777
lea rcx, [rsp + 0x70]
call fcn.180232140
mov r13, rax
mov rbx, qword [rsp + 0x48]
test r13, r13
jne 0x18001378a
lea esi, [r13 + 0xc]
jmp 0x180013812
mov qword [rbx], r13
test r14, r14
je 0x1800137d1
mov rcx, r14
call fcn.180232140
mov rdi, qword [rsp + 0x50]
test rax, rax
jne 0x1800137ac
lea esi, [rax + 0xc]
xor r13d, r13d
jmp 0x180013817
mov qword [rdi], rax
test r12, r12
je 0x1800137d1
mov rcx, r12
call fcn.180232140
test rax, rax
jne 0x1800137c9
lea esi, [rax + 0xc]
xor r13d, r13d
jmp 0x180013817
mov rdx, qword [rsp + 0x60]
mov qword [rdx], rax
mov r9d, 0x62
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
lea r8, str..._srcwinwslib_proxy.c
lea rax, str.get_wslib_proxy_settings
lea rdx, [0x180257cc0]
mov qword [rsp + 0x20], rax
lea ecx, [r9 - 0x60]
call fcn.18002b690
jmp 0x18001386d
mov rbx, qword [rsp + 0x48]
jmp 0x180013817
mov rbx, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov ecx, esi
call fcn.18000b950
mov qword [rsp + 0x30], rax
lea r8, str..._srcwinwslib_proxy.c
mov r9d, 0x66
mov dword [rsp + 0x28], esi
lea rax, str.get_wslib_proxy_settings
lea rdx, str.__s:_d___s:_failed__d__s_n
mov qword [rsp + 0x20], rax
lea ecx, [r9 - 0x64]
call fcn.18002b690
mov rcx, qword [rbx]
test rcx, rcx
je 0x180013860
call fcn.18022c440
mov qword [rbx], r13
mov rcx, qword [rdi]
test rcx, rcx
je 0x18001386d
call fcn.18022c440
mov rax, qword [rsp + 0x58]
mov r15, qword [rsp + 0x1080]
mov r12, qword [rsp + 0x1088]
mov rbp, qword [rsp + 0x10d8]
test rax, rax
je 0x180013897
mov rcx, rax
call fcn.18022c440
mov eax, esi
jmp 0x1800138a0
mov eax, reloc.WS2_32.dll_shutdown
mov rcx, qword [rsp + 0x1070]
xor rcx, rsp
call fcn.180227e50
add rsp, 0x1090
pop r14
pop r13
pop rdi
pop rsi
pop rbx
ret