Function at 0x1400755d0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x1d8
movaps xmmword [rsp + 0x1c0], xmm8
movaps xmmword [rsp + 0x1b0], xmm7
movaps xmmword [rsp + 0x1a0], xmm6
mov qword [rsp + 0x130], rdx
mov qword [rsp + 0x138], rcx
mov qword [rsp + 0x140], rcx
mov rax, qword [0x14028d330]
mov qword [rsp + 0x148], rax
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, rax
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x150], rcx
mov ecx, dword [rax]
call fcn.14000efc9
movaps xmm0, xmmword [0x140284ce0]
movaps xmm1, xmmword [0x140284cf0]
movaps xmm2, xmmword [0x140284d00]
movaps xmm3, xmmword [0x140284d10]
xor eax, eax
mov qword [rsp + 0x158], rax
movaps xmmword [rsp + 0x160], xmm3
movaps xmmword [rsp + 0x170], xmm2
movaps xmmword [rsp + 0x180], xmm1
movaps xmmword [rsp + 0x190], xmm0
jmp 0x140075683
mov rax, qword [rsp + 0x158]
movaps xmm2, xmmword [rsp + 0x160]
movaps xmm7, xmmword [rsp + 0x170]
movaps xmm8, xmmword [rsp + 0x180]
movaps xmm5, xmmword [rsp + 0x190]
movaps xmmword [rsp + 0xd0], xmm5
movaps xmmword [rsp + 0xe0], xmm8
movaps xmmword [rsp + 0xf0], xmm7
movaps xmmword [rsp + 0x100], xmm2
mov qword [rsp + 0x118], rax
movaps xmm6, xmmword [0x140284d20]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm3, xmmword [0x140284d20]
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm4, xmmword [0x140284d30]
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rsp + 0x120], xmm1
movd eax, xmm0
test al, 1
jne 0x1400757b5
jmp 0x1400757cd
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
mov dl, 0xfe
xor dl, 0xfe
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rsp + 0x120]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x1400757e9
jmp 0x140075817
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0xa981db3445c722c7
movabs r8, 0xa981db3445c722c6
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x120]
pextrw eax, xmm0, 2
test al, 1
jne 0x140075831
jmp 0x140075849
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
or rcx, 2
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x120]
pextrw eax, xmm0, 3
test al, 1
jne 0x140075863
jmp 0x1400758bf
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
movabs r8, 0x4ef9929b0338f8d8
movabs rdx, 0x4ef9929b0338f8db
xor r8, rdx
movabs rdx, 0x72f2b175dd2a964d
movabs r9, 0x8d0d4e8a22d569b2
xor rdx, r9
xor r8, rdx
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 3
add rcx, r8
sub rcx, rdx
mov dl, 2
xor dl, 2
mov byte [rax + rcx], dl
mov eax, dword [0x1402757d0]
or eax, dword [0x1402757d4]
mov edx, 0x98bb35d9
xor edx, 0x1764ea16
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x8fdfdfcf
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x376dc538
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x988c6be6
mov edx, 0xef6ea6af
xor edx, 0x77e2cd49
mov r8d, 0x99f1b5b5
xor r8d, 0x660e4a4a
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x48f30d36
jb 0x140075f29
movaps xmm0, xmmword [rsp + 0x120]
mov eax, dword [0x1402757d8]
mov ecx, dword [0x1402757dc]
xor ecx, 0x77cd0611
sub eax, ecx
imul eax, eax, 0xff9175b2
mov edx, eax
add edx, 0xb01f060b
mov ecx, edx
and ecx, 0xadde7745
xor edx, 0x522188ba
add eax, edx
sub eax, ecx
add eax, 0xb01f060b
mov ecx, 0x121e226a
pextrw edx, xmm0, 4
mov byte [rsp + 0xcf], dl
cmp eax, ecx
je 0x140075f29
mov al, byte [rsp + 0xcf]
test al, 1
jne 0x140075998
jmp 0x1400759ca
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
mov r8, 0xffffffffffffffff
xor r8, 4
mov rdx, rcx
and rdx, r8
mov r8, rcx
xor r8, 4
add rcx, r8
sub rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x120]
pextrw eax, xmm0, 5
test al, 1
jne 0x1400759e4
jmp 0x140075a62
mov rax, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x118]
movabs r8, 0x285fd9872f6f3793
movabs rcx, 0xd7a02678d090c86c
xor r8, rcx
mov rcx, rdx
xor rcx, r8
mov r8, 0xffffffffffffffff
xor r8, 5
and rcx, r8
movabs r8, 0x839b1e484a1a214d
movabs r9, 0x839b1e484a1a2148
xor r8, r9
or rdx, r8
movabs r8, 0x93230ba5d7e0de69
movabs r9, 0x6cdcf45a281f2196
xor r8, r9
xor rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x120]
pextrw eax, xmm0, 6
test al, 1
jne 0x140075a7c
jmp 0x140075abc
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
mov rdx, rcx
and rdx, 6
xor rdx, 0xffffffffffffffff
movabs r8, 0x5cacc31ecae6b7db
movabs r9, 0x5cacc31ecae6b7dd
xor r8, r9
add rcx, r8
add rcx, 1
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rsp + 0x120]
pextrw eax, xmm0, 7
test al, 1
jne 0x140075ad6
jmp 0x140075b04
mov rax, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x118]
movabs rdx, 0x17190fd0f198949c
movabs r8, 0x17190fd0f198949b
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
mov ecx, dword [0x1402757e0]
mov edx, dword [0x1402757e4]
xor edx, 0x39c2bd9
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
mov r8d, 0x15c8329d
xor r8d, 0xea37cd62
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0x5c735588
xor edx, edx
div ecx
mov ecx, eax
add ecx, 0x497ab472
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x70e28086
xor ecx, 0xe5640634
mov edx, 0xdbbe48ab
xor edx, 0x2441b754
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x958686b2
or ecx, edx
mov edx, 0x54b28ccb
xor edx, 0xab4d7334
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x2f56ffff
je 0x140075f32
movaps xmm7, xmmword [rsp + 0x100]
movaps xmm5, xmmword [rsp + 0xf0]
movaps xmm3, xmmword [rsp + 0xe0]
movaps xmm1, xmmword [rsp + 0xd0]
mov rcx, qword [rsp + 0x118]
mov eax, 0x8baa1587
mov edx, ecx
and edx, 8
xor rcx, 8
lea rcx, [rcx + rdx*2]
mov qword [rsp + 0x68], rcx
movaps xmm8, xmmword [0x140284d40]
movaps xmmword [rsp + 0x70], xmm8
movaps xmm0, xmm1
pand xmm0, xmm8
movaps xmm2, xmm3
pand xmm2, xmm8
movaps xmm4, xmm5
pand xmm4, xmm8
movaps xmm6, xmm7
pand xmm6, xmm8
por xmm1, xmm8
por xmm3, xmm8
por xmm5, xmm8
por xmm7, xmm8
paddq xmm6, xmm7
movaps xmmword [rsp + 0x80], xmm6
paddq xmm4, xmm5
movaps xmmword [rsp + 0x90], xmm4
paddq xmm2, xmm3
movaps xmmword [rsp + 0xa0], xmm2
paddq xmm0, xmm1
movaps xmmword [rsp + 0xb0], xmm0
cmp rcx, 0x18
sete cl
mov byte [rsp + 0xce], cl
cmp eax, 0xe42d9f9
jb 0x140075b93
movaps xmm0, xmmword [rsp + 0xb0]
movaps xmm1, xmmword [rsp + 0xa0]
movaps xmm2, xmmword [rsp + 0x90]
movaps xmm3, xmmword [rsp + 0x80]
mov rax, qword [rsp + 0x68]
mov cl, byte [rsp + 0xce]
test cl, 1
mov qword [rsp + 0x158], rax
movaps xmmword [rsp + 0x160], xmm3
movaps xmmword [rsp + 0x170], xmm2
movaps xmmword [rsp + 0x180], xmm1
movaps xmmword [rsp + 0x190], xmm0
je 0x140075683
jmp 0x140075cbf
mov rax, qword [rsp + 0x130]
mov rcx, qword [rsp + 0x150]
add rcx, 0x60
mov qword [rsp + 0x60], rcx
movabs rcx, 0x228c5d2f16e6b19b
movabs rdx, 0x228c5d2f16e6b19b
xor rcx, rdx
cmp rax, rcx
jge 0x140075d18
mov rcx, qword [rsp + 0x130]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14001a720
jmp 0x140075f00
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
call fcn.14000efc9
mov rcx, qword [rsp + 0x130]
movabs rdx, 0x27c278ce1f2d2e4d
movabs rax, 0xd83d8731e0d2d1b2
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, 3
mov r8, 0xffffffffffffffff
xor r8, 3
mov rdx, rcx
and rdx, r8
imul rdx, rax
movabs rax, 0xa1f89361efcb83a5
movabs r8, 0xa1f89361efcb83a6
xor rax, r8
mov r8, rcx
and r8, rax
mov rax, rcx
or rax, 3
imul rax, r8
add rax, rdx
mov qword [rsp + 0x48], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x140284d50]
mulsd xmm0, xmm1
movsd qword [rsp + 0x50], xmm0
cvtsi2sd xmm1, rax
movsd qword [rsp + 0x58], xmm1
ucomisd xmm0, xmm1
jne 0x140075dcb
jp 0x140075dcb
jmp 0x140075e1a
movsd xmm1, qword [rsp + 0x50]
movsd xmm0, qword [rsp + 0x58]
subsd xmm0, xmm1
call fcn.140271c60
movaps xmm1, xmm0
movsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x40], xmm1
call fcn.140271c60
movsd xmm1, qword [rsp + 0x40]
movsd xmm2, qword [0x140284d58]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x140075e1a
call fcn.14000f24b
jmp 0x140075e94
mov rax, qword [rsp + 0x48]
mov ecx, 2
cqo
idiv rcx
mov rcx, rax
xor eax, eax
mov edx, eax
sub rdx, rcx
xor eax, eax
sub rax, 4
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x38], rax
movabs r8, 0xc45ac74da9a1eb40
movabs rdx, 0x3ba538b2565e14bf
xor r8, rdx
mov rdx, rcx
and rdx, r8
shl rdx, 1
add rcx, 0xffffffffffffffff
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140075e85
call fcn.14000f24b
jmp 0x140075e94
mov rcx, qword [rsp + 0x38]
call fcn.140059f24
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x28], rcx
mov al, byte [rax]
mov cl, 0xb9
xor cl, 0xb9
cmp al, cl
jne 0x140075f00
mov rax, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x138]
mov qword [rcx + 0x10], 0
cmp rax, 0
jge 0x140075eee
mov rcx, qword [rsp + 0x28]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14001a720
jmp 0x140075f00
mov rdx, qword [rsp + 0x28]
mov rcx, qword [rsp + 0x138]
call fcn.140033377
mov rax, qword [rsp + 0x140]
movaps xmm6, xmmword [rsp + 0x1a0]
movaps xmm7, xmmword [rsp + 0x1b0]
movaps xmm8, xmmword [rsp + 0x1c0]
add rsp, 0x1d8
ret
invalid
jae 0x140075f8d
adc esp, dword [0x14003b823]
call qword [rbp + 0x48]
push rbp
sub rsp, 0x50
lea rbp, [rsp + 0x50]
mov qword [rbp - 0x40], rcx
mov eax, 0x20
call fcn.140271bb0
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x38], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
add rsp, 0x20
mov qword [rbp - 0x28], rax
add rax, 0x60
mov qword [rbp - 0x30], rax
mov rax, qword [0x14028d330]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000efc9
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
xor eax, eax
cmp byte [rcx + 0x60], 0
mov qword [rbp - 0x20], rax
jne 0x14007604c
cmp byte [rax - 0x74b70007], dl
fmul dword [r8 - 0x7d]
invalid
movabs rcx, 0x681a09c77f1ec9aa
movabs rax, 0x681a09c77f1ec9b2
xor rcx, rax
movabs rdx, 0x7c6dd88948428bd4
movabs rax, 0x7c6dd88948428bdc
xor rdx, rax
sub rsp, 0x20
call fcn.140029060
mov rdx, qword [rbp - 0x40]
add rsp, 0x20
mov qword [rbp - 0x48], rax
lea rcx, [rbp - 0x18]
sub rsp, 0x20
call fcn.1400755d0
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x93
xor dl, 0x93
cmp cl, dl
mov qword [rbp - 0x20], rax
jne 0x14007604c
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x38]
mov rax, qword [rbp - 0x18]
mov qword [rdx], rax
mov rax, qword [rbp - 0x10]
mov qword [rdx + 8], rax
mov rax, qword [rbp - 8]
mov qword [rdx + 0x10], rax
sub rsp, 0x20
call fcn.140074f70
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rax, qword [rbp - 0x20]
mov rsp, rbp
pop rbp
ret