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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x200
mov rax, qword [0x140060040]
xor rax, rsp
mov qword [rsp + 0x1f0], rax
mov rsi, qword [0x1400617c8]
lea rbx, [rsi + 0x80]
cmp qword [rbx + 0x18], 0xf
mov rcx, rbx
mov rdi, qword [rbx + 0x10]
jbe 0x1400435b3
mov rcx, qword [rbx]
cmp rdi, 3
jne 0x1400437b6
mov r8, rdi
lea rdx, [0x140054ef0]
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400437b6
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Initializing_Kmbox_Net...
call fcn.140007a50
lea rdx, [0x140007c30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 0x101
mov dword [rsi + 0x28], 1
lea rdx, [rsp + 0x40]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
jne 0x1400437aa
movzx eax, word [rsp + 0x40]
cmp al, 1
jne 0x140043799
shr ax, 8
cmp al, 1
jne 0x140043799
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_srand]
mov ebx, 2
xor r8d, r8d
mov edx, ebx
mov ecx, ebx
call qword [sym.imp.WS2_32.dll_socket]
lea rcx, [rsi + 0xa0]
mov qword [0x140060ef8], rax
call qword [sym.imp.WS2_32.dll_inet_addr]
lea rcx, [rsi + 0xb8]
mov word [0x140061740], bx
mov dword [0x140061744], eax
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov ecx, eax
call qword [sym.imp.WS2_32.dll_htons]
lea rcx, [rsi + 0xc2]
mov word [0x140061742], ax
call fcn.140040af0
mov dword [0x140060f00], eax
call qword [sym.imp.api_ms_win_crt_utility_l1_1_0.dll_rand]
mov rcx, qword [0x140060ef8]
lea rdi, [0x140061740]
xorps xmm0, xmm0
mov dword [0x140060f04], eax
xor eax, eax
mov dword [rsp + 0x28], recvfrom
xor ebx, ebx
mov qword [0x140060ef0], rax
xor r9d, r9d
mov qword [0x140061310], rax
mov r8d, recvfrom
mov dword [0x140061318], eax
lea rdx, [0x140060f00]
mov dword [0x140060f08], ebx
mov dword [0x140060f0c], 0xaf3c2828
movups xmmword [0x140060ec0], xmm0
mov qword [rsp + 0x20], rdi
movups xmmword [0x140060ed0], xmm0
movups xmmword [0x140060ee0], xmm0
call qword [sym.imp.WS2_32.dll_sendto]
mov ecx, reloc.WS2_32.dll_sendto
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [0x140060ef8]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rdx, [0x140061320]
xor r9d, r9d
mov qword [rsp + 0x20], rdi
mov r8d, 0x400
mov dword [rsp + 0x30], recvfrom
call qword [sym.imp.WS2_32.dll_recvfrom]
test eax, eax
js 0x1400437aa
mov eax, dword [0x140060f0c]
cmp dword [0x14006132c], eax
je 0x140043775
mov ebx, 0xffffdcdc
jmp 0x140043789
mov eax, dword [0x140060f08]
mov ecx, 0xffffdcdd
cmp dword [0x140061328], eax
cmovne ebx, ecx
test ebx, ebx
jne 0x1400437aa
lea rdx, str.Kmbox_Net_initialized_successfully.
jmp 0x1400438e6
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov qword [0x140060ef8], 0xffffffffffffffff
lea rdx, str.Kmbox_Net_failed_to_initialize.
jmp 0x1400438e6
cmp qword [rbx + 0x18], 0xf
jbe 0x1400437c0
mov rbx, qword [rbx]
cmp rdi, 4
jne 0x140043902
mov r8, rdi
lea rdx, str.BPro
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x140043902
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str.Initializing_Kmbox_B_Pro...
call fcn.140007a50
lea rdx, [0x140007c30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, dword [rsi + 0xe4]
lea rdi, [rsi + 0xe8]
mov dword [rsi + 0x28], 3
lea eax, [rcx - 1]
cmp eax, 0x3ff
ja 0x1400438df
mov dword [rdi + 8], ecx
lea r8, str..COM
lea rcx, [rdi + 0x18]
mov edx, reloc.WS2_32.dll_sendto
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcpy_s]
mov ecx, dword [rdi + 8]
lea rdx, [rsp + 0x1e0]
mov r9d, 0xa
mov r8d, recvfrom
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__ltoa_s]
lea r8, [rsp + 0x1e0]
mov edx, reloc.WS2_32.dll_sendto
lea rcx, [rdi + 0x18]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_strcat_s]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
test al, al
je 0x1400438df
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + htons]
test al, al
je 0x1400438df
mov rax, qword [rdi + 0x10]
cmp rax, 0xffffffffffffffff
je 0x1400438d2
mov rcx, qword [rdi + 0x10]
lea rdx, [rdi + 0x2c]
call qword [sym.imp.KERNEL32.dll_GetCommState]
test eax, eax
je 0x1400438d2
mov rcx, qword [rdi + 0x10]
lea rdx, [rdi + 0x2c]
mov dword [rdi + 0x30], 0x1c200
mov word [rdi + 0x3e], 8
mov byte [rdi + 0x40], 0
call qword [sym.imp.KERNEL32.dll_SetCommState]
cmp eax, 1
sete al
jmp 0x1400438d4
xor al, al
lea rdx, str.Kmbox_B_Pro_initialized_successfully.
test al, al
jne 0x1400438e6
lea rdx, str.Kmbox_B_Pro_failed_to_initialize.
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140007a50
lea rdx, [0x140007c30]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [rsp + 0x1f0]
xor rcx, rsp
call fcn.14004a5e0
lea r11, [rsp + 0x200]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret