Function at 0x1000b2c0
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10091481
mov eax, dword fs:[0]
push eax
sub esp, 0xd4
mov eax, dword [0x100bb084]
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.10058b20
mov edi, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
call edi
push eax
call fcn.10058ff0
push 0x1000abc0
push 0x100bfa8c
call fcn.10058830
call fcn.10058b80
mov ebx, dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
push 4
push 0x811820
call ebx
test eax, eax
jne 0x1000b353
mov dword [0x100bfa8c], 0x811820
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000abc0
push 0x100bfa8c
call fcn.100583a0
call fcn.10058b80
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000abf0
push 0x100bfa88
call fcn.10058830
call fcn.10058b80
push 4
push 0x7dc450
call ebx
test eax, eax
jne 0x1000b3ac
mov dword [0x100bfa88], 0x7dc450
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000abf0
push 0x100bfa88
call fcn.100583a0
call fcn.10058b80
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000ac20
push 0x100bfa84
call fcn.10058830
call fcn.10058b80
push 4
push 0x7a4cf0
call ebx
test eax, eax
jne 0x1000b405
mov dword [0x100bfa84], 0x7a4cf0
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000ac20
push 0x100bfa84
call fcn.100583a0
call fcn.10058b80
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000ac50
push 0x100bfa80
call fcn.10058830
call fcn.10058b80
push 4
push 0x7ac800
call ebx
test eax, eax
jne 0x1000b45e
mov dword [0x100bfa80], 0x7ac800
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000ac50
push 0x100bfa80
call fcn.100583a0
call fcn.10058b80
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000ac80
push 0x100bfa7c
call fcn.10058830
call fcn.10058b80
push 4
push 0xbad2f0
call ebx
test eax, eax
jne 0x1000b4b7
mov dword [0x100bfa7c], 0xbad2f0
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000ac80
push 0x100bfa7c
call fcn.100583a0
call fcn.10058b80
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000acb0
push 0x100bfa78
call fcn.10058830
call fcn.10058b80
push 4
push 0x80c9d0
call ebx
test eax, eax
jne 0x1000b510
mov dword [0x100bfa78], 0x80c9d0
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000acb0
push 0x100bfa78
call fcn.100583a0
call fcn.10058b80
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000b220
push 0x100bfa6c
call fcn.10058830
call fcn.10058b80
push 4
push 0x80b240
call ebx
test eax, eax
jne 0x1000b569
mov dword [0x100bfa6c], 0x80b240
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000b220
push 0x100bfa6c
call fcn.100583a0
call fcn.10058b80
push 0x98
lea eax, [ebp - 0xc8]
push 0
push eax
call fcn.10074660
add esp, 4
lea ecx, [ebp - 0xc8]
call fcn.1000d020
mov dword [ebp - 4], 0
xor ecx, ecx
movaps xmm0, xmmword [0x100afac0]
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xd0], 0x4a414d48
mov word [ebp - 0xcc], 0x50
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp - 0xe0]
xor byte [ebp + ecx - 0xdf], al
inc ecx
cmp ecx, 0x14
jb 0x1000b5c0
lea edx, [ebp - 0xdf]
mov byte [ebp - 0xcb], 0
lea ecx, [ebp - 0xc8]
call fcn.1000e0a0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xc8]
call fcn.1000cf40
cmp dword [ebp - 0x18], 0x10
lea esi, [ebp - 0x2c]
push 0x1000b1b0
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 [0x100bfa74], eax
lea eax, [ebp - 0x14]
push 4
push eax
mov dword [ebp - 0x14], 0xa0e64e
call ebx
test eax, eax
jne 0x1000b667
push 4
push 0x1000b2a0
call ebx
test eax, eax
jne 0x1000b667
call fcn.10058b20
call edi
push eax
call fcn.10058ff0
push 0x1000b2a0
lea eax, [ebp - 0x14]
push eax
call fcn.100583a0
call fcn.10058b80
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x1000b67c
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.10004bb0
lea ecx, [ebp - 0x78]
mov dword [ebp - 0x18], 0xf
mov dword [ebp - 0x1c], 0
mov byte [ebp - 0x2c], 0
call fcn.1000cf60
lea eax, [ebp - 0x78]
mov dword [ebp - 4], 1
push eax
mov dword [ebp - 0x78], vtable.std::ios_base.0
call fcn.10055364
add esp, 4
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.10059ed0
mov esp, ebp
pop ebp
ret