Function at 0x4da8ec
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push esi
mov ebx, eax
xor eax, eax
push ebp
push 0x4dab94
push dword fs:[eax]
mov dword fs:[eax], esp
cmp byte [ebx + 0xa7c], 1
jne 0x4da92e
push 0
mov ecx, 0x4daba4
mov edx, 0x4dabac
mov eax, dword [0x503418]
mov eax, dword [eax]
call fcn.00453ae8
jmp 0x4dab69
mov eax, dword [ebx + 0xa2c]
mov eax, dword [eax + 0x254]
call fcn.004634c8
test eax, eax
jne 0x4da960
push 0
mov ecx, 0x4daba4
mov edx, 0x4dabd4
mov eax, dword [0x503418]
mov eax, dword [eax]
call fcn.00453ae8
jmp 0x4dab69
mov eax, dword [ebx + 0x8fc]
cmp byte [eax + 0x47], 0
jne 0x4da98d
mov eax, dword [ebx + 0x14e7c]
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebx + 0x15030]
cmp byte [edx + eax*8 + 0xe], 0
jbe 0x4da98d
mov byte [ebx + 0x14328], 0
mov eax, dword [ebx + 0xa2c]
call fcn.00465068
call fcn.00462d20
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebx + 0x15030]
cmp byte [edx + eax*8 + 0xe], 5
je 0x4da9d5
mov eax, dword [ebx + 0xa2c]
call fcn.00465068
call fcn.00462d20
mov edx, eax
shl eax, 3
sub eax, edx
mov edx, dword [ebx + 0x15030]
cmp byte [edx + eax*8 + 0xe], 6
jne 0x4da9dc
mov byte [ebx + 0x14328], 0
cmp byte [ebx + 0x14328], 1
jne 0x4daa13
mov eax, dword [ebx + 0xa2c]
mov eax, dword [eax + 0x254]
call fcn.004634c8
test eax, eax
jle 0x4daa13
mov eax, dword [ebx + 0xa2c]
call fcn.00465068
call fcn.00462d20
mov edx, eax
mov eax, ebx
call fcn.004d22ec
cmp byte [ebx + 0x15400], 0
jne 0x4daab4
mov eax, dword [ebx + 0xa2c]
mov eax, dword [eax + 0x254]
call fcn.004634c8
test eax, eax
jle 0x4daa9c
mov eax, dword [ebx + 0x2d4]
add eax, 0x68
mov edx, 0x4dabf8
call fcn.00403d20
mov eax, dword [ebx + 0x2d4]
add eax, 0x70
call fcn.00403ccc
mov esi, dword [ebx + 0x2d4]
mov eax, dword [0x4dac04]
mov dword [esi + 0x54], eax
lea eax, [esi + 0x58]
mov edx, 0x4dac10
call fcn.00403d20
mov eax, dword [ebx + 0x2d4]
mov edx, dword [eax]
call dword [edx + 0x3c]
test al, al
je 0x4daab4
lea edx, [ebp - 8]
mov eax, dword [ebx + 0x2d4]
call fcn.0045981c
mov edx, dword [ebp - 8]
xor ecx, ecx
mov eax, ebx
call fcn.004d89b0
jmp 0x4daab4
push 0
mov ecx, 0x4daba4
mov edx, 0x4dac2c
mov eax, dword [0x503418]
mov eax, dword [eax]
call fcn.00453ae8
cmp byte [ebx + 0x15400], 2
jne 0x4dab56
lea eax, [ebp - 0xc]
push eax
lea edx, [ebp - 0x10]
mov eax, dword [ebx + 0x15040]
call fcn.00409274
mov eax, dword [ebp - 0x10]
call fcn.00403f4c
sub eax, 4
push eax
lea edx, [ebp - 0x14]
mov eax, dword [ebx + 0x15040]
call fcn.00409274
mov eax, dword [ebp - 0x14]
mov edx, 1
pop ecx
call fcn.00404154
mov edx, dword [ebp - 0xc]
lea eax, [ebp - 4]
mov ecx, 0x4dac44
call fcn.00403f98
cmp byte [ebx + 0x16070], 1
jne 0x4dab47
push 0xe4
xor ecx, ecx
mov edx, dword [ebx + 0x15040]
mov eax, ebx
call fcn.004de1b8
dec eax
jne 0x4dab47
push 0
mov eax, dword [ebp - 4]
call fcn.00404110
push eax
mov eax, dword [ebx + 0x15040]
call fcn.00404110
push eax
call sub.kernel32.dll_CopyFileA
xor ecx, ecx
mov edx, dword [ebx + 0x15040]
mov eax, ebx
call fcn.004d89b0
mov eax, dword [ebx + 0x8fc]
cmp byte [eax + 0x47], 1
jne 0x4dab69
mov byte [ebx + 0x15434], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4dab9b
lea eax, [ebp - 0x14]
mov edx, 3
call fcn.00403cf0
lea eax, [ebp - 8]
call fcn.00403ccc
lea eax, [ebp - 4]
call fcn.00403ccc
ret