Function at 0x1400d6520
Capabilities:
Create tcp socket
Create udp socket

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
mov eax, 0x2100
call fcn.1401d4c90
sub rsp, rax
mov qword [rsp + 0x20e0], 0xfffffffffffffffe
mov rax, qword [0x1402a15c0]
xor rax, rsp
mov qword [rsp + 0x20f0], rax
mov rax, qword [rsp + 0x2128]
cmp dword [rax + 0x28], 0x66
jne 0x1400d66d9
mov rax, qword [rsp + 0x2120]
cmp dword [rax + 0x220], 0
je 0x1400d66d2
mov rcx, qword [rsp + 0x2120]
add rcx, 0x238
call fcn.140010210
lea rcx, [rsp + 0x1060]
call fcn.140050160
nop
mov rdx, qword [rsp + 0x2120]
add rdx, 0x278
lea rcx, [rsp + 0x1060]
call fcn.140050c20
mov rcx, qword [rsp + 0x2120]
add rcx, 0x278
call fcn.1400501b0
mov rcx, qword [rsp + 0x2120]
add rcx, 0x238
mov rax, qword [rsp + 0x2120]
mov rax, qword [rax + 0x238]
call qword [rax + 0x28]
mov qword [rsp + 0x1090], 0
jmp 0x1400d6614
mov rax, qword [rsp + 0x1090]
add rax, 1
mov qword [rsp + 0x1090], rax
lea rcx, [rsp + 0x1060]
call fcn.140050e20
cmp qword [rsp + 0x1090], rax
jae 0x1400d66b4
mov rdx, qword [rsp + 0x1090]
lea rcx, [rsp + 0x1060]
call fcn.140050e50
mov rsi, rax
mov rdx, qword [rsp + 0x1090]
lea rcx, [rsp + 0x1060]
call fcn.140050e50
mov rbx, rax
mov rdx, qword [rsp + 0x1090]
lea rcx, [rsp + 0x1060]
call fcn.140050e50
mov rdi, rax
mov rdx, qword [rsp + 0x1090]
lea rcx, [rsp + 0x1060]
call fcn.140050e50
mov rdx, rax
mov rax, qword [rsi + 0x10]
mov qword [rsp + 0x20], rax
mov r9, qword [rbx + 8]
mov r8d, dword [rdi + 4]
mov edx, dword [rdx]
mov rcx, qword [rsp + 0x2120]
call fcn.1400d5e60
jmp 0x1400d6600
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
nop
lea rcx, [rsp + 0x1060]
call fcn.140050bf0
jmp 0x1400d656a
xor eax, eax
jmp 0x1400d6b74
movzx eax, byte [0x14020df6e]
mov byte [rsp + 0x50], al
lea rdi, [rsp + 0x51]
xor eax, eax
mov ecx, 0x1000
rep stosb byte [rdi], al
mov qword [rsp + 0x38], 0xffffffffffffffff
mov dword [rsp + 0x34], 0
mov rax, qword [rsp + 0x2120]
cmp dword [rax + 0x220], 0
je 0x1400d6987
cmp dword [rsp + 0x34], 0
jne 0x1400d6987
mov dword [rsp + 0x1098], 0
jmp 0x1400d6741
mov eax, dword [rsp + 0x1098]
add eax, 1
mov dword [rsp + 0x1098], eax
cmp dword [rsp + 0x1098], 0x14
jge 0x1400d68cf
cmp dword [rsp + 0x34], 0
jne 0x1400d68cf
cmp qword [rsp + 0x38], 0xffffffffffffffff
je 0x1400d677d
mov edx, 2
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WS2_32.dll_shutdown]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WS2_32.dll_closesocket]
xor r8d, r8d
mov edx, 1
mov ecx, 2
call qword [sym.imp.WS2_32.dll_socket]
mov qword [rsp + 0x38], rax
mov r8d, dword [rsp + 0x1098]
add r8d, 0x1f41
lea rdx, str.try_to_connect_to_service_control_on_port__d
xor ecx, ecx
call fcn.1400dc610
mov r9d, dword [rsp + 0x1098]
add r9d, 0x1f41
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
lea r8, [0x140211f40]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x2120]
call fcn.1400d8e50
test eax, eax
jne 0x1400d67f4
jmp 0x1400d6730
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.1400d7520
test eax, eax
jne 0x1400d680c
jmp 0x1400d6730
mov r9d, 0x1001
lea r8, [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x2120]
call fcn.1400d82f0
xor edx, edx
mov word [rsp + 0x10a0], dx
lea rdi, [rsp + 0x10a2]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
mov r8d, 0x400
lea rdx, [rsp + 0x10a0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rdx, [0x140211f54]
lea rcx, [rsp + 0x10a0]
call fcn.1400a9444
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x20d8]
call fcn.1400dd060
mov qword [rsp + 0x20e8], rax
lea rdx, [rsp + 0x10a0]
mov rcx, qword [rsp + 0x20e8]
call fcn.1400060b0
mov dword [rsp + 0x20d0], eax
lea rcx, [rsp + 0x20d8]
call fcn.140001490
cmp dword [rsp + 0x20d0], 0
je 0x1400d68c0
jmp 0x1400d6730
mov dword [rsp + 0x34], 1
jmp 0x1400d68cf
cmp dword [rsp + 0x34], 0
je 0x1400d68e0
jmp 0x1400d6987
xor eax, eax
mov word [rsp + 0x18b0], ax
lea rdi, [rsp + 0x18b2]
xor eax, eax
mov ecx, 0x7fe
rep stosb byte [rdi], al
mov r8d, 0x400
lea rdx, [rsp + 0x18b0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dx, 0x2e
lea rcx, [rsp + 0x18b0]
call fcn.140001460
mov rdx, rax
xor eax, eax
mov word [rdx], ax
mov dx, VarDateFromDisp
lea rcx, [rsp + 0x18b0]
call fcn.140001460
add rax, 2
mov qword [rsp + 0x18a0], rax
mov rcx, qword [rsp + 0x18a0]
call fcn.1400d56c0
mov dword [rsp + 0x20], 0xa
mov r9d, 0x40
lea r8, str.Control_Service_Startup_Error
lea rdx, str.Cannot_connect_to_the_control_service.
xor ecx, ecx
call fcn.1400f1520
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x1400d6703
mov rax, qword [rsp + 0x2128]
cmp dword [rax + 0x28], 0x67
jne 0x1400d69c4
lea r8, [0x140211ff0]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x2120]
call fcn.1400d8c10
mov rdx, qword [rsp + 0x2120]
mov rax, qword [rsp + 0x38]
mov qword [rdx + 0x230], rax
jmp 0x1400d69dd
lea r8, str.Server2Client_r_n
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x2120]
call fcn.1400d8c10
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x2128]
cmp dword [rax + 0x28], 0x65
jne 0x1400d6b72
mov rax, qword [rsp + 0x2120]
cmp dword [rax + 0x220], 0
je 0x1400d6b16
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.1400d7520
test eax, eax
jne 0x1400d6a21
jmp 0x1400d69f7
mov dword [rsp + 0x30], 0x1001
movsxd r9, dword [rsp + 0x30]
lea r8, [rsp + 0x50]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x2120]
call fcn.1400d82f0
test eax, eax
jne 0x1400d6a4e
jmp 0x1400d6b16
mov dword [rsp + 0x20b0], 0
mov dword [rsp + 0x20c0], 0
mov qword [rsp + 0x20c8], 0
mov qword [rsp + 0x20b8], 0
mov rax, qword [rsp + 0x2120]
cmp dword [rax + 0x220], 0
jne 0x1400d6a92
jmp 0x1400d6b16
lea rax, [rsp + 0x20b8]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x20c8]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x20c0]
lea r8, [rsp + 0x20b0]
lea rdx, [0x140212010]
lea rcx, [rsp + 0x50]
call fcn.1400aff04
mov rdi, qword [rsp + 0x2120]
mov rdi, qword [rdi]
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x20b8]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x20c8]
mov r8d, dword [rsp + 0x20c0]
mov edx, dword [rsp + 0x20b0]
mov rcx, qword [rsp + 0x2120]
call qword [rdi + reloc.OLEAUT32.dll_SafeArrayGetElement]
jmp 0x1400d69f7
mov edx, 2
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WS2_32.dll_shutdown]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.WS2_32.dll_closesocket]
mov qword [rsp + 0x38], 0xffffffffffffffff
mov rax, qword [rsp + 0x2120]
cmp dword [rax + 0x220], 0
je 0x1400d6b6e
lea rdx, str._ERROR__serviceconrolclient_server_to_client_disconnect
mov ecx, 1
call fcn.1400dc610
mov edx, 0x65
mov rcx, qword [rsp + 0x2120]
call fcn.1400e35f0
xor eax, eax
jmp 0x1400d6b74
xor eax, eax
mov rcx, qword [rsp + 0x20f0]
xor rcx, rsp
call fcn.1400a8050
add rsp, 0x2100
pop rdi
pop rsi
pop rbx
ret