Function at 0x14002c310
Capabilities:
Connect socket
Resolve dns

Disassembly:
push rbx
push rdi
push r12
sub rsp, 0xe0
mov rax, qword [0x140061740]
xor rax, rsp
mov qword [rsp + 0xa8], rax
movzx eax, byte [0x140066927]
xor edi, edi
test r9b, r9b
cmove eax, edi
mov byte [rsp + 0x60], r9b
mov r12, r8
mov dword [rsp + 0x64], edx
mov rbx, rcx
mov qword [rsp + 0x70], rcx
mov byte [0x140066927], al
mov qword [r8], rdi
mov qword [r8 + 8], rdi
mov byte [rsp + 0x88], dil
call qword [sym.imp.WS2_32.dll_gethostbyname]
test rax, rax
jne 0x14002c38c
lea r8, str.Cannot_resolve__s_n
lea edx, [rdi + 3]
mov r9, rbx
xor ecx, ecx
call fcn.14000f050
xor eax, eax
jmp 0x14002c704
mov r8, qword [rax + 0x18]
mov qword [rsp + 0xd8], rbp
mov qword [rsp + 0xd0], rsi
mov rax, qword [r8]
mov qword [rsp + 0xc8], r13
or r13d, 0xffffffff
mov qword [rsp + 0xc0], r14
mov qword [rsp + 0xb8], r15
test rax, rax
je 0x14002c3c7
mov r13d, dword [rax]
cmp dword [reloc.WS2_32.dll_accept], edi
je 0x14002c404
mov ecx, edi
cmp rax, rcx
je 0x14002c404
mov rax, r8
nop dword [rax]
lea rax, [rax + 8]
inc ecx
cmp qword [rax], rdi
jne 0x14002c3e0
test ecx, ecx
je 0x14002c404
mov eax, dword [r12 + 0x10340]
cdq
idiv ecx
movsxd rax, edx
mov rcx, qword [r8 + rax*8]
mov r13d, dword [rcx]
mov r14d, r13d
mov r15d, r13d
mov ebp, r13d
shr r14d, 8
shr r15d, 0x10
movzx edi, r13b
movzx ebx, r14b
shr ebp, 0x18
lea rdx, str._d._d._d._d
lea rcx, [rsp + 0x88]
movzx esi, r15b
mov r8d, edi
mov r9d, ebx
mov dword [rsp + 0x28], ebp
mov dword [rsp + 0x20], esi
call fcn.14002ecd0
lea rcx, [rsp + 0x88]
call fcn.14002bf30
cmp dword [r12 + 0x10], 0
lea rcx, str.__SSL_TLS_
lea rax, str.__unsecure_
lea r9, [0x140066928]
lea r8, [0x140055ad3]
cmovne rax, rcx
cmp dword [r12 + 0x10018], 0xa
lea rcx, [0x1400672f0]
mov qword [rsp + 0x50], rax
mov eax, dword [rsp + 0x64]
cmovl r9, rcx
cmp byte [rsp + 0x60], 0
mov dword [rsp + 0x48], eax
mov rax, qword [rsp + 0x70]
mov dword [rsp + 0x40], ebp
mov dword [rsp + 0x38], esi
lea rcx, str.DevFee:
cmovne r8, rcx
mov dword [rsp + 0x30], ebx
lea rdx, str._s_s_Stratum___connecting_to__s___d._d._d._d__port__d_s_n
xor ecx, ecx
mov dword [rsp + 0x28], edi
mov qword [rsp + 0x20], rax
call fcn.14000ee60
movzx r8d, r15b
movzx edx, r14b
movzx ecx, r13b
call fcn.14002bea0
cmp byte [rsp + 0x60], 0
mov r15, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xc8]
mov byte [0x140065d03], al
movzx eax, byte [0x140065d03]
mov r14d, 1
jne 0x14002c51a
test al, al
je 0x14002c538
mov byte [0x140065327], r14b
jmp 0x14002c538
test al, al
je 0x14002c538
movzx eax, byte [0x140065327]
movzx ecx, byte [0x140065326]
test al, al
cmove ecx, r14d
mov byte [0x140065326], cl
mov ebp, 2
mov r8d, 6
mov edx, r14d
mov ecx, ebp
call qword [sym.imp.WS2_32.dll_socket]
movzx ecx, word [rsp + 0x64]
mov rbx, rax
xor eax, eax
mov qword [rsp + 0x78], rax
mov word [rsp + 0x78], bp
mov qword [rsp + 0x80], rax
call qword [sym.imp.WS2_32.dll_htons]
lea rcx, [rsp + 0x88]
mov word [rsp + 0x7a], ax
call qword [sym.imp.WS2_32.dll_inet_addr]
mov rcx, rbx
mov dword [rsp + 0x7c], eax
call fcn.14002bdf0
lea r8d, [rbp + 0xe]
lea rdx, [rsp + 0x78]
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_connect]
test eax, eax
jne 0x14002c68f
test rbx, rbx
je 0x14002c69a
cmp dword [r12 + 0x10], eax
je 0x14002c69a
mov rcx, qword [0x140068810]
call 0x14025fc49
int3
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_closesocket]
xor ebx, ebx
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x38], 0
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x68]
mov r9d, 4
mov edx, 0x8004667e
mov rcx, rbx
mov dword [rsp + 0x28], 0
mov qword [r12], rbx
mov dword [rsp + 0x68], r14d
mov qword [rsp + 0x20], 0
call qword [sym.imp.WS2_32.dll_WSAIoctl]
mov r14, qword [rsp + 0xc0]
mov rsi, qword [rsp + 0xd0]
mov rbp, qword [rsp + 0xd8]
mov rax, rbx
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.14002e450
add rsp, 0xe0
pop r12
pop rdi
pop rbx
ret