Function at 0x569734
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x9c
mov esi, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
mov dword [esp], eax
call fcn.00503ce0
mov ebx, eax
test eax, eax
js 0x5697f8
cmp dword [ebp + 0x18], 0xffffffff
je 0x5698bc
cmp dword [ebp + 0x18], 0xfffffffe
je 0x56976e
jl 0x569844
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x10]
mov dword [esp], eax
call fcn.00509f64
lea edi, [eax - 1]
and edi, 7
mov ecx, dword [ebp + 8]
mov dword [esp], ecx
call fcn.004ed040
mov edx, 0xff
mov ecx, edi
shl edx, cl
movzx ecx, byte [esi]
test edx, ecx
jne 0x569808
test edi, edi
jne 0x5697a3
inc esi
dec eax
mov ecx, dword [ebp + 0x18]
lea edx, [ebx + ecx + 1]
cmp eax, edx
jle 0x569880
cmp byte [esi + eax - 1], 0xbc
je 0x5698c4
mov dword [esp + 0x10], 0x78
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x86
mov dword [esp + 4], 0x7e
mov dword [esp], 4
call fcn.004f33a4
xor eax, eax
add esp, 0x9c
pop ebx
pop esi
pop edi
leave
ret
xor eax, eax
add esp, 0x9c
pop ebx
pop esi
pop edi
leave
ret
mov dword [esp + 0x10], 0x69
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x85
mov dword [esp + 4], 0x7e
mov dword [esp], 4
call fcn.004f33a4
xor eax, eax
add esp, 0x9c
pop ebx
pop esi
pop edi
leave
ret
mov dword [esp + 0x10], 0x61
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x88
mov dword [esp + 4], 0x7e
mov dword [esp], 4
call fcn.004f33a4
xor eax, eax
add esp, 0x9c
pop ebx
pop esi
pop edi
leave
ret
mov dword [esp + 0x10], 0x73
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x6d
mov dword [esp + 4], 0x7e
mov dword [esp], 4
call fcn.004f33a4
xor eax, eax
add esp, 0x9c
pop ebx
pop esi
pop edi
leave
ret
mov dword [ebp + 0x18], eax
jmp 0x56976e
mov edx, ebx
not edx
add edx, eax
mov dword [ebp - 0x7c], edx
mov dword [esp + 8], 0x7d
mov dword [esp + 4], str.crypto_rsa_rsa_pss.c
mov dword [esp], edx
call fcn.004f3b10
mov edx, eax
test eax, eax
je 0x569ae4
mov eax, dword [ebp - 0x7c]
add eax, esi
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp + 0x10]
mov dword [esp + 0x10], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x7c]
mov dword [esp + 4], eax
mov dword [esp], edx
mov dword [ebp - 0x84], edx
call fcn.00559300
test eax, eax
mov edx, dword [ebp - 0x84]
js 0x569a24
mov ecx, dword [ebp - 0x7c]
test ecx, ecx
jle 0x569940
xor eax, eax
nop
mov cl, byte [esi + eax]
xor byte [edx + eax], cl
inc eax
cmp eax, dword [ebp - 0x7c]
jne 0x569934
test edi, edi
jne 0x5699ec
mov cl, byte [edx]
test cl, cl
jne 0x569b50
mov esi, dword [ebp - 0x7c]
dec esi
test esi, esi
jle 0x569a08
xor eax, eax
jmp 0x56996c
cmp eax, esi
jge 0x569a08
inc eax
mov cl, byte [edx + eax]
test cl, cl
je 0x569964
lea esi, [eax + 1]
dec cl
jne 0x569a08
mov eax, dword [ebp + 0x18]
test eax, eax
js 0x569a28
mov eax, dword [ebp - 0x7c]
sub eax, esi
cmp eax, dword [ebp + 0x18]
je 0x569a28
mov dword [esp + 0x10], 0x91
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x88
mov dword [esp + 4], 0x7e
mov dword [esp], 4
mov dword [ebp - 0x84], edx
call fcn.004f33a4
xor eax, eax
mov edx, dword [ebp - 0x84]
mov dword [esp], edx
mov dword [ebp - 0x84], eax
call fcn.004f3df0
mov eax, dword [ebp - 0x84]
jmp 0x5697eb
mov ecx, 8
sub ecx, edi
mov eax, 0xff
sar eax, cl
mov cl, al
and cl, byte [edx]
mov byte [edx], cl
jmp 0x56994a
mov dword [esp + 0x10], 0x8c
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x87
jmp 0x5699b0
xor eax, eax
jmp 0x5699d2
lea edi, [ebp - 0x30]
mov dword [esp], edi
mov dword [ebp - 0x84], edx
call fcn.004fdac0
mov dword [esp + 8], 0
mov ecx, dword [ebp + 0x10]
mov dword [esp + 4], ecx
mov dword [esp], edi
call fcn.004fdb10
mov dword [esp + 8], 8
mov dword [esp + 4], 0x6bf9b9
mov dword [esp], edi
call fcn.004fddac
mov dword [esp + 8], ebx
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.004fddac
cmp dword [ebp - 0x7c], esi
mov edx, dword [ebp - 0x84]
je 0x569aa4
mov eax, dword [ebp - 0x7c]
sub eax, esi
mov dword [esp + 8], eax
lea esi, [edx + esi]
mov dword [esp + 4], esi
mov dword [esp], edi
call fcn.004fddac
mov edx, dword [ebp - 0x84]
mov dword [esp + 8], 0
lea esi, [ebp - 0x70]
mov dword [esp + 4], esi
mov dword [esp], edi
mov dword [ebp - 0x84], edx
call fcn.004fe1c0
mov dword [esp], edi
call fcn.004fde48
cmp ebx, ebx
mov edi, dword [ebp - 0x80]
mov ecx, ebx
repe cmpsb byte [esi], byte es:[edi]
mov edx, dword [ebp - 0x84]
jne 0x569b17
mov eax, 1
jmp 0x5699d2
mov dword [esp + 0x10], 0x80
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x41
mov dword [esp + 4], 0x7e
mov dword [esp], 4
call fcn.004f33a4
xor eax, eax
jmp 0x5697eb
mov dword [esp + 0x10], 0x9e
mov dword [esp + 0xc], str.crypto_rsa_rsa_pss.c
mov dword [esp + 8], 0x68
mov dword [esp + 4], 0x7e
mov dword [esp], 4
call fcn.004f33a4
xor eax, eax
mov edx, dword [ebp - 0x84]
jmp 0x5699d2
mov esi, 1
jmp 0x569977