Function at 0x7ffd21ba6b90
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x188]
sub rsp, 0x250
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
movaps xmmword [rax - 0x78], xmm9
movaps xmmword [rax - 0x88], xmm10
movaps xmmword [rax - 0x98], xmm11
movaps xmmword [rax - 0xa8], xmm12
mov rax, qword [0x7ffd21c77690]
xor rax, rsp
mov qword [rbp + 0xd8], rax
mov rbx, rdx
mov qword [rsp + 0x68], rcx
mov qword [rbp - 0x60], rcx
mov qword [rsp + 0x58], rdx
xor r13d, r13d
mov dword [rsp + 0x40], r13d
movss xmm9, dword [0x7ffd21c607b0]
xorps xmm12, xmm12
xorps xmm10, xmm10
xorps xmm11, xmm11
mov rax, qword [rcx]
mov r14, qword [rax]
mov qword [rsp + 0x40], r14
mov rax, qword [rax + 8]
mov qword [rsp + 0x60], rax
lea rsi, [r13 - 1]
cmp r14, rax
je 0x7ffd21ba71e3
nop word [rax + rax]
xorps xmm0, xmm0
movups xmmword [rbp - 8], xmm0
mov rax, qword [r14 + 8]
test rax, rax
je 0x7ffd21ba6c54
lock inc dword [rax + 8]
mov r15, qword [r14]
mov rdi, r15
mov qword [rbp - 8], r15
mov r14, qword [r14 + 8]
mov qword [rbp], r14
test r15, r15
jne 0x7ffd21ba6c9b
test r14, r14
je 0x7ffd21ba71ca
mov eax, esi
lock xadd dword [r14 + 8], eax
cmp eax, 1
jne 0x7ffd21ba71ca
mov rcx, qword [rbp]
mov rax, qword [rcx]
call qword [rax]
mov eax, esi
lock xadd dword [r14 + 0xc], eax
jmp 0x7ffd21ba71bb
lea rdx, [rbp - 0x58]
mov rcx, qword [0x7ffd21e7e5b0]
call fcn.7ffd21ba09b0
mov r12, qword [rax]
mov r14, qword [rbp - 0x50]
test r14, r14
je 0x7ffd21ba6ce6
mov eax, esi
lock xadd dword [r14 + 8], eax
cmp eax, 1
jne 0x7ffd21ba6ce2
mov rax, qword [r14]
mov rcx, r14
call qword [rax]
mov eax, esi
lock xadd dword [r14 + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba6ce2
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
mov rdi, qword [rbp - 8]
cmp r15, r12
je 0x7ffd21ba7193
xorps xmm0, xmm0
movups xmmword [rbp + 8], xmm0
test rdi, rdi
je 0x7ffd21ba6d17
call fcn.7ffd21b949e0
mov rdx, rax
mov rcx, rdi
call fcn.7ffd21b935c0
test al, al
je 0x7ffd21ba6d17
mov rcx, rdi
xor r12d, r12d
jmp 0x7ffd21ba6d1d
xor r12d, r12d
mov ecx, r12d
lea rdx, [rbp + 8]
call fcn.7ffd21b94b60
nop
cmp qword [rbp + 8], 0
je 0x7ffd21ba715b
cmp byte [0x7ffd21e48925], 0
je 0x7ffd21ba6db7
mov dword [rsp + 0x20], 0x6d75481a
mov dword [rsp + 0x24], 0x696f6e61
mov word [rsp + 0x28], 0x64
xorps xmm0, xmm0
movups xmmword [rbp + 0x38], xmm0
mov qword [rbp + 0x48], r12
mov qword [rbp + 0x50], r12
lea rax, [rsp + 0x21]
mov r8, rsi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x7ffd21ba6d70
lea rdx, [rsp + 0x21]
lea rcx, [rbp + 0x38]
call fcn.7ffd21b902c0
nop
lea r8, [rbp + 0x38]
lea rdx, [rbp - 0x80]
mov rcx, qword [rbp + 8]
call fcn.7ffd21b93d30
or r13d, 2
lea rcx, [rbp + 0x38]
call fcn.7ffd21b8c150
or r13d, 1
cmp qword [rbp - 0x80], 0
je 0x7ffd21ba6db7
mov r15b, 1
jmp 0x7ffd21ba6dba
xor r15b, r15b
test r13b, 1
je 0x7ffd21ba6dfc
and r13d, 0xfffffffe
mov r14, qword [rbp - 0x78]
test r14, r14
je 0x7ffd21ba6dfc
mov eax, esi
lock xadd dword [r14 + 8], eax
cmp eax, 1
jne 0x7ffd21ba6df8
mov rax, qword [r14]
mov rcx, r14
call qword [rax]
mov eax, esi
lock xadd dword [r14 + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba6df8
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
mov rdi, qword [rbp - 8]
test r15b, r15b
je 0x7ffd21ba6eca
mov dword [rsp + 0x30], 0x6d754844
mov dword [rsp + 0x34], 0x696f6e61
mov word [rsp + 0x38], 0x64
xorps xmm0, xmm0
movups xmmword [rbp + 0x58], xmm0
mov qword [rbp + 0x68], r12
mov qword [rbp + 0x70], r12
lea rax, [rsp + 0x31]
mov r8, rsi
inc r8
cmp byte [rax + r8], 0
jne 0x7ffd21ba6e33
lea rdx, [rsp + 0x31]
lea rcx, [rbp + 0x58]
call fcn.7ffd21b902c0
nop
lea r8, [rbp + 0x58]
lea rdx, [rbp - 0x70]
mov rcx, qword [rbp + 8]
call fcn.7ffd21b93d30
or r13d, 4
lea rcx, [rbp + 0x58]
call fcn.7ffd21b8c150
nop
mov rcx, qword [rbp - 0x70]
call fcn.7ffd21b99990
mov r15, rax
mov r14, qword [rbp - 0x68]
test r14, r14
je 0x7ffd21ba6eaf
mov edx, esi
lock xadd dword [r14 + 8], edx
cmp edx, 1
jne 0x7ffd21ba6eab
mov rdx, qword [r14]
mov rcx, r14
call qword [rdx]
mov eax, esi
lock xadd dword [r14 + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba6eab
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
mov rdi, qword [rbp - 8]
test r15, r15
je 0x7ffd21ba715b
mov rcx, r15
call fcn.7ffd21b952e0
comiss xmm12, xmm0
jae 0x7ffd21ba715b
cmp byte [0x7ffd21e48926], 0
je 0x7ffd21ba6f23
mov rcx, qword [0x7ffd21e7e590]
call fcn.7ffd21b94a70
test rax, rax
je 0x7ffd21ba6f23
mov r14, qword [0x7ffd21e7e590]
test rdi, rdi
je 0x7ffd21ba6f04
call fcn.7ffd21b949e0
mov rdx, rax
mov rcx, rdi
call fcn.7ffd21b935c0
test al, al
jne 0x7ffd21ba6f07
mov rdi, r12
mov rcx, rdi
call fcn.7ffd21b94a70
mov rdi, rax
mov rcx, r14
call fcn.7ffd21b94a70
cmp rdi, rax
je 0x7ffd21ba715b
mov rdx, qword [rbp + 8]
lea rcx, [rbp + 0x18]
call fcn.7ffd21ba69c0
nop
mov r14, qword [rbp + 0x28]
test r14, r14
je 0x7ffd21ba70ec
mov rdi, qword [rbp + 0x18]
test rdi, rdi
je 0x7ffd21ba70ec
call fcn.7ffd21b94f20
mov rdx, rax
mov rcx, rdi
call fcn.7ffd21b935c0
test al, al
jne 0x7ffd21ba6f62
mov rdi, r12
lea rdx, [rbp + 0xa8]
mov rcx, rdi
call fcn.7ffd21b951d0
test r14, r14
je 0x7ffd21ba6f8a
call fcn.7ffd21b94f20
mov rdx, rax
mov rcx, r14
call fcn.7ffd21b935c0
test al, al
jne 0x7ffd21ba6f8d
mov r14, r12
lea rdx, [rbp + 0x78]
mov rcx, r14
call fcn.7ffd21b951d0
movsd xmm0, qword [rbp + 0x9c]
movsd qword [rsp + 0x70], xmm0
mov eax, dword [rbp + 0xa4]
mov dword [rsp + 0x78], eax
lea r8, [rsp + 0x70]
lea rdx, [rsp + 0x48]
call fcn.7ffd21bcb520
cmp byte [rsp + 0x50], 0
je 0x7ffd21ba70ec
cmp dword [0x7ffd21e48920], 0
jne 0x7ffd21ba704e
xorps xmm0, xmm0
cvtsi2ss xmm0, ebx
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [rsp + 0x5c]
movss xmm6, dword [rsp + 0x48]
movaps xmm2, xmm6
subss xmm2, xmm0
movss xmm7, dword [rsp + 0x4c]
movaps xmm3, xmm7
subss xmm3, xmm1
mulss xmm3, xmm3
mulss xmm2, xmm2
addss xmm3, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm3
ja 0x7ffd21ba701b
xorps xmm0, xmm0
sqrtss xmm0, xmm3
jmp 0x7ffd21ba7023
movaps xmm0, xmm3
call sub.ucrtbase.dll_sqrtf
movd xmm1, dword [0x7ffd21c77758]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jb 0x7ffd21ba70ec
comiss xmm9, xmm0
jbe 0x7ffd21ba70ec
movaps xmm10, xmm6
movaps xmm11, xmm7
jmp 0x7ffd21ba70e8
movss xmm8, dword [rbp + 0x9c]
movss xmm6, dword [rbp + 0xa0]
movss xmm7, dword [rbp + 0xa4]
lea rdx, [rbp - 0x38]
mov rcx, qword [0x7ffd21e7e580]
call fcn.7ffd21b940b0
movsd xmm1, qword [rax + 0x24]
subss xmm7, dword [rax + 0x2c]
movaps xmm0, xmm1
shufps xmm0, xmm0, 0x55
subss xmm6, xmm0
subss xmm8, xmm1
mulss xmm8, xmm8
mulss xmm6, xmm6
addss xmm8, xmm6
mulss xmm7, xmm7
addss xmm8, xmm7
xorps xmm0, xmm0
ucomiss xmm0, xmm8
ja 0x7ffd21ba70bb
xorps xmm0, xmm0
sqrtss xmm0, xmm8
jmp 0x7ffd21ba70c4
movaps xmm0, xmm8
call sub.ucrtbase.dll_sqrtf
movd xmm1, dword [0x7ffd21c77758]
cvtdq2ps xmm1, xmm1
comiss xmm1, xmm0
jb 0x7ffd21ba70ec
comiss xmm9, xmm0
jbe 0x7ffd21ba70ec
movss xmm10, dword [rsp + 0x48]
movss xmm11, dword [rsp + 0x4c]
movaps xmm9, xmm0
mov rcx, qword [rbp + 0x30]
test rcx, rcx
je 0x7ffd21ba7123
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x7ffd21ba7123
mov rdi, qword [rbp + 0x30]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba7123
mov rcx, qword [rbp + 0x30]
mov rax, qword [rcx]
call qword [rax + 8]
mov rcx, qword [rbp + 0x20]
test rcx, rcx
je 0x7ffd21ba715b
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x7ffd21ba715b
mov rdi, qword [rbp + 0x20]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba715b
mov rcx, qword [rbp + 0x20]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp + 0x10]
test rcx, rcx
je 0x7ffd21ba7193
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x7ffd21ba7193
mov rdi, qword [rbp + 0x10]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba7193
mov rcx, qword [rbp + 0x10]
mov rax, qword [rcx]
call qword [rax + 8]
nop
mov rcx, qword [rbp]
test rcx, rcx
je 0x7ffd21ba71ca
mov eax, esi
lock xadd dword [rcx + 8], eax
cmp eax, 1
jne 0x7ffd21ba71ca
mov rdi, qword [rbp]
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax]
mov eax, esi
lock xadd dword [rdi + 0xc], eax
cmp eax, 1
jne 0x7ffd21ba71ca
mov rcx, qword [rbp]
mov rax, qword [rcx]
call qword [rax + 8]
mov r14, qword [rsp + 0x40]
add r14, 0x10
mov qword [rsp + 0x40], r14
cmp r14, qword [rsp + 0x60]
jne 0x7ffd21ba6c40
mov rbx, qword [rsp + 0x68]
mov rbx, qword [rbx + 8]
test rbx, rbx
je 0x7ffd21ba7218
mov eax, esi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x7ffd21ba7218
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], esi
cmp esi, 1
jne 0x7ffd21ba7218
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
movaps xmm0, xmm10
unpcklps xmm0, xmm11
movq rax, xmm0
mov rcx, qword [rbp + 0xd8]
xor rcx, rsp
call fcn.7ffd21c3f7f0
lea r11, [rsp + 0x250]
mov rbx, qword [r11 + 0x50]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret