Function at 0x4054f0
Capabilities:
Copy file

Disassembly:
push 0xffffffffffffffff
push 0x4582a0
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x4749e0]
xor eax, esp
mov dword [esp + 0x3c], eax
push ebx
push esi
push edi
mov eax, dword [0x4749e0]
xor eax, esp
push eax
lea eax, [esp + 0x50]
mov dword fs:[0], eax
mov esi, ecx
mov dword [esp + 0x10], esi
call fcn.0040c960
mov eax, dword [eax + 0xac]
cmp eax, 3
je 0x40583b
push str.TimeLog:_Begin_Installing
call fcn.00415740
mov ebx, 0x461120
call fcn.00415e40
add esp, 4
call fcn.0040c960
mov ecx, eax
call fcn.004101c0
push str.TimeLog:_End_Installing._Now_launching_PDApp
mov edi, eax
call fcn.00415740
call fcn.00415e40
add esp, 4
call fcn.0040c960
mov al, byte [eax + 0x4c]
test al, al
mov ebx, 1
jne 0x4055ad
call fcn.0040c960
mov eax, dword [eax + 0xac]
cmp eax, 2
je 0x4055ad
cmp eax, ebx
je 0x4055ad
mov eax, dword [esi + 0x20]
mov eax, dword [eax + 0x20]
push 0
push 0
push 0x84e
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, dword [sym.imp.KERNEL32.dll_Sleep]
push 0x1f4
call esi
cmp dword [0x479390], 0
je 0x4055d3
push 0x1f4
call esi
cmp dword [0x479390], 0
jne 0x4055c3
cmp dword [0x47938c], 0
jne 0x4058fb
test edi, edi
jge 0x4055f4
mov dword [0x479380], ebx
mov eax, 0xfffffffb
jmp 0x4058fd
call fcn.0040c960
cmp dword [eax + 0x30], 0
je 0x405837
mov eax, 7
mov dword [esp + 0x2c], eax
mov dword [esp + 0x28], 0
mov word [esp + 0x18], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], 0
mov word [esp + 0x34], 0
mov byte [esp + 0x58], bl
call fcn.0040c960
mov eax, dword [eax + 0x20]
test eax, eax
mov edx, eax
jne 0x40564d
mov edx, 0x460c30
mov eax, edx
lea esi, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405652
sub eax, esi
sar eax, 1
push eax
push edx
lea esi, [esp + 0x1c]
call fcn.00403640
push ebx
push 0x461284
mov ecx, esi
call fcn.00408f70
call fcn.0040c960
mov ecx, dword [eax + 0x34]
mov eax, ecx
lea esi, [eax + 2]
mov dx, word [eax]
add eax, 2
test dx, dx
jne 0x405686
sub eax, esi
sar eax, 1
push eax
push ecx
lea ecx, [esp + 0x1c]
call fcn.00408f70
push 0xe
push 0x461288
lea ecx, [esp + 0x1c]
call fcn.00408f70
call fcn.0040c960
mov eax, dword [eax + 0x20]
test eax, eax
mov edx, eax
jne 0x4056c3
mov edx, 0x460c30
mov eax, edx
lea esi, [eax + 2]
jmp 0x4056d0
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4056d0
sub eax, esi
sar eax, 1
push eax
push edx
lea esi, [esp + 0x38]
call fcn.00403640
push 0xe
push 0x461288
mov ecx, esi
call fcn.00408f70
mov ecx, dword [esp + 0x34]
mov edi, 8
cmp dword [esp + 0x48], edi
jae 0x40570b
lea ecx, [esp + 0x34]
cmp dword [esp + 0x2c], edi
mov eax, dword [esp + 0x18]
jae 0x405719
lea eax, [esp + 0x18]
mov esi, dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0
push ecx
push eax
call esi
test eax, eax
jne 0x40576d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Unable_to_launch_PDApp._Error_in_performing_additional_copy_of_PDAppFlex.swf._nGetLastError_____ld
call fcn.00415740
mov ebx, 0x461120
call fcn.00415ed0
add esp, 8
lea esi, [esp + 0x30]
mov dword [0x479380], 3
call fcn.004016a0
lea esi, [esp + 0x14]
call fcn.004016a0
mov eax, 0xfffffffa
jmp 0x4058fd
call fcn.0040c960
mov edx, dword [eax + 0x20]
test edx, edx
jne 0x40577e
mov edx, 0x460c30
lea ecx, [esp + 0x14]
push ecx
call fcn.004030b0
lea edx, [esp + 0x14]
push edx
mov edx, 0x461284
call fcn.00408e80
call fcn.0040c960
mov eax, dword [eax + 0x34]
lea ecx, [esp + 0x14]
push ecx
mov edx, eax
call fcn.00408e80
lea edx, [esp + 0x14]
push edx
mov edx, str.PDAppFlex_app.xml
call fcn.00408e80
call fcn.0040c960
mov eax, dword [eax + 0x20]
test eax, eax
jne 0x4057cb
mov eax, 0x460c30
lea ecx, [esp + 0x30]
push ecx
mov edx, eax
call fcn.004030b0
lea edx, [esp + 0x30]
push edx
mov edx, str.PDAppFlex_app.xml
call fcn.00408e80
cmp dword [esp + 0x48], edi
mov ecx, dword [esp + 0x34]
jae 0x4057f4
lea ecx, [esp + 0x34]
cmp dword [esp + 0x2c], edi
mov eax, dword [esp + 0x18]
jae 0x405802
lea eax, [esp + 0x18]
push 0
push ecx
push eax
call esi
test eax, eax
jne 0x40581d
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Unable_to_launch_PDApp._Error_in_performing_additional_copy_of_PDAppFlex_app.xml._nGetLastError_____ld
jmp 0x405735
lea esi, [esp + 0x30]
call fcn.004016a0
lea esi, [esp + 0x14]
mov dword [esp + 0x58], 0xffffffff
call fcn.004016a0
mov esi, dword [esp + 0x10]
mov ecx, dword [esi + 0xe8]
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
test al, al
je 0x405859
mov ecx, dword [esi + 0xec]
mov eax, dword [ecx]
mov edx, dword [eax + 0xc]
call edx
cmp dword [0x47938c], 0
jne 0x4058fb
call fcn.0040c960
cmp byte [eax + 0x4c], 0
je 0x40587f
call fcn.0040c960
mov ecx, eax
call fcn.0040ed50
jmp 0x4058fd
call fcn.0040c960
mov ecx, eax
call fcn.0040f650
mov esi, eax
test esi, esi
je 0x405896
cmp esi, 0xfffffff7
jne 0x4058fb
call fcn.0040c960
cmp byte [eax + 0x4c], 0
jne 0x4058fb
cmp esi, 0xfffffff7
jne 0x4058cc
push str.Unable_to_launch_PDApp._File_missing
call fcn.00415740
mov ebx, 0x461120
call fcn.00415ed0
add esp, 4
mov dword [0x479380], 2
lea eax, [esi + 2]
jmp 0x4058fd
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.Unable_to_launch_PDApp._nGetLastError_____ld
call fcn.00415740
mov ebx, 0x461120
call fcn.00415ed0
add esp, 8
mov dword [0x479380], 2
mov eax, 0xfffffff9
jmp 0x4058fd
xor eax, eax
mov ecx, dword [esp + 0x50]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x3c]
xor ecx, esp
call fcn.004321fe
add esp, 0x4c
ret