Function at 0x1800024d0
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1f]
sub rsp, 0x88
mov qword [rbp - 0x31], 0xfffffffffffffffe
mov r15, rcx
xor r14d, r14d
mov dword [rbp + 0x67], r14d
mov dword [rbp + 0x77], r14d
mov rcx, qword [rcx + 0x30]
call fcn.180001b0c
mov rax, qword [r15 + 8]
cmp dword [rax + 0x10], 3
jle 0x18000252b
mov rax, qword [rax + 8]
add rax, 0x30
je 0x18000252b
cmp word [rax], 2
jne 0x18000252b
mov ecx, dword [rax + 8]
jmp 0x18000252e
mov ecx, r14d
test ecx, ecx
je 0x1800028a8
mov rax, qword [r15 + 8]
cmp dword [rax + 0x10], 3
jle 0x180002555
mov rax, qword [rax + 8]
add rax, 0x30
je 0x180002555
cmp word [rax], 2
jne 0x180002555
mov esi, dword [rax + 8]
jmp 0x180002558
mov esi, r14d
mov dword [rbp + 0x6f], r14d
mov dword [rbp + 0x7f], r14d
mov qword [rbp - 0x39], r14
lea r8, [rbp + 0x7f]
lea rdx, [rbp - 0x39]
mov rcx, qword [r15 + 0x30]
call fcn.180001e28
mov ebx, dword [rbp + 0x7f]
test ebx, ebx
je 0x1800026b9
mov edi, r14d
mov r14d, edi
mov r12, qword [rbp - 0x39]
mov rax, qword [r14 + r12]
mov qword [rbp + 0x7f], rax
mov ecx, eax
call qword [sym.imp.WS2_32.dll_ntohl]
mov r13d, eax
mov ecx, dword [rbp + 0x83]
call qword [sym.imp.WS2_32.dll_ntohl]
lea ecx, [rax + rdi]
mov dword [rbp + 0x7f], ecx
add rcx, 8
cmp rcx, rbx
ja 0x1800027c6
lea rcx, [r12 + 8]
add rcx, r14
mov qword [rbp - 0x29], rcx
mov qword [rbp - 0x21], rcx
mov dword [rbp - 0x19], eax
mov dword [rbp - 0x15], eax
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
and dword [rbp - 1], 0
and dword [rbp + 3], 0
mov dword [rbp + 7], 0x21
mov r12, qword [r15 + 0x20]
xor r14d, r14d
mov rdi, qword [r12 + r14*8]
test rdi, rdi
je 0x18000260d
mov rax, qword [rdi]
mov edx, r13d
mov rcx, rdi
call qword [rax + 0x10]
test al, al
jne 0x18000269b
inc r14
cmp r14, 0x80
jl 0x1800025f0
lea rax, str.command_not_implemented...
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x11]
call fcn.1800032d8
mov dword [rbp + 7], 0x1f
lea rdx, [rbp - 0x11]
mov rcx, qword [r15 + 0x30]
call fcn.180001ffc
mov edi, dword [rbp + 0x7f]
add edi, 8
mov rcx, qword [rbp - 0x11]
xor r14d, r14d
test rcx, rcx
je 0x180002677
mov eax, dword [rbp + 3]
test eax, eax
je 0x180002677
mov r8d, eax
xor edx, edx
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x11]
call qword [sym.imp.msvcrt.dll_free]
cmp edi, ebx
jb 0x180002583
mov rcx, qword [r15 + 0x30]
call fcn.180002318
mov r8, rbx
xor edx, edx
mov rcx, qword [rbp - 0x39]
call sub.msvcrt.dll_memset
jmp 0x1800027c9
mov rax, qword [rdi]
lea r9, [rbp - 0x11]
lea r8, [rbp - 0x29]
mov edx, r13d
mov rcx, rdi
call qword [rax + reloc.WS2_32.dll_htonl]
mov dword [rbp + 7], eax
cmp eax, 0x21
je 0x18000264a
jmp 0x18000263d
mov r12, qword [r15 + 0x30]
mov r13, qword [0x1817747d8]
cmp qword [r13 + 0x10], r14
je 0x1800027c1
mov rax, qword [r13 + 8]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1800027b2
mov r14, qword [rbx + 0x10]
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
xor eax, eax
mov qword [rbp - 1], rax
mov dword [rbp + 7], 0x21
cmp byte [r14 + 0xd], al
je 0x180002721
mov rax, qword [r14]
lea rdx, [rbp - 0x11]
mov rcx, r14
call qword [rax + 0x18]
mov rdi, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rax], rdi
mov rdx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rdx + 8], rax
jmp 0x18000273c
cmp byte [r14 + 0xc], al
je 0x18000275f
mov rdi, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rax], rdi
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r13 + 0x10]
mov edx, 0x18
mov rcx, rbx
call fcn.18000d594
mov rax, qword [r14]
mov edx, 1
mov rcx, r14
call qword [rax]
mov rbx, rdi
jmp 0x18000276f
mov rax, qword [r14]
lea rdx, [rbp - 0x11]
mov rcx, r14
call qword [rax + 0x10]
mov rbx, qword [rbx]
xor r14d, r14d
test r12, r12
je 0x180002784
lea rdx, [rbp - 0x11]
mov rcx, r12
call fcn.180001ffc
nop
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x1800027a8
mov eax, dword [rbp + 3]
test eax, eax
je 0x1800027a8
mov r8d, eax
xor edx, edx
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x11]
call qword [sym.imp.msvcrt.dll_free]
cmp rbx, qword [r13 + 8]
jne 0x1800026de
test r12, r12
je 0x1800027c9
mov rcx, r12
call fcn.180002318
jmp 0x1800027c9
mov r9d, r14d
jmp 0x1800027cd
xor r14d, r14d
mov r9d, dword [rbp + 0x6f]
mov ecx, 0x47
call fcn.180005008
mov r8d, eax
test eax, eax
jle 0x180002839
cmp r9d, 1
jne 0x180002822
mov edi, dword [rbp + 0x67]
inc edi
mov dword [rbp + 0x67], edi
lea ecx, [r9 + 0x47]
call fcn.180005008
cmp edi, eax
jl 0x180002816
cmp dword [rbp + 0x77], r14d
jne 0x180002816
mov dword [rbp + 0x77], esi
lea ecx, [r9 + 0x48]
call fcn.180005008
imul ecx, eax, 0x3e8
cmp esi, ecx
cmovb esi, ecx
cmp edi, r8d
jl 0x180002839
call fcn.180005cbc
jmp 0x180002839
cmp dword [rbp + 0x67], r14d
jle 0x180002839
mov dword [rbp + 0x67], r14d
mov edi, dword [rbp + 0x77]
test edi, edi
je 0x180002839
mov esi, edi
mov dword [rbp + 0x77], r14d
test esi, esi
je 0x1800028a8
mov rax, qword [r15 + 8]
cmp dword [rax + 0x10], 5
jle 0x18000285c
mov rax, qword [rax + 8]
add rax, 0x50
je 0x18000285c
cmp word [rax], 2
jne 0x18000285c
mov ebx, dword [rax + 8]
jmp 0x18000285f
mov ebx, r14d
test ebx, ebx
je 0x18000289b
imul ebx, esi
cmp ebx, 0x64
jb 0x180002892
mov dword [rbp + 0x6f], r14d
mov edx, 4
lea rcx, [rbp + 0x6f]
call fcn.18000673c
mov eax, 0x51eb851f
mul ebx
mov ecx, edx
shr ecx, 5
xor edx, edx
mov eax, dword [rbp + 0x6f]
div ecx
jmp 0x180002895
mov edx, r14d
cmp edx, esi
jae 0x18000289b
sub esi, edx
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x180002536
mov rcx, qword [r15 + 0x30]
call fcn.180001dec
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.180005cbc