Function at 0x180054e80
Capabilities:
Encode data using xor

Disassembly:
push rbp
lea rbp, [rsp - 0xc0]
sub rsp, 0x1c0
cmp byte [0x18006b11c], 0
je 0x1800559ca
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov rcx, qword [0x18006bf20]
add rcx, 0xfa
cmp rcx, rax
ja 0x1800559ca
mov qword [0x18006bf20], rax
xorps xmm0, xmm0
xor eax, eax
mov qword [rsp + 0x1b8], rbx
mov dword [rbp - 0x20], eax
movabs rdx, 0x2d80ee1c1f8a9c62
mov word [rbp - 0x1c], ax
movabs rbx, 0x4449a7031454fbe8
mov qword [rsp + 0x1b0], rsi
movabs rax, 0x71fc6055ad01de28
mov qword [rbp + 0xd8], rax
movabs rsi, 0xe2144399773093f1
mov qword [rsp + 0x1a8], rdi
movabs rax, 0x4b4d4b696cb1784e
mov qword [rbp + 0xe0], rax
xor edi, edi
mov qword [rsp + 0x1a0], r12
movabs rax, 0x16734532353884a9
mov qword [rbp + 0xe8], rax
mov ecx, edi
mov qword [rsp + 0x198], r13
movabs rax, 0x6145101086556f3b
mov qword [rsp + 0x50], rax
movabs r8, 0x70fb982e0d68a67b
movabs rax, 0x6f61bb655d0fbc85
mov qword [rsp + 0x190], r14
mov qword [rsp + 0x58], rax
lea r14, [0x180000000]
movabs rax, 0x751a901bc526dcce
mov qword [rsp + 0x188], r15
mov qword [rsp + 0x20], rax
movabs r9, 0x3b06cda04501b88a
movabs rax, 0x7d256cf77fb52274
movabs r10, 0x79d1d90ce6d2f624
mov qword [rsp + 0x28], rax
movabs r11, 0x455e557f6a867e51
movabs rax, 0xc455d297914a718e
movabs r15, 0xa6625998a147b5cb
mov qword [rsp + 0x30], rax
movabs r12, 0x15c28be6277e9f31
movabs rax, 0x48a073dfec962eb5
movabs r13, 0x5f53ad76ccd90c75
mov qword [rsp + 0x38], rax
movabs rax, 0x1bb86a174eaaa736
mov qword [rsp + 0x40], rax
movabs rax, 0x3917c1851246658c
mov qword [rsp + 0x48], rax
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rbp - 0x70], xmm0
movups xmmword [rbp - 0x60], xmm0
movups xmmword [rbp - 0x50], xmm0
movups xmmword [rbp - 0x40], xmm0
movups xmmword [rbp - 0x30], xmm0
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r14 + rcx*8 + 0x60870]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0xa1
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
ror rax, 0x9f
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, rdx
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, r8
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0x8e
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
xor rax, r9
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
xor rax, r10
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0xa2
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, r11
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
ror rax, 0x11
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0x4d
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0xc1
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, rbx
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
xor rax, rsi
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
ror rax, 0x23
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
xor rax, r15
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, r12
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
add rax, r13
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rbp + 0xd8]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
add rax, qword [rbp + 0xe0]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
add rax, qword [rbp + 0xe8]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0x2e
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rsp + 0x50]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rsp + 0x58]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
add rax, qword [rsp + 0x20]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
ror rax, 0x86
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
rol rax, 0x28
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rsp + 0x28]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
xor rax, qword [rsp + 0x30]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rsp + 0x38]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
bswap rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rsp + 0x40]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
not rax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
ror rax, 0xc5
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
sub rax, qword [rsp + 0x48]
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov byte [rsp + rcx + 0x60], al
inc rcx
cmp rcx, 0x86
jl 0x180055050
movups xmm0, xmmword [rsp + 0x60]
mov eax, dword [rbp - 0x20]
movups xmm1, xmmword [rsp + 0x70]
mov dword [rbp + 0x70], eax
movzx eax, word [rbp - 0x1c]
movaps xmmword [rbp - 0x10], xmm0
movups xmm0, xmmword [rbp - 0x80]
mov word [rbp + 0x74], ax
movaps xmmword [rbp], xmm1
movups xmm1, xmmword [rbp - 0x70]
movaps xmmword [rbp + 0x10], xmm0
movups xmm0, xmmword [rbp - 0x60]
movaps xmmword [rbp + 0x20], xmm1
movups xmm1, xmmword [rbp - 0x50]
movaps xmmword [rbp + 0x30], xmm0
movups xmm0, xmmword [rbp - 0x40]
movaps xmmword [rbp + 0x40], xmm1
movups xmm1, xmmword [rbp - 0x30]
movaps xmmword [rbp + 0x50], xmm0
movaps xmmword [rbp + 0x60], xmm1
call fcn.180005f50
lea rcx, [rbp - 0x10]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov r8, rbx
lea rcx, [rbp - 0x10]
mov edx, eax
call fcn.180006020
mov rcx, rax
call fcn.180007170
mov rsi, rax
test rax, rax
je 0x180055992
xor eax, eax
movabs rcx, 0x628aa6309765d13b
mov dword [rbp + 0xd0], eax
movabs rdx, 0xc8dd1433178772bc
mov byte [rbp + 0xd4], al
movabs rbx, 0x976a8097448d5f14
movabs rax, 0x6b378df656f9520c
movabs r8, 0x5cca4892071f62f
mov qword [rbp + 0xe0], rax
movabs r9, 0x1eb6f4c90c324cd8
movabs rax, 0x6ac45c435d17c01
movabs r10, 0x3760539bc22261f2
mov qword [rbp + 0xe8], rax
movabs r11, 0x50f5fe7451bca966
movabs rax, 0x7c4c3893b9cbe1a7
movabs r15, 0x6ca45ddcb00a1305
mov qword [rsp + 0x48], rax
movabs r12, 0xfc296b891271075e
movabs rax, 0x891d556296130b7e
movabs r13, 0x7cbbc08305442e22
mov qword [rsp + 0x40], rax
movabs rax, 0xfb84ea0c309f63b
mov qword [rsp + 0x38], rax
movabs rax, 0x2da479b31d43ac7b
mov qword [rsp + 0x30], rax
movabs rax, 0x240c3d95817469c5
mov qword [rsp + 0x28], rax
movabs rax, 0x7ae2d8d8fe310a4a
mov qword [rsp + 0x20], rax
nop word [rax + rax]
mov rax, qword [r14 + rdi*8 + 0x60848]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, rcx
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0xaf
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, rdx
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, r8
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0xad
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 8
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
not rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, r9
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0x7e
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, r10
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
sub rax, r11
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 0x8d
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, rbx
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0x43
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, r15
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 0x1b
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 0x5c
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, r12
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
not rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0xc7
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
not rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
sub rax, r13
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0x42
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
sub rax, qword [rbp + 0xe0]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
not rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, qword [rbp + 0xe8]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, qword [rsp + 0x48]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
not rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 0x61
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, qword [rsp + 0x40]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 0x66
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, qword [rsp + 0x38]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
xor rax, qword [rsp + 0x30]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
add rax, qword [rsp + 0x28]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0xeb
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
ror rax, 0xad
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
bswap rax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
rol rax, 0x6d
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
sub rax, qword [rsp + 0x20]
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xd8]
mov byte [rbp + rdi + 0xd0], al
inc rdi
cmp rdi, 5
jl 0x180055570
mov eax, dword [rbp + 0xd0]
mov dword [rbp + 0xd8], eax
movzx eax, byte [rbp + 0xd4]
mov byte [rbp + 0xdc], al
call fcn.180005f50
lea rcx, [rbp + 0xd8]
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov r8, rbx
lea rcx, [rbp + 0xd8]
mov edx, eax
call fcn.180006020
mov rdx, rax
mov rcx, rsi
call fcn.180055a70
mov rdi, rax
test rax, rax
je 0x180055992
call fcn.180005f50
lea rcx, str.UID:_PIPSI
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov r8, rbx
lea rcx, str.UID:_PIPSI
mov edx, eax
call fcn.180006020
mov rdx, rax
mov rcx, rdi
call fcn.180007320
mov r14, qword [rsp + 0x190]
mov r13, qword [rsp + 0x198]
mov r12, qword [rsp + 0x1a0]
mov rdi, qword [rsp + 0x1a8]
mov rsi, qword [rsp + 0x1b0]
mov rbx, qword [rsp + 0x1b8]
mov r15, qword [rsp + 0x188]
add rsp, 0x1c0
pop rbp
ret