Function at 0x140101db0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xc8
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xa0], xmm6
mov r15, r9
mov r14, r8
mov rbx, rdx
mov esi, ecx
mov rdi, qword [rsp + 0x148]
mov rax, qword [0x1404a7eb8]
xor rax, rsp
mov qword [rsp + 0x98], rax
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140101e39
xor r12d, r12d
nop dword [rax + rax]
mov rax, qword [r15]
mov rcx, r15
mov edx, r12d
call qword [rax + reloc.WS2_32.dll_recv]
mov rax, qword [rdi + 0x10]
movss dword [rax + r12*4], xmm0
inc r12
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + ioctlsocket]
cdqe
cmp r12, rax
jl 0x140101e10
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140101ed1
mov r15, qword [rsp + 0x130]
xor r12d, r12d
jmp 0x140101e73
inc r12
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + ioctlsocket]
cdqe
cmp r12, rax
jge 0x140101ed1
mov rax, qword [r15]
mov rcx, r15
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140101e60
xor ebp, ebp
nop word cs:[rax + rax]
mov rax, qword [r15]
mov rcx, r15
mov edx, ebp
call qword [rax + reloc.WS2_32.dll_recv]
movaps xmm6, xmm0
mov rax, qword [rbx]
mov rcx, rbx
mov edx, ebp
mov r8d, r12d
call qword [rax + 0x18]
mov rax, qword [rdi + 0x10]
mulss xmm0, xmm6
addss xmm0, dword [rax + r12*4]
movss dword [rax + r12*4], xmm0
inc ebp
mov rax, qword [r15]
mov rcx, r15
call qword [rax + ioctlsocket]
cmp ebp, eax
jl 0x140101e90
jmp 0x140101e60
mov rbx, qword [rsp + 0x138]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140101f61
xor r15d, r15d
jmp 0x140101f03
inc r15
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + ioctlsocket]
cdqe
cmp r15, rax
jge 0x140101f61
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140101ef0
xor ebp, ebp
nop word cs:[rax + rax]
mov rax, qword [rbx]
mov rcx, rbx
mov edx, ebp
call qword [rax + reloc.WS2_32.dll_recv]
movaps xmm6, xmm0
mov rax, qword [r14]
mov rcx, r14
mov edx, ebp
mov r8d, r15d
call qword [rax + 0x18]
mov rax, qword [rdi + 0x10]
mulss xmm0, xmm6
addss xmm0, dword [rax + r15*4]
movss dword [rax + r15*4], xmm0
inc ebp
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + ioctlsocket]
cmp ebp, eax
jl 0x140101f20
jmp 0x140101ef0
test esi, esi
mov qword [rsp + 0x28], rsi
jle 0x140101ffe
mov r14, qword [rdi + 0x10]
mov r12d, esi
xor r15d, r15d
movaps xmm6, xmmword [0x14039f8a0]
movss xmm7, dword [0x1403b8320]
nop word [rax + rax]
movss xmm0, dword [r14 + r15*4]
xorps xmm0, xmm6
call fcn.1402bac00
addss xmm0, xmm7
movaps xmm1, xmm7
divss xmm1, xmm0
movss dword [r14 + r15*4], xmm1
inc r15
cmp r12, r15
jne 0x140101f90
xor r14d, r14d
xor ecx, ecx
call fcn.1400ee120
lea rsi, [r12*4]
add rsi, qword [rdi + 0x10]
nop dword [rax]
movss xmm0, dword [rsi + r14*4]
xorps xmm0, xmm6
call fcn.1402bac00
addss xmm0, xmm7
movaps xmm1, xmm7
divss xmm1, xmm0
movss dword [rsi + r14*4], xmm1
inc r14
cmp r12, r14
jne 0x140101fd0
mov rsi, qword [rsp + 0x28]
jmp 0x140102008
xor ecx, ecx
call fcn.1400ee120
movsxd r12, esi
xor r15d, r15d
xor ecx, ecx
call fcn.1400ee120
lea eax, [rsi + rsi]
cdqe
mov qword [rsp + 0x30], rax
lea rax, [rax*4]
add rax, qword [rdi + 0x10]
lea r13, vtable.icu_74::Array1D.0
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rax
mov dword [rsp + 0x90], esi
test esi, esi
jle 0x140102099
xor r14d, r14d
lea r15, [rsp + 0x78]
nop dword [rax + rax]
mov rax, qword [rsp + 0x78]
mov rcx, r15
mov edx, r14d
call qword [rax + reloc.WS2_32.dll_recv]
call fcn.1402c5438
mov rax, qword [rsp + 0x88]
movss dword [rax + r14*4], xmm0
inc r14
movsxd rax, dword [rsp + 0x90]
cmp r14, rax
jl 0x140102060
mov r15, qword [rsp + 0x80]
mov r14, qword [rsp + 0x140]
mov qword [rsp + 0x78], r13
mov rcx, r15
call fcn.1400ee120
lea eax, [rsi + rsi*2]
movsxd rbp, eax
shl rbp, 2
test esi, esi
jle 0x140102117
mov r15, qword [rdi + 0x10]
add r15, rbp
cmp r12, 2
mov r13d, 1
cmovge r13, r12
xor esi, esi
movaps xmm6, xmmword [0x14039f8a0]
movss xmm7, dword [0x1403b8320]
nop word cs:[rax + rax]
movss xmm0, dword [r15 + rsi*4]
xorps xmm0, xmm6
call fcn.1402bac00
addss xmm0, xmm7
movaps xmm1, xmm7
divss xmm1, xmm0
movss dword [r15 + rsi*4], xmm1
inc rsi
cmp r13, rsi
jne 0x1401020f0
xor ecx, ecx
call fcn.1400ee120
shl r12, 2
add r12, qword [rdi + 0x10]
lea r13, vtable.icu_74::Array1D.0
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], r12
mov rsi, qword [rsp + 0x28]
mov dword [rsp + 0x90], esi
mov rax, qword [r14]
mov rcx, r14
call qword [rax + ioctlsocket]
test eax, eax
jle 0x1401021a1
xor r15d, r15d
lea r12, [rsp + 0x78]
nop word [rax + rax]
mov rax, qword [rsp + 0x78]
mov rcx, r12
mov edx, r15d
call qword [rax + reloc.WS2_32.dll_recv]
mov rax, qword [r14 + 0x10]
mulss xmm0, dword [rax + r15*4]
movss dword [rax + r15*4], xmm0
inc r15
mov rax, qword [r14]
mov rcx, r14
call qword [rax + ioctlsocket]
cdqe
cmp r15, rax
jl 0x140102170
mov rax, qword [rdi + 0x10]
mov rcx, qword [rsp + 0x30]
lea rcx, [rax + rcx*4]
mov qword [rsp + 0x58], r13
mov qword [rsp + 0x60], 0
mov qword [rsp + 0x68], rcx
mov dword [rsp + 0x70], esi
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x50], esi
mov rax, qword [r14]
mov rcx, r14
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140102254
xor r15d, r15d
lea r12, [rsp + 0x38]
lea r13, [rsp + 0x58]
nop word cs:[rax + rax]
mov rax, qword [rsp + 0x38]
mov rcx, r12
mov edx, r15d
call qword [rax + reloc.WS2_32.dll_recv]
movaps xmm6, xmm0
mov rax, qword [rsp + 0x58]
mov rcx, r13
mov edx, r15d
call qword [rax + reloc.WS2_32.dll_recv]
mov rax, qword [r14 + 0x10]
mulss xmm0, xmm6
addss xmm0, dword [rax + r15*4]
movss dword [rax + r15*4], xmm0
inc r15
mov rax, qword [r14]
mov rcx, r14
call qword [rax + ioctlsocket]
cdqe
cmp r15, rax
jl 0x140102200
mov rcx, qword [rsp + 0x40]
lea r13, vtable.icu_74::Array1D.0
jmp 0x140102256
xor ecx, ecx
mov qword [rsp + 0x38], r13
call fcn.1400ee120
mov qword [rsp + 0x58], r13
mov rcx, qword [rsp + 0x60]
call fcn.1400ee120
mov qword [rsp + 0x78], r13
mov rcx, qword [rsp + 0x80]
call fcn.1400ee120
cmp dword [rbx + 0x18], 0
jle 0x1401022b7
xor r15d, r15d
nop word [rax + rax]
mov rax, qword [r14]
mov rcx, r14
mov edx, r15d
call qword [rax + reloc.WS2_32.dll_recv]
call fcn.1402c5438
mov rax, qword [rbx + 0x10]
movss dword [rax + r15*4], xmm0
inc r15
movsxd rax, dword [rbx + 0x18]
cmp r15, rax
jl 0x140102290
add rbp, qword [rdi + 0x10]
mov qword [rsp + 0x78], r13
mov qword [rsp + 0x80], 0
mov qword [rsp + 0x88], rbp
mov dword [rsp + 0x90], esi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + ioctlsocket]
test eax, eax
jle 0x140102328
xor esi, esi
lea rdi, [rsp + 0x78]
nop
mov rax, qword [rsp + 0x78]
mov rcx, rdi
mov edx, esi
call qword [rax + reloc.WS2_32.dll_recv]
mov rax, qword [rbx + 0x10]
mulss xmm0, dword [rax + rsi*4]
movss dword [rax + rsi*4], xmm0
inc rsi
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + ioctlsocket]
cdqe
cmp rsi, rax
jl 0x1401022f0
mov rcx, qword [rsp + 0x80]
jmp 0x14010232a
xor ecx, ecx
mov qword [rsp + 0x78], r13
call fcn.1400ee120
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
cmp rcx, qword [0x1404a7eb8]
jne 0x14010236c
movaps xmm6, xmmword [rsp + 0xa0]
movaps xmm7, xmmword [rsp + 0xb0]
add rsp, 0xc8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14029fd30
int3