Function at 0x57c250
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x68
call fcn.005c5c30
mov eax, dword [0x65db30]
xor eax, esp
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
push ebx
mov ebx, dword [esp + 0x70]
push ebp
mov ebp, dword [esp + 0x78]
push esi
xor esi, esi
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x90]
push edi
mov edi, dword [esp + 0x98]
dec ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x30], edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], edi
mov dword [esp + 0x24], esi
mov dword [esp + 0x2c], esi
cmp eax, esi
jne 0x57c2b7
call fcn.004a7770
mov dword [esp + 0x20], eax
cmp edi, esi
jne 0x57c2bf
mov dword [esp + 0x14], eax
push eax
call fcn.004ba3d0
mov esi, eax
lea eax, [esi + esi]
mov edi, ebp
sub edi, eax
lea ecx, [edi - 1]
add esp, 4
cmp dword [esp + 0x1c], ecx
jle 0x57c307
push 0x3e
push str.crypto_rsa_rsa_oaep.c
push 0x6e
push 0x9a
push 4
call fcn.0049a370
add esp, 0x14
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x64]
xor ecx, esp
call fcn.005c5718
add esp, 0x68
ret
inc eax
cmp ebp, eax
jge 0x57c317
push 0x44
push str.crypto_rsa_rsa_oaep.c
push 0x78
jmp 0x57c2e3
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x90]
push 0
push eax
lea edx, [ebx + 1]
mov byte [ebx], 0
push 0
lea ebx, [ebx + esi + 1]
push ebx
mov dword [esp + 0x28], edx
mov edx, dword [esp + 0x40]
push ecx
push edx
call fcn.004cdc20
add esp, 0x18
test eax, eax
je 0x57c437
sub edi, dword [esp + 0x1c]
lea eax, [ebx + esi]
dec edi
push edi
push 0
push eax
call sub.MSVCR100.dll_memset
mov ecx, dword [esp + 0x28]
mov eax, ebx
sub eax, ecx
push ecx
mov ecx, dword [esp + 0x38]
sub eax, esi
add eax, ebp
push ecx
push eax
mov byte [eax - 1], 1
call sub.MSVCR100.dll_memcpy
mov edx, dword [esp + 0x30]
push esi
push edx
call fcn.004b8cc0
add esp, 0x20
test eax, eax
jle 0x57c437
push 0x55
sub ebp, esi
mov edi, ebp
push str.crypto_rsa_rsa_oaep.c
push edi
call fcn.004a31f0
mov ebp, eax
add esp, 0xc
mov dword [esp + 0x10], ebp
test ebp, ebp
jne 0x57c3c7
push 0x57
push str.crypto_rsa_rsa_oaep.c
push 0x41
push 0x9a
push 4
call fcn.0049a370
add esp, 0x14
jmp 0x57c43d
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push eax
push esi
push ecx
push edi
push ebp
call fcn.0057c0e0
add esp, 0x14
test eax, eax
js 0x57c43d
test edi, edi
jle 0x57c3fd
mov eax, ebx
sub ebp, ebx
mov ecx, edi
lea ebx, [ebx]
mov dl, byte [eax + ebp]
xor byte [eax], dl
inc eax
dec ecx
jne 0x57c3f0
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
push eax
push edi
push ebx
lea ecx, [esp + 0x40]
push esi
push ecx
call fcn.0057c0e0
add esp, 0x14
test eax, eax
js 0x57c43d
test esi, esi
jle 0x57c42d
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x34]
sub ecx, eax
mov dl, byte [ecx + eax]
xor byte [eax], dl
inc eax
dec esi
jne 0x57c424
mov dword [esp + 0x24], 1
jmp 0x57c43d
mov edi, dword [esp + 0x2c]
mov ebp, edi
lea eax, [esp + 0x34]
push 0x40
push eax
call fcn.004e60d0
push 0x68
push str.crypto_rsa_rsa_oaep.c
push edi
push ebp
call fcn.004a32c0
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x3c]
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.005c5718
add esp, 0x68
ret