Function at 0x512bb0
Capabilities:
Encrypt data using des

Disassembly:
push ebp
mov ebp, esp
sub esp, 8
mov dword [ebp - 8], ecx
mov byte [ebp - 1], 1
push 1
push str.setByAlgorithmIdentifier
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x24]
call eax
mov ecx, dword [ebp + 8]
add ecx, 0x10
push ecx
push str.algId_oid
mov ecx, dword [ebp + 0xc]
call fcn.00435630
push 0x67fafc
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512c74
push 0x67fb10
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
push edx
push 0x67fb18
mov ecx, dword [ebp + 0xc]
call fcn.00435700
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fb24
mov ecx, dword [ebp - 8]
call fcn.00512560
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512750
mov edx, dword [ebp + 8]
add edx, 0x60
push edx
mov ecx, dword [ebp - 8]
call fcn.00512800
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512730
jmp 0x512ef5
push 0x67fb28
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512cd5
push str.AES128_CBC
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fb4c
mov ecx, dword [ebp - 8]
call fcn.00512560
push 0x80
mov ecx, dword [ebp - 8]
call fcn.00512750
mov ecx, dword [ebp + 8]
add ecx, 0x60
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512800
jmp 0x512ef5
push 0x67fb50
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512d36
push str.AES192_CBC
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fb74
mov ecx, dword [ebp - 8]
call fcn.00512560
push 0xc0
mov ecx, dword [ebp - 8]
call fcn.00512750
mov ecx, dword [ebp + 8]
add ecx, 0x60
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512800
jmp 0x512ef5
push 0x67fb78
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512d97
push str.AES256_CBC
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fb9c
mov ecx, dword [ebp - 8]
call fcn.00512560
push 0x100
mov ecx, dword [ebp - 8]
call fcn.00512750
mov ecx, dword [ebp + 8]
add ecx, 0x60
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512800
jmp 0x512ef5
push 0x67fba0
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512df8
push str.DES3_CBC
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fbc0
mov ecx, dword [ebp - 8]
call fcn.00512560
push 0xc0
mov ecx, dword [ebp - 8]
call fcn.00512750
mov ecx, dword [ebp + 8]
add ecx, 0x60
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512800
jmp 0x512ef5
push 0x67fbc4
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512e56
push 0x67fbd4
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fbd8
mov ecx, dword [ebp - 8]
call fcn.00512560
push 0x28
mov ecx, dword [ebp - 8]
call fcn.00512750
mov ecx, dword [ebp + 8]
add ecx, 0x60
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512800
jmp 0x512ef5
push 0x67fbdc
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.00420e30
movzx edx, al
test edx, edx
je 0x512ec1
push str.ARC4
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x18]
call eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x80]
push edx
push 0x67fbf8
mov ecx, dword [ebp + 0xc]
call fcn.00435700
push 0
mov ecx, dword [ebp - 8]
call fcn.0050b040
push 0x67fc04
mov ecx, dword [ebp - 8]
call fcn.00512560
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x80]
push ecx
mov ecx, dword [ebp - 8]
call fcn.00512750
jmp 0x512ef5
push str.Unrecognized_OID_for_symmetric_encryption_algorithm.
mov edx, dword [ebp + 0xc]
mov eax, dword [edx]
mov ecx, dword [ebp + 0xc]
mov edx, dword [eax + 0x14]
call edx
mov ecx, dword [ebp + 8]
add ecx, 0x10
call fcn.004b5930
push eax
push 0x67fc44
mov eax, dword [ebp + 0xc]
mov edx, dword [eax]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x2c]
call eax
mov byte [ebp - 1], 0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx]
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x28]
call eax
mov al, byte [ebp - 1]
mov esp, ebp
pop ebp
ret 8