Function at 0x41d314
Capabilities:
Hash data using sha1 via wincrypt
Hash data via wincrypt
Initialize hashing via wincrypt

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x38
mov dword [ebp - 4], 0
mov dword [ebp - 8], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x14], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x24], 0
cmp dword [ebp + 0x14], 0
jne 0x41d372
mov dword [ebp - 4], 0x8003
jmp 0x41d3be
cmp dword [ebp + 0x14], 1
jne 0x41d388
mov dword [ebp - 4], 0x8004
jmp 0x41d3be
cmp dword [ebp + 0x14], 2
jne 0x41d39e
mov dword [ebp - 4], 0x800c
jmp 0x41d3be
cmp dword [ebp + 0x14], 3
jne 0x41d3b4
mov dword [ebp - 4], 0x800e
jmp 0x41d3be
mov eax, 0xfffffffb
jmp 0x41d6b5
lea eax, [ebp - 0xc]
push eax
lea eax, [ebp - 8]
push eax
push dword [ebp + 8]
call fcn.0041d6dd
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x41d3e5
mov eax, 0xfffffffc
jmp 0x41d6b5
mov dword [ebp - 0x28], esp
lea eax, [ebp - 0x10]
push eax
push 0
push 0
push dword [ebp - 4]
push dword [ebp - 8]
xor eax, eax
call dword [sym.imp.ADVAPI32.dll_CryptCreateHash]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d422
push 0x21e
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x41d439
mov eax, 0xfffffffd
jmp 0x41d6b5
mov ebx, dword [ebp + 0xc]
mov eax, dword [ebx]
test eax, eax
je 0x41d455
push eax
mov eax, dword [eax + 4]
add eax, 8
push eax
call fcn.004268a9
pop ecx
pop esi
mov edi, eax
rep movsb byte es:[edi], byte [esi]
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x41d466
push ebx
call fcn.004268af
add esp, 4
pop eax
mov dword [ebp - 0x14], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x14]
test eax, eax
jne 0x41d47d
mov eax, 0x45134f
push eax
push 1
mov ebx, 0x194
call fcn.00427ef0
add esp, 0x10
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x28], esp
push 0
push dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x41d4a8
add eax, 8
push eax
push dword [ebp - 0x10]
xor eax, eax
call dword [sym.imp.ADVAPI32.dll_CryptHashData]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d4d2
push 0x2f4
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x41d515
mov dword [ebp - 0x28], esp
push dword [ebp - 0x10]
xor eax, eax
call dword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d50b
push 0x32a
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov eax, 0xfffffffe
jmp 0x41d6b5
mov dword [ebp - 0x1c], 0
push dword [ebp + 0x10]
call fcn.00418899
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
push eax
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41d53b
push ebx
call fcn.004268af
add esp, 4
pop eax
mov dword [ebp - 0x20], eax
push 0x80000005
push 0
mov eax, dword [ebp - 0x20]
test eax, eax
jne 0x41d552
mov eax, 0x45134f
push eax
push 1
mov ebx, 0x194
call fcn.00427ef0
add esp, 0x10
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], esp
push 0
push 0
push dword [ebp - 0xc]
push dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x41d585
add eax, 8
push eax
push dword [ebp - 0x10]
xor eax, eax
call dword [sym.imp.ADVAPI32.dll_CryptVerifySignatureA]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d5af
push 0x424
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
jne 0x41d67f
mov dword [ebp - 0x28], esp
push dword [ebp - 0x10]
xor eax, eax
call dword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d5e8
push 0x46a
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov dword [ebp - 0x28], esp
xor eax, eax
call dword [sym.imp.KERNEL32.DLL_GetLastError]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d611
push 0x49d
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x80090006
jne 0x41d62b
mov eax, 0xffffffff
jmp 0x41d6b5
cmp dword [ebp - 0x24], 0
jle 0x41d659
fld qword [0x476318]
fild dword [ebp - 0x24]
fstp qword [ebp - 0x2c]
fsub qword [ebp - 0x2c]
fstp qword [ebp - 0x34]
fld qword [ebp - 0x34]
call fcn.00401f8d
jmp 0x41d6b5
cmp dword [ebp - 0x24], 0
jge 0x41d670
mov eax, dword [ebp - 0x24]
jmp 0x41d6b5
mov eax, 0xfffffffa
jmp 0x41d6b5
mov dword [ebp - 0x28], esp
push dword [ebp - 0x10]
xor eax, eax
call dword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
nop
nop
cmp dword [ebp - 0x28], esp
je 0x41d6ab
push 0x606
push 0x40114a2
push 6
call fcn.004268b5
add esp, 0xc
mov eax, 0
jmp 0x41d6b5
push eax
mov ebx, dword [ebp - 0x14]
test ebx, ebx
je 0x41d6c6
push ebx
call fcn.004268af
add esp, 4
mov ebx, dword [ebp - 0x20]
test ebx, ebx
je 0x41d6d6
push ebx
call fcn.004268af
add esp, 4
pop eax
mov esp, ebp
pop ebp
ret 0x14