Function at 0x1010b810
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x14
call fcn.10138dd0
push ebx
push ebp
push esi
push edi
mov edi, dword [esp + 0x64]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
xor ebx, ebx
push eax
push ebx
xor esi, esi
call fcn.100f34b0
add esp, 0xc
test eax, eax
je 0x1010ba34
mov ebp, dword [esp + 0x28]
mov eax, dword [esp + 0x10]
shl eax, 0xa
test ebp, eax
lea eax, [esi + 1]
cmove eax, esi
inc ebx
mov esi, eax
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x14]
push eax
push ebx
call fcn.100f34b0
add esp, 0xc
test eax, eax
jne 0x1010b845
test esi, esi
je 0x1010ba34
mov eax, dword [esp + 0x58]
cdq
idiv esi
mov ebp, dword [esp + 0x5c]
cmp esi, 1
push edi
mov esi, 0
mov dword [esp + 0x20], eax
cmovne esi, dword [esp + 0x5c]
push 0
push ebp
mov dword [esp + 0x24], esi
call fcn.1013a6c0
lea eax, [esp + 0x20]
mov dword [esp + 0x2c], 0
push eax
lea eax, [esp + 0x20]
push eax
push 0
call fcn.100f34b0
add esp, 0x18
test eax, eax
je 0x1010ba16
mov ebx, dword [esp + 0x60]
nop word [eax + eax]
mov eax, dword [esp + 0x10]
shl eax, 0xa
test dword [esp + 0x28], eax
je 0x1010b9f2
mov ecx, dword [esp + 0x14]
test ecx, ecx
je 0x1010ba23
push edi
push ebx
push dword [esp + 0x58]
and esi, 1
push dword [esp + 0x58]
add esi, dword [esp + 0x2c]
push dword [esp + 0x58]
push dword [esp + 0x58]
push dword [esp + 0x58]
push dword [esp + 0x58]
push dword [esp + 0x58]
push dword [esp + 0x58]
push dword [esp + 0x58]
push dword [esp + 0x58]
push esi
mov esi, dword [esp + 0x88]
push esi
push ecx
call fcn.1010ba60
add esp, 0x3c
test eax, eax
je 0x1010ba4f
add esi, dword [esp + 0x1c]
xor ecx, ecx
mov dword [esp + 0x54], esi
test edi, edi
jle 0x1010b9ee
cmp edi, 0x40
jb 0x1010b9cd
lea eax, [edi - 1]
lea edx, [ebp - 1]
add eax, ebx
add edx, edi
cmp ebp, eax
ja 0x1010b961
cmp edx, ebx
jae 0x1010b9cd
mov eax, edi
and eax, 0x8000003f
jns 0x1010b96f
dec eax
or eax, 0xffffffc0
inc eax
mov edx, edi
mov esi, ebx
sub edx, eax
mov eax, ebp
sub esi, ebp
nop dword [eax]
movups xmm0, xmmword [eax]
lea eax, [eax + 0x40]
movups xmm1, xmmword [esi + eax - 0x40]
pxor xmm1, xmm0
movups xmmword [eax - 0x40], xmm1
movups xmm0, xmmword [eax - 0x30]
movups xmm1, xmmword [ebx + ecx + 0x10]
pxor xmm1, xmm0
movups xmmword [eax - 0x30], xmm1
movups xmm0, xmmword [eax - 0x20]
movups xmm1, xmmword [ebx + ecx + 0x20]
pxor xmm1, xmm0
movups xmmword [eax - 0x20], xmm1
movups xmm0, xmmword [eax - 0x10]
movups xmm1, xmmword [ebx + ecx + 0x30]
add ecx, 0x40
pxor xmm1, xmm0
movups xmmword [eax - 0x10], xmm1
cmp ecx, edx
jl 0x1010b980
cmp ecx, edi
jge 0x1010b9ee
mov esi, ebx
lea eax, [ecx + ebp]
mov edx, edi
sub esi, ebp
sub edx, ecx
nop dword [eax]
mov cl, byte [eax + esi]
lea eax, [eax + 1]
xor byte [eax - 1], cl
sub edx, 1
jne 0x1010b9e0
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
lea ecx, [esp + 0x14]
push ecx
lea ecx, [esp + 0x14]
inc eax
push ecx
push eax
mov dword [esp + 0x2c], eax
call fcn.100f34b0
add esp, 0xc
test eax, eax
jne 0x1010b8d0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x14
ret
push 0x114
push str.._ssl_t1_enc.c
push 0x146
jmp 0x1010ba40
push 0x109
push str.._ssl_t1_enc.c
push 0x44
push 0x11c
push 0x14
call fcn.1005c730
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret