Function at 0x40fd00
Capabilities:
Accept command line arguments
Check if file exists
Delete file
Get file size
Move file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xb0c
mov eax, dword [0x4aa6e8]
xor eax, ebp
mov dword [ebp - 4], eax
push 0xffffffffffffffff
call dword [sym.imp.IMM32.dll_ImmDisableIME]
mov dword [ebp - 0x14], 0
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov dword [ebp - 0x8e8], eax
cmp dword [ebp - 0x14], 2
jge 0x40fd46
xor eax, eax
jmp 0x41063c
push 1
lea ecx, [ebp - 0x158]
call fcn.004106d0
push 0x4a3d34
lea ecx, [ebp - 0x9fc]
call fcn.0040cee0
push 0x4a3d38
lea ecx, [ebp - 0x92c]
call fcn.0040cee0
push 0x4a3d3c
lea ecx, [ebp - 0x9ac]
call fcn.0040cee0
lea ecx, [ebp - 0x9fc]
push ecx
lea edx, [ebp - 0x92c]
push edx
lea eax, [ebp - 0x9ac]
push eax
mov ecx, 4
shl ecx, 0
sub esp, 0x18
mov edx, esp
mov dword [ebp - 0x8fc], esp
mov eax, dword [ebp - 0x8e8]
mov ecx, dword [eax + ecx]
push ecx
mov ecx, edx
call fcn.0040cee0
lea ecx, [ebp - 0x158]
call fcn.00444f90
lea ecx, [ebp - 0x9ac]
call fcn.00407530
lea ecx, [ebp - 0x92c]
call fcn.00407530
lea ecx, [ebp - 0x9fc]
call fcn.00407530
push 0x4a3d44
lea ecx, [ebp - 0x74]
call fcn.0040cee0
push 0x4a3d48
lea ecx, [ebp - 0x2c]
call fcn.0040cee0
push 0x4a3d4c
lea ecx, [ebp - 0x8c]
call fcn.0040cee0
push 0x4a3d50
lea ecx, [ebp - 0xa2c]
call fcn.0040cee0
lea edx, [ebp - 0x74]
push edx
lea eax, [ebp - 0x74]
push eax
lea ecx, [ebp - 0xa2c]
push ecx
lea ecx, [ebp - 0x158]
call fcn.00413570
lea ecx, [ebp - 0xa2c]
call fcn.00407530
push str.file
lea ecx, [ebp - 0x9c4]
call fcn.0040cee0
lea edx, [ebp - 0x2c]
push edx
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x9c4]
push ecx
lea ecx, [ebp - 0x158]
call fcn.00413570
lea ecx, [ebp - 0x9c4]
call fcn.00407530
push 0x4a3d64
lea ecx, [ebp - 0x95c]
call fcn.0040cee0
lea edx, [ebp - 0x8c]
push edx
lea eax, [ebp - 0x8c]
push eax
lea ecx, [ebp - 0x95c]
push ecx
lea ecx, [ebp - 0x158]
call fcn.00413570
lea ecx, [ebp - 0x95c]
call fcn.00407530
lea ecx, [ebp - 0x74]
call fcn.0040ceb0
movzx edx, al
test edx, edx
jne 0x40fed5
lea ecx, [ebp - 0x2c]
call fcn.0040ceb0
movzx eax, al
test eax, eax
je 0x40ff10
mov dword [ebp - 0x8f0], 0
lea ecx, [ebp - 0x8c]
call fcn.00407530
lea ecx, [ebp - 0x2c]
call fcn.00407530
lea ecx, [ebp - 0x74]
call fcn.00407530
lea ecx, [ebp - 0x158]
call fcn.00445170
mov eax, dword [ebp - 0x8f0]
jmp 0x41063c
push str.error
lea ecx, [ebp - 0x74]
push ecx
call fcn.004136d0
add esp, 8
movzx edx, al
test edx, edx
je 0x40ffe5
push 1
lea ecx, [ebp - 0x400]
call fcn.004106f0
lea ecx, [ebp - 0x400]
call fcn.0040c220
lea ecx, [ebp - 0x400]
call fcn.0040c2f0
movzx eax, al
test eax, eax
jne 0x40ff75
lea ecx, [ebp - 0x2c]
call fcn.00411050
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0x400]
call fcn.0040c2c0
jmp 0x410606
mov dword [ebp - 0x10], 0
push str.errorcode
lea ecx, [ebp - 0x974]
call fcn.0040cee0
lea ecx, [ebp - 0x10]
push ecx
lea edx, [ebp - 0x10]
push edx
lea eax, [ebp - 0x974]
push eax
lea ecx, [ebp - 0x158]
call fcn.00413700
lea ecx, [ebp - 0x974]
call fcn.00407530
mov ecx, dword [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x8c]
call fcn.00411050
push eax
lea ecx, [ebp - 0x2c]
call fcn.00411050
push eax
lea ecx, [ebp - 0x400]
call fcn.0040c300
lea ecx, [ebp - 0x400]
call fcn.0040c2c0
jmp 0x410606
push str.dump
lea edx, [ebp - 0x74]
push edx
call fcn.004136d0
add esp, 8
movzx eax, al
test eax, eax
je 0x4105fe
lea ecx, [ebp - 0x2c]
push ecx
lea ecx, [ebp - 0x44]
call fcn.00410e80
lea ecx, [ebp - 0xbc]
call fcn.00407500
lea ecx, [ebp - 0xa4]
call fcn.00407500
push 1
lea ecx, [ebp - 0x2b0]
call fcn.00410720
lea ecx, [ebp - 0x2b0]
call fcn.004060e0
lea ecx, [ebp - 0x5c]
call fcn.00407500
lea ecx, [ebp - 0xd4]
call fcn.00407500
push str..dmp
lea ecx, [ebp - 0x994]
call fcn.0040cee0
lea ecx, [ebp - 0x2c]
call fcn.00411050
push eax
lea ecx, [ebp - 0xa14]
call fcn.0040cee0
lea edx, [ebp - 0x2c]
push edx
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x9cc]
call fcn.00401a80
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x8f4], esp
push eax
call fcn.00413840
lea ecx, [ebp - 0x994]
push ecx
lea edx, [ebp - 0xa14]
push edx
lea ecx, [ebp - 0xab4]
call fcn.00443c90
lea ecx, [ebp - 0xab4]
call fcn.00443ea0
lea ecx, [ebp - 0xa14]
call fcn.00407530
lea ecx, [ebp - 0x994]
call fcn.00407530
push str..rpt
lea ecx, [ebp - 0x944]
call fcn.0040cee0
lea ecx, [ebp - 0x2c]
call fcn.00411050
push eax
lea ecx, [ebp - 0x9e4]
call fcn.0040cee0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xd4]
push ecx
lea ecx, [ebp - 0x97c]
call fcn.00401a80
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x8f8], esp
push eax
call fcn.004138a0
lea edx, [ebp - 0x944]
push edx
lea eax, [ebp - 0x9e4]
push eax
lea ecx, [ebp - 0xb0c]
call fcn.00443c90
lea ecx, [ebp - 0xb0c]
call fcn.00443ea0
lea ecx, [ebp - 0x9e4]
call fcn.00407530
lea ecx, [ebp - 0x944]
call fcn.00407530
lea ecx, [ebp - 0x5c]
call fcn.00411050
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x41020f
push 0
push 0x80
push 3
push 0
push 1
push bind
lea ecx, [ebp - 0x5c]
call fcn.00411050
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov dword [ebp - 0x8e0], eax
push 0
mov ecx, dword [ebp - 0x8e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileSize]
mov dword [ebp - 0x8ec], eax
cmp dword [ebp - 0x8ec], 0xa00000
jb 0x410202
mov edx, dword [ebp - 0x8e0]
push edx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0xd4]
call fcn.00407530
lea ecx, [ebp - 0x5c]
call fcn.00407530
lea ecx, [ebp - 0x2b0]
call fcn.004061f0
lea ecx, [ebp - 0xa4]
call fcn.00407530
lea ecx, [ebp - 0xbc]
call fcn.00407530
lea ecx, [ebp - 0x44]
call fcn.00407530
jmp 0x4105fe
mov eax, dword [ebp - 0x8e0]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea ecx, [ebp - 0x5c]
call fcn.00411050
push eax
lea ecx, [ebp - 0x908]
call fcn.0040f650
mov ecx, eax
call fcn.00405a10
push eax
lea ecx, [ebp - 0x104]
call fcn.00403a80
lea ecx, [ebp - 0x908]
call fcn.0040f6c0
lea ecx, [ebp - 0xd4]
call fcn.00411050
push eax
lea ecx, [ebp - 0x914]
call fcn.0040f650
mov ecx, eax
call fcn.00405a10
push eax
lea ecx, [ebp - 0xec]
call fcn.00403a80
lea ecx, [ebp - 0x914]
call fcn.0040f6c0
lea ecx, [ebp - 0x89c]
push ecx
lea ecx, [ebp - 0xec]
call fcn.00406ea0
push eax
lea ecx, [ebp - 0x104]
call fcn.00406ea0
push eax
call fcn.00403720
add esp, 0xc
cmp dword [ebp - 0x484], 2
jne 0x4103c9
push 1
lea ecx, [ebp - 0xc]
call fcn.00401380
lea ecx, [ebp - 0x2c]
call fcn.00411050
push eax
lea ecx, [ebp - 0xc]
call fcn.004110e0
push 0
lea ecx, [ebp - 0xc]
call fcn.00411180
xor edx, edx
mov dword [ebp - 0x8dc], edx
mov dword [ebp - 0x8d8], edx
mov dword [ebp - 0x8d4], edx
mov dword [ebp - 0x8d0], edx
mov dword [ebp - 0x8cc], edx
mov dword [ebp - 0x8c8], edx
mov dword [ebp - 0x8c4], edx
mov word [ebp - 0x8c0], dx
mov eax, 0x414
mov word [ebp - 0x8cc], ax
mov dword [ebp - 0x8c6], 0
mov dword [ebp - 0x8dc], 0
mov dword [ebp - 0x8c2], 0
lea ecx, [ebp - 0xc]
call fcn.00401a50
mov dword [ebp - 0x8d4], eax
mov dword [ebp - 0x8d0], 0
mov dword [ebp - 0x8d8], 3
lea ecx, [ebp - 0x8dc]
push ecx
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
lea ecx, [ebp - 0x44]
call fcn.00411050
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
lea ecx, [ebp - 0xc]
call fcn.00401400
lea ecx, [ebp - 0xec]
call fcn.00403ac0
lea ecx, [ebp - 0x104]
call fcn.00403ac0
lea ecx, [ebp - 0xd4]
call fcn.00407530
lea ecx, [ebp - 0x5c]
call fcn.00407530
lea ecx, [ebp - 0x2b0]
call fcn.004061f0
lea ecx, [ebp - 0xa4]
call fcn.00407530
lea ecx, [ebp - 0xbc]
call fcn.00407530
lea ecx, [ebp - 0x44]
call fcn.00407530
jmp 0x4105fe
push str..zip
lea ecx, [ebp - 0x44]
call fcn.00411030
mov edx, dword [0x4a41bc]
push edx
push 0x5c
lea ecx, [ebp - 0x44]
call fcn.00411070
push eax
push 0
lea eax, [ebp - 0xa5c]
push eax
lea ecx, [ebp - 0x44]
call fcn.00411090
push eax
lea ecx, [ebp - 0xa4]
call fcn.00410f30
lea ecx, [ebp - 0xa5c]
call fcn.00407530
push str.crashinfo.txt
lea ecx, [ebp - 0x2c]
push ecx
lea edx, [ebp - 0xa44]
push edx
call fcn.00413900
add esp, 0xc
push eax
lea ecx, [ebp - 0xbc]
call fcn.00410f30
lea ecx, [ebp - 0xa44]
call fcn.00407530
lea ecx, [ebp - 0xbc]
call fcn.00411050
push eax
lea ecx, [ebp - 0x8c]
call fcn.00411050
push eax
lea ecx, [ebp - 0x2b0]
call fcn.00406ad0
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0xa4]
push ecx
lea edx, [ebp - 0x2c]
push edx
call fcn.0040f790
add esp, 0xc
movzx eax, al
test eax, eax
jne 0x4104d7
lea ecx, [ebp - 0xec]
call fcn.00403ac0
lea ecx, [ebp - 0x104]
call fcn.00403ac0
lea ecx, [ebp - 0xd4]
call fcn.00407530
lea ecx, [ebp - 0x5c]
call fcn.00407530
lea ecx, [ebp - 0x2b0]
call fcn.004061f0
lea ecx, [ebp - 0xa4]
call fcn.00407530
lea ecx, [ebp - 0xbc]
call fcn.00407530
lea ecx, [ebp - 0x44]
call fcn.00407530
jmp 0x4105fe
lea ecx, [ebp - 0x44]
call fcn.00411050
push eax
lea ecx, [ebp - 0x2b0]
call fcn.004062b0
push 1
lea ecx, [ebp - 8]
call fcn.00401380
lea ecx, [ebp - 0x2c]
call fcn.00411050
push eax
lea ecx, [ebp - 8]
call fcn.004110e0
push 0
lea ecx, [ebp - 8]
call fcn.00411180
xor edx, edx
mov dword [ebp - 0x8bc], edx
mov dword [ebp - 0x8b8], edx
mov dword [ebp - 0x8b4], edx
mov dword [ebp - 0x8b0], edx
mov dword [ebp - 0x8ac], edx
mov dword [ebp - 0x8a8], edx
mov dword [ebp - 0x8a4], edx
mov word [ebp - 0x8a0], dx
mov eax, 0x414
mov word [ebp - 0x8ac], ax
mov dword [ebp - 0x8a6], 0
mov dword [ebp - 0x8bc], 0
mov dword [ebp - 0x8a2], 0
lea ecx, [ebp - 8]
call fcn.00401a50
mov dword [ebp - 0x8b4], eax
mov dword [ebp - 0x8b0], 0
mov dword [ebp - 0x8b8], 3
lea ecx, [ebp - 0x8bc]
push ecx
call dword [sym.imp.SHELL32.dll_SHFileOperationW]
lea ecx, [ebp - 8]
call fcn.00401400
lea ecx, [ebp - 0xec]
call fcn.00403ac0
lea ecx, [ebp - 0x104]
call fcn.00403ac0
lea ecx, [ebp - 0xd4]
call fcn.00407530
lea ecx, [ebp - 0x5c]
call fcn.00407530
lea ecx, [ebp - 0x2b0]
call fcn.004061f0
lea ecx, [ebp - 0xa4]
call fcn.00407530
lea ecx, [ebp - 0xbc]
call fcn.00407530
lea ecx, [ebp - 0x44]
call fcn.00407530
xor edx, edx
jne 0x410001
xor eax, eax
jne 0x40ff10
mov dword [ebp - 0x8e4], 0
lea ecx, [ebp - 0x8c]
call fcn.00407530
lea ecx, [ebp - 0x2c]
call fcn.00407530
lea ecx, [ebp - 0x74]
call fcn.00407530
lea ecx, [ebp - 0x158]
call fcn.00445170
mov eax, dword [ebp - 0x8e4]
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00421639
mov esp, ebp
pop ebp
ret 0x10