Function at 0x451b4e
Capabilities:
Delete file
Read file on windows

Disassembly:
mov eax, 0x608c1c
call fcn.00465b38
sub esp, 0x148
push ebx
xor ebx, ebx
cmp dword [ebp + 8], ebx
push esi
je 0x451f30
cmp dword [ebp + 0xc], ebx
je 0x451f30
push ebx
push ebx
push 3
push ebx
push 5
push SysReAllocStringLen
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, 0xffffffff
mov dword [ebp - 0x14], esi
jne 0x451b9f
push 0x327
push 3
jmp 0x451f37
push edi
push 7
pop ecx
xor eax, eax
lea edi, [ebp - 0x70]
mov dword [ebp - 0x74], ebx
rep stosd dword es:[edi], eax
mov ecx, dword [ebp + 0x10]
push 0xffffffffffffffff
push ebx
mov dword [ebp - 0x10], ebx
call fcn.00487850
lea eax, [ebp - 0x74]
push eax
push esi
call fcn.00450beb
pop ecx
test eax, eax
pop ecx
je 0x451f0c
push dword [ebp + 0xc]
lea ecx, [ebp - 0x18]
call fcn.005ece05
push 0x66b0e4
lea ecx, [ebp - 0x18]
mov dword [ebp - 4], ebx
call fcn.005e21dc
push 0x66af18
lea ecx, [ebp - 0x18]
call fcn.005ed182
push dword [ebp - 0x18]
call fcn.00451a5f
pop ecx
lea eax, [ebp - 0x60]
push ebx
push eax
push dword [ebp - 0x64]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_SetFilePointer]
call esi
cmp dword [ebp - 0x68], ebx
mov dword [ebp + 0xc], ebx
jle 0x451e82
push 0x37
xor eax, eax
pop ecx
lea edi, [ebp - 0x150]
mov dword [ebp - 0x154], ebx
push ebx
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x24]
mov edi, 0xe0
push eax
lea eax, [ebp - 0x154]
push edi
push eax
push dword [ebp - 0x14]
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x24], ebx
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x451ece
cmp dword [ebp - 0x24], edi
jb 0x451ede
lea eax, [ebp - 0x14c]
push 0xd8
push eax
call fcn.00450c92
cmp dword [ebp - 0x150], eax
pop ecx
pop ecx
jne 0x451ee5
mov eax, dword [ebp + 0x14]
cmp eax, ebx
je 0x451cd5
cmp dword [ebp - 0x14c], eax
je 0x451cd5
mov eax, dword [ebp - 0x138]
mov edx, dword [ebp - 0x13c]
push 1
cmp eax, ebx
pop ecx
mov dword [ebp - 0x10], ecx
jl 0x451cb1
jg 0x451cac
cmp edx, ebx
jbe 0x451cb1
mov dword [ebp - 0x2c], edx
jmp 0x451cc0
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x28]
push ecx
push eax
push dword [ebp - 0x2c]
push dword [ebp - 0x14]
call esi
jmp 0x451e73
lea eax, [ebp - 0x18]
lea ecx, [ebp + 8]
push eax
call fcn.005ecafe
lea eax, [ebp - 0x114]
lea ecx, [ebp + 8]
push eax
mov byte [ebp - 4], 1
call fcn.005ed182
push ebx
push dword [ebp + 8]
call fcn.00451f4e
pop ecx
test eax, eax
pop ecx
je 0x451dd7
xor eax, eax
lea edi, [ebp - 0x40]
mov dword [ebp - 0x44], ebx
push 0x10
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x44]
push eax
push dword [ebp + 8]
call fcn.004ec870
lea eax, [ebp - 0x124]
push 0x10
push eax
lea eax, [ebp - 0x44]
push eax
call fcn.00466b30
add esp, 0x18
test eax, eax
jne 0x451d85
mov ecx, dword [ebp + 0x10]
push 1
pop edi
push dword [ebp + 8]
mov eax, dword [ecx + 4]
mov dword [ebp - 0x10], edi
push eax
call fcn.00487df0
mov eax, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x13c]
cmp eax, ebx
jl 0x451d69
jg 0x451d64
cmp ecx, ebx
jbe 0x451d69
mov dword [ebp - 0x20], ecx
jmp 0x451d78
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push edi
push eax
push dword [ebp - 0x20]
jmp 0x451dcd
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x451dd7
mov eax, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x13c]
push 1
cmp eax, ebx
pop edx
mov dword [ebp - 0x10], edx
jl 0x451db3
jg 0x451dae
cmp ecx, ebx
jbe 0x451db3
mov dword [ebp - 0x34], ecx
jmp 0x451dc2
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x30]
push edx
push eax
push dword [ebp - 0x34]
push dword [ebp - 0x14]
call esi
jmp 0x451e68
cmp dword [ebp - 0x138], ebx
jl 0x451df9
jg 0x451de9
cmp dword [ebp - 0x13c], ebx
jbe 0x451df9
push 1
push dword [ebp - 0x138]
push dword [ebp - 0x13c]
jmp 0x451e06
push ebx
push dword [ebp - 0x130]
push dword [ebp - 0x134]
push dword [ebp + 8]
push dword [ebp - 0x14]
call fcn.00451440
add esp, 0x14
test eax, eax
je 0x451efc
xor eax, eax
lea edi, [ebp - 0x50]
mov dword [ebp - 0x54], ebx
push 0x10
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x54]
push eax
push dword [ebp + 8]
call fcn.004ec870
lea eax, [ebp - 0x124]
push 0x10
push eax
lea eax, [ebp - 0x54]
push eax
call fcn.00466b30
add esp, 0x18
test eax, eax
jne 0x451eee
mov ecx, dword [ebp + 0x10]
push dword [ebp + 8]
mov dword [ebp - 0x10], 1
mov eax, dword [ecx + 4]
push eax
call fcn.00487df0
lea ecx, [ebp + 8]
mov byte [ebp - 4], bl
call fcn.005ecd91
inc dword [ebp + 0xc]
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebp - 0x68]
jl 0x451c1d
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.005ecd91
push dword [ebp - 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [ebp - 0x10], ebx
jne 0x451ec8
mov esi, dword [ebp + 0x10]
xor edi, edi
cmp dword [esi + 4], ebx
jle 0x451ec8
lea eax, [ebp + 0x10]
push edi
push eax
mov ecx, esi
call fcn.0041db21
push dword [eax]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp + 0x10]
call fcn.00480a70
inc edi
cmp edi, dword [esi + 4]
jl 0x451ea6
mov eax, dword [ebp - 0x10]
pop edi
jmp 0x451f40
push 0x348
push 7
call fcn.00450b92
pop ecx
pop ecx
jmp 0x451e82
push 0x34d
jmp 0x451ed3
push 0x353
push 0xc
jmp 0x451ed5
push 0x3a8
push 0xd
call fcn.00450b92
pop ecx
pop ecx
lea ecx, [ebp + 8]
mov byte [ebp - 4], bl
call fcn.005ecd91
jmp 0x451e82
push ebx
push ebx
call fcn.00450bc5
pop ecx
test eax, eax
pop ecx
jne 0x451e8e
push 0x335
push 0xb
call fcn.00450b92
pop ecx
pop ecx
jmp 0x451e8e
push 0x317
push 1
call fcn.00450b92
pop ecx
xor eax, eax
pop ecx
mov ecx, dword [ebp - 0xc]
pop esi
pop ebx
mov dword fs:[0], ecx
leave
ret