Function at 0x1000e500
Capabilities:
Link many functions at runtime

Disassembly:
sub esp, 0x20c
mov eax, dword [0x1003efe0]
xor eax, esp
mov dword [esp + 0x208], eax
push esi
push 0x104
lea eax, [esp + 8]
mov esi, ecx
mov ecx, dword [0x10040694]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1000e737
lea edx, [esp + 4]
push 0x5c
push edx
call fcn.1001ba44
add esp, 8
test eax, eax
jne 0x1000e566
lea esp, [esp]
movzx ecx, word [eax + str.bdardrv.dll]
mov word [esp + eax + 4], cx
add eax, 2
test cx, cx
jne 0x1000e550
jmp 0x1000e57f
mov ecx, str.bdardrv.dll
sub eax, ecx
lea edx, [eax + 2]
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x1000e570
push 0
push 0
lea eax, [esp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryExW]
test eax, eax
mov dword [esi + 0x4c], eax
je 0x1000e737
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.rkAPI_InitScanEngines
push eax
call edi
test eax, eax
mov dword [esi], eax
je 0x1000e736
mov ecx, dword [esi + 0x4c]
push str.rkAPI_UninitScanEngines
push ecx
call edi
test eax, eax
mov dword [esi + 4], eax
je 0x1000e736
mov edx, dword [esi + 0x4c]
push str.rkAPI_SetScanOptions
push edx
call edi
test eax, eax
mov dword [esi + 8], eax
je 0x1000e736
mov eax, dword [esi + 0x4c]
push str.rkAPI_AddFileScanPath
push eax
call edi
test eax, eax
mov dword [esi + 0xc], eax
je 0x1000e736
mov ecx, dword [esi + 0x4c]
push str.rkAPI_StartScan
push ecx
call edi
test eax, eax
mov dword [esi + 0x10], eax
je 0x1000e736
mov edx, dword [esi + 0x4c]
push str.rkAPI_PauseScan
push edx
call edi
test eax, eax
mov dword [esi + 0x14], eax
je 0x1000e736
mov eax, dword [esi + 0x4c]
push str.rkAPI_StopScan
push eax
call edi
test eax, eax
mov dword [esi + 0x18], eax
je 0x1000e736
mov ecx, dword [esi + 0x4c]
push str.rkAPI_GetHandleToHiddenFileList
push ecx
call edi
test eax, eax
mov dword [esi + 0x1c], eax
je 0x1000e736
mov edx, dword [esi + 0x4c]
push str.rkAPI_GetHandleToHiddenProcessList
push edx
call edi
test eax, eax
mov dword [esi + 0x20], eax
je 0x1000e736
mov eax, dword [esi + 0x4c]
push str.rkAPI_GetNextHiddenFile
push eax
call edi
test eax, eax
mov dword [esi + 0x24], eax
je 0x1000e736
mov ecx, dword [esi + 0x4c]
push str.rkAPI_GetNextHiddenProcess
push ecx
call edi
test eax, eax
mov dword [esi + 0x28], eax
je 0x1000e736
mov edx, dword [esi + 0x4c]
push str.rkAPI_CloseFindHandle
push edx
call edi
test eax, eax
mov dword [esi + 0x2c], eax
je 0x1000e736
mov eax, dword [esi + 0x4c]
push str.rkAPI_GetStatistics
push eax
call edi
test eax, eax
mov dword [esi + 0x30], eax
je 0x1000e736
mov ecx, dword [esi + 0x4c]
push str.rkAPI_GetFileScanStatus
push ecx
call edi
test eax, eax
mov dword [esi + 0x34], eax
je 0x1000e736
mov edx, dword [esi + 0x4c]
push str.rkAPI_GetProcessScanStatus
push edx
call edi
test eax, eax
mov dword [esi + 0x38], eax
je 0x1000e736
mov eax, dword [esi + 0x4c]
push str.rkAPI_IsScanFinished
push eax
call edi
test eax, eax
mov dword [esi + 0x3c], eax
je 0x1000e736
mov ecx, dword [esi + 0x4c]
push str.rkAPI_RenameFile
push ecx
call edi
test eax, eax
mov dword [esi + 0x40], eax
je 0x1000e736
mov edx, dword [esi + 0x4c]
push str.rkAPI_InitAPI
push edx
call edi
test eax, eax
mov dword [esi + 0x44], eax
je 0x1000e736
mov eax, dword [esi + 0x4c]
push str.rkAPI_UninitAPI
push eax
call edi
test eax, eax
mov dword [esi + 0x48], eax
je 0x1000e736
mov ecx, dword [esi + 0x44]
call ecx
test eax, eax
je 0x1000e736
mov edx, dword [esi]
call edx
mov dword [esi + 0x50], eax
pop edi
cmp dword [esi + 0x50], 0
jne 0x1000e74b
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x1000e74b
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [esi + 0x50]
mov ecx, dword [esp + 0x20c]
pop esi
xor ecx, esp
call fcn.10019da6
add esp, 0x20c
ret