Function at 0x7ff70b4ee020
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1d8
movaps xmmword [rax - 0x58], xmm6
movaps xmmword [rax - 0x68], xmm7
movaps xmmword [rax - 0x78], xmm8
movaps xmmword [rax - 0x88], xmm9
movaps xmmword [rax - 0x98], xmm10
movaps xmmword [rax - 0xa8], xmm11
movaps xmmword [rax - 0xb8], xmm12
mov rbp, rcx
mov rax, qword gs:[0x30]
mov edx, dword [rax + 0x48]
mov eax, dword [rcx + 0xc]
cmp edx, eax
jne 0x7ff70b4ee083
mov eax, dword [rcx + 8]
inc eax
mov dword [rcx + 8], eax
jmp 0x7ff70b4ee0c0
mov r8d, 1
nop dword [rax]
mov eax, dword [rbp + 0x10]
cmp eax, r8d
je 0x7ff70b4ee0a5
xor eax, eax
lock cmpxchg dword [rbp + 0x10], r8d
cmp eax, r8d
jne 0x7ff70b4ee0bd
mov ecx, dword [rbp + 0x14]
mov eax, dword [rbp + 0x14]
inc eax
mov dword [rbp + 0x14], eax
cmp ecx, 0x1fffffff
jbe 0x7ff70b4ee0b9
int3
pause
jmp 0x7ff70b4ee090
mov dword [rbp + 0xc], edx
mov ecx, 0x3f800000
call fcn.7ff70b500310
movaps xmm9, xmm0
mov ecx, 0x40000000
call fcn.7ff70b500310
movaps xmm8, xmm0
mov ecx, 0x40400000
call fcn.7ff70b500310
movaps xmm7, xmm0
mov ecx, 0x40800000
call fcn.7ff70b500310
movaps xmm6, xmm0
mov ecx, 0x3e99999a
call fcn.7ff70b500310
movaps xmm10, xmm0
mov rax, qword [0x7ff70b6900e0]
movss xmm12, dword [rax + 0x1c]
movaps xmm11, xmm12
mulss xmm11, xmm6
mulss xmm12, xmm7
movaps xmm7, xmm11
mulss xmm7, xmm8
mov rax, qword [0x7ff70b692190]
mov rcx, qword [rax + 0x78]
movaps xmm1, xmm7
addss xmm1, dword [rcx + 0x14]
mov rax, qword [rbp + 0x18]
movzx ebx, byte [rax + 0x1cd]
mov byte [rsp + 0x220], bl
mov byte [rax + 0x1cd], 1
movss xmm2, dword [rbp + 4]
movaps xmm0, xmm2
divss xmm0, xmm1
addss xmm0, xmm9
subss xmm2, xmm0
movss dword [rbp + 4], xmm2
xorps xmm0, xmm0
xor r13d, r13d
comiss xmm0, xmm2
ja 0x7ff70b4ee17e
ucomiss xmm2, xmm2
jnp 0x7ff70b4ee185
mov dword [rbp + 4], r13d
xorps xmm2, xmm2
addss xmm2, xmm11
cvttss2si eax, xmm2
mov dword [rsp + 0x228], eax
mov rbx, qword [rbp + 0x28]
cmp rbx, qword [rbp + 0x30]
je 0x7ff70b4ee49b
lea r12, [rbx + 0x10]
nop word [rax + rax]
lea rsi, [r12 - 0xc]
cmp byte [rbx], 0
jne 0x7ff70b4ee1d3
mov rax, qword [0x7ff70b692190]
movss xmm1, dword [rax + 0x68]
addss xmm1, dword [rsi]
movss dword [rsi], xmm1
mov byte [rbx], 1
jmp 0x7ff70b4ee1d7
movss xmm1, dword [rsi]
addss xmm1, xmm10
mov rax, qword [0x7ff70b692190]
movss xmm0, dword [rax + 0x68]
comiss xmm0, xmm1
jbe 0x7ff70b4ee45f
cmp rbx, qword [rbp + 0x28]
jne 0x7ff70b4ee39e
mov r15, qword [r12 + 8]
mov rdi, qword [r12]
mov r14, r15
sub r14, rdi
cmp r14, 0x100
jbe 0x7ff70b4ee2e8
lea rcx, [r12 - 8]
lea rdx, [rsp + 0x40]
call fcn.7ff70b4db770
nop
mov rax, qword [0x7ff70b692190]
mov rdi, qword [rax + 0x78]
mov ecx, 0xbf800000
call fcn.7ff70b500310
movaps xmm6, xmm0
mov ecx, 0x7f7fffff
call fcn.7ff70b500310
mov r14, qword [rsp + 0x40]
mov qword [rsp + 0x28], r14
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm0
movss xmm2, dword [rdi + 0x14]
lea rdx, [rsp + 0x230]
mov rcx, rdi
call fcn.7ff70b4f2490
movaps xmm0, xmm7
addss xmm0, dword [rsp + 0x234]
addss xmm0, dword [rbp + 4]
movss dword [rbp + 4], xmm0
mov r8, qword [rsp + 0x48]
sub r8, r14
xor edx, edx
mov rcx, r14
call fcn.7ff70b54e850
nop
test r14, r14
je 0x7ff70b4ee39e
mov rax, qword [rsp + 0x50]
sub rax, r14
mov rcx, r14
cmp rax, 0x1000
jb 0x7ff70b4ee2cb
mov r14, qword [r14 - 8]
sub rcx, r14
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x7ff70b4ee504
mov rcx, r14
call fcn.7ff70b4dd700
nop
mov qword [rsp + 0x40], r13
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], r13
jmp 0x7ff70b4ee39e
xor edx, edx
mov r8d, 0x100
lea rcx, [rsp + 0x58]
call fcn.7ff70b54e850
cmp rdi, r15
je 0x7ff70b4ee33e
lea r9, [r14 - 1]
mov eax, 0xff
cmp r9, rax
cmova r9, rax
mov edx, r13d
test r9, r9
je 0x7ff70b4ee33e
movzx r10d, byte [r12 - 8]
mov r8, r13
movzx eax, dl
add al, al
lea ecx, [rax + rdx]
add cl, r10b
xor cl, byte [rdi + r8]
mov byte [rsp + r8 + 0x58], cl
inc edx
mov r8d, edx
cmp r8, r9
jb 0x7ff70b4ee320
mov rax, qword [0x7ff70b692190]
mov rdi, qword [rax + 0x78]
mov ecx, 0xbf800000
call fcn.7ff70b500310
movaps xmm6, xmm0
mov ecx, 0x7f7fffff
call fcn.7ff70b500310
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm6
movaps xmm3, xmm0
movss xmm2, dword [rdi + 0x14]
lea rdx, [rsp + 0x238]
mov rcx, rdi
call fcn.7ff70b4f2490
movaps xmm0, xmm7
addss xmm0, dword [rsp + 0x23c]
addss xmm0, dword [rbp + 4]
movss dword [rbp + 4], xmm0
lea r13, [r12 + 0x30]
mov r15, qword [rbp + 0x30]
mov rdi, r13
mov r14, r15
mov rax, r15
cmp r13, r15
je 0x7ff70b4ee401
nop word [rax + rax]
movzx eax, byte [rdi]
mov byte [rsi - 4], al
mov eax, dword [rsi + 0x40]
mov dword [rsi], eax
lea rdx, [rsi + 0x4c]
lea rcx, [rsi + 0xc]
call fcn.7ff70b4d1f70
mov eax, dword [rsi + 0x44]
mov dword [rsi + 4], eax
movups xmm0, xmmword [rsi + 0x64]
movups xmmword [rsi + 0x24], xmm0
movzx eax, byte [rsi + 0x74]
mov byte [rsi + 0x34], al
add rdi, 0x40
lea rsi, [rsi + 0x40]
cmp rdi, r15
jne 0x7ff70b4ee3c0
mov r14, qword [rbp + 0x30]
mov rax, r14
mov rcx, qword [r14 - 0x30]
test rcx, rcx
je 0x7ff70b4ee44b
mov rax, qword [r14 - 0x20]
sub rax, rcx
cmp rax, 0x1000
jb 0x7ff70b4ee431
mov rdx, qword [rcx - 8]
sub rcx, rdx
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x7ff70b4ee504
mov rcx, rdx
call fcn.7ff70b4dd700
nop
xor edx, edx
mov qword [r14 - 0x30], rdx
mov qword [r14 - 0x28], rdx
mov qword [r14 - 0x20], rdx
mov rax, qword [rbp + 0x30]
jmp 0x7ff70b4ee44d
xor edx, edx
add rax, 0xffffffffffffffc0
mov qword [rbp + 0x30], rax
cmp r13, r15
je 0x7ff70b4ee49d
xor r13d, r13d
jmp 0x7ff70b4ee492
lea rax, [rsp + 0x228]
mov qword [rsp + 0x28], rax
movss dword [rsp + 0x20], xmm12
movaps xmm3, xmm11
movaps xmm2, xmm10
mov rdx, rbx
mov rcx, rbp
call fcn.7ff70b4ec870
add rbx, 0x40
add r12, 0x40
mov rax, qword [rbp + 0x30]
cmp rbx, rax
jne 0x7ff70b4ee1b0
xor edx, edx
mov rax, qword [rbp + 0x18]
movzx ecx, byte [rsp + 0x220]
mov byte [rax + 0x1cd], cl
mov eax, dword [rbp + 8]
test eax, eax
je 0x7ff70b4ee4c0
mov eax, dword [rbp + 8]
dec eax
mov dword [rbp + 8], eax
jmp 0x7ff70b4ee4c9
mov dword [rbp + 0xc], edx
mov dword [rbp + 0x10], edx
mov dword [rbp + 0x14], edx
lea r11, [rsp + 0x1d8]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
movaps xmm9, xmmword [r11 - 0x48]
movaps xmm10, xmmword [r11 - 0x58]
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.7ff70b5526b4
int3