Function at 0x653440
Capabilities:
Copy file
Create process on windows

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x1c
push 0
push 0
dec ecx
jne 0x653448
push ecx
push ebx
push esi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 4]
call fcn.00407c14
mov eax, dword [ebp - 8]
call fcn.00407c14
xor eax, eax
push ebp
push 0x653a22
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.006531c0
call fcn.00653148
lea eax, [ebp - 0x2c]
call fcn.0058e118
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 0x2c]
call fcn.00429ba4
mov eax, 0x6708a0
mov edx, dword [ebp - 0x30]
call fcn.00407f10
lea eax, [ebp - 0xc]
mov edx, dword [ebp - 4]
call fcn.00407f58
lea eax, [ebp - 0x10]
mov edx, dword [ebp - 8]
call fcn.00407f58
mov eax, dword [ebp - 0xc]
mov edx, 0x653a40
call fcn.00408fb8
jne 0x65365c
lea edx, [ebp - 0x3c]
mov eax, 0x653a50
call fcn.00652ec8
mov eax, dword [ebp - 0x3c]
mov edx, 0x653a7c
call fcn.00408fb8
je 0x65354c
cmp byte [0x6708a8], 0
je 0x65351d
lea eax, [ebp - 0x34]
mov edx, 0x653a98
call fcn.00407f58
xor eax, eax
movzx edx, word [0x653b08]
xor esi, esi
push esi
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
mov ecx, edx
mov edx, dword [ebp - 0x34]
xchg edx, eax
call fcn.004cca90
jmp 0x653980
lea eax, [ebp - 0x38]
mov edx, 0x653b18
call fcn.00407f58
xor eax, eax
movzx edx, word [0x653b08]
xor esi, esi
push esi
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
mov ecx, edx
mov edx, dword [ebp - 0x38]
xchg edx, eax
call fcn.004cca90
jmp 0x653980
push 0
lea eax, [ebp - 0x40]
mov ecx, 0x653c18
mov edx, dword [0x6708a0]
call fcn.00408e20
mov eax, dword [ebp - 0x40]
call fcn.00408bc4
push eax
lea eax, [ebp - 0x44]
mov ecx, 0x653c38
mov edx, dword [0x6708a0]
call fcn.00408e20
mov eax, dword [ebp - 0x44]
call fcn.00408bc4
push eax
call sub.kernel32.dll_CopyFileW
push 0x1f4
call sub.kernel32.dll_Sleep_2
lea eax, [ebp - 0x48]
mov ecx, 0x653c18
mov edx, dword [0x6708a0]
call fcn.00408e20
mov eax, dword [ebp - 0x48]
mov dl, 1
call fcn.0042242c
test al, al
je 0x653974
push dword [0x6708a0]
push 0x653c54
push dword [ebp - 0x10]
lea eax, [ebp - 0x5c]
mov edx, 3
call fcn.00408ea8
mov edx, dword [ebp - 0x5c]
lea eax, [ebp - 0x58]
call fcn.004377a8
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp - 0x6c]
push eax
lea eax, [ebp - 0x7c]
mov edx, 0x653c7c
call fcn.004377a8
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x8c]
mov edx, 0x653c94
call fcn.004377a8
lea edx, [ebp - 0x8c]
movzx eax, byte [0x6708b4]
pop ecx
call fcn.0058d984
lea edx, [ebp - 0x6c]
pop eax
call fcn.0043b7a8
lea edx, [ebp - 0x58]
lea eax, [ebp - 0x24]
call fcn.00435abc
mov eax, dword [0x66a7f4]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_CloseHandle_1
push 0x1f4
call sub.kernel32.dll_Sleep_2
push 5
mov eax, dword [ebp - 0x24]
call fcn.0040858c
push eax
call sub.kernel32.dll_WinExec
jmp 0x653974
mov eax, dword [ebp - 0xc]
mov edx, 0x653cac
call fcn.00408fb8
jne 0x653811
lea edx, [ebp - 0x90]
mov eax, dword [0x66a644]
mov eax, dword [eax]
call fcn.00644ae8
call fcn.006509c0
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp - 0x1c]
lea edx, [ebp - 0x18]
lea eax, [ebp - 0x14]
call fcn.006515a0
test al, al
je 0x6537e1
cmp dword [ebp - 0x14], 0
je 0x6537b1
mov eax, dword [ebp - 0x20]
push eax
mov ecx, dword [ebp - 0x1c]
mov edx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x14]
call fcn.00652184
test al, al
je 0x653781
push dword [0x6708a0]
push 0x653cbc
push dword [ebp - 0x10]
lea eax, [ebp - 0xa4]
mov edx, 3
call fcn.00408ea8
mov edx, dword [ebp - 0xa4]
lea eax, [ebp - 0xa0]
call fcn.004377a8
lea eax, [ebp - 0xa0]
push eax
lea eax, [ebp - 0xb4]
push eax
lea eax, [ebp - 0xc4]
mov edx, 0x653c7c
call fcn.004377a8
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0xd4]
mov edx, 0x653c94
call fcn.004377a8
lea edx, [ebp - 0xd4]
movzx eax, byte [0x6708b4]
pop ecx
call fcn.0058d984
lea edx, [ebp - 0xb4]
pop eax
call fcn.0043b7a8
lea edx, [ebp - 0xa0]
lea eax, [ebp - 0x28]
call fcn.00435abc
mov eax, dword [0x66a7f4]
mov eax, dword [eax]
push eax
call sub.kernel32.dll_CloseHandle_1
push 0x1f4
call sub.kernel32.dll_Sleep_2
push 5
mov eax, dword [ebp - 0x28]
call fcn.0040858c
push eax
call sub.kernel32.dll_WinExec
jmp 0x653974
cmp byte [0x6708a8], 0
je 0x653796
mov eax, 0x653ce0
call fcn.004ccb24
jmp 0x6537a0
mov eax, 0x653d24
call fcn.004ccb24
mov eax, dword [0x66a360]
mov eax, dword [eax]
call fcn.00528178
jmp 0x653974
cmp byte [0x6708a8], 0
je 0x6537c6
mov eax, 0x653da8
call fcn.004ccb24
jmp 0x6537d0
mov eax, 0x653d24
call fcn.004ccb24
mov eax, dword [0x66a360]
mov eax, dword [eax]
call fcn.00528178
jmp 0x653974
cmp byte [0x6708a8], 0
je 0x6537f6
mov eax, 0x653dec
call fcn.004ccb24
jmp 0x653800
mov eax, 0x653e1c
call fcn.004ccb24
mov eax, dword [0x66a360]
mov eax, dword [eax]
call fcn.00528178
jmp 0x653974
mov eax, dword [ebp - 0xc]
mov edx, 0x653e90
call fcn.00408fb8
jne 0x6538d6
mov edx, dword [ebp - 0x10]
xor eax, eax
call fcn.00652cf4
test eax, eax
jne 0x653974
xor ecx, ecx
mov dl, 1
mov eax, dword [0x64ffa0]
call fcn.0051d39c
mov esi, eax
movzx eax, byte [0x6708b4]
mov byte [esi + 0x3a5], al
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x120]
dec eax
jne 0x653974
cmp byte [0x6708b4], 0
je 0x653898
lea eax, [ebp - 0xd8]
mov ecx, 0x653ea0
mov edx, dword [0x6708a0]
call fcn.00408e20
mov edx, dword [ebp - 0xd8]
lea eax, [ebp - 0x28]
mov ecx, 0
call fcn.004086d4
jmp 0x6538c1
lea eax, [ebp - 0xdc]
mov ecx, 0x653ed4
mov edx, dword [0x6708a0]
call fcn.00408e20
mov edx, dword [ebp - 0xdc]
lea eax, [ebp - 0x28]
mov ecx, 0
call fcn.004086d4
push 5
mov eax, dword [ebp - 0x28]
call fcn.0040858c
push eax
call sub.kernel32.dll_WinExec
jmp 0x653974
mov eax, dword [ebp - 0xc]
mov edx, 0x653f0c
call fcn.00408fb8
jne 0x653974
mov edx, dword [ebp - 0x10]
mov eax, 1
call fcn.00652cf4
test eax, eax
jne 0x653974
mov eax, esi
mov edx, dword [eax]
call dword [edx + 0x120]
dec eax
jne 0x653974
cmp byte [0x6708b4], 0
je 0x65393b
lea eax, [ebp - 0xe0]
mov ecx, 0x653ea0
mov edx, dword [0x6708a0]
call fcn.00408e20
mov edx, dword [ebp - 0xe0]
lea eax, [ebp - 0x28]
mov ecx, 0
call fcn.004086d4
jmp 0x653964
lea eax, [ebp - 0xe4]
mov ecx, 0x653ed4
mov edx, dword [0x6708a0]
call fcn.00408e20
mov edx, dword [ebp - 0xe4]
lea eax, [ebp - 0x28]
mov ecx, 0
call fcn.004086d4
push 5
mov eax, dword [ebp - 0x28]
call fcn.0040858c
push eax
call sub.kernel32.dll_WinExec
mov eax, dword [0x66a360]
mov eax, dword [eax]
call fcn.00528178
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x653a2c
lea eax, [ebp - 0xe4]
mov edx, 4
call fcn.00407b90
lea eax, [ebp - 0xd4]
mov edx, dword [0x4012c0]
mov ecx, 3
call fcn.004094fc
lea eax, [ebp - 0xa4]
call fcn.00407b30
lea eax, [ebp - 0xa0]
call fcn.00431a98
lea eax, [ebp - 0x90]
call fcn.00407b30
lea eax, [ebp - 0x8c]
mov edx, dword [0x4012c0]
mov ecx, 3
call fcn.004094fc
lea eax, [ebp - 0x5c]
call fcn.00407b30
lea eax, [ebp - 0x58]
call fcn.00431a98
lea eax, [ebp - 0x48]
mov edx, 8
call fcn.00407b90
lea eax, [ebp - 0x28]
mov edx, 2
call fcn.00407bc0
lea eax, [ebp - 0x20]
mov edx, 8
call fcn.00407b90
ret