Function at 0x101106b0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0xbc
call fcn.10031c10
mov eax, dword [0x101df230]
xor eax, esp
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xc0]
push ebx
mov ebx, dword [esp + 0xd4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xcc]
push ebp
mov dword [esp + 0x18], eax
xor ebp, ebp
mov eax, dword [esp + 0xdc]
push esi
mov esi, dword [esp + 0xd8]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x2c], 0xffffffff
mov dword [esp + 0x24], 0
mov dword [esp + 0x18], ebp
push edi
mov edi, dword [esp + 0xf0]
test eax, eax
jne 0x10110734
call fcn.100c2250
mov dword [esp + 0x24], eax
test edi, edi
push eax
cmove edi, eax
mov dword [esp + 0x14], edi
call fcn.100d47a0
mov edi, eax
add esp, 4
mov eax, dword [esp + 0xd4]
mov dword [esp + 0x44], edi
test eax, eax
jle 0x10110bc0
test esi, esi
jle 0x10110bc0
cmp ebx, esi
jl 0x10110ba5
lea eax, [edi*2 + 2]
cmp ebx, eax
jl 0x10110ba5
push 0x9e
sub ebx, edi
dec ebx
push str..crypto_rsa_rsa_oaep.c
push ebx
mov dword [esp + 0x20], ebx
call fcn.100bb0f0
add esp, 0xc
mov dword [esp + 0x18], eax
test eax, eax
jne 0x101107bc
push 0xa0
push str..crypto_rsa_rsa_oaep.c
push 0x41
push 0xa1
push 4
call fcn.100c8ac0
add esp, 0x14
jmp 0x10110b65
push 0xa4
push str..crypto_rsa_rsa_oaep.c
push dword [esp + 0x34]
call fcn.100bb0f0
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x101107e1
push 0xa7
jmp 0x101107a1
mov ebp, dword [esp + 0x1c]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
add edx, esi
add ebp, eax
mov dword [esp + 0x1c], ebp
test eax, eax
jle 0x1011082e
mov ebx, eax
nop dword [eax + eax]
mov eax, esi
lea ecx, [esi - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
dec ebp
and ecx, eax
dec ecx
mov eax, ecx
and eax, 1
sub edx, eax
sub esi, eax
mov al, byte [edx]
and al, cl
mov byte [ebp], al
sub ebx, 1
jne 0x10110800
mov ebx, dword [esp + 0x14]
mov dword [esp + 0x1c], ebp
movzx eax, byte [ebp]
push dword [esp + 0x10]
push ebx
lea ebp, [eax - 1]
not eax
shr eax, 0x1f
shr ebp, 0x1f
and ebp, eax
mov eax, dword [esp + 0x24]
neg ebp
lea esi, [eax + 1]
inc eax
add eax, edi
push eax
mov dword [esp + 0x2c], eax
lea eax, [esp + 0x54]
push edi
push eax
call fcn.10110160
add esp, 0x14
test eax, eax
jne 0x10110b65
xor edx, edx
test edi, edi
jle 0x10110900
cmp edi, 0x20
jb 0x101108e4
lea eax, [esi - 1]
lea ebx, [esp + 0x48]
add eax, edi
cmp ebx, eax
lea ecx, [esp + edi + 0x47]
mov ebx, dword [esp + 0x14]
ja 0x10110893
cmp ecx, esi
jae 0x101108e4
mov eax, edi
and eax, 0x8000001f
jns 0x101108a1
dec eax
or eax, 0xffffffe0
inc eax
mov ecx, edi
mov ebx, esi
sub ecx, eax
lea eax, [esp + 0x48]
sub ebx, eax
nop dword [eax]
movups xmm0, xmmword [esp + edx + 0x48]
lea eax, [ebx + edx]
movups xmm1, xmmword [esp + eax + 0x48]
pxor xmm1, xmm0
movups xmmword [esp + edx + 0x48], xmm1
movups xmm1, xmmword [esi + edx + 0x10]
movups xmm0, xmmword [esp + edx + 0x58]
pxor xmm1, xmm0
movups xmmword [esp + edx + 0x58], xmm1
add edx, 0x20
cmp edx, ecx
jl 0x101108b0
mov ebx, dword [esp + 0x14]
cmp edx, edi
jge 0x10110900
lea eax, [esp + 0x48]
sub esi, eax
nop
lea ecx, [esp + 0x48]
add ecx, edx
inc edx
mov al, byte [ecx + esi]
xor byte [ecx], al
cmp edx, edi
jl 0x101108f0
push dword [esp + 0x10]
mov esi, dword [esp + 0x1c]
lea eax, [esp + 0x4c]
push edi
push eax
push ebx
push esi
call fcn.10110160
add esp, 0x14
test eax, eax
jne 0x10110b65
xor edx, edx
test ebx, ebx
jle 0x101109db
cmp ebx, 0x20
jb 0x101109b2
mov ecx, dword [esp + 0x20]
lea eax, [ecx - 1]
add eax, ebx
cmp esi, eax
ja 0x10110949
lea eax, [esi - 1]
add eax, ebx
cmp eax, ecx
jae 0x101109b2
mov eax, ebx
and eax, 0x8000001f
jns 0x10110957
dec eax
or eax, 0xffffffe0
inc eax
mov dword [esp + 0x10], ebx
mov ebx, ecx
sub dword [esp + 0x10], eax
sub ebx, esi
add ecx, 0x10
mov dword [esp + 0x3c], ebx
mov ebx, dword [esp + 0x14]
mov eax, esi
mov esi, dword [esp + 0x3c]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x40]
movups xmm0, xmmword [eax]
lea eax, [eax + 0x20]
movups xmm1, xmmword [esi + eax - 0x20]
pxor xmm1, xmm0
movups xmmword [eax - 0x20], xmm1
movups xmm1, xmmword [edi + edx]
add edx, 0x20
movups xmm0, xmmword [eax - 0x10]
pxor xmm1, xmm0
movups xmmword [eax - 0x10], xmm1
cmp edx, ecx
jl 0x10110980
mov edi, dword [esp + 0x44]
mov esi, dword [esp + 0x18]
cmp edx, ebx
jge 0x101109db
sub dword [esp + 0x20], esi
lea ecx, [edx + esi]
mov esi, ebx
mov ebx, dword [esp + 0x20]
sub esi, edx
mov al, byte [ecx + ebx]
lea ecx, [ecx + 1]
xor byte [ecx - 1], al
sub esi, 1
jne 0x101109c5
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
push 0
push dword [esp + 0x28]
lea eax, [esp + 0x90]
push 0
push eax
push dword [esp + 0xf8]
push dword [esp + 0x48]
call fcn.100c1ba0
add esp, 0x18
test eax, eax
je 0x10110b65
push edi
lea eax, [esp + 0x8c]
push eax
push esi
call fcn.100d03b0
add esp, 0xc
lea ecx, [eax - 1]
not eax
shr ecx, 0x1f
shr eax, 0x1f
and ecx, eax
neg ecx
and ebp, ecx
xor ecx, ecx
mov dword [esp + 0x10], ecx
cmp edi, ebx
jge 0x10110a85
movzx esi, byte [edi + esi]
not ecx
mov eax, esi
xor eax, 1
lea edx, [eax - 1]
not eax
shr eax, 0x1f
shr edx, 0x1f
and edx, eax
neg edx
and ecx, edx
mov eax, ecx
and ecx, edi
not eax
inc edi
and eax, dword [esp + 0x28]
or eax, ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x28], eax
or ecx, edx
lea eax, [esi - 1]
mov dword [esp + 0x10], ecx
shr eax, 0x1f
not esi
shr esi, 0x1f
and eax, esi
mov esi, dword [esp + 0x18]
neg eax
or eax, ecx
and ebp, eax
cmp edi, ebx
jl 0x10110a33
mov edi, dword [esp + 0xd4]
mov eax, ebx
mov edx, dword [esp + 0x28]
mov ecx, edi
inc edx
sub eax, edx
sub ecx, eax
xor ecx, eax
xor eax, edi
or ecx, eax
mov eax, ebx
xor ecx, edi
xor eax, edi
shr ecx, 0x1f
dec ecx
and ecx, dword [esp + 0x10]
and ebp, ecx
mov ecx, ebx
sub ecx, edi
mov dword [esp + 0x34], ebp
xor ecx, edi
mov dword [esp + 0x24], ebp
or ecx, eax
and edx, ebp
xor ecx, ebx
mov eax, ebp
shr ecx, 0x1f
not eax
neg ecx
mov edi, ecx
and ecx, ebx
not edi
and edi, dword [esp + 0xd4]
or edi, ecx
mov ecx, ebx
sub ecx, edi
and ecx, eax
mov eax, ebx
or ecx, edx
xor edx, edx
sub eax, ecx
add esi, ecx
mov dword [esp + 0x30], eax
test edi, edi
jle 0x10110b3f
mov ebp, eax
mov eax, edx
xor eax, ebp
lea ecx, [eax - 1]
not eax
shr eax, 0x1f
shr ecx, 0x1f
and ecx, eax
neg ecx
mov eax, ecx
and eax, ebx
mov ebx, dword [esp + 0x38]
sub esi, eax
mov eax, dword [esp + 0x24]
xor ecx, eax
and eax, ecx
movzx ecx, al
mov dword [esp + 0x24], eax
mov al, byte [esi + edx]
and al, cl
not cl
and cl, byte [ebx + edx]
or al, cl
mov ecx, ebx
mov ebx, dword [esp + 0x14]
mov byte [ecx + edx], al
inc edx
cmp edx, edi
jl 0x10110af5
mov ebp, dword [esp + 0x34]
push 0x108
push str..crypto_rsa_rsa_oaep.c
push 0x79
push 0xa1
push 4
call fcn.100c8ac0
mov eax, ebp
and eax, 1
push eax
call fcn.100c8e80
add esp, 0x18
lea eax, [esp + 0x48]
push 0x40
push eax
call fcn.10001360
mov esi, dword [esp + 0x20]
push ebx
push esi
call fcn.10001360
push esi
call fcn.100bb020
push dword [esp + 0x40]
mov esi, dword [esp + 0x34]
push esi
call fcn.10001360
push esi
call fcn.100bb020
mov eax, ebp
add esp, 0x20
and eax, dword [esp + 0x30]
not ebp
or eax, ebp
jmp 0x10110bc3
push 0x99
push str..crypto_rsa_rsa_oaep.c
push 0x79
push 0xa1
push 4
call fcn.100c8ac0
add esp, 0x14
or eax, 0xffffffff
mov ecx, dword [esp + 0xc8]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10031bc0
add esp, 0xbc
ret