Function at 0x140024c60
Capabilities:
Receive data
Receive data on socket
Send data
Send data on socket
Set socket configuration

Disassembly:
push rbp
push rbx
push rdi
push r15
lea rbp, [rsp - 0x788]
sub rsp, 0x888
mov rax, qword [0x14008d0f8]
xor rax, rsp
mov qword [rbp + 0x770], rax
movzx eax, byte [0x140083a08]
vmovsd xmm0, qword [str.ccminer_]
mov rcx, qword [0x1400a84c0]
mov byte [rsp + 0x68], al
xor eax, eax
mov qword [rsp + 0x38], rax
vmovsd qword [rsp + 0x60], xmm0
call qword [sym.imp.WS2_32.dll_inet_addr]
mov dword [rsp + 0x38], eax
cmp eax, 0xffffffff
jne 0x140024cc6
mov ecx, 1
call fcn.140010310
mov edi, 2
xor ebx, ebx
mov edx, edi
mov dword [rsp + 0x3c], ebx
mov ecx, edi
xor r8d, r8d
call qword [sym.imp.WS2_32.dll_socket]
lea r9, [rsp + 0x30]
mov dword [rsp + 0x30], 1
mov rcx, rax
mov dword [rsp + 0x20], 4
mov edx, 0xffff
lea r8d, [rbx + 4]
mov r15, rax
call qword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x140024d27
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
lea rdx, str.API_mcast_setsockopt_SO_REUSEADDR_failed___s__s
jmp 0x140024e04
movzx ecx, word [0x14008dbf8]
xor eax, eax
mov qword [rsp + 0x50], rax
mov word [rsp + 0x50], di
mov dword [rsp + 0x54], ebx
mov qword [rsp + 0x58], rax
call qword [sym.imp.WS2_32.dll_htons]
xor ecx, ecx
mov word [rsp + 0x52], ax
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
mov rdi, rax
nop dword [rax]
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x50]
mov rcx, r15
call qword [sym.imp.WS2_32.dll_bind]
cmp eax, 0xffffffff
jne 0x140024dce
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
xor ecx, ecx
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__time64]
sub rax, rdi
cmp rax, 0x3d
jg 0x140024da8
mov ecx, 0x7530
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140024d60
mov r8d, dword [0x14008d1a8]
lea r9, str.___API_multicast_listener_will_not_be_available
mov qword [rsp + 0x20], r9
lea rdx, str.API_mcast_bind_to_port__d_failed___s__s
mov r9, rbx
xor ecx, ecx
call fcn.14001ae00
jmp 0x140024e15
xor edx, edx
mov dword [rsp + 0x20], 8
lea r9, [rsp + 0x38]
mov rcx, r15
lea r8d, [rdx + 0xc]
call qword [sym.imp.WS2_32.dll_setsockopt]
cmp eax, 0xffffffff
jne 0x140024e3a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
lea rdx, str.API_mcast_join_failed___s__s
lea r9, str.___API_multicast_listener_will_not_be_available
mov r8, rax
xor ecx, ecx
call fcn.14001ae00
mov rcx, r15
call qword [sym.imp.WS2_32.dll_closesocket]
mov rcx, qword [rbp + 0x770]
xor rcx, rsp
call fcn.14006df60
add rsp, 0x888
pop r15
pop rdi
pop rbx
pop rbp
ret
mov rax, qword [0x1400a84b0]
mov qword [rsp + 0x8b0], rsi
mov qword [rsp + 0x8b8], r12
mov qword [rsp + 0x8c0], r13
mov qword [rsp + 0x880], r14
or r14, 0xffffffffffffffff
inc r14
cmp byte [rax + r14], 0
jne 0x140024e65
add r14, 9
mov ecx, 1
lea rdx, [r14 + 1]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov r13, rax
test rax, rax
jne 0x140024e92
lea ecx, [rax + 1]
call fcn.140010310
mov rcx, qword [0x1400a84b0]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x20], rcx
lea r8, str._s_s_
mov rcx, r13
lea rdx, [r14 + 1]
call fcn.14000b980
xor r12d, r12d
nop dword [rax]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rax, [rsp + 0x34]
mov dword [rsp + 0x34], reloc.WS2_32.dll_recv
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x70]
lea rax, [rsp + 0x40]
xor r9d, r9d
mov r8d, 0x3ff
mov qword [rsp + 0x20], rax
mov rcx, r15
inc r12d
call qword [sym.imp.WS2_32.dll_recvfrom]
movsxd rsi, eax
cmp esi, 0xffffffff
jne 0x140024f33
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
mov r8d, r12d
mov dword [rsp + 0x20], r15d
mov r9, rax
lea rdx, str.API_mcast_failed_count_d___s____d_
lea ecx, [rsi + 5]
call fcn.14001ae00
jmp 0x140024ec0
mov ecx, dword [rsp + 0x44]
xor ebx, ebx
call qword [sym.imp.WS2_32.dll_inet_ntoa]
lea ecx, [rbx + 0x52]
mov rdi, rax
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
cmp qword [0x1400a6d38], rbx
je 0x140024f8b
mov ecx, dword [rsp + 0x44]
call qword [sym.imp.WS2_32.dll_htonl]
mov r9d, dword [reloc.WS2_32.dll_accept]
xor r8d, r8d
test r9d, r9d
jle 0x140024fcf
mov rdx, qword [0x1400a8110]
mov ecx, dword [rdx + 4]
and ecx, eax
cmp ecx, dword [rdx]
je 0x140024fb4
inc r8d
add rdx, 0xc
cmp r8d, r9d
jl 0x140024f74
jmp 0x140024fcf
mov rdx, qword [0x1400a84b8]
lea r8, str.0.0.0.0
xor eax, eax
nop dword [rax + rax]
movzx ecx, byte [rdx + rax]
inc rax
cmp cl, byte [r8 + rax - 1]
jne 0x140024fbb
cmp rax, 8
jne 0x140024fa0
mov ebx, 1
jmp 0x140024fcf
lea rdx, str.127.0.0.1
mov rcx, rdi
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
test eax, eax
sete bl
lea rax, str.Accepted
test ebx, ebx
lea r9, str.Ignored
mov r8, rdi
cmovne r9, rax
lea rdx, str.API_mcast_from__s____s
mov ecx, 4
call fcn.14001ae00
test ebx, ebx
je 0x140024ec0
mov rdi, rsi
cmp rsi, 0x400
jae 0x1400251fa
mov byte [rsp + rsi + 0x70], 0
test esi, esi
jle 0x14002503d
lea ecx, [rsi - 1]
movsxd rax, ecx
cmp byte [rsp + rax + 0x70], 0xa
jne 0x14002503d
movsxd rsi, ecx
mov rdi, rsi
cmp rsi, 0x400
jae 0x1400251f4
mov byte [rsp + rsi + 0x70], 0
movzx ecx, word [rsp + 0x42]
call qword [sym.imp.WS2_32.dll_ntohs]
mov ecx, dword [rsp + 0x44]
movzx ebx, ax
call qword [sym.imp.WS2_32.dll_inet_ntoa]
lea r9, [rsp + 0x70]
mov dword [rsp + 0x28], ebx
mov r8d, esi
mov qword [rsp + 0x20], rax
lea rdx, str.API_mcast_request_rep_d___s__from__s:_d
mov ecx, 4
call fcn.14001ae00
cmp rdi, r14
jbe 0x1400251de
mov r8, r14
lea rcx, [rsp + 0x70]
mov rdx, r13
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400251de
lea rbx, [rsp + 0x70]
add rbx, r14
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
mov edi, eax
mov r8, rbx
lea ecx, [rax - 1]
cmp ecx, 0xfffe
mov ecx, 4
ja 0x1400251cd
mov r9d, eax
lea rdx, str.API_mcast_request_OK_port__s_d
call fcn.14001ae00
movzx ecx, di
call qword [sym.imp.WS2_32.dll_htons]
mov word [rsp + 0x42], ax
xor r8d, r8d
mov eax, 2
mov edx, eax
mov ecx, eax
call qword [sym.imp.WS2_32.dll_socket]
mov rcx, qword [0x1400a84a0]
lea r8, str.ccm__s__d__s
mov r9, qword [0x1400a84b0]
mov edx, 0x400
mov qword [rsp + 0x28], rcx
mov rbx, rax
mov ecx, dword [0x14008d1a8]
mov dword [rsp + 0x20], ecx
lea rcx, [rbp + 0x370]
call fcn.14000b980
lea rax, [rbp + 0x370]
or rcx, 0xffffffffffffffff
cmp byte [rax + rcx + 1], 0
lea rcx, [rcx + 1]
jne 0x140025134
lea r8d, [rcx + 1]
mov dword [rsp + 0x28], reloc.WS2_32.dll_recv
lea rax, [rsp + 0x40]
mov rcx, rbx
xor r9d, r9d
mov qword [rsp + 0x20], rax
lea rdx, [rbp + 0x370]
call qword [sym.imp.WS2_32.dll_sendto]
cmp eax, 0xffffffff
jne 0x1400251a0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_strerror]
mov r9d, ebx
lea rdx, str.API_mcast_send_reply_failed___s____d_
mov r8, rax
mov ecx, 4
call fcn.14001ae00
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x140024ec0
mov r9d, eax
mov dword [rsp + 0x20], ebx
lea r8, [rbp + 0x370]
mov ecx, 4
lea rdx, str.API_mcast_send_reply___s__succeeded___d____d_
call fcn.14001ae00
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x140024ec0
lea rdx, str.API_mcast_request_ignored___invalid_port___s_
call fcn.14001ae00
jmp 0x140024ec0
lea rdx, str.API_mcast_request_was_no_good
mov ecx, 4
call fcn.14001ae00
jmp 0x140024ec0
call fcn.14006e08c
int3
call fcn.14006e08c
int3