Function at 0x426890
Capabilities:
Delete file

Disassembly:
sub esp, 0x1c
push ebx
push ebp
push esi
mov esi, dword [esp + 0x30]
cmp dword [esi], 2
push edi
jne 0x4268ce
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
add esi, 0xc
push esi
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0
push esi
push 5
push 4
mov edi, eax
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1c
ret
lea eax, [esi + 0x214]
push eax
call fcn.004316b0
add esp, 4
push str.IsWow64Process
push 0x4a2210
mov dword [esp + 0x2c], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x426910
lea eax, [esp + 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
cmp dword [esp + 0x24], 0
je 0x4269dc
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ecx, eax
jmp 0x426926
jmp 0x42692a
lea ebx, [ecx + 0x796f]
xor ebx, 0x501
or ebx, 0x781a
add ebx, 0x12
jmp 0x426942
lea edx, [ebx - 0xc]
and edx, 0x14
or edx, 0x199d6a
mov eax, 0x110
sub eax, edx
mov dword [esp + 0x24], eax
jmp 0x42695c
mov edx, ecx
and edx, 0x3844
xor edx, eax
or edx, 0x41ab
mov edi, 0x796f
sub edi, edx
jmp 0x426977
jmp 0x42697a
jmp 0x42697e
jmp 0x426982
lea eax, [edi + edi*8]
add eax, eax
cdq
mov ebp, 0x18
idiv ebp
lea esi, [edi + ecx - 0x123]
and esi, 0x332
lea eax, [edi + 0x422b]
and edx, 0x154
xor esi, edx
mov edx, edi
sub edx, ecx
and esi, ebx
xor esi, eax
add edx, 0x332
lea eax, [edi - 0x3f55]
and edx, eax
or esi, edx
mov edx, 0x332
shl edx, cl
add edi, 0xffffbe31
and edi, edx
and edi, dword [esp + 0x24]
or esi, edi
jmp 0x426bca
mov dword [esp + 0x20], 0x110
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov ebp, eax
mov dword [esp + 0x28], ebp
mov dword [esp + 0x24], 0x8456
mov dword [esp + 0x18], 0x4287
mov dword [esp + 0x14], 0x332
mov dword [esp + 0x10], 0x3678
mov dword [esp + 0x1c], 0x12
jmp 0x426a1b
pushaw
mov eax, dword [esp + 0x34]
jmp 0x426a25
mov ebx, dword [esp + 0x28]
jmp 0x426a2c
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
mov esi, dword [esp + 0x2c]
jmp 0x426a3c
mov edi, dword [esp + 0x24]
and eax, ebx
jmp 0x426a46
or eax, esi
and ebx, dword [esp + 0x38]
jmp 0x426a50
add ebx, eax
sub ecx, eax
sub esi, eax
mov dword [esp + 0x30], ebx
jmp 0x426a5d
add edi, esi
and ebx, eax
jmp 0x426a66
xor esi, edi
add esi, ebx
jmp 0x426a6d
sub ecx, esi
add edi, ebx
jmp 0x426a75
xor ecx, edi
mov dword [esp + 0x34], ebx
mov dword [esp + 0x28], eax
jmp 0x426a83
mov dword [esp + 0x24], edx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], esi
jmp 0x426a92
popaw
jmp 0x426a97
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
lea edx, [ecx + eax]
mov eax, dword [esp + 0x10]
add esi, eax
and edx, esi
lea esi, [eax + eax*8]
add esi, esi
and esi, 0x23
xor edx, esi
and ecx, eax
or edx, ecx
or edx, dword [esp + 0x18]
add eax, edx
mov dword [esp + 0x10], eax
jmp 0x426aca
mov edx, dword [esp + 0x14]
sub edx, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
add edx, dword [esp + 0x24]
lea ecx, [eax + ebp]
xor edx, ecx
mov ecx, dword [esp + 0x1c]
add eax, ecx
xor eax, 0x19b
or edx, eax
add ecx, edx
mov dword [esp + 0x1c], ecx
jmp 0x426af5
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x24]
sub ecx, dword [esp + 0x18]
lea edx, [ecx + eax + 5]
and edx, eax
mov eax, dword [esp + 0x10]
imul eax, eax, 0xd8
sar eax, 2
or edx, eax
sub dword [esp + 0x20], edx
jmp 0x426b1d
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov ecx, eax
and ecx, ebp
xor ecx, dword [esp + 0x20]
add edx, 0x12
xor edx, dword [esp + 0x14]
or ecx, edx
sub eax, ecx
mov dword [esp + 0x10], eax
jmp 0x426b40
mov eax, dword [esp + 0x10]
sub eax, dword [esp + 0x24]
mov edx, dword [esp + 0x14]
add eax, dword [esp + 0x18]
mov ecx, ebp
shl edx, cl
and eax, edx
and dword [esp + 0x20], eax
jmp 0x426b5d
mov esi, dword [esp + 0x24]
mov eax, esi
cdq
idiv dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea eax, [ecx + ecx*8]
add eax, eax
mov edi, edx
cdq
mov ebx, 0x18
idiv ebx
mov eax, dword [esp + 0x18]
add ecx, eax
add ecx, esi
add ecx, ebp
and ecx, dword [esp + 0x14]
and edi, edx
xor edi, ecx
and dword [esp + 0x1c], edi
jmp 0x426b95
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov esi, ecx
sub esi, dword [esp + 0x18]
mov edx, ecx
add esi, eax
sub edx, ebp
add edx, eax
mov eax, dword [esp + 0x24]
and esi, edx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
xor eax, dword [esp + 0x1c]
or esi, eax
or dword [esp + 0x20], esi
jmp 0x426bc6
mov esi, dword [esp + 0x20]
mov ebx, dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
mov edi, dword [esp + 0x34]
push esi
call ebx
push eax
call fcn.00402090
add esp, 8
push 1
call ebx
push eax
call fcn.00402320
add esp, 8
call ebx
push eax
call fcn.00402410
add esp, 4
call ebx
push eax
push str.CryptDiskProtectedSetProcess:_pid_d
call fcn.00427230
lea esi, [edi + 0x214]
push esi
xor ebp, ebp
call fcn.00426790
add esp, 0xc
test eax, eax
jne 0x426c52
mov eax, dword [edi]
sub eax, 1
je 0x426c38
sub eax, 3
jne 0x426c92
lea eax, [edi + 0x624]
push eax
push esi
call fcn.00437520
add esp, 8
jmp 0x426c90
push 0
push 0
lea ecx, [edi + 0x624]
push ecx
lea edx, [edi + 0x41c]
push esi
push edx
call fcn.00437010
jmp 0x426c8d
cmp eax, 1
jne 0x426c92
mov eax, dword [edi]
sub eax, 1
je 0x426c75
sub eax, 3
jne 0x426c92
lea eax, [edi + 0x624]
push eax
push esi
call fcn.00436c80
add esp, 8
jmp 0x426c90
push 0
push 0
lea ecx, [edi + 0x624]
push ecx
lea edx, [edi + 0x41c]
push esi
push edx
call fcn.00436590
add esp, 0x14
mov ebp, eax
lea esi, [edi + 0xc]
push esi
call fcn.00431920
add esp, 4
test eax, eax
je 0x426cab
push esi
call fcn.0042a1f0
add esp, 4
call ebx
push eax
call fcn.00402420
add esp, 4
call ebx
push eax
push str.CryptDiskProtectedDelProcess:_pid_d
call fcn.00427230
add esp, 8
pop edi
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x1c
ret