Function at 0x140007a50
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket

Disassembly:
push rbx
push rbp
push rdi
push r13
push r14
sub rsp, 0x280
mov rax, qword [0x1402de400]
xor rax, rsp
mov qword [rsp + 0x260], rax
mov r13d, dword [rsp + 0x2e8]
mov r14, qword [rsp + 0x2d0]
mov rbx, qword [rsp + 0x2d8]
mov rdi, r9
mov r9d, r13d
mov rbp, rcx
mov byte [rsp + 0x4c], 5
mov byte [rsp + 0x4d], 1
call fcn.140007040
test eax, eax
je 0x140007fdc
mov qword [rsp + 0x278], rsi
test rdi, rdi
lea rsi, [0x14028b986]
mov qword [rsp + 0x270], r12
mov r12, rsi
lea rdx, [rsp + 0x4c]
cmovne r12, rdi
test r14, r14
movzx eax, byte [r12]
cmovne rsi, r14
neg al
sbb cl, cl
xor r9d, r9d
and cl, 2
lea r8d, [r9 + 3]
mov byte [rsp + 0x4e], cl
mov rcx, rbp
call sub.WS2_32.dll_send
cmp eax, 3
je 0x140007b19
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_send_SOCK5_request_header.
mov r8d, 0x190
jmp 0x140007fae
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x40]
mov rcx, rbp
lea r8d, [r9 + 2]
call sub.WS2_32.dll_recv
cmp eax, 2
je 0x140007b64
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_method_response.
mov r8d, 0x19a
jmp 0x140007fae
mov eax, dword [reloc.WS2_32.dll_accept]
cmp eax, 1
jg 0x140007ba5
movsx ecx, byte [rsp + 0x40]
movsx eax, byte [rsp + 0x41]
lea r9, str.sock5_ver___d_method___d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
lea rdx, str....._base_srcwin32TSocket.c
mov ecx, 1
mov r8d, 0x19e
call fcn.1400045a0
mov eax, dword [reloc.WS2_32.dll_accept]
movzx ecx, byte [rsp + 0x41]
test cl, cl
je 0x140007d18
cmp cl, 2
je 0x140007bec
cmp eax, 3
jg 0x140007fbf
movsx eax, cl
lea r9, str.unsupported_method__d.
lea rdx, str....._base_srcwin32TSocket.c
mov r8d, 0x1a2
mov ecx, 3
mov dword [rsp + 0x20], eax
call fcn.1400045a0
xor eax, eax
jmp 0x140007fcc
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
repne scasb al, byte [rdi]
mov rdi, rsi
mov byte [rsp + 0x60], 1
not rcx
lea rdx, [rcx - 1]
or rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
mov byte [rsp + 0x61], dl
not rcx
lea rdi, [rcx - 1]
lea rcx, [rsp + 0x62]
sub rcx, r12
nop
movzx eax, byte [r12]
inc r12
mov byte [rcx + r12 - 1], al
test al, al
jne 0x140007c20
movsxd rax, edx
mov byte [rsp + rax + 0x62], dil
sub rax, rsi
lea rcx, [rsp + rax + 0x63]
movzx eax, byte [rsi]
inc rsi
mov byte [rcx + rsi - 1], al
test al, al
jne 0x140007c41
lea edi, [rdi + rdx + 3]
lea rdx, [rsp + 0x60]
xor r9d, r9d
mov r8d, edi
mov rcx, rbp
call sub.WS2_32.dll_send
cmp eax, edi
je 0x140007c89
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_send_credentials.
mov r8d, 0x1b6
jmp 0x140007fae
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x40]
mov rcx, rbp
lea r8d, [r9 + 2]
call sub.WS2_32.dll_recv
cmp eax, 2
je 0x140007cd4
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_auth_response.
mov r8d, 0x1c0
jmp 0x140007fae
cmp dword [reloc.WS2_32.dll_accept], 1
jg 0x140007d0d
movsx ecx, byte [rsp + 0x40]
movsx eax, byte [rsp + 0x41]
lea r9, str.sock5_ver___d_status___d
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ecx
lea rdx, str....._base_srcwin32TSocket.c
mov ecx, 1
mov r8d, 0x1c4
call fcn.1400045a0
cmp byte [rsp + 0x41], 0
jne 0x140007fbf
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, rbx
repne scasb al, byte [rdi]
mov byte [rsp + 0x60], 5
mov byte [rsp + 0x61], 1
not rcx
mov byte [rsp + 0x62], al
mov byte [rsp + 0x63], 3
dec rcx
mov rdi, rcx
mov byte [rsp + 0x64], cl
lea rcx, [rsp + 0x65]
sub rcx, rbx
nop dword [rax + rax]
movzx eax, byte [rbx]
inc rbx
mov byte [rcx + rbx - 1], al
test al, al
jne 0x140007d50
movzx ecx, word [rsp + 0x2e0]
call sub.WS2_32.dll_htons
movsxd rcx, edi
add edi, 7
mov word [rsp + rcx + 0x65], ax
lea rdx, [rsp + 0x60]
xor r9d, r9d
mov rcx, rbp
mov r8d, edi
call sub.WS2_32.dll_send
cmp eax, edi
je 0x140007dac
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_send_SOCK5_command.
mov r8d, 0x1dd
jmp 0x140007fae
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x48]
mov rcx, rbp
lea r8d, [r9 + 4]
call sub.WS2_32.dll_recv
cmp eax, 4
je 0x140007df7
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_command_result.
mov r8d, 0x1ed
jmp 0x140007fae
cmp dword [reloc.WS2_32.dll_accept], 1
jg 0x140007e42
movsx ecx, byte [rsp + 0x4a]
movsx edx, byte [rsp + 0x49]
movsx eax, byte [rsp + 0x4b]
movsx edi, byte [rsp + 0x48]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], edx
lea r9, str.ver_d_rep_d_rsv_d_addr_type_d
lea rdx, str....._base_srcwin32TSocket.c
mov r8d, 0x1ff
mov ecx, 1
mov dword [rsp + 0x20], edi
call fcn.1400045a0
movzx eax, byte [rsp + 0x4b]
cmp al, 1
jne 0x140007e9a
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x60]
mov rcx, rbp
lea r8d, [r9 + 4]
call sub.WS2_32.dll_recv
cmp eax, 4
je 0x140007f70
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_ipv4_address.
mov r8d, 0x208
jmp 0x140007fae
cmp al, 4
jne 0x140007eed
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x60]
mov rcx, rbp
lea r8d, [r9 + 0x10]
call sub.WS2_32.dll_recv
cmp eax, 0x10
je 0x140007f70
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_ipv6_address.
mov r8d, 0x212
jmp 0x140007fae
cmp al, 3
jne 0x140007f70
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x44]
mov rcx, rbp
lea r8d, [r9 + 1]
call sub.WS2_32.dll_recv
cmp eax, 1
je 0x140007f39
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_length_of_domain_name.
mov r8d, 0x21f
jmp 0x140007fae
movzx r8d, byte [rsp + 0x44]
lea rdx, [rsp + 0x60]
xor r9d, r9d
mov rcx, rbp
call sub.WS2_32.dll_recv
movzx ecx, byte [rsp + 0x44]
cmp eax, ecx
je 0x140007f70
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_domain_name.
mov r8d, 0x225
jmp 0x140007fae
mov edx, r13d
mov rcx, rbp
call fcn.140007240
test eax, eax
jle 0x140007fbf
xor r9d, r9d
lea rdx, [rsp + 0x50]
mov rcx, rbp
lea r8d, [r9 + 2]
call sub.WS2_32.dll_recv
cmp eax, 2
je 0x140007fc3
cmp dword [reloc.WS2_32.dll_accept], 3
jg 0x140007fbf
lea r9, str.Fail_to_read_port.
mov r8d, 0x230
lea rdx, str....._base_srcwin32TSocket.c
mov ecx, 3
call fcn.1400045a0
xor eax, eax
jmp 0x140007fcc
xor eax, eax
cmp byte [rsp + 0x49], al
sete al
mov rsi, qword [rsp + 0x278]
mov r12, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.1401e42a0
add rsp, 0x280
pop r14
pop r13
pop rdi
pop rbp
pop rbx
ret