Function at 0x140055be0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xf0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm10
mov r14, rcx
mov edi, 4
mov rax, qword gs:[0x58]
mov rbx, qword [rax]
mov eax, dword [rdi + rbx]
cmp dword [0x1401b99a4], eax
jle 0x140055c58
lea rcx, [0x1401b99a4]
call fcn.14006a034
cmp dword [0x1401b99a4], 0xffffffff
jne 0x140055c58
lea rcx, [0x14006cf00]
call fcn.14006a2dc
lea rcx, [0x1401b99a4]
call fcn.140069fc8
mov eax, dword [rdi + rbx]
cmp dword [0x1401b99c0], eax
jle 0x140055c8a
lea rcx, [0x1401b99c0]
call fcn.14006a034
cmp dword [0x1401b99c0], 0xffffffff
jne 0x140055c8a
call qword [sym.imp.KERNEL32.dll_GetTickCount]
lea rcx, [0x1401b99c0]
call fcn.140069fc8
mov rax, qword [0x1401b9290]
movss xmm3, dword [rax + 0x18]
mulss xmm3, dword [0x140192254]
movss xmm1, dword [0x14019220c]
mov eax, dword [0x1401b96b0]
xorps xmm7, xmm7
cmp eax, 3
je 0x140055cbd
test eax, eax
jne 0x140055cbd
movaps xmm2, xmm1
jmp 0x140055cc0
xorps xmm2, xmm2
subss xmm2, dword [0x1401b99d8]
mulss xmm2, xmm3
addss xmm2, dword [0x1401b99d8]
movss dword [0x1401b99d8], xmm2
cmp eax, 3
je 0x140055ceb
cmp eax, 1
jne 0x140055ceb
movaps xmm2, xmm1
jmp 0x140055cee
xorps xmm2, xmm2
subss xmm2, dword [0x1401b99dc]
mulss xmm2, xmm3
addss xmm2, dword [0x1401b99dc]
movss dword [0x1401b99dc], xmm2
cmp eax, 3
je 0x140055d14
cmp eax, 2
je 0x140055d17
xorps xmm1, xmm1
subss xmm1, dword [0x1401b99e0]
mulss xmm1, xmm3
addss xmm1, dword [0x1401b99e0]
movss dword [0x1401b99e0], xmm1
mov rbx, 0xffffffffffffffff
lea rsi, [0x1401b7fe0]
mov edi, dword [0x14019f010]
movdqa xmm10, xmmword [0x140192490]
test eax, eax
jne 0x140055fc9
mov rax, qword [0x1401b9290]
movss xmm1, dword [rax + 0x18]
mulss xmm1, dword [0x1401922a0]
movss xmm0, dword [0x1401b99b0]
addss xmm0, xmm1
movss dword [0x1401b99b0], xmm0
movups xmm3, xmmword [str.rZVW_Y_]
movups xmmword [rbp - 0x69], xmm3
movzx eax, byte [0x1401917d8]
mov byte [rbp - 0x59], al
xor r8d, r8d
cmp edi, 2
jl 0x140055f3a
movdqa xmm4, xmmword [0x140192910]
movdqa xmm5, xmmword [str.4444::::]
movdqa xmm6, xmmword [str.1111111111111111]
movdqa xmm2, xmmword [0x140192400]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm6
movd eax, xmm3
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rbp - 0x69], xmm2
movdqa xmm2, xmmword [0x140192420]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm6
movd xmm0, dword [rbp - 0x65]
xorps xmm2, xmm0
movd dword [rbp - 0x65], xmm2
movdqa xmm3, xmmword [0x140192430]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
paddb xmm3, xmm6
movd xmm0, dword [rbp - 0x61]
xorps xmm3, xmm0
movd dword [rbp - 0x61], xmm3
movdqa xmm2, xmmword [0x140192440]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm6
movd xmm0, dword [rbp - 0x5d]
xorps xmm2, xmm0
movd dword [rbp - 0x5d], xmm2
mov r8d, send
mov eax, r8d
lea r9, [rbp - 0x69]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4ec4ec4f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x140055f50
lea rax, [rbp - 0x69]
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140055f90
lea rdx, [rbp - 0x69]
mov rcx, rsi
call fcn.140037a70
movss xmm0, dword [0x1401b99b0]
comiss xmm0, dword [0x1401922ec]
jb 0x140055fc3
mov dword [0x1401b96b0], 1
jmp 0x140055fd2
mov eax, dword [0x1401b96b0]
cmp eax, 1
jne 0x14005629b
mov rax, qword [0x1401b9290]
movss xmm1, dword [rax + 0x18]
mulss xmm1, dword [0x140192298]
movss xmm0, dword [0x1401b994c]
addss xmm0, xmm1
movss dword [0x1401b994c], xmm0
movups xmm6, xmmword [str.a_VDTDV]
movups xmmword [rbp - 0x69], xmm6
mov edx, dword [0x140191200]
mov dword [rbp - 0x59], edx
cmp byte [0x140191203], 0
je 0x140056259
xor r8d, r8d
cmp edi, 2
jl 0x14005622b
movdqa xmm4, xmmword [0x140192910]
movdqa xmm5, xmmword [str.4444::::]
movdqa xmm3, xmmword [0x140192400]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
mov ecx, dword [str.1111111111111111]
movd xmm0, ecx
paddb xmm3, xmm0
movd eax, xmm6
movd xmm0, eax
xorps xmm3, xmm0
movd dword [rbp - 0x69], xmm3
movdqa xmm2, xmmword [0x140192420]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x65]
xorps xmm2, xmm1
movd dword [rbp - 0x65], xmm2
movdqa xmm3, xmmword [0x140192430]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, dword [rbp - 0x61]
xorps xmm3, xmm1
movd dword [rbp - 0x61], xmm3
movdqa xmm2, xmmword [0x140192440]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
andps xmm2, xmm10
packuswb xmm2, xmm2
packuswb xmm2, xmm2
movd xmm0, ecx
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x5d]
xorps xmm2, xmm1
movd dword [rbp - 0x5d], xmm2
movdqa xmm3, xmmword [0x140192450]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
andps xmm3, xmm10
packuswb xmm3, xmm3
packuswb xmm3, xmm3
movd xmm0, ecx
paddb xmm3, xmm0
movd xmm1, edx
xorps xmm3, xmm1
movd dword [rbp - 0x59], xmm3
jmp 0x140056259
lea r9, [rbp - 0x69]
nop
mov eax, 0x4ec4ec4f
mul r8d
shr edx, 4
movsx eax, dl
imul ecx, eax, 0x34
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x14
jl 0x140056230
lea rax, [rbp - 0x69]
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140056260
mov r8, rbx
lea rdx, [rbp - 0x69]
mov rcx, rsi
call fcn.140037a70
movss xmm0, dword [0x1401b994c]
comiss xmm0, dword [0x1401922a4]
jb 0x140056295
mov dword [0x1401b96b0], 2
jmp 0x1400562a4
mov eax, dword [0x1401b96b0]
cmp eax, 2
jne 0x1400563a7
mov rax, qword [0x1401b9290]
movss xmm0, dword [rax + 0x18]
mulss xmm0, dword [0x1401922a0]
addss xmm0, dword [0x1401b99a0]
movss dword [0x1401b99a0], xmm0
comiss xmm0, dword [0x1401922a4]
jbe 0x1400562db
mov dword [0x1401b96b0], 3
cvttss2si eax, xmm0
lea rcx, str.Downloading_data..._____
mov qword [rbp - 0x69], rcx
mov qword [rbp - 0x61], 0x1a
mov dword [rbp - 0x11], eax
movabs rax, 0x1000000000000000
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x29], 1
lea rax, [rbp - 0x19]
mov qword [rbp - 0x21], rax
movaps xmm0, xmmword [rbp - 0x29]
movdqa xmmword [rbp - 0x29], xmm0
movaps xmm1, xmmword [rbp - 0x69]
movdqa xmmword [rbp - 0x69], xmm1
lea r8, [rbp - 0x29]
lea rdx, [rbp - 0x69]
lea rcx, [rbp - 9]
call fcn.14003dee0
mov rdx, qword [0x1401b7ff8]
cmp rdx, 0xf
jbe 0x14005637a
inc rdx
mov rcx, qword [0x1401b7fe0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140056375
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140056375
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006a0ac
movups xmm0, xmmword [rbp - 9]
movups xmmword [0x1401b7fe0], xmm0
movups xmm1, xmmword [rbp + 7]
movups xmmword [0x1401b7ff0], xmm1
movdqa xmm0, xmmword [0x140192380]
movdqu xmmword [rbp + 7], xmm0
mov byte [rbp - 9], 0
mov eax, dword [0x1401b96b0]
cmp eax, 3
jne 0x14005642d
call fcn.1400478f0
mov dword [0x1401b96b0], 0
mov rax, qword [r14]
mov r8, qword [rax]
mov rcx, qword [0x1401b9990]
movabs rax, 0x8d1ace904a398d17
and rcx, rax
add rcx, rcx
mov rdx, qword [0x1401b9978]
mov rax, qword [rdx + rcx*8 + 8]
cmp rax, qword [0x1401b9968]
je 0x140056617
mov rdx, qword [rdx + rcx*8]
cmp dword [rax + 0x10], 2
je 0x140056413
nop
cmp rax, rdx
je 0x140056617
mov rax, qword [rax + 8]
cmp dword [rax + 0x10], 2
jne 0x140056400
mov rcx, qword [rax + 0x18]
mov rax, qword [r8 + 0x18]
cmp rax, rcx
je 0x14005642d
mov qword [r8 + 0x20], rax
mov qword [r8 + 0x18], rcx
mov byte [r8 + 0x10], 1
mov rcx, qword [0x1401b9628]
mov qword [rbp + 0x6f], rcx
mov rbx, qword [0x1401b9290]
mov rdi, rcx
test rcx, rcx
jne 0x140056462
mov rcx, qword [rbx + 0x48]
test rcx, rcx
jne 0x14005645b
mov rax, qword [rbx + 0x38]
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx]
mov qword [rbp + 0x6f], rcx
mov rdi, rcx
call fcn.1400176b0
lea rcx, [rbx + 0x4ab0]
lea rdx, [rbp + 0x6f]
call fcn.140022f60
mov rax, qword [rbx + 0x4018]
mov rdx, qword [rdi + 0x40]
mov rdx, qword [rdx + 8]
mov rcx, qword [rax + 0x2a8]
call fcn.140025590
movss xmm6, dword [0x14019f0c4]
mulss xmm6, dword [0x140192270]
mov rax, rsi
cmp qword [0x1401b7ff8], 0xf
cmova rax, qword [0x1401b7fe0]
mov rbx, qword [0x1401b9290]
movss xmm1, dword [rbx + 0x3d50]
test rax, rax
je 0x14005651d
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x28], rax
movss xmm0, dword [0x14019231c]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [0x140192310]
movaps xmm2, xmm1
lea rdx, [rbp + 0x6f]
mov rcx, qword [rbx + 0x3d48]
call fcn.14002a720
movss xmm1, dword [rbp + 0x73]
movss xmm0, dword [rbp + 0x6f]
addss xmm0, dword [0x140192204]
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
mov rax, qword [rbx + 0x4018]
movss xmm2, dword [rax + 0x30]
movss xmm0, dword [rax + 0x34]
subss xmm0, xmm1
subss xmm0, xmm6
mov byte [rax + 0xc0], 1
mov rax, qword [rbx + 0x4018]
movss xmm1, dword [rax + 0x2c]
subss xmm1, dword [rax + 0x90]
addss xmm1, xmm0
subss xmm2, xmm7
subss xmm2, xmm6
movss xmm0, dword [rax + 0x28]
subss xmm0, dword [rax + 0x8c]
addss xmm2, xmm0
movss dword [rax + 0x110], xmm2
movss dword [rax + 0x114], xmm1
mov byte [rax + 0x151], 1
mov r15, qword [0x1401b7ff0]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 7
jb 0x14005671f
cmp qword [0x1401b7ff8], 0xf
cmova rsi, qword [0x1401b7fe0]
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x39], xmm1
lea r14, [r15 + 7]
mov ebx, send
lea rdi, [rbp - 0x49]
cmp r14, rbx
jbe 0x140056662
mov rbx, r14
or rbx, 0xf
cmp rbx, rcx
jbe 0x140056625
mov rbx, rcx
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.14006a2f4
test rax, rax
je 0x1400566e7
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x14005665e
lea rcx, str.invalid_unordered_map_K__T__key
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const____ptr64_]
int3
mov eax, socket
cmp rbx, rax
cmovb rbx, rax
lea rcx, [rbx + 1]
test rcx, rcx
jne 0x14005663e
xor edi, edi
jmp 0x14005665e
cmp rcx, 0x1000
jb 0x140056656
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x140056725
jmp 0x1400565f8
call fcn.14006a2f4
mov rdi, rax
mov qword [rbp - 0x49], rdi
mov qword [rbp - 0x39], r14
mov qword [rbp - 0x31], rbx
mov rcx, qword [str.6A707B]
mov dword [rdi], ecx
movzx ecx, word [0x1401910cc]
mov word [rdi + 4], cx
movzx eax, byte [0x1401910ce]
mov byte [rdi + 6], al
lea rcx, [rdi + 7]
mov r8, r15
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcpy
mov byte [rdi + r14], 0
lea rcx, [rbp - 0x49]
cmp qword [rbp - 0x31], 0xf
cmova rcx, qword [rbp - 0x49]
call fcn.140060710
call fcn.140017750
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 0xf
jbe 0x1400566f3
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400566ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400566ee
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14006a0ac
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm10, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.140032530
int3
call fcn.140024230
int3
add rcx, 8
jmp 0x140055be0