Function at 0x1800024c4
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 r12d, r12d
mov dword [rbp + 0x6f], r12d
xor edi, edi
mov dword [rbp + 0x77], edi
mov rcx, qword [rcx + 0x30]
call fcn.180001b14
mov rax, qword [r15 + 8]
cmp dword [rax + 0x10], 3
jle 0x180002520
mov rax, qword [rax + 8]
add rax, 0x30
je 0x180002520
cmp word [rax], 2
jne 0x180002520
mov ecx, dword [rax + 8]
jmp 0x180002522
xor ecx, ecx
test ecx, ecx
je 0x180002898
mov rax, qword [r15 + 8]
cmp dword [rax + 0x10], 3
jle 0x180002549
mov rax, qword [rax + 8]
add rax, 0x30
je 0x180002549
cmp word [rax], 2
jne 0x180002549
mov esi, dword [rax + 8]
jmp 0x18000254b
xor esi, esi
and dword [rbp + 0x67], 0
and dword [rbp + 0x7f], 0
and qword [rbp - 0x39], 0
lea r8, [rbp + 0x7f]
lea rdx, [rbp - 0x39]
mov rcx, qword [r15 + 0x30]
call fcn.180001e30
mov ebx, dword [rbp + 0x7f]
test ebx, ebx
je 0x1800026ad
xor edi, edi
mov r12, qword [rbp - 0x39]
test ebx, ebx
je 0x18000267c
mov r13d, ebx
mov r14d, edi
mov rax, qword [rdi + r12]
mov qword [rbp - 0x39], rax
mov ecx, eax
call qword [sym.imp.WS2_32.dll_ntohl]
mov dword [rbp + 0x7f], eax
mov ecx, dword [rbp - 0x35]
call qword [sym.imp.WS2_32.dll_ntohl]
lea ecx, [rax + rdi]
mov dword [rbp - 0x39], ecx
add rcx, 8
cmp rcx, r13
ja 0x1800027b1
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 r13, qword [r15 + 0x20]
xor r14d, r14d
mov rdi, qword [r13 + r14*8]
test rdi, rdi
je 0x180002609
mov rax, qword [rdi]
mov edx, dword [rbp + 0x7f]
mov rcx, rdi
call qword [rax + 0x10]
test al, al
jne 0x180002697
inc r14
cmp r14, 0x80
jl 0x1800025eb
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.180003b00
mov eax, 0x1f
mov dword [rbp + 7], eax
lea rdx, [rbp - 0x11]
mov rcx, qword [r15 + 0x30]
call fcn.180001ffc
mov edi, dword [rbp - 0x39]
add edi, 8
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x180002671
mov eax, dword [rbp + 3]
test eax, eax
je 0x180002671
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
mov r13, rbx
jb 0x180002585
mov rcx, qword [r15 + 0x30]
call fcn.18000230c
mov r8, rbx
xor edx, edx
mov rcx, r12
call sub.msvcrt.dll_memset
jmp 0x1800027b1
mov rax, qword [rdi]
lea r9, [rbp - 0x11]
lea r8, [rbp - 0x29]
mov edx, dword [rbp + 0x7f]
mov rcx, rdi
call qword [rax + reloc.WS2_32.dll_htonl]
jmp 0x180002637
mov r12, qword [r15 + 0x30]
mov r13, qword [0x1817777d8]
cmp qword [r13 + 0x10], 0
je 0x1800027b1
mov rax, qword [r13 + 8]
mov rbx, qword [rax]
cmp rbx, rax
je 0x1800027a4
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 0x180002716
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 0x180002731
cmp byte [r14 + 0xc], al
je 0x180002754
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.18000e694
mov rax, qword [r14]
mov edx, 1
mov rcx, r14
call qword [rax]
mov rbx, rdi
jmp 0x180002764
mov rax, qword [r14]
lea rdx, [rbp - 0x11]
mov rcx, r14
call qword [rax + 0x10]
mov rbx, qword [rbx]
test r12, r12
je 0x180002776
lea rdx, [rbp - 0x11]
mov rcx, r12
call fcn.180001ffc
nop
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x18000279a
mov eax, dword [rbp + 3]
test eax, eax
je 0x18000279a
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 0x1800026d3
test r12, r12
je 0x1800027b1
mov rcx, r12
call fcn.18000230c
mov r12d, dword [rbp + 0x6f]
mov r9d, dword [rbp + 0x67]
mov ecx, 0x47
call fcn.180006448
mov r8d, eax
test eax, eax
jle 0x180002827
cmp r9d, 1
jne 0x18000280e
inc r12d
mov dword [rbp + 0x6f], r12d
lea ecx, [r9 + 0x47]
call fcn.180006448
cmp r12d, eax
jl 0x180002802
cmp dword [rbp + 0x77], 0
jne 0x180002802
mov dword [rbp + 0x77], esi
lea ecx, [r9 + 0x48]
call fcn.180006448
imul ecx, eax, 0x3e8
cmp esi, ecx
cmovb esi, ecx
cmp r12d, r8d
jl 0x180002827
call fcn.1800071dc
jmp 0x180002827
test r12d, r12d
jle 0x180002827
xor r12d, r12d
mov dword [rbp + 0x6f], r12d
mov edi, dword [rbp + 0x77]
test edi, edi
je 0x180002827
mov esi, edi
and dword [rbp + 0x77], r12d
test esi, esi
je 0x180002898
mov rax, qword [r15 + 8]
cmp dword [rax + 0x10], 5
jle 0x18000284a
mov rax, qword [rax + 8]
add rax, 0x50
je 0x18000284a
cmp word [rax], 2
jne 0x18000284a
mov ebx, dword [rax + 8]
jmp 0x18000284c
xor ebx, ebx
test ebx, ebx
je 0x18000288b
imul ebx, esi
cmp ebx, 0x64
jb 0x180002883
and dword [rbp + 0x67], 0
mov rax, qword [r15 + 0x18]
mov rcx, qword [rax + 0x48]
mov rax, qword [rcx]
lea rdx, [rbp + 0x67]
call qword [rax + 0x10]
mov eax, 0x51eb851f
mul ebx
mov ecx, edx
shr ecx, 5
xor edx, edx
mov eax, dword [rbp + 0x67]
div ecx
jmp 0x180002885
xor edx, edx
cmp edx, esi
jae 0x18000288b
sub esi, edx
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x18000252a
mov rcx, qword [r15 + 0x30]
call fcn.180001df4
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
jmp fcn.1800071dc