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

Disassembly:
mov eax, 0x48
call fcn.0045cf80
mov eax, dword [0x673010]
xor eax, esp
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x5c]
push ebx
mov dword [esp + 0x14], eax
xor ebx, ebx
mov eax, dword [esp + 0x64]
push ebp
mov dword [esp + 0x28], eax
xor ebp, ebp
mov eax, dword [esp + 0x6c]
push esi
mov dword [esp + 0x28], eax
xor esi, esi
mov eax, dword [esp + 0x74]
push edi
xor edi, edi
mov dword [esp + 0x24], ebp
and eax, 1
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], edi
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4cade2
push 0xe0
push str.cryptopempem_lib.c
push 0
push ebp
call fcn.004c7c60
push 0xe0
push str.cryptopempem_lib.c
push 0
push esi
call fcn.004c7c60
push 0xe0
push str.cryptopempem_lib.c
push ebx
push edi
call fcn.004c7c60
add esp, 0x30
jmp 0x4cae15
push 0xe2
push str.cryptopempem_lib.c
push ebp
call fcn.004a6ed0
push 0xe2
push str.cryptopempem_lib.c
push esi
call fcn.004a6ed0
push 0xe2
push str.cryptopempem_lib.c
push edi
call fcn.004a6ed0
add esp, 0x24
push dword [esp + 0x78]
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x34]
push eax
push dword [esp + 0x34]
call fcn.004c9d60
add esp, 0x18
test eax, eax
je 0x4cb243
push dword [esp + 0x28]
mov ebp, dword [esp + 0x28]
push ebp
call fcn.004ca300
add esp, 8
test eax, eax
jne 0x4cae6b
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
jmp 0x4cada4
mov ebx, dword [esp + 0x14]
xorps xmm0, xmm0
mov dword [esp + 0x50], 0
movups xmmword [esp + 0x40], xmm0
test ebx, ebx
je 0x4cb123
mov al, byte [ebx]
test al, al
je 0x4cb123
cmp al, 0xa
je 0x4cb123
push 0xa
push str.Proc_Type:
push ebx
call fcn.005cc8e0
add esp, 0xc
test eax, eax
je 0x4caf18
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x1f6
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x6b
push 9
call fcn.004ae040
add esp, 0x18
mov ebx, dword [esp + 0x10]
xor edi, edi
mov esi, dword [esp + 0x1c]
test esi, esi
je 0x4cb1be
push 0xe0
push str.cryptopempem_lib.c
push 0
push ebp
call fcn.004c7c60
add esp, 0x10
push 0xe0
push str.cryptopempem_lib.c
push 0
push dword [esp + 0x20]
call fcn.004c7c60
add esp, 0x10
jmp 0x4cb1e7
lea edi, [ebx + 0xa]
push 0x60bdb4
push edi
call fcn.005d1840
add edi, eax
add esp, 8
cmp byte [edi], 0x34
jne 0x4caed4
mov al, byte [edi + 1]
add edi, 2
cmp al, 0x2c
jne 0x4caed4
push 0x60bdb4
push edi
call fcn.005d1840
push 9
add edi, eax
push 0x60bc14
push edi
call fcn.005cc8e0
add esp, 0x14
test eax, eax
jne 0x4cb19c
add edi, 9
push str.__t_r_n
push edi
call fcn.005d1840
add esp, 8
test eax, eax
je 0x4cb19c
push 0x60bdc0
push edi
call fcn.005d1840
add edi, eax
add esp, 8
mov al, byte [edi]
inc edi
cmp al, 0xa
je 0x4cafb1
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x209
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x70
jmp 0x4caeca
push 9
push str.DEK_Info:
push edi
call fcn.005cc8e0
add esp, 0xc
test eax, eax
je 0x4cafe7
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x212
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x69
jmp 0x4caeca
add edi, 9
push 0x60bdb4
push edi
call fcn.005d1840
add edi, eax
push 0x60bdc4
push edi
mov esi, edi
call fcn.005c93d0
mov bl, byte [edi + eax]
add edi, eax
push esi
mov byte [edi], 0
call fcn.004ac550
push 0x60bdb4
mov dword [esp + 0x58], eax
push edi
mov dword [esp + 0x3c], eax
mov byte [edi], bl
call fcn.005d1840
mov ebx, dword [esp + 0x3c]
add edi, eax
add esp, 0x1c
mov esi, edi
test ebx, ebx
jne 0x4cb057
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x225
push str.cryptopempem_lib.c
call fcn.004adf90
push ebx
push 0x72
jmp 0x4caeca
push ebx
call fcn.004a05f0
add esp, 4
test eax, eax
jle 0x4cb090
mov al, byte [edi]
inc edi
cmp al, 0x2c
je 0x4cb0c0
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x22a
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x81
jmp 0x4caeca
mov edi, esi
test eax, eax
jne 0x4cb0c0
cmp byte [esi], 0x2c
jne 0x4cb0c0
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x22d
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x82
jmp 0x4caeca
push ebx
call fcn.004a05f0
mov esi, eax
add esp, 4
test esi, esi
jle 0x4cb0df
push esi
lea eax, [esp + 0x48]
push 0
push eax
call fcn.005bbf50
add esp, 0xc
lea ebx, [esi + esi]
xor esi, esi
test ebx, ebx
jle 0x4cb123
nop dword [eax + eax]
movzx eax, byte [esi + edi]
push eax
call fcn.004a6830
mov edx, eax
add esp, 4
test edx, edx
js 0x4cb17a
mov eax, esi
test eax, eax
jns 0x4cb10c
add eax, 1
sar eax, 1
mov ecx, esi
inc esi
not ecx
and ecx, 1
shl ecx, 2
shl dl, cl
or byte [esp + eax + 0x44], dl
cmp esi, ebx
jl 0x4cb0f0
push dword [esp + 0x2c]
mov ebx, dword [esp + 0x14]
lea eax, [esp + 0x1c]
push dword [esp + 0x34]
push eax
lea eax, [esp + 0x4c]
push ebx
push eax
call fcn.004c97a0
add esp, 0x14
test eax, eax
je 0x4caed8
mov eax, dword [esp + 0x34]
mov edi, 1
mov ecx, dword [esp + 0x38]
mov dword [eax], ebx
mov eax, dword [esp + 0x18]
mov dword [ecx], eax
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4caeda
mov esi, dword [esp + 0x1c]
mov dword [eax], ebp
test esi, esi
je 0x4cb1d1
jmp 0x4caefb
call fcn.004ade90
push str.load_iv
push 0x243
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x67
jmp 0x4caeca
call fcn.004ade90
push str.PEM_get_EVP_CIPHER_INFO
push 0x203
push str.cryptopempem_lib.c
call fcn.004adf90
push 0
push 0x6a
jmp 0x4caeca
push 0xe2
push str.cryptopempem_lib.c
push ebp
call fcn.004a6ed0
add esp, 0xc
push 0xe2
push str.cryptopempem_lib.c
push dword [esp + 0x1c]
call fcn.004a6ed0
add esp, 0xc
test edi, edi
jne 0x4cb22e
test esi, esi
je 0x4cb21b
push 0xe0
push str.cryptopempem_lib.c
push dword [esp + 0x20]
push ebx
call fcn.004c7c60
add esp, 0x10
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.0045bfb6
add esp, 0x48
ret
push 0xe2
push str.cryptopempem_lib.c
push ebx
call fcn.004a6ed0
add esp, 0xc
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x44]
xor ecx, esp
call fcn.0045bfb6
add esp, 0x48
ret
call fcn.004ae690
test eax, eax
mov ecx, 0x7fffff
mov edx, bind
cmovs ecx, edx
and ecx, eax
cmp ecx, 0x6c
jne 0x4cb271
push dword [esp + 0x28]
push str.Expecting:
push 2
call fcn.004ae2f0
add esp, 0xc
mov ecx, dword [esp + 0x54]
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0045bfb6
add esp, 0x48
ret