Function at 0x1403513d0
Capabilities:
Encode data using xor
Encrypt data using des

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x870
call fcn.1403983a0
sub rsp, rax
mov rax, qword [0x14048bd00]
xor rax, rsp
mov qword [rsp + 0x860], rax
mov r11d, 8
mov qword [rsp + 0x50], r8
mov r10, r8
lea rax, [rsp + 0x60]
mov ebx, r11d
mov edi, r9d
mov r8d, 0x80
nop word [rax + rax]
movups xmm0, xmmword [rdx]
movups xmm1, xmmword [rdx + 0x10]
movups xmmword [rax], xmm0
movups xmm0, xmmword [rdx + 0x20]
movups xmmword [rax + 0x10], xmm1
movups xmm1, xmmword [rdx + 0x30]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [rdx + 0x40]
movups xmmword [rax + 0x30], xmm1
movups xmm1, xmmword [rdx + 0x50]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [rdx + 0x60]
movups xmmword [rax + 0x50], xmm1
movups xmm1, xmmword [rdx + 0x70]
add rdx, r8
movups xmmword [rax + 0x60], xmm0
add rax, r8
movups xmmword [rax - 0x10], xmm1
sub rbx, 1
jne 0x140351430
lea r9, [rsp + 0x60]
mov edx, reloc.WS2_32.dll_recv
sub r9, rcx
lea rbx, [rsp + 0x70]
sub rbx, rcx
lea rax, [rcx + 0x20]
mov ecx, edx
nop word [rax + rax]
movdqu xmm0, xmmword [rax + r9 - 0x20]
movdqu xmm1, xmmword [rax - 0x20]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax + r9 - 0x60], xmm1
movdqu xmm0, xmmword [rbx + rax - 0x60]
movdqu xmm1, xmmword [rax - 0x50]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [rbx + rax - 0x60], xmm1
movdqu xmm1, xmmword [rax + r9 - 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax + r9 - 0x40], xmm1
movdqu xmm0, xmmword [rbx + rax - 0x40]
movdqu xmm1, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rbx + rax - 0x40], xmm1
sub rcx, 1
jne 0x1403514a0
lea rax, [rsp + 0x460]
lea rcx, [rsp + 0x60]
nop dword [rax + rax]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x10], xmm1
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x30], xmm1
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x50], xmm1
movups xmm1, xmmword [rcx + 0x70]
add rcx, r8
movups xmmword [rax + 0x60], xmm0
add rax, r8
movups xmmword [rax - 0x10], xmm1
sub r11, 1
jne 0x140351510
xor r9d, r9d
mov qword [rsp + 0x40], r9
test edi, edi
je 0x14035161e
lea rax, [r10 + 0x3f8]
lea rcx, [rsp + 0x460]
cmp rcx, rax
ja 0x1403515a6
lea rax, [rsp + 0x858]
cmp rax, r10
jb 0x1403515a6
mov ecx, r9d
nop
mov rax, qword [r10 + rcx*8]
xor qword [rsp + rcx*8 + 0x460], rax
inc rcx
cmp rcx, r8
jl 0x140351590
jmp 0x14035161e
lea rcx, [rsp + 0x460]
sub rcx, r10
lea r8, [rsp + 0x470]
sub r8, r10
lea rax, [r10 + 0x20]
movdqu xmm0, xmmword [rcx + rax - 0x20]
movdqu xmm1, xmmword [rax - 0x20]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmmword [rcx + rax - 0x60], xmm1
movdqu xmm0, xmmword [rax + r8 - 0x60]
movdqu xmm1, xmmword [rax - 0x50]
xorps xmm1, xmm0
movdqu xmmword [rax + r8 - 0x60], xmm1
movdqu xmm0, xmmword [rax + rcx - 0x40]
movdqu xmm1, xmmword [rax - 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax + rcx - 0x40], xmm1
movdqu xmm0, xmmword [rax + r8 - 0x40]
movdqu xmm1, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rax + r8 - 0x40], xmm1
sub rdx, 1
jne 0x1403515c0
mov eax, r9d
mov dword [rsp], eax
nop dword [rax]
nop dword [rax + rax]
shl eax, 4
lea rbx, [rsp + 0x60]
mov r11, qword [rbx + rax*8 + 0x20]
lea rbx, [rbx + rax*8]
mov rdx, qword [rbx]
mov ecx, edx
mov eax, r11d
imul rcx, rax
mov qword [rsp + 8], rbx
lea r10, [rdx + rcx*2]
mov rcx, qword [rbx + 0x40]
mov eax, ecx
add r10, r11
mov r9, r10
xor r9, qword [rbx + 0x60]
mov rdx, r9
shl r9, 0x20
shr rdx, 0x20
imul rax, rdx
or r9, rdx
lea r8, [rcx + rax*2]
mov ecx, r10d
add r8, r9
xor r11, r8
mov rdx, r11
shr r11, 0x18
shl rdx, 0x28
or rdx, r11
mov eax, edx
imul rcx, rax
lea rax, [r10 + rcx*2]
mov ecx, r8d
add rax, rdx
mov qword [rsp + 0x48], rax
xor rax, r9
mov r9, rax
shr rax, 0x10
shl r9, 0x30
or r9, rax
mov eax, r9d
imul rcx, rax
mov qword [rsp + 0x10], r9
lea rax, [r8 + rcx*2]
mov r8, qword [rbx + 0x28]
add rax, r9
mov qword [rsp + 0x20], rax
xor rax, rdx
mov rdx, qword [rbx + 8]
mov rcx, rax
add rax, rax
shr rcx, 0x3f
or rcx, rax
mov eax, r8d
mov qword [rsp + 0x28], rcx
mov ecx, edx
imul rcx, rax
lea r11, [rdx + rcx*2]
mov rcx, qword [rbx + 0x48]
add r11, r8
mov eax, ecx
mov r10, r11
xor r10, qword [rbx + 0x68]
mov rdx, r10
shl r10, 0x20
shr rdx, 0x20
imul rax, rdx
or r10, rdx
lea r9, [r10 + rax*2]
add r9, rcx
mov ecx, r11d
mov rax, r9
xor rax, r8
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
mov eax, edx
imul rcx, rax
lea r13, [r11 + rcx*2]
add r13, rdx
mov rax, r13
xor rax, r10
mov ecx, r9d
mov r8, rax
shr rax, 0x10
shl r8, 0x30
or r8, rax
mov eax, r8d
imul rcx, rax
mov qword [rsp + 0x18], r8
lea rax, [r9 + rcx*2]
add rax, r8
mov r8, qword [rbx + 0x30]
mov qword [rsp + 0x38], rax
xor rax, rdx
mov rdx, qword [rbx + 0x10]
mov r14, rax
add rax, rax
mov ecx, edx
shr r14, 0x3f
or r14, rax
mov eax, r8d
imul rcx, rax
lea r11, [rdx + rcx*2]
mov rcx, qword [rbx + 0x50]
add r11, r8
mov eax, ecx
mov r10, r11
xor r10, qword [rbx + 0x70]
mov rdx, r10
shl r10, 0x20
shr rdx, 0x20
imul rax, rdx
or r10, rdx
lea r9, [r10 + rax*2]
add r9, rcx
mov ecx, r11d
mov rax, r9
xor rax, r8
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
mov eax, edx
imul rcx, rax
lea r12, [r11 + rcx*2]
mov ecx, r9d
add r12, rdx
mov rax, r12
xor rax, r10
mov r8, rax
shr rax, 0x10
shl r8, 0x30
or r8, rax
mov eax, r8d
imul rcx, rax
mov qword [rsp + 0x30], r8
lea rdi, [r9 + rcx*2]
add rdi, r8
mov r8, qword [rbx + 0x38]
mov rax, rdi
xor rax, rdx
mov rdx, qword [rbx + 0x18]
mov rbp, rax
mov ecx, edx
add rax, rax
shr rbp, 0x3f
or rbp, rax
mov eax, r8d
imul rcx, rax
lea r11, [rdx + rcx*2]
mov rcx, qword [rbx + 0x58]
add r11, r8
mov eax, ecx
mov r10, r11
xor r10, qword [rbx + 0x78]
mov rdx, r10
shl r10, 0x20
shr rdx, 0x20
or r10, rdx
imul rax, rdx
lea r9, [r10 + rax*2]
add r9, rcx
mov ecx, r11d
mov rax, r9
xor rax, r8
mov r8, rax
shr rax, 0x18
shl r8, 0x28
or r8, rax
mov eax, r8d
imul rcx, rax
lea r15, [r11 + rcx*2]
mov ecx, r9d
add r15, r8
mov rax, r15
xor rax, r10
mov rdx, rax
shr rax, 0x10
shl rdx, 0x30
or rdx, rax
mov eax, edx
imul rcx, rax
lea rbx, [r9 + rcx*2]
add rbx, rdx
mov rax, rbx
xor rax, r8
mov r8, qword [rsp + 0x48]
mov rsi, rax
mov ecx, r8d
add rax, rax
shr rsi, 0x3f
or rsi, rax
mov eax, r14d
imul rcx, rax
mov eax, edi
lea r8, [r8 + rcx*2]
add r8, r14
mov r9, r8
xor r9, rdx
mov rcx, r9
shl r9, 0x20
shr rcx, 0x20
imul rax, rcx
or r9, rcx
mov ecx, r8d
lea r11, [r9 + rax*2]
add r11, rdi
mov rdi, qword [rsp + 8]
mov rax, r11
xor rax, r14
mov r10, rax
shr rax, 0x18
shl r10, 0x28
or r10, rax
mov eax, r10d
imul rcx, rax
lea rcx, [r8 + rcx*2]
add rcx, r10
mov qword [rdi], rcx
xor rcx, r9
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, r11d
mov eax, edx
imul rcx, rax
mov qword [rdi + 0x78], rdx
mov eax, ebp
lea rcx, [r11 + rcx*2]
add rcx, rdx
mov qword [rdi + 0x50], rcx
xor rcx, r10
ror rcx, 0x3f
mov qword [rdi + 0x28], rcx
mov ecx, r13d
imul rcx, rax
lea rdx, [rcx*2]
add rdx, r13
add rdx, rbp
mov r8, rdx
xor r8, qword [rsp + 0x10]
mov r11, qword [rsp + 0x28]
mov rcx, r8
shr rcx, 0x20
shl r8, 0x20
or r8, rcx
mov eax, ebx
imul rax, rcx
mov ecx, edx
lea r10, [r8 + rax*2]
add r10, rbx
mov rax, r10
xor rax, rbp
mov r9, rax
shr rax, 0x18
shl r9, 0x28
or r9, rax
mov eax, r9d
imul rcx, rax
lea rcx, [rdx + rcx*2]
add rcx, r9
mov qword [rdi + 8], rcx
xor rcx, r8
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, r10d
mov eax, edx
imul rcx, rax
mov qword [rdi + 0x60], rdx
mov eax, esi
lea rcx, [r10 + rcx*2]
add rcx, rdx
mov qword [rdi + 0x58], rcx
xor rcx, r9
mov r9, qword [rsp + 0x20]
ror rcx, 0x3f
mov qword [rdi + 0x30], rcx
mov ecx, r12d
imul rcx, rax
mov eax, r9d
lea rdx, [r12 + rcx*2]
add rdx, rsi
mov r8, rdx
xor r8, qword [rsp + 0x18]
mov rcx, r8
shl r8, 0x20
shr rcx, 0x20
imul rax, rcx
or r8, rcx
mov ecx, edx
lea r10, [r8 + rax*2]
add r10, r9
mov rax, r10
xor rax, rsi
mov r9, rax
shr rax, 0x18
shl r9, 0x28
or r9, rax
mov eax, r9d
imul rcx, rax
lea rcx, [rdx + rcx*2]
add rcx, r9
mov qword [rdi + 0x10], rcx
xor rcx, r8
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, r10d
mov eax, edx
imul rcx, rax
mov qword [rdi + 0x68], rdx
mov eax, r11d
lea rcx, [r10 + rcx*2]
add rcx, rdx
mov qword [rdi + 0x40], rcx
xor rcx, r9
ror rcx, 0x3f
mov qword [rdi + 0x38], rcx
mov ecx, r15d
mov r9, qword [rsp + 0x38]
imul rcx, rax
mov eax, r9d
lea rdx, [r15 + rcx*2]
add rdx, r11
mov r8, rdx
xor r8, qword [rsp + 0x30]
mov rcx, r8
shl r8, 0x20
shr rcx, 0x20
imul rax, rcx
or r8, rcx
mov ecx, edx
lea r10, [r8 + rax*2]
add r10, r9
mov rax, r10
xor rax, r11
mov r9, rax
shr rax, 0x18
shl r9, 0x28
or r9, rax
mov eax, r9d
imul rcx, rax
lea rcx, [rdx + rcx*2]
add rcx, r9
mov qword [rdi + 0x18], rcx
xor rcx, r8
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, r10d
mov eax, edx
imul rcx, rax
mov eax, dword [rsp]
inc eax
mov qword [rdi + 0x70], rdx
mov dword [rsp], eax
lea rcx, [r10 + rcx*2]
add rcx, rdx
mov qword [rdi + 0x48], rcx
xor rcx, r9
ror rcx, 0x3f
mov qword [rdi + 0x20], rcx
cmp eax, 8
jb 0x140351630
xor eax, eax
add eax, eax
lea rdi, [rsp + 0x60]
mov rdx, qword [rdi + rax*8]
lea rdi, [rdi + rax*8]
mov r8, qword [rdi + 0x100]
mov ecx, edx
mov eax, r8d
imul rcx, rax
mov qword [rsp + 0x38], rdi
lea r11, [rdx + rcx*2]
mov rcx, qword [rdi + 0x200]
add r11, r8
mov eax, ecx
mov r10, r11
xor r10, qword [rdi + 0x300]
mov rdx, r10
shl r10, 0x20
shr rdx, 0x20
imul rax, rdx
or r10, rdx
lea r9, [r10 + rax*2]
add r9, rcx
mov ecx, r11d
mov rax, r9
xor rax, r8
mov rdx, rax
shr rax, 0x18
shl rdx, 0x28
or rdx, rax
mov eax, edx
imul rcx, rax
lea r13, [r11 + rcx*2]
mov r11, qword [rdi + 0x108]
add r13, rdx
mov ecx, r9d
mov rax, r13
xor rax, r10
mov r8, rax
shr rax, 0x10
shl r8, 0x30
or r8, rax
mov eax, r8d
imul rcx, rax
mov qword [rsp + 0x30], r8
lea rax, [r9 + rcx*2]
add rax, r8
mov qword [rsp + 0x20], rax
xor rax, rdx
mov rdx, qword [rdi + 8]
mov rcx, rax
shr rcx, 0x3f
add rax, rax
or rcx, rax
mov eax, r11d
mov qword [rsp + 0x18], rcx
mov ecx, edx
imul rcx, rax
lea r10, [rdx + rcx*2]
mov rcx, qword [rdi + 0x208]
add r10, r11
mov eax, ecx
mov r9, r10
xor r9, qword [rdi + 0x308]
mov rdx, r9
shl r9, 0x20
shr rdx, 0x20
imul rax, rdx
or r9, rdx
lea rdx, [rcx + rax*2]
mov ecx, r10d
add rdx, r9
xor r11, rdx
mov r8, r11
shr r11, 0x18
shl r8, 0x28
or r8, r11
mov eax, r8d
imul rcx, rax
lea r12, [r10 + rcx*2]
add r12, r8
mov rax, r12
mov r11, qword [rdi + 0x180]
xor rax, r9
mov r9, rax
mov ecx, edx
shr rax, 0x10
shl r9, 0x30
or r9, rax
mov eax, r9d
imul rcx, rax
mov qword [rsp + 0x28], r9
lea rax, [rdx + rcx*2]
mov rdx, qword [rdi + 0x80]
add rax, r9
mov ecx, edx
xor r8, rax
mov qword [rsp + 8], rax
mov rbp, r8
shr rbp, 0x3f
lea rax, [r8 + r8]
or rbp, rax
mov eax, r11d
imul rcx, rax
lea r10, [rdx + rcx*2]
mov rcx, qword [rdi + 0x280]
add r10, r11
mov eax, ecx
mov r9, r10
xor r9, qword [rdi + 0x380]
mov rdx, r9
shl r9, 0x20
shr rdx, 0x20
imul rax, rdx
or r9, rdx
lea rdx, [rcx + rax*2]
mov ecx, r10d
add rdx, r9
xor r11, rdx
mov r8, r11
shr r11, 0x18
shl r8, 0x28
or r8, r11
mov r11, qword [rdi + 0x188]
mov eax, r8d
imul rcx, rax
lea r15, [r10 + rcx*2]
mov ecx, edx
add r15, r8
mov rax, r15
xor rax, r9
mov r9, rax
shr rax, 0x10
shl r9, 0x30
or r9, rax
mov eax, r9d
imul rcx, rax
mov qword [rsp + 0x10], r9
lea rbx, [rdx + rcx*2]
mov rdx, qword [rdi + 0x88]
add rbx, r9
mov ecx, edx
xor r8, rbx
mov rsi, r8
shr rsi, 0x3f
lea rax, [r8 + r8]
or rsi, rax
mov eax, r11d
imul rcx, rax
lea r10, [rdx + rcx*2]
mov rcx, qword [rdi + 0x288]
add r10, r11
mov eax, ecx
mov r9, r10
xor r9, qword [rdi + 0x388]
mov rdx, r9
shl r9, 0x20
shr rdx, 0x20
imul rax, rdx
or r9, rdx
lea rdx, [rcx + rax*2]
add rdx, r9
xor r11, rdx
mov ecx, r10d
mov r8, r11
shl r8, 0x28
shr r11, 0x18
or r8, r11
mov eax, r8d
imul rcx, rax
lea r14, [r10 + rcx*2]
mov ecx, edx
add r14, r8
mov rax, r14
xor rax, r9
mov r10, rax
shr rax, 0x10
shl r10, 0x30
or r10, rax
mov eax, r10d
imul rcx, rax
lea r11, [rdx + rcx*2]
mov ecx, r13d
add r11, r10
xor r8, r11
mov rdi, r8
shr rdi, 0x3f
lea rax, [r8 + r8]
or rdi, rax
mov eax, ebp
imul rcx, rax
mov eax, ebx
lea rdx, [rcx*2]
add rdx, r13
add rdx, rbp
xor r10, rdx
mov rcx, r10
shl r10, 0x20
shr rcx, 0x20
imul rax, rcx
or r10, rcx
lea r8, [r10 + rax*2]
mov eax, edx
add r8, rbx
mov rbx, qword [rsp + 0x38]
xor rbp, r8
mov r9, rbp
shr rbp, 0x18
shl r9, 0x28
or r9, rbp
mov ecx, r9d
imul rcx, rax
mov eax, r8d
lea rcx, [r9 + rcx*2]
add rcx, rdx
mov qword [rbx], rcx
xor rcx, r10
mov r10, qword [rsp + 0x30]
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, edx
imul rcx, rax
mov eax, r12d
mov qword [rbx + 0x388], rdx
lea rcx, [rdx + rcx*2]
add rcx, r8
xor r9, rcx
mov qword [rbx + 0x280], rcx
ror r9, 0x3f
mov ecx, esi
imul rcx, rax
mov eax, r11d
mov qword [rbx + 0x108], r9
lea rdx, [rsi + rcx*2]
add rdx, r12
xor r10, rdx
mov rcx, r10
shl r10, 0x20
shr rcx, 0x20
or r10, rcx
imul rax, rcx
lea r8, [r10 + rax*2]
mov eax, edx
add r8, r11
xor rsi, r8
mov r9, rsi
shr rsi, 0x18
shl r9, 0x28
or r9, rsi
mov ecx, r9d
imul rcx, rax
mov eax, r8d
lea rcx, [r9 + rcx*2]
add rcx, rdx
mov qword [rbx + 8], rcx
xor rcx, r10
mov r10, qword [rsp + 0x28]
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, edx
imul rcx, rax
mov qword [rbx + 0x300], rdx
mov eax, r15d
lea rcx, [rdx + rcx*2]
add rcx, r8
mov r8, qword [rsp + 0x20]
xor r9, rcx
mov qword [rbx + 0x288], rcx
ror r9, 0x3f
mov qword [rbx + 0x180], r9
mov ecx, edi
imul rcx, rax
mov eax, r8d
lea rdx, [rdi + rcx*2]
add rdx, r15
xor r10, rdx
mov rcx, r10
shl r10, 0x20
shr rcx, 0x20
imul rax, rcx
or r10, rcx
lea r8, [r8 + rax*2]
mov eax, edx
add r8, r10
xor rdi, r8
mov r9, rdi
shr rdi, 0x18
shl r9, 0x28
or r9, rdi
mov ecx, r9d
imul rcx, rax
mov eax, r8d
lea rcx, [r9 + rcx*2]
add rcx, rdx
mov qword [rbx + 0x80], rcx
xor rcx, r10
mov r10, qword [rsp + 0x18]
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, edx
imul rcx, rax
mov qword [rbx + 0x308], rdx
mov eax, r14d
lea rcx, [rdx + rcx*2]
add rcx, r8
xor r9, rcx
mov qword [rbx + 0x200], rcx
ror r9, 0x3f
mov ecx, r10d
imul rcx, rax
mov qword [rbx + 0x188], r9
lea rdx, [r10 + rcx*2]
add rdx, r14
mov r8, rdx
xor r8, qword [rsp + 0x10]
mov rcx, r8
shl r8, 0x20
shr rcx, 0x20
or r8, rcx
mov r9, qword [rsp + 8]
mov eax, r9d
imul rax, rcx
lea rax, [r8 + rax*2]
add r9, rax
mov rax, r9
xor rax, r10
mov r10, rax
shr rax, 0x18
shl r10, 0x28
or r10, rax
mov eax, edx
mov ecx, r10d
imul rcx, rax
mov eax, r9d
lea rcx, [r10 + rcx*2]
add rcx, rdx
mov qword [rbx + 0x88], rcx
xor rcx, r8
mov rdx, rcx
shr rcx, 0x10
shl rdx, 0x30
or rdx, rcx
mov ecx, edx
imul rcx, rax
mov rax, qword [rsp + 0x40]
inc eax
mov qword [rbx + 0x380], rdx
mov qword [rsp + 0x40], rax
lea rcx, [rdx + rcx*2]
add rcx, r9
xor r10, rcx
mov qword [rbx + 0x208], rcx
ror r10, 0x3f
mov qword [rbx + 0x100], r10
cmp eax, 8
jb 0x140351b31
mov r8, qword [rsp + 0x50]
lea rcx, [rsp + 0x460]
mov rax, r8
mov edx, 0x80
mov r9d, 8
nop word [rax + rax]
movups xmm0, xmmword [rcx]
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rax], xmm0
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rax + 0x10], xmm1
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rax + 0x20], xmm0
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rax + 0x30], xmm1
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rax + 0x40], xmm0
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rax + 0x50], xmm1
movups xmm1, xmmword [rcx + 0x70]
add rcx, rdx
movups xmmword [rax + 0x60], xmm0
add rax, rdx
movups xmmword [rax - 0x10], xmm1
sub r9, 1
jne 0x140352090
lea rcx, [rsp + 0x458]
lea rax, [r8 + 0x3f8]
cmp r8, rcx
ja 0x140352113
lea rcx, [rsp + 0x60]
cmp rax, rcx
jb 0x140352113
lea rcx, [rsp + 0x60]
sub rcx, r8
mov rax, qword [rcx + r8]
xor qword [r8], rax
lea r8, [r8 + 8]
sub rdx, 1
jne 0x140352100
jmp 0x140352188
lea rdx, [rsp + 0x60]
mov ecx, reloc.WS2_32.dll_recv
sub rdx, r8
lea r9, [rsp + 0x70]
sub r9, r8
lea rax, [r8 + 0x20]
nop dword [rax]
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rax + rdx - 0x20]
lea rax, [rax + 0x40]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x60], xmm1
movdqu xmm0, xmmword [rax - 0x50]
movdqu xmm1, xmmword [rax + r9 - 0x60]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rax + rdx - 0x40]
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm2, xmmword [rax - 0x40]
xorps xmm2, xmm0
movdqu xmm0, xmmword [rax + r9 - 0x40]
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm1, xmmword [rax - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
sub rcx, 1
jne 0x140352130
mov rcx, qword [rsp + 0x860]
xor rcx, rsp
call fcn.140397b20
lea r11, [rsp + 0x870]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret