Function at 0x100065d3
Capabilities:
Create new key via cryptacquirecontext
Encrypt or decrypt via wincrypt
Hash data via wincrypt
Hash data with md5
Initialize hashing via wincrypt

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
mov eax, dword [ebp + 0xc]
push ebx
push esi
mov esi, dword [sym.imp.USER32.dll_GetClassNameA]
push edi
xor edi, edi
push edi
push edi
push edi
mov dword [ebp - 8], eax
call esi
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
mov ebx, dword [sym.imp.KERNEL32.dll_GetLastError]
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
push 1
push edi
push edi
lea eax, [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextA]
test eax, eax
jne 0x1000663a
push 8
push 1
push edi
push edi
lea eax, [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextA]
lea eax, [ebp - 0xc]
push eax
push edi
push edi
push 0x8003
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CryptCreateHash]
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0xc]
call dword [sym.imp.ADVAPI32.dll_CryptHashData]
lea eax, [ebp - 0x10]
push eax
push edi
push dword [ebp - 0xc]
push 0x6602
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CryptDeriveKey]
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
lea eax, [ebp - 8]
push eax
push edi
push edi
push 1
push edi
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_CryptEncrypt]
push dword [ebp - 8]
call fcn.100043e1
push dword [ebp + 0xc]
mov ecx, dword [ebp + 0x18]
push dword [ebp + 8]
mov dword [ecx], eax
push eax
call fcn.10006c10
add esp, 0x10
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push dword [ebp - 8]
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0xc]
push eax
mov dword [eax], ecx
mov eax, dword [ebp + 0x18]
push dword [eax]
push edi
push 1
push edi
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_CryptEncrypt]
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
call ebx
push edi
push edi
push edi
call esi
push edi
push edi
push edi
call esi
push dword [ebp - 0xc]
call dword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
push edi
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
pop edi
pop esi
pop ebx
leave
ret