Function at 0x5aba80
Capabilities:
Create new key via cryptacquirecontext
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x637a98
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
mov eax, dword [0x6d45e0]
xor eax, esp
mov dword [esp + 0x78], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x6d45e0]
xor eax, esp
push eax
lea eax, [esp + 0x90]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, dword [esp + 0xa0]
push 0xffffffffffffffff
push 0
mov dword [ebx + 0x14], 0xf
mov dword [ebx + 0x10], 0
push eax
mov dword [esp + 0x2c], ebx
mov byte [ebx], 0
call fcn.00404890
lea eax, [esp + 0x14]
mov dword [esp + 0x98], 0
push eax
lea eax, [esp + 0x40]
mov dword [esp + 0x20], 0
push eax
lea eax, [esp + 0x20]
mov dword [esp + 0x1c], 0x50
push eax
push 0
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_CryptEnumProvidersA]
test eax, eax
je 0x5abbfc
jmp 0x5abb20
cmp byte [esp + 0x3c], 0
jne 0x5abb2b
xor ecx, ecx
jmp 0x5abb3b
lea ecx, [esp + 0x3c]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x5abb32
sub ecx, edx
cmp dword [ebx + 0x14], 0x10
mov ebp, dword [ebx + 0x10]
jb 0x5abb48
mov esi, dword [ebx]
jmp 0x5abb4a
mov esi, ebx
cmp ebp, ecx
mov edx, ecx
cmovb edx, ebp
test edx, edx
je 0x5abbb0
lea edi, [esp + 0x3c]
sub edx, 4
jb 0x5abb71
mov edi, edi
mov eax, dword [esi]
cmp eax, dword [edi]
jne 0x5abb76
add esi, 4
add edi, 4
sub edx, 4
jae 0x5abb60
cmp edx, 0xfffffffc
je 0x5abbaa
mov al, byte [esi]
cmp al, byte [edi]
jne 0x5abba3
cmp edx, 0xfffffffd
je 0x5abbaa
mov al, byte [esi + 1]
cmp al, byte [edi + 1]
jne 0x5abba3
cmp edx, 0xfffffffe
je 0x5abbaa
mov al, byte [esi + 2]
cmp al, byte [edi + 2]
jne 0x5abba3
cmp edx, 0xffffffff
je 0x5abbaa
mov al, byte [esi + 3]
cmp al, byte [edi + 3]
je 0x5abbaa
sbb eax, eax
or eax, 1
jmp 0x5abbac
xor eax, eax
test eax, eax
jne 0x5abbc2
cmp ebp, ecx
jae 0x5abbb9
or eax, 0xffffffff
jmp 0x5abbc0
xor eax, eax
cmp ebp, ecx
setne al
test eax, eax
sete al
test al, al
jne 0x5abc35
mov ebp, dword [esp + 0x1c]
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x40]
mov dword [esp + 0x18], 0x50
push eax
lea eax, [esp + 0x20]
inc ebp
push eax
push 0
push 0
push ebp
mov dword [esp + 0x34], ebp
call dword [sym.imp.ADVAPI32.dll_CryptEnumProvidersA]
test eax, eax
jne 0x5abb20
push 0x1c
push str.Could_not_find_provider_name
lea ecx, [esp + 0x2c]
mov dword [esp + 0x40], 0xf
mov dword [esp + 0x3c], 0
mov byte [esp + 0x2c], 0
call fcn.00404a10
lea eax, [esp + 0x24]
mov byte [esp + 0x98], 1
push eax
mov ecx, ebx
call fcn.005abe90
cmp dword [ebx + 0x14], 0x10
jb 0x5abc3f
mov eax, dword [ebx]
jmp 0x5abc41
mov eax, ebx
push 0xf0000040
push dword [esp + 0x1c]
push eax
push 0
lea eax, [ebx + 0x18]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptAcquireContextA]
test eax, eax
jne 0x5abc8f
push 0x1d
push str.Could_not_acquire_CSP_context
lea ecx, [esp + 0x2c]
mov dword [esp + 0x40], 0xf
mov dword [esp + 0x3c], eax
mov byte [esp + 0x2c], al
call fcn.00404a10
lea eax, [esp + 0x24]
mov byte [esp + 0x98], 2
push eax
mov ecx, ebx
call fcn.005abe90
mov eax, ebx
mov ecx, dword [esp + 0x90]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x78]
xor ecx, esp
call fcn.004c392d
add esp, 0x88
ret 4