joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14000f2c0
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
movzx eax, dl
mov dword [rsp + 0x34], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov r8d, 0x20
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x14000f2f7
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret

Function at 0x14000f380
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
movzx eax, dl
mov dword [rsp + 0x2c], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
xor esi, esi
lea r9, [rsp + 0x2c]
xor edx, edx
mov r8d, 0xb
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14000f3bf
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x14000f440
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
mov dword [rsp + 0x2c], edx
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
xor esi, esi
lea r9, [rsp + 0x2c]
xor edx, edx
mov r8d, 0xa
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14000f47c
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x14000f500
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
movzx eax, dl
mov dword [rsp + 0x34], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0x29
mov r8d, 0xb
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x14000f537
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret

Function at 0x14000f5c0
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
mov dword [rsp + 0x2c], edx
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
xor esi, esi
lea r9, [rsp + 0x2c]
xor edx, edx
mov r8d, 4
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14000f5fc
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x14000f680
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
mov eax, dword [rdx]
mov edx, dword [r8]
shl rdx, 0x20
or rdx, rax
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], 8
xor esi, esi
lea r9, [rsp + 0x28]
xor edx, edx
mov r8d, 0xc
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14000f6c9
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x14000f6e0
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x48
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x40], r8d
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 0x14
lea r9, [rsp + 0x30]
mov edx, 0x29
mov r8d, 0xc
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x14000f71d
xor eax, eax
add rsp, 0x48
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x48
ret
Function at 0x14000f730
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
mov eax, dword [rdx]
mov edx, dword [r8]
shl rdx, 0x20
or rdx, rax
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], 8
xor esi, esi
lea r9, [rsp + 0x28]
xor edx, edx
mov r8d, 0xd
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14000f779
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x14000f790
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x48
movups xmm0, xmmword [rdx]
movaps xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x40], r8d
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 0x14
lea r9, [rsp + 0x30]
mov edx, 0x29
mov r8d, 0xd
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x14000f7cd
xor eax, eax
add rsp, 0x48
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x48
ret

Function at 0x14000f860
Capabilities:
Send data
Send data on socket

Disassembly:
push rsi
sub rsp, 0x20
mov rax, r8
mov rsi, rcx
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
mov rcx, qword [rdx]
mov rdx, rax
xor r9d, r9d
call sub.ws2_32.dll_send
cmp eax, 0xffffffff
je 0x14000f899
cdqe
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x14000f8af
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x20
pop rsi
ret

Function at 0x14000f8c0
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rsi
sub rsp, 0x20
mov rax, r8
mov rsi, rcx
mov rcx, qword [rdx]
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
mov rdx, rax
xor r9d, r9d
call fcn.1400944e4
cmp eax, 0xffffffff
je 0x14000f8f3
cdqe
jmp 0x14000f901
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x14000f909
xor eax, eax
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x14000f91a
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x20
pop rsi
ret

Function at 0x14000f930
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rsi
sub rsp, 0x20
mov rax, r8
mov rsi, rcx
mov rcx, qword [rdx]
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
mov rdx, rax
mov r9d, 2
call fcn.1400944e4
cmp eax, 0xffffffff
je 0x14000f966
cdqe
jmp 0x14000f974
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x14000f97c
xor eax, eax
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x14000f98d
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x20
pop rsi
ret

Function at 0x14000f9a0
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x28
movzx eax, dl
mov dword [rsp + 0x24], eax
mov rcx, qword [rcx]
lea r8, [rsp + 0x24]
mov edx, 0x8004667e
call sub.ws2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x14000f9c9
xor eax, eax
add rsp, 0x28
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x28
ret
Function at 0x1400144a0
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x70
mov rsi, rcx
movabs r14, 0x8000000000000000
lea rcx, [rsp + 0x40]
call sym._ZN3std3sys3pal7windows7to_u16s5inner17h012bd72fba547a21E.llvm.11506732742244318735
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x48]
cmp rax, r14
je 0x140014503
mov rdx, qword [rsp + 0x50]
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rdx
lea rcx, [rsp + 0x28]
lea rdx, [rsp + 0x58]
call sym.std::sys::pal::windows::args::from_wide_to_user_path::h2fcd44965027f78e
mov rdi, qword [rsp + 0x28]
cmp rdi, r14
jne 0x14001451a
mov rcx, qword [rsp + 0x30]
call sym._ZN4core3ptr42drop_in_place_LT_std..io..error..Error_GT_17h14cde6b578e19753E.llvm.12236185191024474919
mov qword [rsi], r14
mov rax, rsi
add rsp, 0x70
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
mov rbx, qword [rsp + 0x30]
mov r15, qword [rsp + 0x38]
mov rcx, rbx
call sub.KERNEL32.dll_GetFileAttributesW
cmp eax, 0xffffffff
je 0x14001453e
mov qword [rsi], rdi
mov qword [rsi + 8], rbx
mov qword [rsi + 0x10], r15
jmp 0x14001450b
mov qword [rsi], r14
test rdi, rdi
je 0x14001450b
add rdi, rdi
mov r8d, 2
mov rcx, rbx
mov rdx, rdi
call sym.__rust_dealloc
jmp 0x14001450b

Function at 0x140014720
Capabilities:
Terminate process

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rdi, qword [rcx]
mov rcx, rdi
mov edx, 1
call sub.KERNEL32.dll_TerminateProcess
test eax, eax
je 0x14001473e
xor esi, esi
jmp 0x140014797
call sub.KERNEL32.dll_GetLastError
mov esi, eax
cmp eax, 5
jne 0x14001478f
mov rcx, rdi
xor edx, edx
call sub.KERNEL32.dll_WaitForSingleObject
test eax, eax
je 0x140014761
cmp eax, 0x102
je 0x14001473a
jmp 0x14001477a
mov dword [rsp + 0x24], 0
lea rdx, [rsp + 0x24]
mov rcx, rdi
call sub.KERNEL32.dll_GetExitCodeProcess
test eax, eax
jne 0x14001473a
call sub.KERNEL32.dll_GetLastError
shl rax, 0x20
or rax, 2
mov rcx, rax
call sym._ZN4core3ptr42drop_in_place_LT_std..io..error..Error_GT_17h14cde6b578e19753E.llvm.12236185191024474919
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x28
pop rdi
pop rsi
ret

Function at 0x140017a40
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
mov dword [rsp + 0x34], r9d
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x140017a6a
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret

Function at 0x140017a80
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
movzx eax, word [rsp + 0x60]
mov word [rsp + 0x34], r9w
mov word [rsp + 0x36], ax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x140017ab5
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret
Function at 0x140017e40
Capabilities:
Resolve dns

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x200
mov rsi, rcx
mov rbx, qword [rdx]
mov rdi, qword [rdx + 8]
movzx ebp, word [rdx + 0x10]
mov word [rsp + 0x2e], bp
mov rax, qword [0x140132138]
cmp rax, 3
jne 0x140017f3e
cmp rdi, 0x17f
ja 0x140017f57
lea r14, [rsp + 0x80]
mov rcx, r14
mov rdx, rbx
mov r8, rdi
call sym.memcpy
mov byte [rsp + rdi + 0x80], 0
inc rdi
lea rcx, [rsp + 0x38]
mov rdx, r14
mov r8, rdi
call sym.core::ffi::c_str::CStr::from_bytes_with_nul::h09502d6fe7c539b5
cmp qword [rsp + 0x38], 0
je 0x140017ece
lea rax, [0x140107050]
mov qword [rsi + 8], rax
mov qword [rsi], 1
jmp 0x140017f6a
mov rcx, qword [rsp + 0x40]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
mov dword [rsp + 0x58], 1
mov qword [rsp + 0x30], 0
lea r8, [rsp + 0x50]
lea r9, [rsp + 0x30]
xor edx, edx
call fcn.1400944b4
test eax, eax
je 0x140017f26
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
jmp 0x140017f6a
mov rax, qword [rsp + 0x30]
mov qword [rsi + 8], rax
mov qword [rsi + 0x10], rax
mov word [rsi + 0x18], bp
xor eax, eax
mov qword [rsi], rax
jmp 0x140017f6a
lea rcx, [0x140132138]
call sym.std::sync::once_lock::OnceLock_T_::initialize::h1fd6563bcfbb4553
cmp rdi, 0x17f
jbe 0x140017e7e
lea r9, [rsp + 0x2e]
mov rcx, rsi
mov rdx, rbx
mov r8, rdi
call sym.std::sys::pal::common::small_c_string::run_with_cstr_allocating::h7658e3c89c5ea22e
mov rax, rsi
add rsp, 0x200
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret

Function at 0x140017f80
Capabilities:
Connect socket

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
mov rbx, r8
mov rsi, rcx
test rdx, rdx
je 0x140017fa2
mov qword [rsi + 8], rbx
mov qword [rsi], 1
jmp 0x140018074
mov rax, qword [0x140132138]
cmp rax, 3
jne 0x14001807f
lea rcx, [rsp + 0x20]
mov rdx, rbx
mov r8d, 1
call sym.std::sys::pal::windows::net::Socket::new::h0ed2058f4d3a2eef
cmp qword [rsp + 0x20], 0
mov rdi, qword [rsp + 0x28]
je 0x140017fe3
mov qword [rsi + 8], rdi
mov qword [rsi], 1
jmp 0x140018074
cmp word [rbx], 0
je 0x140018004
movups xmm0, xmmword [rbx + 4]
mov eax, dword [rbx + 0x14]
mov edx, dword [rbx + 0x18]
movzx ecx, word [rbx + 0x1c]
mov r8d, 0x1c
mov r9w, 0x17
jmp 0x140018019
mov eax, dword [rbx + 2]
movzx ecx, word [rbx + 6]
mov r8d, 0x10
mov r9w, 2
xorps xmm0, xmm0
rol cx, 8
mov word [rsp + 0x20], r9w
mov word [rsp + 0x22], cx
mov dword [rsp + 0x24], eax
movups xmmword [rsp + 0x28], xmm0
mov dword [rsp + 0x38], edx
lea rdx, [rsp + 0x20]
mov rcx, rdi
call sub.ws2_32.dll_connect
cmp eax, 0xffffffff
je 0x140018054
mov qword [rsi + 8], rdi
mov qword [rsi], 0
jmp 0x140018074
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov qword [rsi], 1
mov rcx, rdi
call sub.ws2_32.dll_closesocket
mov rax, rsi
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
lea rcx, [0x140132138]
call sym.std::sync::once_lock::OnceLock_T_::initialize::h1fd6563bcfbb4553
jmp 0x140017fb3
Function at 0x140018160
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
xor r9d, r9d
cmp r8d, 0x3b9aca00
je 0x1400181be
mov r9d, 0x3e8
mov rax, rdx
mul r9
mov r9d, 0xffffffff
jo 0x1400181be
mov edx, r8d
imul rdx, rdx, 0x431bde83
shr rdx, 0x32
add rax, rdx
jb 0x1400181be
imul edx, edx, 0xf4240
xor r10d, r10d
sub r8d, edx
setne r10b
add rax, r10
jb 0x1400181be
mov r9d, 0xffffffff
cmp rax, r9
cmovb r9, rax
test r9, r9
je 0x140018201
mov dword [rsp + 0x34], r9d
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov r8d, 0x1006
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x1400181ef
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret
lea rax, str.cannot_set_a_0_duration_timeout
add rsp, 0x38
ret

Function at 0x140018210
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
xor r9d, r9d
cmp r8d, 0x3b9aca00
je 0x14001826e
mov r9d, 0x3e8
mov rax, rdx
mul r9
mov r9d, 0xffffffff
jo 0x14001826e
mov edx, r8d
imul rdx, rdx, 0x431bde83
shr rdx, 0x32
add rax, rdx
jb 0x14001826e
imul edx, edx, 0xf4240
xor r10d, r10d
sub r8d, edx
setne r10b
add rax, r10
jb 0x14001826e
mov r9d, 0xffffffff
cmp rax, r9
cmovb r9, rax
test r9, r9
je 0x1400182b1
mov dword [rsp + 0x34], r9d
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov r8d, 0x1005
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x14001829f
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret
lea rax, str.cannot_set_a_0_duration_timeout
add rsp, 0x38
ret

Function at 0x140018400
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rsi
sub rsp, 0x20
mov rax, r8
mov rsi, rcx
mov rcx, qword [rdx]
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
mov rdx, rax
mov r9d, 2
call fcn.1400944e4
cmp eax, 0xffffffff
je 0x140018436
cdqe
jmp 0x140018444
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x14001844c
xor eax, eax
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x14001845d
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x20
pop rsi
ret

Function at 0x140018470
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rsi
sub rsp, 0x20
mov rax, r8
mov rsi, rcx
mov rcx, qword [rdx]
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
mov rdx, rax
xor r9d, r9d
call fcn.1400944e4
cmp eax, 0xffffffff
je 0x1400184a3
cdqe
jmp 0x1400184b1
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x1400184b9
xor eax, eax
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x1400184ca
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x20
pop rsi
ret
Function at 0x1400184e0
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov rdi, rdx
mov rdx, qword [rdx + 8]
mov rsi, qword [rdi + 0x10]
mov rax, rdx
sub rax, rsi
jb 0x14001855a
mov rcx, qword [rcx]
cmp rax, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, rax
mov rdx, qword [rdi]
add rdx, rsi
xor r9d, r9d
call fcn.1400944e4
cmp eax, 0xffffffff
je 0x14001853b
cdqe
add rsi, rax
mov qword [rdi + 0x10], rsi
mov rax, qword [rdi + 0x18]
cmp rax, rsi
cmova rsi, rax
mov qword [rdi + 0x18], rsi
xor eax, eax
jmp 0x140018553
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x14001854b
xor eax, eax
jmp 0x140018553
shl rax, 0x20
or rax, 2
add rsp, 0x28
pop rdi
pop rsi
ret
lea r8, [0x140107878]
mov rcx, rsi
call sym.core::slice::index::slice_start_index_len_fail::hbd6084cc6531a7a6
int3

Function at 0x140018570
Capabilities:
Receive data
Receive data on socket

Disassembly:
push rsi
sub rsp, 0x40
mov rax, r8
mov r8d, 0xffffffff
cmp r9, r8
cmovb r8, r9
mov rsi, rcx
mov dword [rsp + 0x38], 0
mov dword [rsp + 0x3c], 0
mov rcx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
lea rdx, [rsp + 0x3c]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0x38]
mov rdx, rax
call sub.ws2_32.dll_WSARecv
test eax, eax
je 0x1400185d2
call sub.ws2_32.dll_WSAGetLastError
cmp eax, 0x274a
jne 0x1400185e3
xorps xmm0, xmm0
movups xmmword [rsi], xmm0
jmp 0x1400185f6
mov eax, dword [rsp + 0x38]
mov qword [rsi + 8], rax
mov qword [rsi], 0
jmp 0x1400185f6
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov qword [rsi], 1
mov rax, rsi
add rsp, 0x40
pop rsi
ret

Function at 0x140018600
Capabilities:
Send data
Send data on socket

Disassembly:
push rsi
sub rsp, 0x20
mov rax, r8
mov rsi, rcx
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
mov rcx, qword [rdx]
mov rdx, rax
xor r9d, r9d
call sub.ws2_32.dll_send
cmp eax, 0xffffffff
je 0x140018639
cdqe
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x14001864f
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x20
pop rsi
ret

Function at 0x140018660
Capabilities:
Send data
Send data on socket

Disassembly:
push rsi
sub rsp, 0x40
mov rax, r8
mov rsi, rcx
mov r8d, 0xffffffff
cmp r9, r8
cmovb r8, r9
mov dword [rsp + 0x3c], 0
mov rcx, qword [rdx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
mov dword [rsp + 0x20], 0
lea r9, [rsp + 0x3c]
mov rdx, rax
call sub.ws2_32.dll_WSASend
cmp eax, 0xffffffff
je 0x1400186b1
mov eax, dword [rsp + 0x3c]
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x1400186c7
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x40
pop rsi
ret
Function at 0x140018830
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
xor esi, esi
xor eax, eax
cmp r8d, 0x3b9aca00
cmove edx, esi
setne al
mov word [rsp + 0x2c], ax
mov word [rsp + 0x2e], dx
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x2c]
mov edx, 0xffff
mov r8d, pe_nt_image_headers64
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x140018884
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x140018910
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
movzx eax, dl
mov dword [rsp + 0x34], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 6
mov r8d, 1
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x140018947
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret

Function at 0x140018c20
Capabilities:
Get local ipv4 addresses
Get socket information

Disassembly:
push rsi
sub rsp, 0xb0
mov rsi, rcx
mov rcx, qword [rdx]
xorps xmm0, xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x2c], pe_nt_image_headers64
lea rdx, [rsp + 0x30]
lea r8, [rsp + 0x2c]
call sub.ws2_32.dll_getsockname
cmp eax, 0xffffffff
je 0x140018cc1
mov eax, dword [rsp + 0x2c]
movzx ecx, word [rsp + 0x30]
cmp ecx, 2
je 0x140018cd0
cmp ecx, 0x17
jne 0x140018cf0
cmp eax, 0x1b
jbe 0x140018d0c
movzx eax, word [rsp + 0x32]
rol ax, 8
movups xmm0, xmmword [rsp + 0x38]
mov ecx, dword [rsp + 0x34]
mov edx, dword [rsp + 0x48]
mov word [rsi], 1
movups xmmword [rsi + 4], xmm0
mov dword [rsi + 0x14], ecx
mov dword [rsi + 0x18], edx
mov word [rsi + 0x1c], ax
jmp 0x140018d00
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
jmp 0x140018cf7
cmp eax, 0xf
jbe 0x140018d24
movzx eax, word [rsp + 0x32]
rol ax, 8
mov ecx, dword [rsp + 0x34]
mov word [rsi], 0
mov word [rsi + 6], ax
mov dword [rsi + 2], ecx
jmp 0x140018d00
lea rax, str.invalid_argument
mov qword [rsi + 8], rax
mov word [rsi], 2
mov rax, rsi
add rsp, 0xb0
pop rsi
ret
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in6___
lea r8, [0x140107680]
mov edx, 0x43
call sym.core::panicking::panic::hd174330580e7869e
lea rcx, str.assertion_failed:_len_as_usize___mem::size_of::_c::sockaddr_in___library_std_src_sys_common_net.rs
lea r8, [0x140107620]
mov edx, 0x42
call sym.core::panicking::panic::hd174330580e7869e
int3

Function at 0x140018f40
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
mov dword [rsp + 0x2c], edx
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
xor esi, esi
lea r9, [rsp + 0x2c]
xor edx, edx
mov r8d, 4
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x140018f7c
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret
Function at 0x140019000
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
movzx eax, dl
mov dword [rsp + 0x34], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0x29
mov r8d, 0x1b
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x140019037
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret

Function at 0x140019140
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x28
movzx eax, dl
mov dword [rsp + 0x24], eax
mov rcx, qword [rcx]
lea r8, [rsp + 0x24]
mov edx, 0x8004667e
call sub.ws2_32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x140019169
xor eax, eax
add rsp, 0x28
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x28
ret

Function at 0x1400193c0
Capabilities:
Send data
Send data on socket

Disassembly:
push rsi
push rdi
sub rsp, 0x58
mov rax, r8
mov rsi, rcx
mov r10, qword [rsp + 0x90]
cmp r9, 0x7fffffff
mov r8d, 0x7fffffff
cmovb r8, r9
cmp word [r10], 0
je 0x14001940a
movups xmm0, xmmword [r10 + 4]
mov ecx, dword [r10 + 0x14]
mov r11d, dword [r10 + 0x18]
movzx r10d, word [r10 + 0x1c]
mov r9d, 0x1c
mov di, 0x17
jmp 0x140019420
mov ecx, dword [r10 + 2]
movzx r10d, word [r10 + 6]
mov r9d, 0x10
mov di, 2
xorps xmm0, xmm0
rol r10w, 8
mov word [rsp + 0x3c], di
mov word [rsp + 0x3e], r10w
mov dword [rsp + 0x40], ecx
movups xmmword [rsp + 0x44], xmm0
mov dword [rsp + 0x54], r11d
mov rcx, qword [rdx]
mov dword [rsp + 0x28], r9d
lea rdx, [rsp + 0x3c]
mov qword [rsp + 0x20], rdx
mov rdx, rax
xor r9d, r9d
call sub.ws2_32.dll_sendto
cmp eax, 0xffffffff
je 0x14001946a
cdqe
mov qword [rsi + 8], rax
xor eax, eax
jmp 0x140019480
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov eax, 1
mov qword [rsi], rax
mov rax, rsi
add rsp, 0x58
pop rdi
pop rsi
ret

Function at 0x140019490
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
movzx eax, dl
mov dword [rsp + 0x34], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x34]
mov edx, 0xffff
mov r8d, 0x20
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x1400194c7
xor eax, eax
add rsp, 0x38
ret
call sub.ws2_32.dll_WSAGetLastError
shl rax, 0x20
or rax, 2
add rsp, 0x38
ret

Function at 0x140019550
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
movzx eax, dl
mov dword [rsp + 0x2c], eax
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
xor esi, esi
lea r9, [rsp + 0x2c]
xor edx, edx
mov r8d, 0xb
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14001958f
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret

Function at 0x140019610
Capabilities:
Set socket configuration

Disassembly:
push rsi
sub rsp, 0x30
mov dword [rsp + 0x2c], edx
mov rcx, qword [rcx]
mov dword [rsp + 0x20], 4
xor esi, esi
lea r9, [rsp + 0x2c]
xor edx, edx
mov r8d, 0xa
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
jne 0x14001964c
call sub.ws2_32.dll_WSAGetLastError
mov esi, eax
shl rsi, 0x20
or rsi, 2
mov rax, rsi
add rsp, 0x30
pop rsi
ret