Function at 0x5949d4
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 5
push 0
push 0
dec ecx
jne 0x5949dc
push ebx
push esi
mov ebx, eax
xor eax, eax
push ebp
push 0x594c5c
push dword fs:[eax]
mov dword fs:[eax], esp
cmp dword [ebx + 0x490], 0
jl 0x594c41
push 0x594c74
mov eax, dword [ebx + 0x4b0]
call fcn.0048322c
mov ecx, 0xc8
mov edx, 0x64
call fcn.00425bac
mov eax, ebx
mov edx, dword [eax]
call dword [edx + 0x80]
lea eax, [ebp - 8]
call fcn.0058b0b0
push dword [ebp - 8]
push 0x594ca0
lea eax, [ebp - 0xc]
mov esi, dword [ebx + 0x490]
imul edx, esi, 0x69
mov ecx, dword [0x5ac6f4]
lea edx, [ecx + edx*8 + 0xc]
mov ecx, 5
call fcn.00404c14
push dword [ebp - 0xc]
lea eax, [ebp - 4]
mov edx, 3
call fcn.00404d24
mov eax, dword [0x5ac6f8]
cmp dword [eax + esi*4], 0
jne 0x594adf
imul esi, dword [ebx + 0x490], 0x69
mov eax, dword [0x5ac6f4]
mov eax, dword [eax + esi*8]
mov edx, dword [0x5ac4a0]
sub edx, dword [0x5ac49c]
add eax, edx
cdq
push edx
push eax
mov eax, dword [0x5ac6f4]
mov eax, dword [eax + esi*8 + 8]
cdq
push edx
push eax
mov eax, dword [0x5ac6f4]
mov eax, dword [eax + esi*8 + 4]
cdq
push edx
push eax
lea edx, [ebp - 0x10]
mov eax, dword [0x5a5c80]
mov eax, dword [eax]
call fcn.0046fb04
mov eax, dword [ebp - 0x10]
imul edx, dword [ebx + 0x490], 0x69
mov ecx, dword [0x5ac6f4]
cmp dword [ecx + edx*8 + 8], 0
setg cl
mov edx, dword [ebp - 4]
call fcn.0058ab9c
jmp 0x594b03
push 0
mov eax, dword [ebp - 4]
call fcn.00404e64
push eax
mov eax, dword [0x5ac6f8]
mov edx, dword [ebx + 0x490]
mov eax, dword [eax + edx*4]
call fcn.00404e64
push eax
call sub.KERNEL32.DLL_CopyFileA
lea edx, [ebp - 0x18]
mov eax, dword [ebp - 4]
call fcn.00409f24
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x14]
call fcn.00409200
mov eax, dword [ebp - 0x14]
mov edx, 0x594cb0
call fcn.00404db0
jne 0x594b5b
push 0
lea eax, [ebp - 0x1c]
call fcn.0058b170
lea eax, [ebp - 0x1c]
mov edx, 0x594cc0
call fcn.00404c6c
mov eax, dword [ebp - 0x1c]
call fcn.00404e64
push eax
mov eax, dword [ebp - 4]
call fcn.00404e64
push eax
call sub.KERNEL32.DLL_CopyFileA
jmp 0x594be2
mov dl, 1
mov eax, dword [0x423768]
call fcn.00427cf8
mov ebx, eax
mov edx, dword [ebp - 4]
mov eax, ebx
call fcn.00427ef8
mov dl, 1
mov eax, dword [0x423ab4]
call fcn.0042a3e8
mov esi, eax
mov eax, ebx
call fcn.004283ac
mov edx, eax
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, ebx
call fcn.004283c4
mov edx, eax
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [ebx + 0xc]
push eax
mov eax, esi
call fcn.0042a9b0
xor ecx, ecx
xor edx, edx
call fcn.00425808
lea eax, [ebp - 0x20]
call fcn.0058b170
lea eax, [ebp - 0x20]
mov edx, 0x594cc0
call fcn.00404c6c
mov edx, dword [ebp - 0x20]
mov eax, esi
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov eax, ebx
call fcn.00403ad0
mov eax, esi
call fcn.00403ad0
mov eax, dword [ebp - 4]
call fcn.00409e20
cmp dword [0x5ac50c], 1
jne 0x594c1b
push 0
lea eax, [ebp - 0x24]
call fcn.0058b170
lea eax, [ebp - 0x24]
mov edx, 0x594cc0
call fcn.00404c6c
mov eax, dword [ebp - 0x24]
xor ecx, ecx
mov edx, 2
call fcn.0058b8fc
jmp 0x594c41
push 0
lea eax, [ebp - 0x28]
call fcn.0058b170
lea eax, [ebp - 0x28]
mov edx, 0x594cc0
call fcn.00404c6c
mov eax, dword [ebp - 0x28]
xor ecx, ecx
mov edx, 1
call fcn.0058b8fc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x594c63
lea eax, [ebp - 0x28]
mov edx, 0xa
call fcn.004049c8
ret