Function at 0x10087b20
Capabilities:
Encode data using xor

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a5bf0
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x17c
mov eax, dword [0x100bc040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
push 0xb0
lea ecx, [ebp - 0x148]
call fcn.10025130
mov dword [ebp - 0x170], 0xf19f829e
xor ecx, ecx
mov dword [ebp - 0x16c], 0xceb8b191
mov dword [ebp - 0x168], 0x848d8d
mov byte [ebp - 0x164], 1
nop dword [eax]
mov al, cl
sub al, 0x27
xor byte [ebp + ecx - 0x170], al
inc ecx
cmp ecx, 0xb
jb 0x10087ba0
push 1
push 0x40
push 8
lea eax, [ebp - 0x170]
mov byte [ebp - 0x164], 0
push eax
lea ecx, [ebp - 0x148]
call fcn.10035880
lea ecx, [ebp - 0x148]
mov dword [ebp - 4], 0
call fcn.100357a0
test al, al
jne 0x10087d89
movaps xmm0, xmmword [0x100b2e40]
mov ecx, 0x10
movaps xmm2, xmmword [0x100b2b40]
movaps xmm1, xmmword [0x100b2e50]
movd eax, xmm0
movups xmmword [ebp - 0x18c], xmm0
mov dword [ebp - 0x17c], 0x8d9f8b81
mov dword [ebp - 0x178], 0xd0d5879e
mov word [ebp - 0x174], 0x100
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
movd xmm0, dword [ebp - 0x188]
andps xmm1, xmm2
punpcklbw xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x18c], xmm1
movaps xmm1, xmmword [0x100b2e60]
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
movd xmm0, dword [ebp - 0x184]
andps xmm1, xmm2
punpcklbw xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x188], xmm1
movaps xmm1, xmmword [0x100b2e70]
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
movd xmm0, dword [ebp - 0x180]
andps xmm1, xmm2
punpcklbw xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x184], xmm1
movaps xmm1, xmmword [0x100b2e80]
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm2
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x180], xmm1
nop dword [eax]
mov al, cl
sub al, 0x27
xor byte [ebp + ecx - 0x18c], al
inc ecx
cmp ecx, 0x18
jb 0x10087cf0
lea eax, [ebp - 0x18c]
mov byte [ebp - 0x173], 0
push eax
push dword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
call fcn.10037d40
add esp, 8
mov dword [ebp - 0x158], 0xf19f829e
mov edx, eax
mov dword [ebp - 0x154], 0xceb8b191
mov dword [ebp - 0x150], 0x848d8d
xor eax, eax
mov byte [ebp - 0x14c], 1
nop word [eax + eax]
lea ecx, [eax - 0x27]
xor byte [ebp + eax - 0x158], cl
inc eax
cmp eax, 0xb
jb 0x10087d50
lea eax, [ebp - 0x158]
mov byte [ebp - 0x14c], 0
push eax
push edx
call fcn.10037d40
add esp, 8
mov ecx, eax
push 0x10038090
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
jmp 0x10087f1a
call dword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
push 0
push 0x989680
push edx
push eax
call fcn.100a17e0
mov dword [ebp - 0x70], eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x94]
mov dword [ebp - 0x6c], edx
push eax
call dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__localtime64_s]
movaps xmm0, xmmword [0x100b2e30]
add esp, 8
movaps xmm2, xmmword [0x100b2b40]
mov ecx, 0x10
movaps xmm1, xmmword [0x100b2e50]
movd eax, xmm0
movups xmmword [ebp - 0x160], xmm0
mov dword [ebp - 0x150], 0xccd5c7c9
mov word [ebp - 0x14c], 0x100
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
movd xmm0, dword [ebp - 0x15c]
andps xmm1, xmm2
punpcklbw xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x160], xmm1
movaps xmm1, xmmword [0x100b2e60]
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
movd xmm0, dword [ebp - 0x158]
andps xmm1, xmm2
punpcklbw xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x15c], xmm1
movaps xmm1, xmmword [0x100b2e70]
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
movd xmm0, dword [ebp - 0x154]
andps xmm1, xmm2
punpcklbw xmm0, xmm0
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x158], xmm1
movaps xmm1, xmmword [0x100b2e80]
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
xorps xmm1, xmm0
andps xmm1, xmm2
packuswb xmm1, xmm1
packuswb xmm1, xmm1
movd dword [ebp - 0x154], xmm1
nop dword [eax]
mov al, cl
sub al, 0x27
xor byte [ebp + ecx - 0x160], al
inc ecx
cmp ecx, 0x14
jb 0x10087eb0
lea eax, [ebp - 0x94]
mov byte [ebp - 0x14b], 0
push eax
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x68]
push 0x50
push eax
call dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll_strftime]
add esp, 0x10
lea eax, [ebp - 0x68]
push esi
push eax
lea eax, [ebp - 0x148]
push eax
call fcn.10037d40
add esp, 8
push eax
call fcn.100381e0
add esp, 8
mov ecx, eax
push 0x10038090
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char_______cdecl___class_std::basic_ostream_char__struct_std::char_traits_char_____]
lea ecx, [ebp - 0x148]
call fcn.10035760
lea ecx, [ebp - 0x148]
call fcn.10027360
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.100a046e
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret