Function at 0x482f33
Capabilities:
Get file size
Hash data via wincrypt
Initialize hashing via wincrypt
Read file via mapping

Disassembly:
push 0x2c
mov eax, 0x5a8aa6
call fcn.00462cd6
mov dword [ebp - 0x24], ecx
mov eax, dword [ebp + 8]
xor edi, edi
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp + 0x14]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x28], ebx
mov dword [ebp - 0x2c], edi
mov esi, edi
mov dword [ebp - 4], edi
mov dword [ebp - 0x30], esi
mov ebx, edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x34], edi
and dword [ebp - 0x14], edi
mov byte [ebp - 4], 2
mov dword [ebp - 0x18], 4
test eax, eax
jne 0x482f95
mov ebx, 0x80070057
push 0xac
push str.d:dbs_shodct1116_102044cmd8clientonedrive_setup_standalone_fsmanager_filehash.cpp
push ebx
call fcn.0048259a
jmp 0x483210
test edx, edx
jne 0x482fad
push 0xad
mov eax, 0x80004003
push str.d:dbs_shodct1116_102044cmd8clientonedrive_setup_standalone_fsmanager_filehash.cpp
mov ebx, eax
push eax
jmp 0x482f8b
cmp dword [ebp - 0x28], 0
jne 0x482fba
push 0xae
jmp 0x482f9e
mov eax, dword [ecx]
test eax, eax
jne 0x482fd7
call fcn.004839f3
mov ebx, eax
test ebx, ebx
jns 0x482fd2
push 0xb2
jmp 0x482f85
mov eax, dword [ebp - 0x24]
mov eax, dword [eax]
lea ecx, [ebp - 0x14]
push ecx
push 0
push 0
push dword [ebp + 0xc]
push eax
call dword [sym.imp.ADVAPI32.dll_CryptCreateHash]
test eax, eax
jne 0x483013
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483210
push 0xb6
jmp 0x482f85
push 0
push 0x80
push 3
push 0
push 1
push SysReAllocString
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x20], eax
cmp eax, 0xffffffff
jne 0x48305c
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483210
push 0xba
jmp 0x482f85
push 0
push eax
mov dword [ebp - 0x2c], eax
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x24], eax
cmp eax, 0xffffffff
jne 0x483096
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483210
push 0xbf
jmp 0x482f85
test eax, eax
jne 0x4830a9
mov ebx, 0x80040c14
push 0xc2
jmp 0x482f85
xor eax, eax
push eax
push eax
push eax
push 2
push eax
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_CreateFileMappingW]
test eax, eax
jne 0x4830e4
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483210
push 0xc7
jmp 0x482f85
xor ecx, ecx
mov esi, eax
push ecx
push ecx
push ecx
push 4
push eax
mov dword [ebp - 0x30], esi
call dword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x483124
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483210
push 0xca
jmp 0x482f85
push 0
push dword [ebp - 0x24]
push eax
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_CryptHashData]
test eax, eax
jne 0x483168
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483207
push 0xcd
push str.d:dbs_shodct1116_102044cmd8clientonedrive_setup_standalone_fsmanager_filehash.cpp
push ebx
call fcn.0048259a
jmp 0x483207
push 0
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1c]
push eax
push 4
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
jne 0x4831a0
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483207
push 0xce
jmp 0x483158
push dword [ebp - 0x1c]
call fcn.00575a07
mov edi, eax
mov dword [ebp - 0x34], edi
pop ecx
test edi, edi
jne 0x4831be
mov ebx, 0x8007000e
push 0xd0
jmp 0x483158
push 0
lea eax, [ebp - 0x1c]
push eax
push edi
push 2
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_CryptGetHashParam]
test eax, eax
jne 0x4831f6
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ebx, ax
or ebx, 0x80070000
test eax, eax
cmovle ebx, eax
test ebx, ebx
jns 0x483207
push 0xd1
jmp 0x483158
mov ecx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov dword [ecx], eax
mov eax, edi
mov ecx, dword [ebp - 0x28]
xor edi, edi
mov dword [ecx], eax
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_UnmapViewOfFile]
cmp dword [ebp - 0x14], 0
je 0x483223
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_CryptDestroyHash]
and dword [ebp - 0x14], 0
test esi, esi
je 0x483230
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor esi, esi
push edi
call fcn.0046326b
pop ecx
test esi, esi
je 0x483242
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x483250
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
call fcn.00462c80
ret 0x10