Function at 0x140019560
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x120
lea rdi, [rsp + 0x40]
mov ecx, gethostname
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x130]
mov rax, qword [0x140575740]
xor rax, rsp
mov qword [rsp + 0x118], rax
cmp dword [rsp + 0x138], 4
jge 0x1400195b7
xor eax, eax
jmp 0x14001a1cc
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x20], eax
lea r9, str.KVM__SLAVE_:_Handle_Input__Len___d_
mov r8d, 4
mov edx, 0x200
mov rcx, qword [0x140576760]
call fcn.1401589b0
mov r8, qword [rsp + 0x148]
mov rdx, qword [rsp + 0x140]
xor ecx, ecx
call fcn.1400191d0
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax]
call sub.WS2_32.dll_ntohs
mov word [rsp + 0x40], ax
mov eax, 2
imul rax, rax, 1
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax]
call sub.WS2_32.dll_ntohs
mov word [rsp + 0x44], ax
movzx eax, word [rsp + 0x44]
movzx ecx, word [rsp + 0x40]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
mov eax, dword [rsp + 0x138]
mov dword [rsp + 0x20], eax
lea r9, str.KVM__SLAVE_:_Handle_Input__Len___d__type___u__size___u_
mov r8d, 4
mov edx, 0x200
mov rcx, qword [0x140576760]
call fcn.1401589b0
movzx eax, word [rsp + 0x44]
cmp eax, dword [rsp + 0x138]
jle 0x140019685
xor eax, eax
jmp 0x14001a1cc
movzx eax, word [rsp + 0x40]
mov dword [rsp + 0x100], eax
mov eax, dword [rsp + 0x100]
dec eax
mov dword [rsp + 0x100], eax
cmp dword [rsp + 0x100], 0x56
ja case.0x1400196d0.3
movsxd rax, dword [rsp + 0x100]
lea rcx, [0x140000000]
movzx eax, byte [rcx + rax + 0x1a230]
mov eax, dword [rcx + rax*4 + 0x1a1fc]
add rax, rcx
jmp rax
movzx eax, word [rsp + 0x44]
cmp eax, 5
jne 0x1400197ab
mov eax, 1
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x104], al
cmp byte [rsp + 0x104], 0
je 0x14001971c
cmp byte [rsp + 0x104], 1
je 0x14001972e
cmp byte [rsp + 0x104], 2
je 0x140019743
jmp 0x140019745
mov byte [0x14057672c], 0
xor ecx, ecx
call qword [sym.imp.USER32.dll_BlockInput]
nop
jmp 0x14001974f
mov byte [0x14057672c], 1
mov ecx, 1
call qword [sym.imp.USER32.dll_BlockInput]
nop
jmp 0x14001974f
jmp 0x14001974f
movzx eax, word [rsp + 0x44]
jmp 0x14001a1cc
mov cx, 0x57
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 0
mov word [rsp + rcx + 0x54], ax
mov cx, 5
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 1
mov word [rsp + rcx + 0x54], ax
mov eax, 1
imul rax, rax, 4
movzx ecx, byte [0x14057672c]
mov byte [rsp + rax + 0x54], cl
mov r8, qword [rsp + 0x148]
mov edx, 5
lea rcx, [rsp + 0x54]
call qword [rsp + 0x140]
nop
jmp case.0x1400196d0.3
movzx eax, word [rsp + 0x44]
cmp eax, 6
je 0x1400197bf
jmp case.0x1400196d0.3
mov eax, 1
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movsx eax, byte [rcx + rax]
mov ecx, 1
imul rcx, rcx, 5
mov edx, eax
mov rax, qword [rsp + 0x130]
movzx ecx, byte [rax + rcx]
call fcn.1400165f0
nop
jmp case.0x1400196d0.3
movzx eax, word [rsp + 0x44]
cmp eax, 7
je 0x140019805
jmp case.0x1400196d0.3
mov eax, 1
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movsx eax, byte [rcx + rax]
mov ecx, 1
imul rcx, rcx, 5
mov rdx, qword [rsp + 0x130]
movzx ecx, byte [rdx + rcx]
shl ecx, 8
mov edx, 1
imul rdx, rdx, 6
mov r8, qword [rsp + 0x130]
movzx edx, byte [r8 + rdx]
add ecx, edx
mov edx, eax
call fcn.1400166e0
nop
jmp case.0x1400196d0.3
xor eax, eax
mov word [rsp + 0x78], ax
mov dword [rsp + 0x7c], 0xffffffff
movzx eax, word [rsp + 0x44]
cmp eax, 0xa
je 0x14001987e
movzx eax, word [rsp + 0x44]
cmp eax, 0xc
jne 0x140019a40
mov dword [0x1405766d8], 1
mov eax, 2
imul rax, rax, 3
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax]
call sub.WS2_32.dll_ntohs
movzx eax, ax
cvtsi2sd xmm0, eax
mulsd xmm0, qword [0x140416e40]
cvtsi2sd xmm1, dword [0x1404dc87c]
divsd xmm0, xmm1
movsd qword [rsp + 0x68], xmm0
mov eax, 2
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax]
call sub.WS2_32.dll_ntohs
movzx eax, ax
cvtsi2sd xmm0, eax
mulsd xmm0, qword [0x140416e40]
cvtsi2sd xmm1, dword [0x1404dc87c]
divsd xmm0, xmm1
movsd qword [rsp + 0x70], xmm0
mov eax, dword [0x140576700]
mov ecx, dword [0x1405766f0]
sub ecx, eax
mov eax, ecx
cvtsi2sd xmm0, eax
call fcn.1403c3e80
movsd xmm1, qword [rsp + 0x68]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x68], xmm0
mov eax, dword [0x140576704]
mov ecx, dword [0x1405766f4]
sub ecx, eax
mov eax, ecx
cvtsi2sd xmm0, eax
call fcn.1403c3e80
movsd xmm1, qword [rsp + 0x70]
addsd xmm1, xmm0
movaps xmm0, xmm1
movsd qword [rsp + 0x70], xmm0
cvtsi2sd xmm0, dword [0x1405766f8]
cvtsi2sd xmm1, dword [0x140576708]
divsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x68]
mulsd xmm1, xmm0
movaps xmm0, xmm1
mulsd xmm0, qword [0x140416e48]
movsd qword [rsp + 0x68], xmm0
cvtsi2sd xmm0, dword [0x1405766fc]
cvtsi2sd xmm1, dword [0x14057670c]
divsd xmm0, xmm1
movsd xmm1, qword [rsp + 0x70]
mulsd xmm1, xmm0
movaps xmm0, xmm1
mulsd xmm0, qword [0x140416e48]
movsd qword [rsp + 0x70], xmm0
movzx eax, word [rsp + 0x44]
cmp eax, 0xc
jne 0x1400199dd
mov eax, 2
imul rax, rax, 5
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax]
call sub.WS2_32.dll_ntohs
mov word [rsp + 0x78], ax
mov eax, 1
imul rax, rax, 5
mov rcx, qword [rsp + 0x130]
movzx eax, byte [rcx + rax]
cvtsi2sd xmm0, dword [0x1405766fc]
movsd xmm1, qword [rsp + 0x70]
divsd xmm1, xmm0
movaps xmm0, xmm1
cvtsi2sd xmm1, dword [0x1405766f8]
movsd xmm2, qword [rsp + 0x68]
divsd xmm2, xmm1
movaps xmm1, xmm2
movsd qword [rsp + 0x108], xmm1
movzx r9d, word [rsp + 0x78]
mov r8d, eax
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x108]
call fcn.140016510
nop
jmp case.0x1400196d0.3
movzx eax, word [rsp + 0x44]
cmp eax, 0xa
jl 0x140019a98
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax + 8]
call sub.WS2_32.dll_ntohs
movzx eax, ax
mov dword [rsp + 0x80], eax
cmp dword [rsp + 0x80], 0x14
jl 0x140019a98
cmp dword [rsp + 0x80], 0x1388
jg 0x140019a98
mov eax, dword [rsp + 0x80]
mov dword [0x140576728], eax
movzx eax, word [rsp + 0x44]
cmp eax, 8
jl 0x140019aeb
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax + 6]
call sub.WS2_32.dll_ntohs
movzx eax, ax
mov dword [rsp + 0x84], eax
cmp dword [rsp + 0x84], 0x40
jl 0x140019aeb
cmp dword [rsp + 0x84], 0x1000
jg 0x140019aeb
mov eax, dword [rsp + 0x84]
mov dword [0x1404dc880], eax
movzx eax, word [rsp + 0x44]
cmp eax, 6
jl 0x140019b27
mov eax, 1
imul rax, rax, 5
mov rcx, qword [rsp + 0x130]
movsx eax, byte [rcx + rax]
mov ecx, 1
imul rcx, rcx, 4
mov rdx, qword [rsp + 0x130]
movsx ecx, byte [rdx + rcx]
mov edx, eax
call fcn.14001cb30
nop
mov dword [0x140576724], 0x64
jmp case.0x1400196d0.3
movzx eax, word [rsp + 0x44]
cmp eax, 4
je 0x140019b45
jmp case.0x1400196d0.3
mov cx, 7
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 0
mov word [rsp + rcx + 0x98], ax
mov cx, 8
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 1
mov word [rsp + rcx + 0x98], ax
movzx ecx, word [0x140576710]
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 2
mov word [rsp + rcx + 0x98], ax
movzx ecx, word [0x140576714]
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 3
mov word [rsp + rcx + 0x98], ax
mov r8, qword [rsp + 0x148]
mov edx, 8
lea rcx, [rsp + 0x98]
call qword [rsp + 0x140]
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x140]
call fcn.140018a20
cmp qword [0x140576740], 0
jne 0x140019d40
movsxd rax, dword [0x140576720]
shl rax, 3
mov r9d, 0x21f
lea r8, [0x1404dc9d0]
mov edx, 1
mov rcx, rax
call fcn.1403ba980
mov qword [0x140576740], rax
cmp qword [0x140576740], 0
jne 0x140019c70
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
mov r9d, 0xfe
mov r8d, 0x21f
lea rdx, [0x1404dca20]
xor ecx, ecx
call fcn.14014da80
mov r8d, 0x21f
lea rdx, [0x1404dca70]
lea rcx, [0x1404dcab8]
call fcn.140015e70
mov ecx, 0xfe
call fcn.14038e600
nop
mov dword [rsp + 0x88], 0
jmp 0x140019c8d
mov eax, dword [rsp + 0x88]
inc eax
mov dword [rsp + 0x88], eax
mov eax, dword [0x140576720]
cmp dword [rsp + 0x88], eax
jge 0x140019d40
movsxd rax, dword [0x14057671c]
shl rax, 3
mov r9d, 0x220
lea r8, [0x1404dcae0]
mov edx, 1
mov rcx, rax
call fcn.1403ba980
mov qword [rsp + 0x110], rax
movsxd rax, dword [rsp + 0x88]
mov rcx, qword [0x140576740]
mov rdx, qword [rsp + 0x110]
mov qword [rcx + rax*8], rdx
cmp qword [rsp + 0x110], 0
jne 0x140019d3b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
mov r9d, 0xfe
mov r8d, 0x220
lea rdx, [0x1404dcb30]
xor ecx, ecx
call fcn.14014da80
mov r8d, 0x220
lea rdx, [0x1404dcb80]
lea rcx, [0x1404dcbc8]
call fcn.140015e70
mov ecx, 0xfe
call fcn.14038e600
nop
jmp 0x140019c7d
mov dword [rsp + 0x88], 0
jmp 0x140019d5d
mov eax, dword [rsp + 0x88]
inc eax
mov dword [rsp + 0x88], eax
mov eax, dword [0x140576720]
cmp dword [rsp + 0x88], eax
jge 0x140019de1
mov dword [rsp + 0x8c], 0
jmp 0x140019d89
mov eax, dword [rsp + 0x8c]
inc eax
mov dword [rsp + 0x8c], eax
mov eax, dword [0x14057671c]
cmp dword [rsp + 0x8c], eax
jge 0x140019ddc
movsxd rax, dword [rsp + 0x88]
movsxd rcx, dword [rsp + 0x8c]
mov rdx, qword [0x140576740]
mov rax, qword [rdx + rax*8]
mov dword [rax + rcx*8], 0xff
movsxd rax, dword [rsp + 0x88]
movsxd rcx, dword [rsp + 0x8c]
mov rdx, qword [0x140576740]
mov rax, qword [rdx + rax*8]
mov byte [rax + rcx*8 + 4], 0
jmp 0x140019d79
jmp 0x140019d4d
jmp case.0x1400196d0.3
movzx eax, word [rsp + 0x44]
cmp eax, 5
je 0x140019df5
jmp case.0x1400196d0.3
mov eax, 1
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movsx eax, byte [rcx + rax]
mov dword [reloc.WS2_32.dll_accept], eax
jmp case.0x1400196d0.3
mov eax, 2
imul rax, rax, 2
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax]
call sub.WS2_32.dll_ntohs
movzx eax, ax
mov dword [rsp + 0xa4], eax
cmp dword [rsp + 0xa4], 0x14
jl 0x140019e5d
cmp dword [rsp + 0xa4], 0x1388
jg 0x140019e5d
mov eax, dword [rsp + 0xa4]
mov dword [0x140576728], eax
jmp case.0x1400196d0.3
call fcn.1400167a0
mov word [rsp + 0xc4], ax
mov cx, reloc.WS2_32.dll_ntohl
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 0
mov word [rsp + rcx + 0xb4], ax
mov cx, 6
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 1
mov word [rsp + rcx + 0xb4], ax
movzx ecx, word [rsp + 0xc4]
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 2
mov word [rsp + rcx + 0xb4], ax
mov r8, qword [rsp + 0x148]
mov edx, 6
lea rcx, [rsp + 0xb4]
call qword [rsp + 0x140]
nop
jmp case.0x1400196d0.3
mov dword [rsp + 0xc8], 0
mov eax, 1
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movsx eax, byte [rcx + rax]
cmp eax, 1
jne 0x14001a0ad
mov eax, 4
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
mov ecx, dword [rcx + rax + 6]
call sub.WS2_32.dll_ntohl
mov dword [rsp + 0xcc], eax
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax + 0xa]
call sub.WS2_32.dll_ntohs
movzx eax, ax
imul eax, eax, 0x400
movzx ecx, word [0x1404dc87c]
cdq
idiv ecx
mov word [rsp + 0xd0], ax
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax + 0xc]
call sub.WS2_32.dll_ntohs
movzx eax, ax
imul eax, eax, 0x400
movzx ecx, word [0x1404dc87c]
cdq
idiv ecx
mov word [rsp + 0xd4], ax
mov eax, dword [0x140576700]
mov ecx, dword [0x1405766f0]
sub ecx, eax
mov eax, ecx
cvtsi2sd xmm0, eax
call fcn.1403c3e80
cvttsd2si eax, xmm0
movzx eax, ax
movzx ecx, word [rsp + 0xd0]
add ecx, eax
mov eax, ecx
mov word [rsp + 0xd0], ax
mov eax, dword [0x140576704]
mov ecx, dword [0x1405766f4]
sub ecx, eax
mov eax, ecx
cvtsi2sd xmm0, eax
call fcn.1403c3e80
cvttsd2si eax, xmm0
movzx eax, ax
movzx ecx, word [rsp + 0xd4]
add ecx, eax
mov eax, ecx
mov word [rsp + 0xd4], ax
movzx eax, word [rsp + 0xd0]
cvtsi2sd xmm0, eax
cvtsi2sd xmm1, dword [0x1405766f8]
cvtsi2sd xmm2, dword [0x140576708]
divsd xmm1, xmm2
mulsd xmm0, xmm1
mulsd xmm0, qword [0x140416e48]
cvttsd2si eax, xmm0
mov word [rsp + 0xd0], ax
movzx eax, word [rsp + 0xd4]
cvtsi2sd xmm0, eax
cvtsi2sd xmm1, dword [0x1405766fc]
cvtsi2sd xmm2, dword [0x14057670c]
divsd xmm1, xmm2
mulsd xmm0, xmm1
mulsd xmm0, qword [0x140416e48]
cvttsd2si eax, xmm0
mov word [rsp + 0xd4], ax
mov eax, 1
imul rax, rax, 5
movzx r9d, word [rsp + 0xd4]
movzx r8d, word [rsp + 0xd0]
mov edx, dword [rsp + 0xcc]
mov rcx, qword [rsp + 0x130]
movzx ecx, byte [rcx + rax]
call fcn.1400168e0
mov dword [rsp + 0xc8], eax
jmp 0x14001a0f0
mov eax, 1
imul rax, rax, 4
mov rcx, qword [rsp + 0x130]
movsx eax, byte [rcx + rax]
cmp eax, 2
jne 0x14001a0f0
movzx eax, word [rsp + 0x44]
sub eax, 5
mov rcx, qword [rsp + 0x130]
add rcx, 5
mov r8d, dword [0x1404dc87c]
mov edx, eax
call fcn.140016a10
mov dword [rsp + 0xc8], eax
cmp dword [rsp + 0xc8], 1
jne 0x14001a14b
mov cx, reloc.WS2_32.dll_ntohs
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 0
mov word [rsp + rcx + 0xe4], ax
mov cx, 4
call sub.WS2_32.dll_htons
mov ecx, 2
imul rcx, rcx, 1
mov word [rsp + rcx + 0xe4], ax
mov r8, qword [rsp + 0x148]
mov edx, 4
lea rcx, [rsp + 0xe4]
call qword [rsp + 0x140]
nop
jmp case.0x1400196d0.3
mov rdx, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x140]
call fcn.140018a20
nop
jmp case.0x1400196d0.3
mov dword [rsp + 0xf4], 0
movzx eax, word [rsp + 0x44]
cmp eax, 6
jge 0x14001a17c
jmp case.0x1400196d0.3
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x130]
movzx ecx, word [rcx + rax + 4]
call sub.WS2_32.dll_ntohs
movzx eax, ax
mov dword [rsp + 0xf4], eax
cmp dword [rsp + 0xf4], 0xffff
jne 0x14001a1ba
mov dword [0x1405766e8], 0
jmp case.0x1400196d0.3
mov eax, dword [rsp + 0xf4]
mov dword [0x1405766e8], eax
movzx eax, word [rsp + 0x44]
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_connect
call fcn.14037c300
mov rax, rdi
mov rcx, qword [rsp + 0x118]
xor rcx, rsp
call fcn.14037c650
add rsp, 0x120
pop rdi
ret