Function at 0x4c59c0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x18
call fcn.004e2da0
push ebx
push esi
xor esi, esi
mov dword [esp + 0x18], esi
mov dword [esp + 0xc], esi
mov dword [esp + 8], esi
cmp dword [esp + 0x34], esi
jne 0x4c59e8
mov eax, dword [esp + 0x30]
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x30]
push ecx
call fcn.0044db70
mov ebx, eax
add esp, 4
mov dword [esp + 0x10], ebx
cmp ebx, esi
jl 0x4c5c1b
mov esi, dword [esp + 0x38]
cmp esi, 0xffffffff
jne 0x4c5a9b
mov esi, ebx
push ebp
push edi
mov edi, dword [esp + 0x2c]
mov edx, dword [edi + 0x10]
push edx
call fcn.00434260
lea ebp, [eax - 1]
and ebp, 7
push edi
mov dword [esp + 0x2c], ebp
call fcn.0042ff20
add esp, 8
mov edi, eax
test ebp, ebp
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x1c], edi
jne 0x4c5a4c
mov byte [ebp], 0
inc ebp
dec edi
mov dword [esp + 0x1c], edi
cmp esi, 0xfffffffe
jne 0x4c5ace
mov esi, edi
sub esi, ebx
sub esi, 2
test esi, esi
jle 0x4c5b08
push 0xba
push str.....openssl_1.1.0ecrypto_rsa_rsa_pss.c
push esi
call fcn.00433360
add esp, 0xc
mov dword [esp + 0x14], eax
test eax, eax
jne 0x4c5af6
push 0xbd
push str.....openssl_1.1.0ecrypto_rsa_rsa_pss.c
push 0x41
push 0x98
push 4
call fcn.00431a90
add esp, 0x14
jmp 0x4c5c19
cmp esi, 0xfffffffe
jne 0x4c5aa5
jmp 0x4c5a12
jge 0x4c5a12
push 0xa8
push str.....openssl_1.1.0ecrypto_rsa_rsa_pss.c
push 0x88
push 0x98
push 4
call fcn.00431a90
add esp, 0x14
jmp 0x4c5c1b
lea eax, [ebx + esi + 2]
cmp edi, eax
jge 0x4c5a58
push 0xb6
push str.....openssl_1.1.0ecrypto_rsa_rsa_pss.c
push 0x6e
push 0x98
push 4
call fcn.00431a90
add esp, 0x14
jmp 0x4c5c19
push esi
push eax
call fcn.004373a0
add esp, 8
test eax, eax
jle 0x4c5c19
sub edi, ebx
lea ebx, [edi - 1]
call fcn.0045dfd0
mov dword [esp + 0x10], eax
test eax, eax
je 0x4c5c19
mov ecx, dword [esp + 0x38]
push 0
push ecx
mov edx, eax
push edx
call fcn.0045e020
add esp, 0xc
test eax, eax
je 0x4c5c19
mov eax, dword [esp + 0x10]
push 8
push 0x547f8c
push eax
call fcn.0045e1d0
add esp, 0xc
test eax, eax
je 0x4c5c19
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
push ecx
push edx
push eax
call fcn.0045e1d0
add esp, 0xc
test eax, eax
je 0x4c5c19
test esi, esi
je 0x4c5b92
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
push esi
push ecx
push edx
call fcn.0045e1d0
add esp, 0xc
test eax, eax
je 0x4c5c19
push 0
lea eax, [ebx + ebp]
push eax
mov eax, dword [esp + 0x18]
push eax
call fcn.0045e1e0
add esp, 0xc
test eax, eax
je 0x4c5c19
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x18]
push ecx
push edx
lea eax, [ebx + ebp]
push eax
push ebx
push ebp
call fcn.00441e00
add esp, 0x14
test eax, eax
jne 0x4c5c19
sub edi, esi
xor byte [edi + ebp - 2], 1
lea eax, [edi + ebp - 2]
inc eax
test esi, esi
jle 0x4c5bef
xor ecx, ecx
test esi, esi
jle 0x4c5bef
jmp 0x4c5be0
mov edx, dword [esp + 0x14]
mov dl, byte [ecx + edx]
xor byte [eax], dl
inc ecx
inc eax
cmp ecx, esi
jl 0x4c5be0
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4c5c08
mov ecx, 8
sub ecx, eax
mov eax, 0xff
sar eax, cl
and byte [ebp], al
mov ecx, dword [esp + 0x1c]
mov byte [ecx + ebp - 1], 0xbc
mov dword [esp + 0x20], 1
pop edi
pop ebp
mov edx, dword [esp + 8]
push edx
call fcn.0045e000
mov eax, dword [esp + 0x10]
push 0xec
push str.....openssl_1.1.0ecrypto_rsa_rsa_pss.c
push eax
call fcn.004333f0
mov eax, dword [esp + 0x28]
add esp, 0x10
pop esi
pop ebx
add esp, 0x18
ret