Function at 0x14001e5e0
Capabilities:
Print debug messages

Disassembly:
push rbp
xor eax, eax
mov rbp, rsp
push r15
push r14
push r13
mov r13d, edx
push r12
mov r12, rcx
mov ecx, 7
push rdi
push rsi
mov esi, r9d
push rbx
and rsp, 0xfffffffffffffff0
sub rsp, 0xd0
mov rbx, qword [rbp + 0x30]
lea rdi, [rsp + 0xb4]
mov qword [rsp + 0xa4], 0
rep stosd dword [rdi], eax
mov qword [rsp + 0xac], 0
mov dword [rsp + 0xa0], 1
test edx, edx
je 0x14001ea30
cmp edx, 3
je 0x14001ea30
mov r15d, r8d
call sym.InitWSA
test eax, eax
je 0x14001eae2
lea r14, str.SocketNew
lea r9, str.Create_Socket...
mov r8d, 0x4a
mov rdx, r14
lea rcx, [0x14002a540]
call sym.printf.constprop.0_9
test r15d, r15d
mov r9d, 0
mov r15, qword [0x14002d650]
mov r8d, 6
mov edx, 1
mov rax, qword [r15]
mov dword [rsp + 0x28], 0
mov dword [rsp + 0x20], 0
je 0x14001e74b
mov ecx, 2
call qword [rax + 0x750]
mov r12, rax
cmp rax, 0xffffffffffffffff
jne 0x14001e6e0
mov rax, qword [r15]
mov r8d, 0x51
mov rax, qword [rax + 0x8c2]
mov r9d, dword [rax + 0x68]
jmp 0x14001e773
mov eax, dword [rbp + 0x38]
movzx r9d, sil
mov r8d, 0x5a
mov rdx, r14
lea rcx, str._DEBUG::_s::_d__SockAddr:__d._d._d._d:_d_n
mov dword [rsp + 0xa8], esi
xchg al, ah
mov word [rsp + 0xa4], 2
mov word [rsp + 0xa6], ax
mov eax, dword [rbp + 0x38]
mov dword [rsp + 0x38], eax
mov eax, esi
shr eax, 0x18
mov dword [rsp + 0x30], eax
mov eax, esi
shr eax, 0x10
movzx eax, al
mov dword [rsp + 0x28], eax
mov eax, esi
movzx eax, ah
mov dword [rsp + 0x20], eax
call sym.DbgPrint
cmp r13d, 2
jne 0x14001e91b
jmp 0x14001e854
mov ecx, 0x17
call qword [rax + 0x750]
mov r12, rax
cmp rax, 0xffffffffffffffff
jne 0x14001e782
mov rax, qword [r15]
mov r8d, 0x67
mov rax, qword [rax + 0x8c2]
mov r9d, dword [rax + 0x68]
mov rdx, r14
lea rcx, str._DEBUG::_s::_d__WSASocketA_Failed:__d_n
jmp 0x14001e9d1
mov eax, dword [rbp + 0x38]
movups xmm0, xmmword [rbx]
mov r8d, 0x70
mov rdx, r14
mov word [rsp + 0xb4], 0x17
lea rcx, str._DEBUG::_s::_d__SockAddr6:__02x_02x:_02x_02x:_02x_02x:_02x_02x:_02x_02x:_02x_02x:_02x_02x:_02x_02x:_d_n
xchg al, ah
movups xmmword [rsp + 0xbc], xmm0
mov word [rsp + 0xb6], ax
mov eax, dword [rbp + 0x38]
mov dword [rsp + 0x98], eax
movzx eax, byte [rbx + 0xf]
mov dword [rsp + 0x90], eax
movzx eax, byte [rbx + 0xe]
mov dword [rsp + 0x88], eax
movzx eax, byte [rbx + 0xd]
mov dword [rsp + 0x80], eax
movzx eax, byte [rbx + 0xc]
mov dword [rsp + 0x78], eax
movzx eax, byte [rbx + 0xb]
mov dword [rsp + 0x70], eax
movzx eax, byte [rbx + 0xa]
mov dword [rsp + 0x68], eax
movzx eax, byte [rbx + 9]
mov dword [rsp + 0x60], eax
movzx eax, byte [rbx + 8]
mov dword [rsp + 0x58], eax
movzx eax, byte [rbx + 7]
mov dword [rsp + 0x50], eax
movzx eax, byte [rbx + 6]
mov dword [rsp + 0x48], eax
movzx eax, byte [rbx + 5]
mov dword [rsp + 0x40], eax
movzx eax, byte [rbx + 4]
mov dword [rsp + 0x38], eax
movzx eax, byte [rbx + 3]
mov dword [rsp + 0x30], eax
movzx eax, byte [rbx + 2]
mov dword [rsp + 0x28], eax
movzx eax, byte [rbx + 1]
mov dword [rsp + 0x20], eax
movzx r9d, byte [rbx]
call sym.DbgPrint
cmp r13d, 2
jne 0x14001e91b
jmp 0x14001e888
mov rax, qword [r15]
lea rdx, [rsp + 0xa4]
mov r8d, 0x10
mov rcx, r12
call qword [rax + 0x798]
inc eax
jne 0x14001e8c9
mov rax, qword [r15]
mov r8d, pe_nt_image_headers64
mov rax, qword [rax + 0x8c2]
mov r9d, dword [rax + 0x68]
jmp 0x14001e8ba
mov rax, qword [r15]
mov r8d, 0x1c
lea rdx, [rsp + 0xb4]
mov rcx, r12
call qword [rax + 0x798]
inc eax
jne 0x14001e8c9
mov rax, qword [r15]
mov r8d, 0x89
mov rax, qword [rax + 0x8c2]
mov r9d, dword [rax + 0x68]
mov rdx, r14
lea rcx, str._DEBUG::_s::_d__connect_failed:__d_n
jmp 0x14001e9d1
mov rdi, qword [0x14002d650]
lea r8, [rsp + 0xa0]
mov edx, 0x8004667e
mov rcx, r12
mov rax, qword [rdi]
call qword [rax + 0x760]
lea rdx, str.SocketNew
lea r9, str.Connected_to_host
mov r8d, 0x95
inc eax
jne 0x14001ea24
mov rax, qword [rdi]
mov r8d, 0x91
mov rax, qword [rax + 0x8c2]
mov r9d, dword [rax + 0x68]
jmp 0x14001e95d
mov rdi, qword [0x14002d650]
lea r8, [rsp + 0xa0]
mov edx, 0x8004667e
mov rcx, r12
lea r15, str.SocketNew
mov rax, qword [rdi]
call qword [rax + 0x760]
inc eax
mov rax, qword [rdi]
jne 0x14001e966
mov rax, qword [rax + 0x8c2]
mov r8d, 0x9e
mov rdx, r15
mov r9d, dword [rax + 0x68]
lea rcx, str._DEBUG::_s::_d__ioctlsocket_failed:__d_n
jmp 0x14001e9d1
lea rdx, [rsp + 0xa4]
mov r8d, 0x10
mov rcx, r12
call qword [rax + 0x768]
inc eax
mov rax, qword [rdi]
jne 0x14001e9a1
mov rax, qword [rax + 0x8c2]
mov r8d, 0xa5
mov rdx, r15
lea rcx, str._DEBUG::_s::_d__bind_failed:__d_n
mov r9d, dword [rax + 0x68]
jmp 0x14001e9d1
mov edx, 1
mov rcx, r12
call qword [rax + 0x770]
inc eax
jne 0x14001ea14
mov rax, qword [rdi]
mov r8d, 0xac
mov rdx, r15
lea rcx, str._DEBUG::_s::_d__listen_failed:__d_n
mov rax, qword [rax + 0x8c2]
mov r9d, dword [rax + 0x68]
call sym.DbgPrint
lea rax, [r12 - 1]
cmp rax, 0xfffffffffffffffd
ja 0x14001eae2
mov rbx, qword [0x14002d650]
mov rcx, r12
mov rax, qword [rbx]
mov rdx, qword [rax + 0x8c2]
mov esi, dword [rdx + 0x68]
call qword [rax + 0x780]
mov rax, qword [rbx]
mov rax, qword [rax + 0x8c2]
mov dword [rax + 0x68], esi
jmp 0x14001eae2
lea r9, str.Started_listening...
mov r8d, 0xb0
mov rdx, r15
lea rcx, [0x14002a540]
call sym.printf.constprop.0_9
mov ecx, 0x40
call sym.MmHeapAlloc
mov r15, rax
call sym.RandomNumber32
mov dword [r15 + 0x10], r13d
mov r8d, 0xc4
lea rcx, str._DEBUG::_s::_d__SocketNew___ID:__x__Parent:__x__WinSock:__x__Type:__d__IPv4:__lx__IPv6:__lx__LclPort:__ld__FwdAddr:__lx__FwdPort:__ld__n
mov dword [r15], eax
mov r9d, eax
mov eax, dword [rbp + 0x50]
mov dword [r15 + 0x14], 0
mov dword [r15 + 4], eax
mov eax, dword [rbp + 0x38]
mov dword [r15 + 0x18], esi
mov dword [r15 + 0x28], eax
mov eax, dword [rbp + 0x40]
mov qword [r15 + 0x20], rbx
mov dword [r15 + 0x2c], eax
mov eax, dword [rbp + 0x48]
mov qword [r15 + 8], r12
mov dword [r15 + 0x30], eax
mov rax, qword [0x14002d650]
mov rax, qword [rax]
mov rdx, qword [rax + 0x922]
mov qword [r15 + 0x38], rdx
lea rdx, str.SocketNew
mov qword [rax + 0x922], r15
mov eax, dword [rbp + 0x48]
mov qword [rsp + 0x40], rbx
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x40]
mov dword [rsp + 0x38], esi
mov dword [rsp + 0x50], eax
mov eax, dword [rbp + 0x38]
mov dword [rsp + 0x30], r13d
mov dword [rsp + 0x48], eax
mov eax, dword [rbp + 0x50]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], eax
call sym.DbgPrint
jmp 0x14001eae5
xor r15d, r15d
lea rsp, [rbp - 0x38]
mov rax, r15
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret