Function at 0x7ff7690e3920
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x188]
sub rsp, 0x260
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x7ff769193080]
xor rax, rsp
mov qword [rbp + 0xb0], rax
mov r14, rdx
mov r8, rdx
lea rdx, [rbp + 0x10]
call fcn.7ff7690fb5f0
nop
cmp byte [rbp + 0x10], 0
je 0x7ff7690e4c66
cmp qword [rbp + 0x20], 0
je 0x7ff7690e4c66
cmp byte [0x7ff7691bc133], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc140], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc0f6], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc12f], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc141], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc132], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc11e], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc11f], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc0f5], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc12e], 0
jne 0x7ff7690e3a22
cmp byte [0x7ff7691bc12d], 0
je 0x7ff7690e4c66
mov r15, qword [rbp + 0x30]
test r15, r15
je 0x7ff7690e4c66
mov rsi, qword [rbp + 0x28]
test rsi, rsi
je 0x7ff7690e4c66
mov r8, rsi
lea rdx, [rbp - 0x28]
call fcn.7ff7690f2230
mov r8, r15
lea rdx, [rbp + 0x80]
call fcn.7ff7690f2230
movss xmm2, dword [rbp + 4]
xorps xmm12, xmm12
subss xmm2, xmm12
movss xmm1, dword [rbp]
subss xmm1, dword [0x7ff76917dc58]
movss xmm0, dword [rbp - 4]
subss xmm0, xmm12
movss dword [rsp + 0x50], xmm0
movss dword [rsp + 0x54], xmm1
movss dword [rsp + 0x58], xmm2
lea r8, [rsp + 0x50]
lea rdx, [rbp - 0x80]
call fcn.7ff7690f2480
movss xmm2, dword [rbp + 4]
subss xmm2, xmm12
movss xmm1, dword [rbp]
subss xmm1, dword [0x7ff76917dac0]
movss xmm0, dword [rbp - 4]
subss xmm0, xmm12
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
movss dword [rsp + 0x48], xmm2
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x50]
call fcn.7ff7690f2480
cmp byte [rbp - 0x78], 0
je 0x7ff7690e4c66
cmp byte [rsp + 0x58], 0
je 0x7ff7690e4c66
movss xmm15, dword [rbp - 0x7c]
movss xmm9, dword [rsp + 0x54]
comiss xmm15, xmm9
jbe 0x7ff7690e3b11
movaps xmm0, xmm15
subss xmm0, xmm9
jmp 0x7ff7690e3b1a
movaps xmm0, xmm9
subss xmm0, xmm15
cvtps2pd xmm0, xmm0
mulsd xmm0, qword [0x7ff76917db40]
mulsd xmm0, qword [0x7ff76917db48]
call qword [sym.imp.ucrtbase.dll_round]
xorps xmm11, xmm11
cvtsd2ss xmm11, xmm0
comiss xmm15, xmm9
jbe 0x7ff7690e3b4d
movaps xmm0, xmm15
subss xmm0, xmm9
jmp 0x7ff7690e3b56
movaps xmm0, xmm9
subss xmm0, xmm15
mulss xmm0, dword [0x7ff76917db54]
call sub.ucrtbase.dll_roundf
movss dword [rbp - 0x68], xmm0
movss xmm13, dword [rsp + 0x50]
movaps xmm7, xmm13
subss xmm7, xmm11
movaps xmm8, xmm9
subss xmm8, xmm0
addss xmm11, xmm11
movaps xmm10, xmm0
addss xmm10, xmm0
xor r12d, r12d
movss xmm14, dword [0x7ff76917db10]
cmp byte [0x7ff7691bc0f6], r12b
je 0x7ff7690e4061
cmp dword [0x7ff7691bc134], 1
jne 0x7ff7690e3d4c
movaps xmm6, xmmword [0x7ff76917de90]
movaps xmm13, xmm11
addss xmm13, xmm7
movaps xmm0, xmm10
addss xmm0, xmm8
movss dword [rsp + 0x68], xmm0
lea ecx, [r12 + 0x30]
call fcn.7ff76915d52c
mov rbx, rax
mov qword [rsp + 0x40], rax
lea rax, [0x7ff76917cc30]
mov qword [rbx], rax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movsd qword [rbx + 8], xmm0
movaps xmm1, xmm13
movss xmm2, dword [rsp + 0x68]
unpcklps xmm1, xmm2
movsd qword [rbx + 0x10], xmm1
movups xmmword [rbx + 0x18], xmm6
mov dword [rbx + 0x28], 0x40500000
mov qword [rsp + 0x40], rbx
lea r13, [0x7ff76917cb10]
mov rdi, qword [0x7ff7691bc1e8]
cmp rdi, qword [0x7ff7691bc1f0]
je 0x7ff7690e3c7c
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov qword [rsp + 0x40], rbx
lea ecx, [r12 + 0x18]
call fcn.7ff76915d52c
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
mov qword [rax], r13
mov qword [rax + 0x10], rbx
mov qword [rdi], rbx
mov qword [rdi + 8], rax
add qword [0x7ff7691bc1e8], 0x10
jmp 0x7ff7690e3c90
lea r8, [rsp + 0x40]
mov rdx, rdi
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e6130
mov ecx, 0x30
call fcn.7ff76915d52c
mov rbx, rax
mov qword [rsp + 0x40], rax
movups xmm2, xmmword [0x7ff769193190]
lea rax, [0x7ff76917cc30]
mov qword [rbx], rax
movaps xmm0, xmm7
unpcklps xmm0, xmm8
movsd qword [rbx + 8], xmm0
movaps xmm1, xmm13
movss xmm0, dword [rsp + 0x68]
unpcklps xmm1, xmm0
movsd qword [rbx + 0x10], xmm1
movups xmmword [rbx + 0x18], xmm2
mov dword [rbx + 0x28], 0x3fa00000
mov qword [rsp + 0x40], rbx
mov rdi, qword [0x7ff7691bc1e8]
cmp rdi, qword [0x7ff7691bc1f0]
je 0x7ff7690e3d38
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov qword [rsp + 0x40], rbx
mov ecx, 0x18
call fcn.7ff76915d52c
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
mov qword [rax], r13
mov qword [rax + 0x10], rbx
mov qword [rdi], rbx
mov qword [rdi + 8], rax
add qword [0x7ff7691bc1e8], 0x10
jmp 0x7ff7690e3d4c
lea r8, [rsp + 0x40]
mov rdx, rdi
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e6130
cmp dword [0x7ff7691bc134], 2
jne 0x7ff7690e3d87
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm11
movaps xmm2, xmm8
movaps xmm1, xmm7
mov cl, 1
call fcn.7ff7690e2d80
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm11
movaps xmm2, xmm8
movaps xmm1, xmm7
xor ecx, ecx
call fcn.7ff7690e2d80
mov ebx, 0x64
cmp dword [0x7ff7691bc134], 0
jne 0x7ff7690e3dab
mov byte [rsp + 0x20], 0
xor r9d, r9d
mov r8d, ebx
mov rdx, r14
mov rcx, rsi
call fcn.7ff7690e2690
cmp byte [0x7ff7691bc11d], 0
je 0x7ff7690e3e2b
movss xmm0, dword [0x7ff769193150]
movss dword [rsp + 0x70], xmm0
movss xmm1, dword [0x7ff769193154]
movss dword [rsp + 0x74], xmm1
movss xmm0, dword [0x7ff769193158]
movss dword [rsp + 0x78], xmm0
mov dword [rsp + 0x7c], 0x3e19999a
movaps xmm1, xmm11
addss xmm1, xmm7
movss dword [rsp + 0x68], xmm1
movaps xmm0, xmm10
addss xmm0, xmm8
movss dword [rsp + 0x6c], xmm0
movss dword [rsp + 0x60], xmm7
movss dword [rsp + 0x64], xmm8
lea r9, [rsp + 0x70]
lea r8, [rsp + 0x68]
lea rdx, [rsp + 0x60]
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e54e0
movzx eax, byte [0x7ff7691bc132]
movzx ecx, byte [0x7ff7691bc141]
test cl, cl
jne 0x7ff7690e3e45
test al, al
je 0x7ff7690e4028
movd xmm13, ebx
cvtdq2ps xmm13, xmm13
divss xmm13, dword [0x7ff76917dbdc]
movaps xmm0, xmm14
subss xmm0, xmm13
movss dword [rsp + 0x70], xmm0
movss dword [rsp + 0x74], xmm13
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x7c], 0x3f800000
test cl, cl
je 0x7ff7690e3f57
mulss xmm13, xmm10
movaps xmm0, xmmword [0x7ff76917de90]
movups xmmword [rsp + 0x40], xmm0
movaps xmm1, xmm7
subss xmm1, dword [0x7ff76917db5c]
movss dword [rsp + 0x60], xmm1
movaps xmm6, xmm10
addss xmm6, xmm8
movaps xmm0, xmm6
addss xmm0, xmm14
movss dword [rsp + 0x64], xmm0
movaps xmm1, xmm7
subss xmm1, dword [0x7ff76917db7c]
movss dword [rsp + 0x68], xmm1
movaps xmm0, xmm8
subss xmm0, xmm14
movss dword [rsp + 0x6c], xmm0
lea r9, [rsp + 0x40]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x68]
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e55e0
movaps xmm0, xmm7
subss xmm0, dword [0x7ff76917db68]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm6
movaps xmm1, xmm7
subss xmm1, dword [0x7ff76917db74]
movss dword [rsp + 0x68], xmm1
movaps xmm0, xmm10
subss xmm0, xmm13
addss xmm0, xmm8
movss dword [rsp + 0x6c], xmm0
lea r9, [rsp + 0x70]
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x68]
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e54e0
movzx eax, byte [0x7ff7691bc132]
test al, al
je 0x7ff7690e4028
mov edx, ebx
lea rcx, [rbp - 0x60]
call fcn.7ff7690bff20
nop
mov rbx, qword [0x7ff7691bc0c0]
lea rax, [rbp - 0x60]
cmp qword [rbp - 0x48], 0xf
cmova rax, qword [rbp - 0x60]
mov qword [rsp + 0x30], r12
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm12
movss xmm3, dword [0x7ff76917dc30]
movss xmm6, dword [0x7ff76917db90]
movaps xmm2, xmm6
lea rdx, [rsp + 0x40]
mov rcx, qword [rbx + 0x48]
call fcn.7ff76909c2c0
mov eax, 3
mov ecx, 9
cmp byte [0x7ff7691bc141], 0
cmovne eax, ecx
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movaps xmm2, xmm7
subss xmm2, xmm0
subss xmm2, dword [rsp + 0x40]
subss xmm2, dword [0x7ff76917db50]
movaps xmm1, xmm8
subss xmm1, dword [0x7ff76917db50]
movups xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x28], 0
movss dword [rsp + 0x20], xmm6
lea r9, [rsp + 0x70]
unpcklps xmm2, xmm1
movq r8, xmm2
lea rdx, [rbp - 0x60]
mov rcx, qword [rbx + 0x48]
call fcn.7ff7690e30b0
nop
lea rcx, [rbp - 0x60]
call fcn.7ff7690b6990
cmp byte [0x7ff7691bc11e], 0
jne 0x7ff7690e403a
cmp byte [0x7ff7691bc11f], 0
je 0x7ff7690e4055
movss dword [rsp + 0x20], xmm10
movaps xmm3, xmm11
movaps xmm2, xmm8
movaps xmm1, xmm7
mov rcx, qword [rbp + 0x48]
call fcn.7ff7690e36b0
movss xmm13, dword [rsp + 0x50]
movss xmm0, dword [rbp - 0x68]
mov rbx, 0xffffffffffffffff
movss xmm10, dword [rbp - 0x80]
cmp byte [0x7ff7691bc133], 0
je 0x7ff7690e410e
movups xmm7, xmmword [0x7ff7691931d8]
movaps xmm6, xmm9
subss xmm6, xmm0
subss xmm6, dword [0x7ff76917dba0]
lea rdx, [rbp + 0x50]
cmp qword [rbp + 0x68], 0xf
cmova rdx, qword [rbp + 0x50]
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x7ff7690e40b2
lea rcx, [rbp - 0x60]
call fcn.7ff7690ba770
nop
mov rax, qword [0x7ff7691bc0c0]
movdqa xmmword [rsp + 0x70], xmm7
mov byte [rsp + 0x28], 1
movss xmm0, dword [0x7ff76917db90]
movss dword [rsp + 0x20], xmm0
lea r9, [rsp + 0x70]
movaps xmm0, xmm10
unpcklps xmm0, xmm6
movq r8, xmm0
lea rdx, [rbp - 0x60]
mov rcx, qword [rax + 0x48]
call fcn.7ff7690e30b0
nop
lea rcx, [rbp - 0x60]
call fcn.7ff7690b6990
cmp byte [0x7ff7691bc140], 0
je 0x7ff7690e4334
mov rax, qword [0x7ff7691bc138]
cmp dword [0x7ff7691bc144], 0
jne 0x7ff7690e422e
movss dword [rsp + 0x60], xmm13
movss dword [rsp + 0x64], xmm9
test rax, rax
jne 0x7ff7690e4150
mov dword [rbp - 0x68], eax
movaps xmm6, xmm12
movss dword [rbp - 0x64], xmm6
jmp 0x7ff7690e41a2
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
add rax, 0x720
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rbp - 0x68]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 8
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
mov rax, qword [0x7ff7691bc138]
movss xmm6, dword [rbp - 0x64]
xorps xmm6, xmmword [0x7ff76917dfa0]
test rax, rax
jne 0x7ff7690e41be
movaps xmm0, xmm12
movss dword [rsp + 0x68], xmm0
mov dword [rsp + 0x6c], eax
jmp 0x7ff7690e420b
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
add rax, 0x720
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x68]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 8
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
movss xmm0, dword [rsp + 0x68]
mulss xmm0, dword [0x7ff76917dad4]
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm6
lea r8, [rsp + 0x60]
lea rdx, [rsp + 0x40]
jmp 0x7ff7690e4321
movss dword [rsp + 0x40], xmm13
movss dword [rsp + 0x44], xmm9
test rax, rax
jne 0x7ff7690e424f
mov dword [rbp - 0x68], eax
movaps xmm6, xmm12
movss dword [rbp - 0x64], xmm6
jmp 0x7ff7690e42a1
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
add rax, 0x720
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rbp - 0x68]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 8
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
mov rax, qword [0x7ff7691bc138]
movss xmm6, dword [rbp - 0x64]
test rax, rax
jne 0x7ff7690e42b6
movaps xmm0, xmm12
movss dword [rsp + 0x68], xmm0
mov dword [rsp + 0x6c], eax
jmp 0x7ff7690e4303
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
add rax, 0x720
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x68]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 8
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
movss xmm0, dword [rsp + 0x68]
mulss xmm0, dword [0x7ff76917dad4]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x64], xmm6
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea r9, [0x7ff7691931e8]
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e53e0
lea r14, [0x7ff76917cb60]
lea rsi, [0x7ff76917cab8]
cmp byte [0x7ff7691bc0f4], 0
je 0x7ff7690e49de
cmp dword [0x7ff7691bc108], 0
jne 0x7ff7690e48e7
mov ecx, dword [0x7ff7691bc0e0]
test ecx, ecx
je 0x7ff7690e4657
sub ecx, 1
je 0x7ff7690e45d8
sub ecx, 1
je 0x7ff7690e4407
cmp ecx, 1
jne 0x7ff7690e4c66
movsd xmm0, qword [0x7ff76917cbc8]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x7ff76917cbd0]
mov word [rsp + 0x48], cx
movzx eax, byte [0x7ff76917cbd2]
mov byte [rsp + 0x40], 0x4c
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
xor byte [rsp + 0x46], 0x37
xor byte [rsp + 0x47], 0x38
xor cl, 0x39
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x3a
xor al, 0x3b
mov byte [rsp + 0x4a], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
lea rax, [rsp + 0x40]
inc rbx
cmp byte [rax + rbx], 0
jne 0x7ff7690e43f4
lea rdx, [rsp + 0x40]
jmp 0x7ff7690e469d
movups xmm0, xmmword [0x7ff76917cbe0]
movups xmmword [rbp - 0x80], xmm0
movzx eax, byte [0x7ff76917cbf0]
mov byte [rbp - 0x70], al
mov r8d, r12d
cmp dword [0x7ff7691930d0], 2
jl 0x7ff7690e456d
movdqa xmm5, xmmword [0x7ff76917dd10]
movdqa xmm4, xmmword [0x7ff76917dfb0]
movdqa xmm6, xmmword [0x7ff76917dd80]
movdqa xmm0, xmmword [0x7ff76917de40]
movdqa xmmword [rsp + 0x70], xmm0
lea rcx, [rbp - 0x80]
mov edx, dword [rsp + 0x70]
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, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x7ff76917de10]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx]
xorps xmm2, xmm0
movd dword [rcx], 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, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm6
psubd xmm3, xmm0
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x7ff76917de10]
packuswb xmm2, xmm2
movd xmm0, edx
paddb xmm2, xmm0
movd xmm0, dword [rcx + 4]
xorps xmm2, xmm0
movd dword [rcx + 4], xmm2
add r8d, 8
lea rcx, [rcx + 8]
cmp r8d, 0x10
jl 0x7ff7690e4460
cmp r8d, 0x11
jge 0x7ff7690e45b3
movsxd rax, r8d
lea r9, [rbp - 0x80]
add r9, rax
nop word [rax + rax]
mov eax, 0x92492493
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x38
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [r9], al
inc r8d
lea r9, [r9 + 1]
cmp r8d, 0x11
jl 0x7ff7690e4580
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
lea rax, [rbp - 0x80]
inc rbx
cmp byte [rax + rbx], 0
jne 0x7ff7690e45c6
lea rdx, [rbp - 0x80]
jmp 0x7ff7690e469d
movsd xmm0, qword [0x7ff76917cb30]
movsd qword [rsp + 0x40], xmm0
movzx ecx, word [0x7ff76917cb38]
mov word [rsp + 0x48], cx
movzx eax, byte [0x7ff76917cb3a]
mov byte [rsp + 0x40], 0x55
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
xor byte [rsp + 0x46], 0x37
xor byte [rsp + 0x47], 0x38
xor cl, 0x39
mov byte [rsp + 0x48], cl
xor byte [rsp + 0x49], 0x3a
xor al, 0x3b
mov byte [rsp + 0x4a], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
lea rax, [rsp + 0x40]
inc rbx
cmp byte [rax + rbx], 0
jne 0x7ff7690e4647
lea rdx, [rsp + 0x40]
jmp 0x7ff7690e469d
mov eax, dword [0x7ff76917cbf4]
mov dword [rbp - 0x68], eax
movzx eax, byte [0x7ff76917cbf8]
mov byte [rbp - 0x68], 0x48
xor byte [rbp - 0x67], 0x32
xor byte [rbp - 0x66], 0x33
xor byte [rbp - 0x65], 0x34
xor al, 0x35
mov byte [rbp - 0x64], al
xorps xmm0, xmm0
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], r12
lea rax, [rbp - 0x68]
nop
inc rbx
cmp byte [rax + rbx], 0
jne 0x7ff7690e4690
lea rdx, [rbp - 0x68]
mov r8, rbx
lea rcx, [rbp - 0x60]
call fcn.7ff7690ba770
lea r8, [rbp - 0x60]
mov rdx, qword [rbp + 0x18]
call fcn.7ff7690f1e30
test rax, rax
je 0x7ff7690e4c66
mov rdx, rax
call fcn.7ff7690f2190
mov rdi, rax
test rax, rax
je 0x7ff7690e4c66
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x58], 0
lea rbx, [rax + 0x14c]
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x50]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0xc
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
movaps xmm8, xmm14
divss xmm8, dword [0x7ff769193134]
movaps xmm7, xmm8
mulss xmm7, dword [rsp + 0x58]
mulss xmm8, dword [rsp + 0x50]
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x58], 0
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x50]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0xc
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
movaps xmm6, xmm14
divss xmm6, dword [0x7ff76919313c]
mulss xmm6, dword [rsp + 0x54]
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x48], 0
lea rax, [rdi + 0x140]
mov qword [rbp - 0x50], rax
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x40]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0xc
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
addss xmm7, dword [rsp + 0x48]
addss xmm6, dword [rsp + 0x44]
addss xmm8, dword [rsp + 0x40]
movss dword [rbp - 0x80], xmm8
movss dword [rbp - 0x7c], xmm6
movss dword [rbp - 0x78], xmm7
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x50]
call fcn.7ff7690f2480
movaps xmm7, xmmword [0x7ff76917df40]
movss xmm6, dword [rsp + 0x54]
mov ecx, 0x28
call fcn.7ff76915d52c
mov rbx, rax
mov qword [rsp + 0x40], rax
mov qword [rax], r14
movss xmm0, dword [rsp + 0x50]
unpcklps xmm0, xmm6
movsd qword [rax + 8], xmm0
mov dword [rax + 0x10], 0x40400000
movups xmmword [rax + 0x14], xmm7
mov byte [rax + 0x24], 1
mov qword [rsp + 0x40], rax
mov rdi, qword [0x7ff7691bc1e8]
cmp rdi, qword [0x7ff7691bc1f0]
je 0x7ff7690e48d3
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov qword [rsp + 0x40], rax
mov ecx, 0x18
call fcn.7ff76915d52c
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
mov qword [rax], rsi
mov qword [rax + 0x10], rbx
mov qword [rdi], rbx
mov qword [rdi + 8], rax
add qword [0x7ff7691bc1e8], 0x10
jmp 0x7ff7690e48e7
lea r8, [rsp + 0x40]
mov rdx, rdi
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e63b0
cmp byte [0x7ff7691bc0f4], 0
je 0x7ff7690e49de
cmp dword [0x7ff7691bc108], 1
jne 0x7ff7690e49de
cmp byte [0x7ff7691bc0d5], 1
jne 0x7ff7690e49de
movss xmm8, dword [0x7ff7691bc110]
ucomiss xmm8, xmm12
jp 0x7ff7690e4923
je 0x7ff7690e49de
movss xmm7, dword [0x7ff7691bc114]
ucomiss xmm7, xmm12
jp 0x7ff7690e4937
je 0x7ff7690e49de
movaps xmm6, xmmword [0x7ff76917df40]
mov ecx, 0x28
call fcn.7ff76915d52c
mov rbx, rax
mov qword [rsp + 0x40], rax
mov qword [rax], r14
movaps xmm0, xmm8
unpcklps xmm0, xmm7
movsd qword [rax + 8], xmm0
mov dword [rax + 0x10], 0x40400000
movups xmmword [rax + 0x14], xmm6
mov byte [rax + 0x24], 1
mov qword [rsp + 0x40], rax
mov rdi, qword [0x7ff7691bc1e8]
cmp rdi, qword [0x7ff7691bc1f0]
je 0x7ff7690e49ca
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov qword [rsp + 0x40], rax
mov ecx, 0x18
call fcn.7ff76915d52c
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
mov qword [rax], rsi
mov qword [rax + 0x10], rbx
mov qword [rdi], rbx
mov qword [rdi + 8], rax
add qword [0x7ff7691bc1e8], 0x10
jmp 0x7ff7690e49de
lea r8, [rsp + 0x40]
mov rdx, rdi
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e63b0
cmp byte [0x7ff7691bc0f5], 0
je 0x7ff7690e4a92
mov ecx, 0x28
call fcn.7ff76915d52c
mov rbx, rax
mov qword [rsp + 0x40], rax
movups xmm0, xmmword [0x7ff769193170]
mov qword [rax], r14
movss dword [rax + 8], xmm10
movss dword [rax + 0xc], xmm15
mov dword [rax + 0x10], 0x40a00000
movups xmmword [rax + 0x14], xmm0
mov byte [rax + 0x24], 0
mov qword [rsp + 0x40], rax
mov rdi, qword [0x7ff7691bc1e8]
cmp rdi, qword [0x7ff7691bc1f0]
je 0x7ff7690e4a7e
mov qword [rdi], r12
mov qword [rdi + 8], r12
mov qword [rsp + 0x40], rax
mov ecx, 0x18
call fcn.7ff76915d52c
mov qword [rsp + 0x40], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
mov qword [rax], rsi
mov qword [rax + 0x10], rbx
mov qword [rdi], rbx
mov qword [rdi + 8], rax
add qword [0x7ff7691bc1e8], 0x10
jmp 0x7ff7690e4a92
lea r8, [rsp + 0x40]
mov rdx, rdi
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e63b0
cmp byte [0x7ff7691bc12e], 0
je 0x7ff7690e4b08
lea rcx, [rbp - 0x68]
call qword [sym.imp.user32.dll_GetCursorPos]
lea rdx, [0x7ff76917caa4]
xor ecx, ecx
call qword [sym.imp.user32.dll_FindWindowA]
mov rcx, rax
lea rdx, [rbp - 0x68]
call qword [sym.imp.user32.dll_ScreenToClient]
movd xmm1, dword [rbp - 0x64]
cvtdq2ps xmm1, xmm1
movd xmm0, dword [rbp - 0x68]
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x44], xmm1
movss dword [rsp + 0x60], xmm10
movss dword [rsp + 0x64], xmm15
lea r9, [0x7ff7691931c8]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e53e0
cmp byte [0x7ff7691bc12d], 0
je 0x7ff7690e4c66
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x58], 0
lea rbx, [r15 + 0x14c]
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x50]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0xc
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
movaps xmm7, xmm14
divss xmm7, dword [0x7ff769193134]
movaps xmm6, xmm7
mulss xmm6, dword [rsp + 0x58]
mulss xmm7, dword [rsp + 0x50]
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
mov qword [rbp - 0x38], r12
mov qword [rsp + 0x50], 0
mov dword [rsp + 0x58], 0
mov qword [rbp - 0x50], rbx
mov dword [rbp - 0x30], 0x1707e108
lea rax, [rsp + 0x50]
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], 0xc
mov qword [rsp + 0x20], r12
xor r9d, r9d
lea r8, [rbp - 0x60]
mov edx, 0x22f3a434
xor ecx, ecx
call qword [0x7ff7691bc188]
divss xmm14, dword [0x7ff76919313c]
mulss xmm14, dword [rsp + 0x54]
addss xmm6, dword [rbp + 0xac]
addss xmm14, dword [rbp + 0xa8]
addss xmm7, dword [rbp + 0xa4]
movss dword [rbp - 0x80], xmm7
movss dword [rbp - 0x7c], xmm14
movss dword [rbp - 0x78], xmm6
lea r8, [rbp - 0x80]
lea rdx, [rsp + 0x50]
call fcn.7ff7690f2480
movss xmm0, dword [rsp + 0x50]
movss dword [rsp + 0x40], xmm0
movss xmm1, dword [rsp + 0x54]
movss dword [rsp + 0x44], xmm1
movss dword [rsp + 0x60], xmm10
movss dword [rsp + 0x64], xmm15
lea r9, [0x7ff769193140]
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x60]
lea rcx, [0x7ff7691bc1e0]
call fcn.7ff7690e53e0
nop
lea rcx, [rbp + 0x50]
call fcn.7ff7690b6990
mov rcx, qword [rbp + 0xb0]
xor rcx, rsp
call fcn.7ff76915d150
lea r11, [rsp + 0x260]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret