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

Disassembly:
mov eax, 0x28
call fcn.006149d0
mov eax, dword [esp + 0x3c]
mov ecx, dword [esp + 0x40]
push ebx
xor ebx, ebx
mov dword [esp + 0x24], 0
mov dword [eax], ebx
mov eax, dword [esp + 0x38]
push ebp
push edi
xor edi, edi
mov dword [esp + 0x18], 0
mov dword [eax], ebx
xor ebp, ebp
mov eax, dword [esp + 0x3c]
mov dword [eax], ebx
mov eax, dword [esp + 0x44]
mov dword [eax], ebx
mov eax, ecx
and eax, 6
cmp al, 6
jne 0x584496
call fcn.0048aed0
push str.PEM_read_bio_ex
push 0x3ab
push str.cryptopempem_lib.c
call fcn.0048afd0
push ebp
push 0x80106
push 9
call fcn.0048b0e0
add esp, 0x18
jmp 0x5846bb
mov ebp, ecx
and ebp, 1
mov dword [esp + 0x24], ebp
je 0x5844a8
call fcn.004edbb0
jmp 0x5844ad
call fcn.004edba0
mov ebx, eax
push esi
push ebx
call fcn.00491700
mov esi, eax
push ebx
mov dword [esp + 0x24], esi
call fcn.00491700
mov ebx, eax
add esp, 8
mov dword [esp + 0x14], ebx
mov dword [esp + 0x20], ebx
test esi, esi
je 0x584864
test ebx, ebx
je 0x584864
mov dword [esp + 0x2c], edi
mov dword [esp + 0x24], 1
push 0x2fd
push str.cryptopempem_lib.c
push 0x100
test ebp, ebp
je 0x584505
call fcn.004aad20
jmp 0x58450a
call fcn.004829d0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x5846b8
nop word [eax + eax]
push 0xff
push esi
push dword [esp + 0x44]
call fcn.004912c0
mov ecx, eax
add esp, 0xc
test ecx, ecx
jle 0x5845cd
push dword [esp + 0x24]
mov eax, dword [esp + 0x54]
and eax, 0xfffffffb
push eax
push ecx
push esi
call fcn.00585930
push 0xb
push str._____BEGIN
push esi
mov ebx, eax
mov dword [esp + 0x40], edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
add esp, 0x1c
test eax, eax
jne 0x584520
cmp ebx, 6
jl 0x584520
push 6
lea ebp, [esi - 6]
add ebp, ebx
push str.______n
push ebp
call sub.api_ms_win_crt_string_l1_1_0.dll_strncmp
add esp, 0xc
test eax, eax
jne 0x584520
push 0x313
mov byte [ebp], al
sub ebx, 0x10
mov ebp, dword [esp + 0x2c]
push str.cryptopempem_lib.c
push ebx
test ebp, ebp
je 0x5845a7
call fcn.004aad20
jmp 0x5845ac
call fcn.004829d0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x5845f8
push ebx
lea eax, [esi + 0xb]
push eax
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov dword [esp + 0x2c], 1
jmp 0x5845f8
call fcn.0048aed0
push str.get_name
push 0x305
push str.cryptopempem_lib.c
call fcn.0048afd0
push 0
push 0x6c
push 9
call fcn.0048b0e0
mov ebp, dword [esp + 0x40]
add esp, 0x18
mov ebx, edi
push 0x31a
push str.cryptopempem_lib.c
test ebp, ebp
je 0x584618
push 0x100
push esi
call fcn.004aac10
add esp, 0x10
jmp 0x584621
push esi
call fcn.00482a60
add esp, 0xc
cmp dword [esp + 0x2c], 0
mov edi, ebx
je 0x5846b4
mov ebp, dword [esp + 0x50]
lea eax, [esp + 0x20]
push ebp
push ebx
push eax
lea eax, [esp + 0x28]
push eax
push dword [esp + 0x4c]
call fcn.00585070
add esp, 0x14
test eax, eax
je 0x58485b
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x24]
push 0
push 0x73
push eax
mov dword [esp + 0x24], eax
call fcn.00490fe0
mov eax, dword [esp + 0x28]
add esp, 0x10
mov eax, dword [eax]
mov dword [esp + 0x10], eax
test eax, eax
je 0x5846b4
call fcn.005a8e00
mov edi, eax
mov dword [esp + 0x30], edi
test edi, edi
jne 0x5846ec
call fcn.0048aed0
push str.PEM_read_bio_ex
push 0x3c5
push str.cryptopempem_lib.c
call fcn.0048afd0
push edi
push 0x80006
push 9
call fcn.0048b0e0
add esp, 0x18
mov edi, ebx
mov ebx, dword [esp + 0x14]
xor ebp, ebp
pop esi
push dword [esp + 0x2c]
call fcn.005a8de0
add esp, 4
test byte [esp + 0x4c], 1
push 0x3eb
push str.cryptopempem_lib.c
je 0x584893
push 0
push edi
call fcn.004aac10
add esp, 0x10
jmp 0x58489c
push edi
call fcn.005a8be0
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x14]
push dword [esp + 0x14]
mov eax, dword [eax + 4]
push eax
push ecx
push eax
push edi
call fcn.005a8c00
add esp, 0x18
test eax, eax
js 0x584839
lea eax, [esp + 0x34]
push eax
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 4]
add eax, dword [esp + 0x14]
push eax
push edi
call fcn.005a8b90
add esp, 0xc
test eax, eax
js 0x584839
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
add ecx, dword [esp + 0x34]
mov edi, dword [esp + 0x1c]
push 0
push 0
push 3
mov dword [esp + 0x1c], ecx
push edi
mov dword [eax], ecx
call fcn.00490fe0
mov esi, eax
push 0x3d5
push str.cryptopempem_lib.c
push ebp
lea ecx, [esi + 1]
push ecx
call fcn.00585900
mov ecx, dword [esp + 0x64]
push 0x3d6
push str.cryptopempem_lib.c
push ebp
push dword [esp + 0x3c]
mov dword [ecx], eax
call fcn.00585900
mov ecx, dword [esp + 0x78]
add esp, 0x30
mov dword [ecx], eax
mov ecx, dword [esp + 0x44]
mov ecx, dword [ecx]
test ecx, ecx
je 0x5847f5
test eax, eax
je 0x5847f5
test esi, esi
je 0x5847b3
push esi
push ecx
push edi
call fcn.00491a40
add esp, 0xc
cmp eax, esi
jne 0x5847f5
mov eax, dword [esp + 0x44]
mov eax, dword [eax]
mov byte [esi + eax], 0
mov eax, dword [esp + 0x48]
push dword [esp + 0x10]
push dword [eax]
push dword [esp + 0x1c]
call fcn.00491a40
mov ecx, dword [esp + 0x1c]
add esp, 0xc
cmp eax, ecx
jne 0x5847f5
mov eax, dword [esp + 0x4c]
xor edi, edi
mov dword [eax], ecx
lea ebp, [edi + 1]
mov eax, dword [esp + 0x40]
mov dword [eax], ebx
mov ebx, dword [esp + 0x14]
jmp 0x5846ba
mov esi, dword [esp + 0x44]
push 0x3e5
push str.cryptopempem_lib.c
push 0
push ebp
push dword [esi]
call fcn.005858d0
push 0x3e7
mov dword [esi], 0
mov esi, dword [esp + 0x60]
push str.cryptopempem_lib.c
push 0
push ebp
push dword [esi]
call fcn.005858d0
add esp, 0x28
mov dword [esi], 0
jmp 0x5846b2
call fcn.0048aed0
push str.PEM_read_bio_ex
push 0x3ce
push str.cryptopempem_lib.c
call fcn.0048afd0
push 0
push 0x64
jmp 0x5846a8
mov ebx, dword [esp + 0x20]
jmp 0x5846b8
call fcn.0048aed0
push str.PEM_read_bio_ex
push 0x3b3
push str.cryptopempem_lib.c
call fcn.0048afd0
push 0
push 0x80020
push 9
call fcn.0048b0e0
add esp, 0x18
jmp 0x5846b8
push edi
call fcn.00482a60
add esp, 0xc
push dword [esp + 0x18]
call fcn.00491170
push ebx
call fcn.00491170
add esp, 8
mov eax, ebp
pop edi
pop ebp
pop ebx
add esp, 0x28
ret