Function at 0x140049580
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x258]
sub rsp, 0x330
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
mov rax, qword [0x140061010]
xor rax, rsp
mov qword [rbp + 0x190], rax
xor esi, esi
mov r12, qword [0x1400610a0]
mov r15, qword [0x140061098]
mov rcx, r12
sub rcx, r15
movabs rax, 0xfe03f80fe03f81
imul rcx
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x140049d11
cmp r15, r12
je 0x140049d11
lea ebx, [rsi + 4]
lea edi, [rsi + 0x1f]
mov r13d, dword [0x140061018]
xorps xmm12, xmm12
movss xmm14, dword [0x140058fcc]
movss xmm13, dword [0x140058fb4]
nop dword [rax]
mov rax, r15
lea rcx, [rbp + 0x80]
mov edx, 2
nop
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rcx + 0x10], xmm1
movups xmm0, xmmword [rax + 0x20]
movups xmmword [rcx + 0x20], xmm0
movups xmm1, xmmword [rax + 0x30]
movups xmmword [rcx + 0x30], xmm1
movups xmm0, xmmword [rax + 0x40]
movups xmmword [rcx + 0x40], xmm0
movups xmm1, xmmword [rax + 0x50]
movups xmmword [rcx + 0x50], xmm1
movups xmm0, xmmword [rax + 0x60]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmm1, xmmword [rax + 0x70]
movups xmmword [rcx - 0x10], xmm1
lea rax, [rax + 0x80]
sub rdx, 1
jne 0x140049660
movzx eax, word [rax]
mov word [rcx], ax
cmp byte [rbp + 0x14e], dl
je 0x140049d01
cmp byte [rbp + 0x150], dl
je 0x140049d01
movss xmm0, dword [0x14006115a]
comiss xmm0, xmm12
jbe 0x140049d01
movss xmm8, dword [rbp + 0x15a]
movaps xmm1, xmm8
subss xmm1, dword [0x14006118a]
movss xmm6, dword [rbp + 0x156]
movaps xmm0, xmm6
subss xmm0, dword [0x140061186]
movss xmm7, dword [rbp + 0x152]
movaps xmm2, xmm7
subss xmm2, dword [0x140061182]
mulss xmm2, xmm2
mulss xmm0, xmm0
addss xmm2, xmm0
mulss xmm1, xmm1
addss xmm2, xmm1
xorps xmm0, xmm0
ucomiss xmm0, xmm2
ja 0x140049744
xorps xmm11, xmm11
sqrtss xmm11, xmm2
jmp 0x140049750
movaps xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm11, xmm0
mov qword [rsp + 0x60], 0
movss xmm9, dword [0x1400618a4]
movss xmm10, dword [0x1400618a0]
movaps xmm1, xmm6
addss xmm1, xmm14
movaps xmm0, xmm7
unpcklps xmm0, xmm1
movsd qword [rbp - 0x40], xmm0
movss dword [rbp - 0x38], xmm8
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x60]
lea rdx, [rbp - 0x40]
call fcn.140043b20
test al, al
je 0x140049d01
subss xmm6, xmm13
movaps xmm0, xmm7
unpcklps xmm0, xmm6
movsd qword [rbp - 0x30], xmm0
movss dword [rbp - 0x28], xmm8
movaps xmm0, xmm9
unpcklps xmm0, xmm10
movq r9, xmm0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x30]
call fcn.140043b20
test al, al
je 0x140049d01
movzx eax, word [0x140058d4c]
mov word [rsp + 0x44], ax
cmp byte [0x140058d4d], 0
je 0x1400497ff
mov byte [rsp + 0x44], 0x5d
xor byte [rsp + 0x45], 0x33
mov r8, qword [rbp + 0x88]
mov rdx, qword [rbp + 0xf8]
lea rcx, [rbp + 0x40]
call fcn.140046e70
mov r14, rax
movsd xmm0, qword [str.iQGY]
movsd qword [rsp + 0x48], xmm0
cmp qword [rax + 0x18], 0x10
jb 0x140049831
mov r14, qword [rax]
movzx eax, byte [0x140058bb0]
mov byte [rsp + 0x48], 0x5b
xor byte [rsp + 0x49], 0x33
xor byte [rsp + 0x4a], 0x34
xor byte [rsp + 0x4b], 0x35
xor byte [rsp + 0x4c], 0x36
xor byte [rsp + 0x4d], 0x37
xor byte [rsp + 0x4e], 0x38
xor byte [rsp + 0x4f], 0x39
xor al, 0x3a
mov byte [rsp + 0x50], al
mov eax, dword [0x140058dc4]
mov dword [rsp + 0x58], eax
cmp byte [str.5dZG_W_K9aXQ_RJ], 0
je 0x140049952
cmp r13d, 2
jl 0x14004990b
movdqa xmm3, xmmword [0x140059190]
movdqa xmm2, xmm3
punpckldq xmm2, xmm3
pmuldq xmm2, xmmword [0x140059280]
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
pmuldq xmm0, xmmword [0x140059280]
shufps xmm2, xmm0, 0xdd
movd xmm0, ebx
psrad xmm2, xmm0
movd xmm0, edi
movdqa xmm1, xmm2
psrld xmm1, xmm0
paddd xmm1, xmm2
pmulld xmm1, xmmword [0x1400591d0]
psubd xmm3, xmm1
pshuflw xmm0, xmm3, 0xd8
pshufhw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
andps xmm2, xmmword [0x140059210]
packuswb xmm2, xmm2
paddb xmm2, xmmword [str.2222222222222222]
movd xmm0, eax
xorps xmm2, xmm0
movd dword [rsp + 0x58], xmm2
jmp 0x140049952
lea r9, [rsp + 0x58]
mov r8d, esi
nop dword [rax]
nop word [rax + rax]
mov eax, 0x51eb851f
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 1
sub al, dl
movsx eax, al
imul ecx, eax, 0x32
add cl, r8b
xor byte [r9], cl
inc r8d
lea r9, [r9 + 1]
cmp r8d, 4
jl 0x140049920
cvttss2si edx, xmm11
lea rcx, [rsp + 0x70]
call fcn.14004eb30
nop
movzx eax, word [0x140058d40]
mov word [rsp + 0x40], ax
cmp byte [0x140058d41], 0
je 0x140049981
mov byte [rsp + 0x40], 0x5b
xor byte [rsp + 0x41], 0x33
lea rax, [rsp + 0x40]
mov rbx, 0xffffffffffffffff
nop dword [rax]
inc rbx
cmp byte [rax + rbx], 0
jne 0x140049990
mov r8, qword [rbp - 0x80]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
sub rax, r8
cmp rbx, rax
ja 0x140049a42
lea rax, [r8 + rbx]
mov qword [rbp - 0x80], rax
lea rdi, [rsp + 0x70]
cmp rcx, 0x10
cmovae rdi, qword [rsp + 0x70]
lea rax, [rsp + 0x40]
add rax, rbx
cmp rax, rdi
jbe 0x1400499f9
lea rax, [rdi + r8]
lea rcx, [rsp + 0x40]
cmp rcx, rax
ja 0x1400499f9
lea rax, [rsp + 0x40]
cmp rdi, rax
jbe 0x1400499fc
lea rax, [rsp + 0x40]
mov rsi, rdi
sub rsi, rax
jmp 0x1400499fc
mov rsi, rbx
inc r8
lea rcx, [rdi + rbx]
mov rdx, rdi
call sub.VCRUNTIME140.dll_memmove
mov r8, rsi
lea rdx, [rsp + 0x40]
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov r8, rbx
sub r8, rsi
lea rax, [rsi + rbx]
lea rdx, [rsp + 0x40]
add rdx, rax
lea rcx, [rdi + rsi]
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rsp + 0x70]
xor esi, esi
lea edi, [rsi + 0x1f]
jmp 0x140049a5e
mov qword [rsp + 0x28], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x20], rax
mov rdx, rbx
lea rcx, [rsp + 0x70]
call fcn.14004ff20
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], rsi
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0x58]
lea rdx, [rbp - 0x70]
lea rcx, [rbp + 0x20]
call fcn.14004ed10
nop
lea r8, [rsp + 0x48]
mov rdx, rax
lea rcx, [rbp]
call fcn.14004ed10
nop
mov r8, r14
mov rdx, rax
lea rcx, [rbp - 0x20]
call fcn.14004ed10
nop
lea r8, [rsp + 0x44]
mov rdx, rax
lea rcx, [rbp + 0x60]
call fcn.14004ed10
mov r9, rax
mov rcx, qword [0x140061888]
mov qword [rbp - 0x50], 0x3f800000
mov dword [rbp - 0x48], 0
movss xmm0, dword [rcx + 0x37e0]
movss dword [rbp - 0x44], xmm0
lea rcx, [rbp - 0x50]
call fcn.1400035e0
movss xmm0, dword [rsp + 0x60]
movss dword [rsp + 0x68], xmm0
movss xmm1, dword [rsp + 0x64]
movss dword [rsp + 0x6c], xmm1
movss xmm0, dword [rbp + 0x12e]
movss dword [rsp + 0x30], xmm0
movss xmm1, dword [rbp + 0x12a]
movss dword [rsp + 0x28], xmm1
movss dword [rsp + 0x20], xmm11
mov edx, eax
lea rcx, [rsp + 0x68]
call fcn.140044010
nop
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x140049b83
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049b7e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049d71
call fcn.14005032c
mov qword [rbp - 0x10], rsi
mov qword [rbp - 8], 0xf
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x140049bce
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049bc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049d78
call fcn.14005032c
mov qword [rbp + 0x10], rsi
mov qword [rbp + 0x18], 0xf
mov byte [rbp], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x140049c19
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049c14
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049d7f
call fcn.14005032c
mov qword [rbp + 0x30], rsi
mov qword [rbp + 0x38], 0xf
mov byte [rbp + 0x20], 0
mov rdx, qword [rbp - 0x58]
cmp rdx, 0x10
jb 0x140049c64
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049c5f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049d86
call fcn.14005032c
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], 0xf
mov byte [rbp - 0x70], 0
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x140049cb0
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049cab
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049d8d
call fcn.14005032c
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], 0xf
mov byte [rsp + 0x70], 0
mov rdx, qword [rbp + 0x58]
cmp rdx, 0x10
jb 0x140049cfc
inc rdx
mov rcx, qword [rbp + 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049cf7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140049d94
call fcn.14005032c
mov ebx, 4
add r15, 0x102
cmp r15, r12
jne 0x140049650
mov rcx, qword [rbp + 0x190]
xor rcx, rsp
call fcn.1400500c0
lea r11, [rsp + 0x330]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
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]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3