Function at 0x1003aba0
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x58
call fcn.100b1990
mov eax, dword [esp + 0x64]
push ebx
push ebp
push esi
push edi
xor esi, esi
push eax
mov dword [esp + 0x14], esi
call sym.LIBEAY32_smt.dll_RSA_get_method
mov ebx, dword [esp + 0x80]
add esp, 4
cmp ebx, 0xffffffff
mov dword [esp + 0x14], eax
jne 0x1003ac30
mov dword [esp + 0x7c], eax
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x6c]
mov ecx, dword [esi + 0x10]
push ecx
call sym.LIBEAY32_smt.dll_BN_num_bits
mov edi, eax
push esi
dec edi
and edi, 7
call sym.LIBEAY32_smt.dll_RSA_size
mov ebp, dword [esp + 0x80]
mov edx, 0xff
mov ecx, edi
add esp, 8
shl edx, cl
mov cl, byte [ebp]
test cl, dl
je 0x1003ac5f
push 0x67
push str..crypto_rsa_rsa_pss.c
push 0x85
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret
cmp ebx, 0xfffffffe
jne 0x1003ac3b
mov dword [esp + 0x7c], ebx
jmp 0x1003abd5
jge 0x1003abd9
push 0x5f
push str..crypto_rsa_rsa_pss.c
push 0x88
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
add esp, 0x14
mov eax, esi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret
test edi, edi
jne 0x1003ac65
inc ebp
dec eax
mov ecx, dword [esp + 0x14]
lea edx, [ecx + ebx + 2]
cmp eax, edx
jge 0x1003ac92
push 0x71
push str..crypto_rsa_rsa_pss.c
push 0x6d
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret
cmp byte [eax + ebp - 1], 0xbc
je 0x1003acbd
push 0x76
push str..crypto_rsa_rsa_pss.c
push 0x86
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret
sub eax, ecx
push 0x7b
dec eax
push str..crypto_rsa_rsa_pss.c
mov esi, eax
push esi
lea eax, [esi + ebp]
mov dword [esp + 0x78], eax
call sym.LIBEAY32_smt.dll_CRYPTO_malloc
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x1003acf9
push 0x7e
push str..crypto_rsa_rsa_pss.c
push 0x41
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
add esp, 0x14
jmp 0x1003ae5d
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x6c]
push ecx
push edx
push eax
push esi
push ebx
call sym.LIBEAY32_smt.dll_PKCS1_MGF1
add esp, 0x14
test esi, esi
jle 0x1003ad25
mov eax, ebx
sub ebp, ebx
mov ecx, esi
mov dl, byte [eax + ebp]
xor byte [eax], dl
inc eax
dec ecx
jne 0x1003ad1c
test edi, edi
je 0x1003ad39
mov ecx, 8
mov eax, 0xff
sub ecx, edi
sar eax, cl
and byte [ebx], al
mov al, byte [ebx]
xor ebp, ebp
test al, al
jne 0x1003ad51
lea eax, [esi - 1]
cmp ebp, eax
jge 0x1003ad51
mov cl, byte [ebx + ebp + 1]
inc ebp
test cl, cl
je 0x1003ad44
mov cl, byte [ebx + ebp]
inc ebp
cmp cl, 1
je 0x1003ad7a
push 0x89
push str..crypto_rsa_rsa_pss.c
push 0x87
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
add esp, 0x14
jmp 0x1003ae5d
mov eax, dword [esp + 0x7c]
test eax, eax
jl 0x1003adaa
mov edx, esi
sub edx, ebp
cmp edx, eax
je 0x1003adaa
push 0x8e
push str..crypto_rsa_rsa_pss.c
push 0x88
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
add esp, 0x14
jmp 0x1003ae5d
lea eax, [esp + 0x18]
push eax
call sym.LIBEAY32_smt.dll_EVP_MD_CTX_init
mov ecx, dword [esp + 0x78]
push 0
lea edx, [esp + 0x20]
push ecx
push edx
call sym.LIBEAY32_smt.dll_EVP_DigestInit_ex
push 8
lea eax, [esp + 0x2c]
push 0x100bd13c
push eax
call sym.LIBEAY32_smt.dll_EVP_DigestUpdate
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0x8c]
push edi
lea edx, [esp + 0x38]
push ecx
push edx
call sym.LIBEAY32_smt.dll_EVP_DigestUpdate
add esp, 0x28
sub esi, ebp
je 0x1003ae05
add ebp, ebx
push esi
lea eax, [esp + 0x1c]
push ebp
push eax
call sym.LIBEAY32_smt.dll_EVP_DigestUpdate
add esp, 0xc
lea ecx, [esp + 0x28]
push 0
lea edx, [esp + 0x1c]
push ecx
push edx
call sym.LIBEAY32_smt.dll_EVP_DigestFinal
lea eax, [esp + 0x24]
push eax
call sym.LIBEAY32_smt.dll_EVP_MD_CTX_cleanup
add esp, 0x10
mov ecx, edi
mov edi, dword [esp + 0x6c]
lea esi, [esp + 0x28]
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x1003ae55
push 0x9b
push str..crypto_rsa_rsa_pss.c
push 0x68
push 0x7e
push 4
call sym.LIBEAY32_smt.dll_ERR_put_error
add esp, 0x14
mov dword [esp + 0x10], 0
jmp 0x1003ae5d
mov dword [esp + 0x10], 1
test ebx, ebx
je 0x1003ae6a
push ebx
call sym.LIBEAY32_smt.dll_CRYPTO_free
add esp, 4
mov eax, dword [esp + 0x10]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x58
ret