Function at 0x4891d0
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x70
call fcn.004bf520
mov eax, dword [0x586f0c]
xor eax, esp
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x78]
push ebx
push ebp
push esi
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x88]
push edi
mov edi, dword [esp + 0x84]
xor ebp, ebp
push eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x14], ebp
call fcn.00456450
mov ebx, eax
add esp, 4
mov dword [esp + 0x18], ebx
test ebx, ebx
js 0x4892b6
mov eax, dword [esp + 0x94]
cmp eax, 0xffffffff
jne 0x48928e
mov dword [esp + 0x94], ebx
mov ecx, dword [edi + 0x10]
push ecx
call fcn.0044bbb0
lea ebp, [eax - 1]
push edi
and ebp, 7
call fcn.00425ef0
mov edx, 0xff
mov ecx, ebp
shl edx, cl
add esp, 8
test byte [esi], dl
je 0x4892cb
push 0x69
push str..crypto_rsa_rsa_pss.c
push 0x85
push 0x7e
push 4
call fcn.0041b0e0
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
cmp eax, 0xfffffffe
jne 0x48929c
mov dword [esp + 0x94], eax
jmp 0x48923a
jge 0x48923a
push 0x61
push str..crypto_rsa_rsa_pss.c
push 0x88
push 0x7e
push 4
call fcn.0041b0e0
add esp, 0x14
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
test ebp, ebp
jne 0x4892d1
inc esi
dec eax
mov edx, dword [esp + 0x94]
lea ecx, [ebx + edx + 2]
cmp eax, ecx
jge 0x48930c
push 0x73
push str..crypto_rsa_rsa_pss.c
push 0x6d
push 0x7e
push 4
call fcn.0041b0e0
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
cmp byte [esi + eax - 1], 0xbc
je 0x489342
push 0x78
push str..crypto_rsa_rsa_pss.c
push 0x86
push 0x7e
push 4
call fcn.0041b0e0
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
sub eax, ebx
lea edi, [eax - 1]
push 0x7d
lea edx, [esi + edi]
push str..crypto_rsa_rsa_pss.c
push edi
mov dword [esp + 0x20], edx
call fcn.00429d30
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x489393
push 0x80
push str..crypto_rsa_rsa_pss.c
push 0x41
push 0x7e
push 4
call fcn.0041b0e0
mov eax, dword [esp + 0x24]
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
push eax
push ecx
push edx
push edi
push ebx
call fcn.004698d0
add esp, 0x14
test eax, eax
js 0x489590
test edi, edi
jle 0x4893c9
mov eax, ebx
sub esi, ebx
mov ecx, edi
mov edi, edi
mov dl, byte [esi + eax]
xor byte [eax], dl
inc eax
dec ecx
jne 0x4893c0
test ebp, ebp
je 0x4893dd
mov ecx, 8
sub ecx, ebp
mov eax, 0xff
sar eax, cl
and byte [ebx], al
xor esi, esi
cmp byte [ebx], 0
jne 0x4893f2
lea eax, [edi - 1]
cmp esi, eax
jge 0x4893f2
inc esi
cmp byte [esi + ebx], 0
je 0x4893e7
mov cl, byte [esi + ebx]
inc esi
cmp cl, 1
je 0x489436
push 0x8c
push str..crypto_rsa_rsa_pss.c
push 0x87
push 0x7e
push 4
call fcn.0041b0e0
add esp, 0x14
push ebx
call fcn.00429f10
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
mov eax, dword [esp + 0x94]
test eax, eax
js 0x489484
mov edx, edi
sub edx, esi
cmp edx, eax
je 0x489484
push 0x91
push str..crypto_rsa_rsa_pss.c
push 0x88
push 0x7e
push 4
call fcn.0041b0e0
add esp, 0x14
push ebx
call fcn.00429f10
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
lea eax, [esp + 0x24]
push eax
call fcn.0042b4c0
mov ecx, dword [esp + 0x20]
push 0
push ecx
lea edx, [esp + 0x30]
push edx
call fcn.0042b510
push 8
lea eax, [esp + 0x38]
push 0x567e28
push eax
call fcn.0042b6c0
mov ebp, dword [esp + 0x34]
mov ecx, dword [esp + 0x3c]
push ebp
push ecx
lea edx, [esp + 0x48]
push edx
call fcn.0042b6c0
add esp, 0x28
sub edi, esi
je 0x4894dc
push edi
add esi, ebx
lea eax, [esp + 0x28]
push esi
push eax
call fcn.0042b6c0
add esp, 0xc
push 0
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x2c]
push edx
call fcn.0042b830
lea eax, [esp + 0x30]
push eax
call fcn.0042b750
mov esi, dword [esp + 0x24]
add esp, 0x10
mov eax, ebp
lea edi, [esp + 0x3c]
cmp ebp, 4
jb 0x489524
lea esp, [esp]
mov ecx, dword [edi]
cmp ecx, dword [esi]
jne 0x489548
sub eax, 4
add esi, 4
add edi, 4
cmp eax, 4
jae 0x489510
test eax, eax
je 0x489588
mov dl, byte [esi]
cmp dl, byte [edi]
jne 0x489548
cmp eax, 1
jbe 0x489588
mov cl, byte [esi + 1]
cmp cl, byte [edi + 1]
jne 0x489548
cmp eax, 2
jbe 0x489588
mov dl, byte [esi + 2]
cmp dl, byte [edi + 2]
je 0x489588
push 0x9e
push str..crypto_rsa_rsa_pss.c
push 0x68
push 0x7e
push 4
call fcn.0041b0e0
add esp, 0x14
push ebx
mov dword [esp + 0x14], 0
call fcn.00429f10
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x6c]
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret
mov dword [esp + 0x10], 1
push ebx
call fcn.00429f10
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0x14]
add esp, 4
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004bf32e
add esp, 0x70
ret