Function at 0x1000bb10
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1005856b
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
mov eax, dword [0x1006f014]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call fcn.10053370
mov edi, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
call edi
push eax
call fcn.10053840
push 0x1000b3f0
push 0x100713ec
call fcn.10053080
call fcn.100533d0
mov ebx, dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
push 4
push 0x811820
call ebx
test eax, eax
jne 0x1000bba3
mov dword [0x100713ec], 0x811820
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b3f0
push 0x100713ec
call fcn.10052bf0
call fcn.100533d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b420
push 0x100713e8
call fcn.10053080
call fcn.100533d0
push 4
push 0x7dc450
call ebx
test eax, eax
jne 0x1000bbfc
mov dword [0x100713e8], 0x7dc450
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b420
push 0x100713e8
call fcn.10052bf0
call fcn.100533d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b450
push 0x100713e4
call fcn.10053080
call fcn.100533d0
push 4
push 0x7a4cf0
call ebx
test eax, eax
jne 0x1000bc55
mov dword [0x100713e4], 0x7a4cf0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b450
push 0x100713e4
call fcn.10052bf0
call fcn.100533d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b480
push 0x100713e0
call fcn.10053080
call fcn.100533d0
push 4
push 0x7ac800
call ebx
test eax, eax
jne 0x1000bcae
mov dword [0x100713e0], 0x7ac800
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b480
push 0x100713e0
call fcn.10052bf0
call fcn.100533d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b4b0
push 0x100713dc
call fcn.10053080
call fcn.100533d0
push 4
push 0xbad2f0
call ebx
test eax, eax
jne 0x1000bd07
mov dword [0x100713dc], 0xbad2f0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b4b0
push 0x100713dc
call fcn.10052bf0
call fcn.100533d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b4e0
push 0x100713d8
call fcn.10053080
call fcn.100533d0
push 4
push 0x80c9d0
call ebx
test eax, eax
jne 0x1000bd60
mov dword [0x100713d8], 0x80c9d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000b4e0
push 0x100713d8
call fcn.10052bf0
call fcn.100533d0
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000ba70
push 0x100713cc
call fcn.10053080
call fcn.100533d0
push 4
push 0x80b240
call ebx
test eax, eax
jne 0x1000bdb9
mov dword [0x100713cc], 0x80b240
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000ba70
push 0x100713cc
call fcn.10052bf0
call fcn.100533d0
push 0x98
lea eax, [ebp - 0xc8]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 4
lea ecx, [ebp - 0xc8]
call fcn.1000d7f0
mov dword [ebp - 4], 0
xor ecx, ecx
movaps xmm0, xmmword [0x10067230]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xd0], 0x6c676b6e
mov word [ebp - 0xcc], 0x76
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp - 0xe0]
xor byte [ebp + ecx - 0xdf], al
inc ecx
cmp ecx, 0x14
jb 0x1000be10
lea edx, [ebp - 0xdf]
mov byte [ebp - 0xcb], 0
lea ecx, [ebp - 0xc8]
call fcn.1000e190
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xc8]
call fcn.1000d7d0
cmp dword [ebp - 0x18], 0x10
lea esi, [ebp - 0x2c]
push 0x1000ba00
cmovae esi, dword [ebp - 0x2c]
lea edx, [ebp - 0x2c]
cmovae edx, dword [ebp - 0x2c]
push 0xfffffffffffffffc
push esi
push edx
call dword [sym.imp.USER32.dll_FindWindowA]
push eax
call dword [sym.imp.USER32.dll_SetWindowLongA]
mov dword [0x100713d4], eax
lea eax, [ebp - 0x14]
push 4
push eax
mov dword [ebp - 0x14], 0xa0e64e
call ebx
test eax, eax
jne 0x1000beb7
push 4
push 0x1000baf0
call ebx
test eax, eax
jne 0x1000beb7
call fcn.10053370
call edi
push eax
call fcn.10053840
push 0x1000baf0
lea eax, [ebp - 0x14]
push eax
call fcn.10052bf0
call fcn.100533d0
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x1000bec9
inc eax
push eax
push dword [ebp - 0x2c]
call fcn.10005380
mov eax, dword [ebp - 0xc8]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
mov eax, dword [eax + 4]
mov dword [ebp + eax - 0xc8], vtable.std::basic_ostringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [ebp + ecx - 0xcc], eax
lea ecx, [ebp - 0xc4]
mov dword [ebp - 0xc4], vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
call fcn.1000df80
lea ecx, [ebp - 0xc4]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0xc0]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [ebp - 0x78]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10054720
mov esp, ebp
pop ebp
ret