Function at 0x180001060
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
push rbp
lea rbp, [rax - 0xe8]
sub rsp, 0x1e0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
mov rax, qword [0x180026008]
xor rax, rsp
mov qword [rbp + 0x90], rax
movsd xmm1, qword [0x180027b90]
xor eax, eax
movsd xmm6, qword [0x180023ec8]
xor ebx, ebx
movsd xmm2, qword [0x180027ba8]
mov edx, ebx
movsd xmm3, qword [0x180027b98]
movsd xmm9, qword [0x180023eb8]
divsd xmm1, xmm6
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
mov word [rsp + 0x38], 0x83a4
mov byte [rsp + 0x3a], al
movsd qword [0x180027b98], xmm9
mulsd xmm1, qword [0x180027bb0]
divsd xmm2, xmm1
divsd xmm3, xmm2
movaps xmm0, xmm2
addsd xmm0, xmm1
subsd xmm2, xmm3
subsd xmm0, xmm3
addsd xmm2, xmm9
subsd xmm3, xmm9
addsd xmm0, xmm9
movsd qword [0x180027bb0], xmm2
movsd qword [0x180027ba8], xmm3
movsd qword [0x180027b90], xmm0
movdqa xmm0, xmmword [0x180024010]
movdqu xmmword [rsp + 0x28], xmm0
nop dword [rax]
movsxd rcx, edx
lea eax, [rdx - 0x4f]
inc edx
xor byte [rsp + rcx + 0x28], al
cmp edx, 0x12
jb 0x180001150
lea r8, [rsp + 0x28]
mov byte [rsp + 0x3a], bl
mov edx, 0x20
lea rcx, [rsp + 0x60]
call fcn.18000f3d8
movsd xmm3, qword [0x180027b90]
xor eax, eax
divsd xmm3, qword [0x180023ec0]
mov r8d, ebx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x28], 0xdac1d7fa
mov dword [rsp + 0x2c], 0x8a84fad0
mov dword [rsp + 0x30], 0xd0d7de97
mov byte [rsp + 0x34], al
movsd xmm1, qword [0x180027ba8]
movsd xmm2, qword [0x180027b98]
movaps xmm4, xmm3
mulsd xmm4, qword [0x180027bb0]
divsd xmm1, xmm4
movaps xmm0, xmm4
divsd xmm2, xmm1
mulsd xmm0, xmm3
mulsd xmm4, xmm1
movsd qword [0x180027b90], xmm0
movaps xmm0, xmm2
subsd xmm2, qword [0x180023e88]
addsd xmm0, xmm1
movsd qword [0x180027bb0], xmm4
movsd qword [0x180027b98], xmm2
movsd qword [0x180027ba8], xmm0
nop dword [rax + rax]
movsxd rcx, r8d
lea eax, [r8 - 0x4f]
inc r8d
xor byte [rsp + rcx + 0x28], al
cmp r8d, 0xc
jb 0x180001220
lea r8, [rsp + 0x28]
mov byte [rsp + 0x34], bl
mov edx, 0x20
lea rcx, [rsp + 0x40]
call fcn.18000f3d8
movsd xmm1, qword [0x180027b90]
mov ecx, 0x65c8d3bd
divsd xmm1, qword [0x180023f00]
movsd xmm0, qword [0x180027bb0]
mulsd xmm0, xmm1
movsd qword [0x180027b90], xmm1
movsd xmm1, qword [0x180027ba8]
divsd xmm1, xmm0
movsd qword [0x180027bb0], xmm0
movsd xmm0, qword [0x180027b98]
divsd xmm0, xmm1
movsd qword [0x180027ba8], xmm1
movsd qword [0x180027b98], xmm0
call fcn.180001540
lea rcx, [rsp + 0x40]
call rax
mov rdi, rax
test rax, rax
jne 0x1800012be
mov rdi, rbx
jmp 0x1800012d5
mov ecx, 0xf4c2e521
call fcn.180001540
lea rdx, [rsp + 0x60]
mov rcx, rdi
call rax
mov rdi, rax
movsd xmm7, qword [0x180027b98]
movsd xmm2, qword [0x180027ba8]
movaps xmm8, xmm2
subsd xmm2, xmm7
addsd xmm8, qword [0x180027bb0]
addsd xmm2, xmm9
subsd xmm8, xmm7
subsd xmm7, xmm9
addsd xmm8, xmm9
test rdi, rdi
jne 0x180001340
movaps xmm0, xmm2
movaps xmm1, xmm7
mulsd xmm0, xmm8
addsd xmm7, xmm9
mulsd xmm1, xmm2
movsd qword [0x180027b90], xmm0
movsd xmm0, qword [0x180023fb8]
movsd qword [0x180027ba8], xmm7
jmp 0x1800014eb
divsd xmm8, xmm6
lea rcx, [rbp - 0x80]
xor edx, edx
mov r8d, 0x104
movaps xmm6, xmm9
mulsd xmm8, xmm2
divsd xmm7, xmm8
divsd xmm6, xmm7
call fcn.18000e4a0
mov r8d, 0x104
lea rdx, [rbp - 0x80]
xor ecx, ecx
movaps xmm0, xmm7
movsd qword [0x180027b98], xmm9
addsd xmm0, xmm8
subsd xmm7, xmm6
subsd xmm0, xmm6
addsd xmm7, xmm9
subsd xmm6, xmm9
addsd xmm0, xmm9
movsd qword [0x180027bb0], xmm7
movsd qword [0x180027ba8], xmm6
movsd qword [0x180027b90], xmm0
call rdi
movsd xmm0, qword [0x180027b90]
divsd xmm0, qword [0x180023ec0]
mov dword [rsp + 0x20], 0xd7dcc4
movsd xmm1, qword [0x180027bb0]
movsd xmm2, qword [0x180027ba8]
mulsd xmm1, xmm0
movsd qword [0x180027b90], xmm0
movsd xmm0, qword [0x180027b98]
divsd xmm2, xmm1
movsd qword [0x180027bb0], xmm1
divsd xmm0, xmm2
movsd qword [0x180027ba8], xmm2
movsd qword [0x180027b98], xmm0
nop dword [rax]
nop word [rax + rax]
movsxd rcx, ebx
lea eax, [rbx - 0x4f]
inc ebx
xor byte [rsp + rcx + 0x20], al
cmp ebx, 3
jb 0x180001420
lea rdx, [rsp + 0x20]
mov byte [rsp + 0x23], 0
lea rcx, [rbp - 0x80]
call qword [sym.imp.SHLWAPI.dll_StrStrIA]
test rax, rax
je 0x1800014fb
movsd xmm2, qword [0x180027bb0]
movsd xmm0, qword [0x180027b90]
movsd xmm1, qword [0x180027ba8]
mulsd xmm0, xmm2
mulsd xmm2, xmm1
movsd qword [0x180027b90], xmm0
movsd xmm0, qword [0x180027b98]
addsd xmm1, xmm0
movsd qword [0x180027bb0], xmm2
addsd xmm0, qword [0x180023fd0]
movsd qword [0x180027ba8], xmm1
movsd qword [0x180027b98], xmm0
call fcn.180003c60
movsd xmm0, qword [0x180027b90]
divsd xmm0, qword [0x180023f00]
movsd xmm2, qword [0x180027ba8]
movsd xmm1, qword [0x180027bb0]
mulsd xmm1, xmm0
movsd qword [0x180027b90], xmm0
movsd xmm0, qword [0x180027b98]
divsd xmm2, xmm1
movsd qword [0x180027ba8], xmm2
divsd xmm0, xmm2
movsd qword [0x180027b98], xmm0
movsd qword [0x180027bb0], xmm1
mov rcx, qword [rbp + 0x90]
xor rcx, rsp
call fcn.18000d000
lea r11, [rsp + 0x1e0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop rbp
ret