Function at 0x508220
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x6c
call fcn.00593d40
mov eax, dword [0x76c12c]
xor eax, esp
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x88]
push ebx
mov ebx, dword [esp + 0x90]
push ebp
mov dword [esp + 0x10], eax
xor eax, eax
push esi
mov esi, dword [esp + 0x88]
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x7c]
mov ebp, dword [eax + 0xc]
push edi
mov edi, dword [eax + 8]
cmp edi, 0x20
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], esi
mov dword [esp + 0x14], edx
jle 0x508293
push str.nkey___EVP_MAX_KEY_LENGTH
push 0x79
push str..cryptoevpevp_key.c
call fcn.004d1a80
add esp, 0xc
cmp ebp, 0x10
jle 0x5082ac
push str.niv___EVP_MAX_IV_LENGTH
push 0x7a
push str..cryptoevpevp_key.c
call fcn.004d1a80
add esp, 0xc
test esi, esi
jne 0x5082c5
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.0058cf08
add esp, 0x6c
ret
lea eax, [esp + 0x20]
push eax
call fcn.004d1100
mov ecx, dword [esp + 0x1c]
push 0
push ecx
lea edx, [esp + 0x2c]
push edx
call fcn.004d1210
add esp, 0x10
test eax, eax
je 0x508420
jmp 0x5082f4
mov esi, dword [esp + 0x34]
mov eax, dword [esp + 0x1c]
mov ecx, eax
inc eax
mov dword [esp + 0x1c], eax
test ecx, ecx
je 0x50831a
mov edx, dword [esp + 0x10]
push edx
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x28]
push ecx
call fcn.004d12a0
add esp, 0xc
mov edx, dword [esp + 0x90]
push edx
lea eax, [esp + 0x24]
push esi
push eax
call fcn.004d12a0
mov eax, dword [esp + 0x3c]
add esp, 0xc
test eax, eax
je 0x508348
push 8
push eax
lea ecx, [esp + 0x28]
push ecx
call fcn.004d12a0
add esp, 0xc
lea edx, [esp + 0x10]
push edx
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x28]
push ecx
call fcn.004d12b0
mov esi, dword [esp + 0xa0]
add esp, 0xc
cmp esi, 1
jbe 0x5083b1
dec esi
lea esp, [esp]
mov edx, dword [esp + 0x18]
push 0
push edx
lea eax, [esp + 0x28]
push eax
call fcn.004d1210
mov ecx, dword [esp + 0x1c]
push ecx
lea edx, [esp + 0x48]
push edx
lea eax, [esp + 0x34]
push eax
call fcn.004d12a0
lea ecx, [esp + 0x28]
push ecx
lea edx, [esp + 0x54]
push edx
lea eax, [esp + 0x40]
push eax
call fcn.004d12b0
add esp, 0x24
sub esi, 1
jne 0x508370
mov ecx, dword [esp + 0x10]
xor eax, eax
test edi, edi
je 0x5083df
jmp 0x5083c0
cmp eax, ecx
je 0x5083df
cmp dword [esp + 0x14], 0
je 0x5083d9
mov esi, dword [esp + 0x14]
mov dl, byte [esp + eax + 0x38]
inc dword [esp + 0x14]
mov byte [esi], dl
dec edi
inc eax
test edi, edi
jne 0x5083c0
test ebp, ebp
je 0x5083fc
cmp eax, ecx
je 0x5083fc
cmp eax, ecx
je 0x5083fc
test ebx, ebx
je 0x5083f6
mov dl, byte [esp + eax + 0x38]
mov byte [ebx], dl
inc ebx
dec ebp
inc eax
test ebp, ebp
jne 0x5083e7
test edi, edi
jne 0x508404
test ebp, ebp
je 0x508435
mov eax, dword [esp + 0x18]
push 0
push eax
lea ecx, [esp + 0x28]
push ecx
call fcn.004d1210
add esp, 0xc
test eax, eax
jne 0x5082f0
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x68]
xor ecx, esp
call fcn.0058cf08
add esp, 0x6c
ret
lea edx, [esp + 0x20]
push edx
call fcn.004d1330
lea eax, [esp + 0x3c]
push 0x40
push eax
call fcn.004d0f10
mov ecx, dword [esp + 0x8c]
mov eax, dword [ecx + 8]
mov ecx, dword [esp + 0x84]
add esp, 0xc
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0058cf08
add esp, 0x6c
ret