Function at 0x45e318
Capabilities:
Copy file
Delete file
Move file
Set file attributes

Disassembly:
push 0x228
mov eax, 0x4720d4
call fcn.0044f666
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x21c]
mov edx, edi
call fcn.00462eba
and dword [ebp - 4], 0
lea ecx, [ebp - 0x230]
call fcn.00462525
mov byte [ebp - 4], 1
push str.KNBDrv64.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
jne 0x45e385
call fcn.00457ff9
lea ecx, [ebp - 0x21c]
mov al, byte [eax + 0x20]
test al, al
je 0x45e48e
push str.knbdrv.sys
call fcn.004064f3
jmp 0x45e493
push str.knbdrv.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
je 0x45e47c
push str.ksapi64.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
jne 0x45e3d2
call fcn.00457ff9
lea ecx, [ebp - 0x21c]
mov al, byte [eax + 0x20]
test al, al
je 0x45e48e
push str.ksapi.sys
jmp 0x45e37b
push str.ksapi.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
je 0x45e47c
push str.knbdrv64_ev.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
jne 0x45e41e
call fcn.00457ff9
lea ecx, [ebp - 0x21c]
mov al, byte [eax + 0x20]
test al, al
je 0x45e48e
push str.knbdrv_ev.sys
jmp 0x45e37b
push str.knbdrv_ev.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
je 0x45e47c
push str.ksapi64_ev.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
jne 0x45e466
call fcn.00457ff9
lea ecx, [ebp - 0x21c]
mov al, byte [eax + 0x20]
test al, al
je 0x45e48e
push str.ksapi_ev.sys
jmp 0x45e37b
push str.ksapi_ev.sys
push dword [ebp - 0x21c]
call fcn.004399d2
pop ecx
pop ecx
test eax, eax
jne 0x45e493
call fcn.00457ff9
mov al, byte [eax + 0x20]
test al, al
je 0x45e493
lea ecx, [ebp - 0x21c]
call fcn.004062d7
mov eax, dword [ebp - 0x21c]
cmp dword [eax - 0xc], 0
je 0x45e689
and dword [ebp - 0x22c], 0
lea ecx, [ebp - 0x22c]
and dword [ebp - 0x228], 0
call fcn.004581d0
test eax, eax
je 0x45e4d4
cmp dword [ebp - 0x22c], 0
je 0x45e4d4
lea ecx, [ebp - 0x228]
call fcn.0045818c
mov ebx, 0x48a9dc
mov byte [ebp - 4], 2
push ebx
lea ecx, [ebp - 0x220]
xor esi, esi
call fcn.0040651c
push ebx
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 3
call fcn.0040651c
push 0x208
lea eax, [ebp - 0x218]
mov byte [ebp - 4], 4
push esi
push eax
call fcn.0042ac90
lea eax, [ebp - 0x21c]
push eax
lea edx, [ebp - 0x230]
lea ecx, [ebp - 0x234]
call fcn.0040404b
add esp, 0x10
push eax
lea ecx, [ebp - 0x220]
mov byte [ebp - 4], 5
call fcn.004042c7
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x234]
lea ecx, [ecx - 0x10]
call fcn.0040630c
push 0xffffffffffffffff
push dword [ebp - 0x21c]
mov ebx, 0x104
lea eax, [ebp - 0x218]
push ebx
push eax
call fcn.0043a478
add esp, 0x10
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveExtensionW]
push 0xffffffffffffffff
push str._del.sys
lea eax, [ebp - 0x218]
push ebx
push eax
call fcn.0043a97d
lea eax, [ebp - 0x218]
push eax
lea edx, [ebp - 0x230]
lea ecx, [ebp - 0x234]
call fcn.00406651
add esp, 0x14
push eax
lea ecx, [ebp - 0x224]
mov byte [ebp - 4], 6
call fcn.004042c7
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x234]
lea ecx, [ecx - 0x10]
call fcn.0040630c
push 0x80
push dword [ebp - 0x220]
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov ebx, dword [sym.imp.KERNEL32.dll_MoveFileExW]
push 1
push dword [ebp - 0x224]
push dword [ebp - 0x220]
call ebx
push esi
push dword [ebp - 0x220]
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
mov edi, eax
test edi, edi
jne 0x45e60c
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
push 4
push 0
push dword [ebp - 0x224]
call ebx
push dword [ebp - 0x224]
push dword [ebp - 0x220]
push esi
push edi
push str.KChannel::UpdateDriverFile_return:_d__error:_d__path:_ws__del_path:_ws
push 0x49db70
call fcn.0046ad90
mov ecx, dword [ebp - 0x224]
add esp, 0x18
lea ecx, [ecx - 0x10]
call fcn.0040630c
mov ecx, dword [ebp - 0x220]
lea ecx, [ecx - 0x10]
call fcn.0040630c
test edi, edi
jne 0x45e671
mov byte [ebp - 4], 7
cmp dword [ebp - 0x22c], edi
je 0x45e68b
mov ecx, dword [ebp - 0x228]
call fcn.00458148
jmp 0x45e68b
mov byte [ebp - 4], 8
cmp dword [ebp - 0x22c], 0
je 0x45e689
mov ecx, dword [ebp - 0x228]
call fcn.00458148
xor esi, esi
mov ecx, dword [ebp - 0x230]
add ecx, 0xfffffff0
call fcn.0040630c
mov ecx, dword [ebp - 0x21c]
add ecx, 0xfffffff0
call fcn.0040630c
mov eax, esi
call fcn.0044f621
ret 4