Function at 0x459ad8
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x1f
push 0
push 0
dec ecx
jne 0x459ae0
push ecx
push ebx
push esi
push edi
mov eax, 0x459860
call fcn.004066f0
xor eax, eax
push ebp
push 0x45a69a
push dword fs:[eax]
mov dword fs:[eax], esp
call sub.kernel32.dll_FreeConsole
mov eax, dword [0x45d080]
mov eax, dword [eax]
call fcn.00451fd8
lea edx, [ebp - 0x14]
mov eax, 0x1a
call fcn.004597f8
mov edx, dword [ebp - 0x14]
mov eax, 0x45efbc
call fcn.00404b28
lea edx, [ebp - 0x1c]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x1c]
lea edx, [ebp - 0x18]
call fcn.004593e4
mov edx, dword [ebp - 0x18]
mov eax, 0x45efc0
call fcn.004049b4
xor eax, eax
push ebp
push 0x459bd1
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a6b4
mov eax, ebx
call fcn.0042b7f0
lea edx, [ebp - 0x24]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x20]
call fcn.004593e4
mov ecx, dword [ebp - 0x20]
mov edx, 0x45a6c8
mov eax, ebx
call fcn.004597b0
mov eax, ebx
call fcn.004034e0
mov eax, dword [0x45d080]
mov eax, dword [eax]
call fcn.00451fd8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x459bff
xor eax, eax
push ebp
push 0x459cf7
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a718
mov eax, ebx
call fcn.0042b7f0
lea edx, [ebp - 0x2c]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x28]
call fcn.004593e4
lea eax, [ebp - 0x28]
mov edx, 0x45a724
call fcn.00404bc0
mov ecx, dword [ebp - 0x28]
mov edx, 0x45a744
mov eax, ebx
call fcn.004597b0
mov eax, ebx
call fcn.004034e0
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a768
mov eax, ebx
call fcn.0042b7f0
push 0x45a788
lea edx, [ebp - 0x38]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x34]
call fcn.004593e4
push dword [ebp - 0x34]
push 0x45a790
lea eax, [ebp - 0x30]
mov edx, 3
call fcn.00404c88
mov ecx, dword [ebp - 0x30]
xor edx, edx
mov eax, ebx
call fcn.004597b0
mov eax, dword [0x45d080]
mov eax, dword [eax]
call fcn.00451fd8
mov eax, ebx
call fcn.004034e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x459d25
xor eax, eax
push ebp
push 0x459e1d
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a7fc
mov eax, ebx
call fcn.0042b7f0
lea edx, [ebp - 0x40]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x3c]
call fcn.004593e4
lea eax, [ebp - 0x3c]
mov edx, 0x45a808
call fcn.00404bc0
mov ecx, dword [ebp - 0x3c]
mov edx, 0x45a744
mov eax, ebx
call fcn.004597b0
mov eax, ebx
call fcn.004034e0
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a824
mov eax, ebx
call fcn.0042b7f0
push 0x45a788
lea edx, [ebp - 0x4c]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x4c]
lea edx, [ebp - 0x48]
call fcn.004593e4
push dword [ebp - 0x48]
push 0x45a844
lea eax, [ebp - 0x44]
mov edx, 3
call fcn.00404c88
mov ecx, dword [ebp - 0x44]
xor edx, edx
mov eax, ebx
call fcn.004597b0
mov eax, dword [0x45d080]
mov eax, dword [eax]
call fcn.00451fd8
mov eax, ebx
call fcn.004034e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x459e4b
xor eax, eax
push ebp
push 0x459f43
push dword fs:[eax]
mov dword fs:[eax], esp
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a8b0
mov eax, ebx
call fcn.0042b7f0
lea edx, [ebp - 0x54]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x50]
call fcn.004593e4
lea eax, [ebp - 0x50]
mov edx, 0x45a8bc
call fcn.00404bc0
mov ecx, dword [ebp - 0x50]
mov edx, 0x45a744
mov eax, ebx
call fcn.004597b0
mov eax, ebx
call fcn.004034e0
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000000
mov eax, ebx
call fcn.0042b788
mov cl, 1
mov edx, 0x45a8dc
mov eax, ebx
call fcn.0042b7f0
push 0x45a788
lea edx, [ebp - 0x60]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x5c]
call fcn.004593e4
push dword [ebp - 0x5c]
push 0x45a8fc
lea eax, [ebp - 0x58]
mov edx, 3
call fcn.00404c88
mov ecx, dword [ebp - 0x58]
xor edx, edx
mov eax, ebx
call fcn.004597b0
mov eax, dword [0x45d080]
mov eax, dword [eax]
call fcn.00451fd8
mov eax, ebx
call fcn.004034e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x459f71
xor eax, eax
push ebp
push 0x45a2a3
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0x64]
mov ecx, 0x45a96c
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x64]
call fcn.00459438
test al, al
jne 0x459fc9
lea eax, [ebp - 0x6c]
mov ecx, 0x45a980
mov edx, dword [0x45efbc]
call fcn.00404c20
mov edx, dword [ebp - 0x6c]
lea eax, [ebp - 0x68]
call fcn.00404520
mov eax, dword [ebp - 0x68]
call fcn.00402c7c
call fcn.00402bdc
push 0
lea eax, [ebp - 0x70]
mov ecx, 0x45a994
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x70]
call fcn.00404ba4
push eax
lea eax, [ebp - 0x74]
mov ecx, 0x45a9bc
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0x74]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0x78]
mov ecx, 0x45a9d8
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x78]
call fcn.00404ba4
push eax
lea eax, [ebp - 0x7c]
mov ecx, 0x45aa04
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0x7c]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0x80]
mov ecx, 0x45aa24
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x80]
call fcn.00404ba4
push eax
lea eax, [ebp - 0x84]
mov ecx, 0x45aa4c
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0x84]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0x88]
mov ecx, 0x45aa68
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x88]
call fcn.00404ba4
push eax
lea eax, [ebp - 0x8c]
mov ecx, 0x45aa8c
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0x8c]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0x90]
mov ecx, 0x45aaa4
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x90]
call fcn.00404ba4
push eax
lea eax, [ebp - 0x94]
mov ecx, 0x45aad0
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0x94]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0x98]
mov ecx, 0x45aaf0
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0x98]
call fcn.00404ba4
push eax
lea eax, [ebp - 0x9c]
mov ecx, 0x45ab1c
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0x9c]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0xa0]
mov ecx, 0x45ab3c
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0xa0]
call fcn.00404ba4
push eax
lea eax, [ebp - 0xa4]
mov ecx, 0x45ab68
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0xa4]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0xa8]
mov ecx, 0x45ab88
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0xa8]
call fcn.00404ba4
push eax
lea eax, [ebp - 0xac]
mov ecx, 0x45abac
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0xac]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0xb0]
mov ecx, 0x45abc4
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0xb0]
call fcn.00404ba4
push eax
lea eax, [ebp - 0xb4]
mov ecx, 0x45abec
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0xb4]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
push 0
lea eax, [ebp - 0xb8]
mov ecx, 0x45ac08
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0xb8]
call fcn.00404ba4
push eax
lea eax, [ebp - 0xbc]
mov ecx, 0x45ac30
mov edx, dword [0x45efc0]
call fcn.00404c20
mov eax, dword [ebp - 0xbc]
call fcn.00404ba4
push eax
call sub.kernel32.dll_CopyFileW
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45a2ad
xor eax, eax
push ebp
push 0x45a5ca
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 0xc4]
mov ecx, 0x45a96c
mov edx, dword [0x45efbc]
call fcn.00404c20
mov edx, dword [ebp - 0xc4]
lea eax, [ebp - 0xc0]
call fcn.00404520
mov eax, dword [ebp - 0xc0]
call fcn.00408fc8
test al, al
jne 0x45a328
lea eax, [ebp - 0xcc]
mov ecx, 0x45a980
mov edx, dword [0x45efbc]
call fcn.00404c20
mov edx, dword [ebp - 0xcc]
lea eax, [ebp - 0xc8]
call fcn.00404520
mov eax, dword [ebp - 0xc8]
call fcn.00402c7c
call fcn.00402bdc
push 0
lea eax, [ebp - 0xd0]
mov ecx, 0x45ac4c
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0xd0]
push eax
lea edx, [ebp - 0xd8]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0xd4]
call fcn.004593e4
lea eax, [ebp - 0xd4]
mov edx, 0x45ac7c
call fcn.00404bc0
mov eax, dword [ebp - 0xd4]
push eax
call sub.kernel32.dll_CopyFileA
test eax, eax
jne 0x45a3df
mov dl, 1
mov eax, dword [0x4177b0]
call fcn.004034b0
mov ebx, eax
mov edx, 0x45aca4
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0xe0]
mov ecx, 0x45ac4c
mov edx, dword [0x45efbc]
call fcn.00404c20
mov edx, dword [ebp - 0xe0]
lea eax, [ebp - 0xdc]
call fcn.00404520
mov edx, dword [ebp - 0xdc]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x74]
mov eax, ebx
call fcn.004034e0
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000001
mov eax, ebx
call fcn.0042b788
mov edx, 0x45ad58
mov eax, ebx
call fcn.0042b914
mov edx, 0x45ada4
mov eax, ebx
call fcn.0042b914
mov edx, 0x45adf4
mov eax, ebx
call fcn.0042b914
mov edx, 0x45ae38
mov eax, ebx
call fcn.0042b914
mov cl, 1
mov edx, 0x45ae80
mov eax, ebx
call fcn.0042b7f0
lea eax, [ebp - 0xe4]
mov ecx, 0x45ac4c
mov edx, dword [0x45efbc]
call fcn.00404c20
mov ecx, dword [ebp - 0xe4]
xor edx, edx
mov eax, ebx
call fcn.004597b0
mov ecx, 0x63
mov edx, 0x45aed8
mov eax, ebx
call fcn.0042bb4c
mov eax, ebx
call fcn.004034e0
push 0
lea eax, [ebp - 0xe8]
mov ecx, 0x45aee8
mov edx, dword [0x45efbc]
call fcn.00404c20
mov eax, dword [ebp - 0xe8]
push eax
lea edx, [ebp - 0xf0]
mov eax, dword [0x45cf60]
mov eax, dword [eax]
call fcn.00455a4c
mov eax, dword [ebp - 0xf0]
lea edx, [ebp - 0xec]
call fcn.004593e4
lea eax, [ebp - 0xec]
mov edx, 0x45af18
call fcn.00404bc0
mov eax, dword [ebp - 0xec]
push eax
call sub.kernel32.dll_CopyFileA
test eax, eax
jne 0x45a52b
mov dl, 1
mov eax, dword [0x4177b0]
call fcn.004034b0
mov ebx, eax
mov edx, 0x45af40
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x2c]
lea eax, [ebp - 0xf8]
mov ecx, 0x45aee8
mov edx, dword [0x45efbc]
call fcn.00404c20
mov edx, dword [ebp - 0xf8]
lea eax, [ebp - 0xf4]
call fcn.00404520
mov edx, dword [ebp - 0xf4]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x74]
mov eax, ebx
call fcn.004034e0
mov dl, 1
mov eax, dword [0x4595c8]
call fcn.0042b6e8
mov ebx, eax
mov edx, 0x80000001
mov eax, ebx
call fcn.0042b788
mov edx, 0x45ad58
mov eax, ebx
call fcn.0042b914
mov edx, 0x45ada4
mov eax, ebx
call fcn.0042b914
mov edx, 0x45adf4
mov eax, ebx
call fcn.0042b914
mov edx, 0x45ae38
mov eax, ebx
call fcn.0042b914
mov cl, 1
mov edx, 0x45affc
mov eax, ebx
call fcn.0042b7f0
lea eax, [ebp - 0xfc]
mov ecx, 0x45aee8
mov edx, dword [0x45efbc]
call fcn.00404c20
mov ecx, dword [ebp - 0xfc]
xor edx, edx
mov eax, ebx
call fcn.004597b0
mov ecx, 0x20
mov edx, 0x45aed8
mov eax, ebx
call fcn.0042bb4c
mov eax, ebx
call fcn.004034e0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x45a5f8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45a6a4
lea eax, [ebp - 0xfc]
mov edx, 2
call fcn.00404990
lea eax, [ebp - 0xf4]
call fcn.00404298
lea eax, [ebp - 0xf0]
mov edx, 5
call fcn.00404990
lea eax, [ebp - 0xdc]
call fcn.00404298
lea eax, [ebp - 0xd8]
mov edx, 4
call fcn.00404990
lea eax, [ebp - 0xc8]
call fcn.00404298
lea eax, [ebp - 0xc4]
call fcn.00404978
lea eax, [ebp - 0xc0]
call fcn.00404298
lea eax, [ebp - 0xbc]
mov edx, 0x15
call fcn.00404990
lea eax, [ebp - 0x68]
call fcn.00404298
lea eax, [ebp - 0x64]
mov edx, 0x14
call fcn.00404990
lea eax, [ebp - 0x14]
call fcn.00404298
ret