Function at 0x7ff7ed42a0ac
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x300]
sub rsp, 0x400
mov rax, qword [0x7ff7ed868f18]
xor rax, rsp
mov qword [rbp + 0x2f0], rax
mov rsi, rdx
xor r12d, r12d
mov dword [rsp + 0x24], r12d
lea edi, [r12 + 1]
cmp ecx, edi
jne 0x7ff7ed42a6bf
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x20]
cmp word [rcx + 0xd0], di
jbe 0x7ff7ed42a883
mov rdx, qword [rcx + 0xd8]
xorps xmm0, xmm0
movups xmmword [rbp + 0x190], xmm0
mov qword [rbp + 0x1a0], r12
mov qword [rbp + 0x1a8], r12
or r14, 0xffffffffffffffff
mov r8, r14
inc r8
cmp word [rdx + r8*2], r12w
jne 0x7ff7ed42a136
lea rcx, [rbp + 0x190]
call fcn.7ff7ed383b88
nop
lea rax, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 8
cmovae rax, qword [rbp + 0x190]
mov r15d, 0x20
mov r9, qword [rbp + 0x1a0]
test r9, r9
je 0x7ff7ed42a1a7
mov rcx, r9
mov rdx, rax
mov rbx, r12
cmp word [rax], r15w
je 0x7ff7ed42a197
cmp rcx, rdi
je 0x7ff7ed42a19a
sub rcx, rdi
add rdx, 2
cmp word [rdx], r15w
jne 0x7ff7ed42a185
mov rbx, rdx
test rbx, rbx
je 0x7ff7ed42a1a7
sub rbx, rax
sar rbx, 1
jmp 0x7ff7ed42a1aa
mov rbx, r14
xorps xmm0, xmm0
movups xmmword [rbp + 0x1d0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1e0], xmm1
mov r8, rbx
cmp r9, rbx
cmovb r8, r9
lea rdx, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 8
cmovae rdx, qword [rbp + 0x190]
lea rcx, [rbp + 0x1d0]
call fcn.7ff7ed383b88
nop
inc rbx
xorps xmm0, xmm0
movups xmmword [rbp + 0x1b0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x1c0], xmm1
mov rax, qword [rbp + 0x1a0]
cmp rax, rbx
jb 0x7ff7ed42a918
sub rax, rbx
cmp rax, r14
cmovb r14, rax
lea rax, [rbp + 0x190]
cmp qword [rbp + 0x1a8], 8
cmovae rax, qword [rbp + 0x190]
lea rdx, [rax + rbx*2]
mov r8, r14
lea rcx, [rbp + 0x1b0]
call fcn.7ff7ed383b88
nop
lea rcx, [rbp + 0x1d0]
cmp qword [rbp + 0x1e8], 8
cmovae rcx, qword [rbp + 0x1d0]
mov rax, qword [rbp + 0x1e0]
lea r8, [rcx + rax*2]
lea rdx, [rbp + 0x1d0]
cmovae rdx, qword [rbp + 0x1d0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x210], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x220], xmm1
cmp rdx, r8
jne 0x7ff7ed42a2ae
movdqa xmm0, xmmword [0x7ff7ed6f2210]
movdqu xmmword [rbp + 0x220], xmm0
mov byte [rbp + 0x210], r12b
jmp 0x7ff7ed42a2c4
mov r9, r8
sub r9, rdx
sar r9, 1
lea rcx, [rbp + 0x210]
call fcn.7ff7ed429da0
nop
lea rcx, [rbp + 0x1b0]
cmp qword [rbp + 0x1c8], 8
cmovae rcx, qword [rbp + 0x1b0]
mov rax, qword [rbp + 0x1c0]
lea r8, [rcx + rax*2]
lea rdx, [rbp + 0x1b0]
cmovae rdx, qword [rbp + 0x1b0]
xorps xmm0, xmm0
movups xmmword [rbp + 0x1f0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x200], xmm1
cmp rdx, r8
jne 0x7ff7ed42a328
movdqa xmm0, xmmword [0x7ff7ed6f2210]
movdqu xmmword [rbp + 0x200], xmm0
mov byte [rbp + 0x1f0], r12b
jmp 0x7ff7ed42a33e
mov r9, r8
sub r9, rdx
sar r9, 1
lea rcx, [rbp + 0x1f0]
call fcn.7ff7ed429da0
nop
mov edx, edi
lea rcx, [rbp - 0x70]
call fcn.7ff7ed3aab10
nop
mov rdx, qword [rsi]
lea rcx, [rbp - 0x60]
call fcn.7ff7ed3a8c60
mov rcx, rax
lea rdx, [0x7ff7ed700d3c]
call fcn.7ff7ed3a8c60
mov rbx, rax
lea rdx, [rbp + 0x1f0]
cmp qword [rbp + 0x208], 0x10
cmovae rdx, qword [rbp + 0x1f0]
xor r8d, r8d
lea rcx, [rbp + 0x230]
call fcn.7ff7ed42b6e4
nop
mov rdx, rax
mov rcx, rbx
call fcn.7ff7ed3cc998
nop
mov ebx, 0x1000
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x7ff7ed42a3dd
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a3d8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a91e
call fcn.7ff7ed6b5394
lea rdx, [rbp + 0x230]
lea rcx, [rbp - 0x58]
call fcn.7ff7ed3aeb50
lea rcx, [rbp + 0x230]
cmp qword [rbp + 0x248], 0x10
cmovae rcx, qword [rbp + 0x230]
lea rdx, [rsp + 0x24]
call fcn.7ff7ed429f98
mov r14, rax
mov rdx, qword [rbp + 0x248]
cmp rdx, 0x10
jb 0x7ff7ed42a44e
inc rdx
mov rcx, qword [rbp + 0x230]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a449
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a924
call fcn.7ff7ed6b5394
movdqa xmm0, xmmword [0x7ff7ed6f2210]
movdqu xmmword [rbp + 0x240], xmm0
mov byte [rbp + 0x230], r12b
lea rcx, [rsp + 0x20]
call fcn.7ff7ed429e90
mov rsi, rax
cmp byte [rax + 8], r12b
je 0x7ff7ed42a4a0
mov rdx, r12
mov cl, dl
and cl, 7
shl cl, 3
movabs rax, 0xaf55afc5af9979bd
shr rax, cl
xor byte [rdx + rsi], al
add rdx, rdi
cmp rdx, 8
jb 0x7ff7ed42a47b
mov byte [rsi + 8], r12b
lea rdx, [rbp + 0x210]
cmp qword [rbp + 0x228], 0x10
cmovae rdx, qword [rbp + 0x210]
mov rcx, rsi
call fcn.7ff7ed6c7350
mov r8, r15
mov rdx, rsi
lea rcx, [rbp + 0x270]
call fcn.7ff7ed6c7c84
lea r8, [rbp + 0x270]
mov edx, edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
nop
lea rcx, [rbp + 0x28]
call fcn.7ff7ed3aafb0
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x28], rax
lea rcx, [rbp + 0x28]
call fcn.7ff7ed6b4184
nop
mov rdx, qword [rbp + 0x208]
cmp rdx, 0x10
jb 0x7ff7ed42a53f
inc rdx
mov rcx, qword [rbp + 0x1f0]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a53a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a92a
call fcn.7ff7ed6b5394
movdqa xmm0, xmmword [0x7ff7ed6f2210]
movdqu xmmword [rbp + 0x200], xmm0
mov byte [rbp + 0x1f0], r12b
mov rdx, qword [rbp + 0x228]
cmp rdx, 0x10
jb 0x7ff7ed42a593
inc rdx
mov rcx, qword [rbp + 0x210]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a58e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a930
call fcn.7ff7ed6b5394
movdqa xmm0, xmmword [0x7ff7ed6f2210]
movdqu xmmword [rbp + 0x220], xmm0
mov byte [rbp + 0x210], r12b
mov rdx, qword [rbp + 0x1c8]
cmp rdx, 8
jb 0x7ff7ed42a5ec
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1b0]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a5e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a936
call fcn.7ff7ed6b5394
movdqa xmm0, xmmword [0x7ff7ed749aa0]
movdqu xmmword [rbp + 0x1c0], xmm0
mov word [rbp + 0x1b0], r12w
mov rdx, qword [rbp + 0x1e8]
cmp rdx, 8
jb 0x7ff7ed42a646
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x1d0]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a641
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a93c
call fcn.7ff7ed6b5394
movdqa xmm0, xmmword [0x7ff7ed749aa0]
movdqu xmmword [rbp + 0x1e0], xmm0
mov word [rbp + 0x1d0], r12w
mov rdx, qword [rbp + 0x1a8]
cmp rdx, 8
jb 0x7ff7ed42a6a0
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x190]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a69b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a942
call fcn.7ff7ed6b5394
mov qword [rbp + 0x1a0], r12
mov qword [rbp + 0x1a8], 7
mov word [rbp + 0x190], r12w
jmp 0x7ff7ed42a87b
cmp ecx, 3
jne 0x7ff7ed42a881
mov edx, edi
lea rcx, [rbp + 0x90]
call fcn.7ff7ed3aab10
nop
mov rdx, qword [rsi]
lea rcx, [rbp + 0xa0]
call fcn.7ff7ed3a8c60
mov rcx, rax
lea rdx, [0x7ff7ed700d3c]
call fcn.7ff7ed3a8c60
mov rbx, rax
xor r8d, r8d
mov rdx, qword [rsi + 0x10]
lea rcx, [rbp + 0x250]
call fcn.7ff7ed42b6e4
nop
mov rdx, rax
mov rcx, rbx
call fcn.7ff7ed3cc998
nop
mov ebx, 0x1000
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x7ff7ed42a75a
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a755
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a948
call fcn.7ff7ed6b5394
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0xa8]
call fcn.7ff7ed3aeb50
lea rcx, [rbp + 0x250]
cmp qword [rbp + 0x268], 0x10
cmovae rcx, qword [rbp + 0x250]
lea rdx, [rsp + 0x24]
call fcn.7ff7ed429f98
mov r14, rax
mov rdx, qword [rbp + 0x268]
cmp rdx, 0x10
jb 0x7ff7ed42a7ce
inc rdx
mov rcx, qword [rbp + 0x250]
mov rax, rcx
cmp rdx, rbx
jb 0x7ff7ed42a7c9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x7ff7ed42a912
call fcn.7ff7ed6b5394
movdqa xmm0, xmmword [0x7ff7ed6f2210]
movdqu xmmword [rbp + 0x260], xmm0
mov byte [rbp + 0x250], r12b
lea rcx, [rsp + 0x20]
call fcn.7ff7ed429f14
mov rbx, rax
cmp byte [rax + 8], r12b
je 0x7ff7ed42a820
mov rdx, r12
mov cl, dl
and cl, 7
shl cl, 3
movabs rax, 0x9d178d819b5ff149
shr rax, cl
xor byte [rdx + rbx], al
add rdx, rdi
cmp rdx, 8
jb 0x7ff7ed42a7fb
mov byte [rbx + 8], r12b
mov rdx, qword [rsi + 8]
mov rcx, rbx
call fcn.7ff7ed6c7350
mov r8d, 0x20
mov rdx, rbx
lea rcx, [rbp + 0x2b0]
call fcn.7ff7ed6c7c84
lea r8, [rbp + 0x2b0]
mov edx, edi
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexW]
nop
lea rcx, [rbp + 0x128]
call fcn.7ff7ed3aafb0
nop
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x128], rax
lea rcx, [rbp + 0x128]
call fcn.7ff7ed6b4184
nop
mov edi, dword [rsp + 0x24]
jmp 0x7ff7ed42a886
mov edi, ecx
mov r14, rsi
mov r8, r14
mov edx, edi
lea rcx, [rsp + 0x28]
call fcn.7ff7ed3a5044
nop
lea rcx, [rsp + 0x28]
call fcn.7ff7ed3a45ac
test eax, eax
je 0x7ff7ed42a8b4
mov edx, eax
lea rcx, [rsp + 0x28]
call fcn.7ff7ed3a44c0
mov ebx, eax
jmp 0x7ff7ed42a8db
lea rdx, [rsp + 0x28]
lea rcx, [rsp + 0x50]
call fcn.7ff7ed406994
nop
lea rcx, [rsp + 0x50]
call fcn.7ff7ed406cd4
mov ebx, eax
lea rcx, [rsp + 0x50]
call fcn.7ff7ed406a80
nop
lea rcx, [rsp + 0x38]
call fcn.7ff7ed3a50b8
mov eax, ebx
mov rcx, qword [rbp + 0x2f0]
xor rcx, rsp
call fcn.7ff7ed6b54e0
lea r11, [rsp + 0x400]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed3993c4
nop
call fcn.7ff7ed6bc794
int3
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed6bc794
nop
call fcn.7ff7ed6bc794
int3