Function at 0x10007e0d
Capabilities:
Create new key via cryptacquirecontext
Encrypt or decrypt via wincrypt
Get file attributes
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.KERNEL32.dll_ResetEvent]
push edi
xor ebx, ebx
push ebx
mov dword [ebp - 8], eax
call esi
test eax, eax
mov edi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
je 0x10007e34
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
push 1
push ebx
push ebx
lea eax, [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextA]
test eax, eax
jne 0x10007e85
push ebx
call esi
test eax, eax
je 0x10007e63
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push 8
push 1
push ebx
push ebx
lea eax, [ebp - 4]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextA]
push ebx
call esi
test eax, eax
je 0x10007e8f
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
lea eax, [ebp - 0xc]
push eax
push ebx
push ebx
push 0x8003
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CryptCreateHash]
push ebx
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0xc]
call dword [sym.imp.ADVAPI32.dll_CryptHashData]
push ebx
call esi
test eax, eax
je 0x10007ecf
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
lea eax, [ebp - 0x10]
push eax
push ebx
push dword [ebp - 0xc]
push 0x6602
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CryptDeriveKey]
push ebx
call esi
test eax, eax
je 0x10007f01
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
lea eax, [ebp - 8]
push eax
push ebx
push ebx
push 1
push ebx
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_CryptEncrypt]
push dword [ebp - 8]
call fcn.10005488
pop ecx
mov ecx, dword [ebp + 0x18]
push ebx
mov dword [ecx], eax
call esi
test eax, eax
je 0x10007f3e
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push dword [ebp + 0xc]
mov eax, dword [ebp + 0x18]
push dword [ebp + 8]
push dword [eax]
call fcn.100084d0
mov eax, dword [ebp + 0x1c]
mov ecx, dword [ebp + 0xc]
add esp, 0xc
push dword [ebp - 8]
mov dword [eax], ecx
push eax
mov eax, dword [ebp + 0x18]
push dword [eax]
push ebx
push 1
push ebx
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_CryptEncrypt]
push ebx
call esi
test eax, eax
je 0x10007f8b
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push dword [ebp - 0xc]
call dword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
push ebx
call esi
test eax, eax
je 0x10007fb0
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push dword [ebp - 0x10]
call dword [sym.imp.ADVAPI32.dll_CryptDestroyKey]
push ebx
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CryptReleaseContext]
push ebx
call esi
test eax, eax
je 0x10007fdf
push ebx
call edi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
push ebx
call edi
push ebx
call esi
pop edi
pop esi
pop ebx
leave
ret