Function at 0x613750
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x71f77b
mov eax, dword fs:[0]
push eax
sub esp, 0x44
mov eax, dword [0x7e6410]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov ecx, dword [esi + 0x658]
mov dword [ebp - 4], 1
test ecx, ecx
je 0x61385a
call fcn.0068d570
test eax, eax
je 0x61385a
mov ecx, esi
call fcn.00615820
mov ecx, dword [0x7f7170]
test ecx, ecx
je 0x6137c1
mov eax, dword [ecx]
push 0x7425a0
push str.IDS_APP_NAME
call dword [eax + 8]
jmp 0x6137c6
mov eax, 0x790eb0
push eax
lea ecx, [ebp - 0x40]
call fcn.00424600
mov ecx, dword [0x7f7170]
mov byte [ebp - 4], 2
test ecx, ecx
je 0x6137ee
mov eax, dword [ecx]
push 0x7425a0
push 0x753a24
call dword [eax + 8]
jmp 0x6137f3
mov eax, 0x790eb0
push eax
lea ecx, [ebp - 0x28]
call fcn.00424600
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x28]
push eax
push dword [esi + 4]
call fcn.0042f4d0
add esp, 0x20
cmp dword [ebp - 0x14], 8
jb 0x61382e
push dword [ebp - 0x28]
call fcn.00428680
add esp, 4
xor eax, eax
mov dword [ebp - 0x14], 7
cmp dword [ebp - 0x2c], 8
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
jb 0x613853
push dword [ebp - 0x40]
call fcn.00428680
add esp, 4
xor edi, edi
jmp 0x613bfc
mov ecx, esi
call fcn.005d9be0
mov ecx, esi
call fcn.005d9c10
lea ecx, [esi + 0x1758]
call fcn.00428750
lea ecx, [ebp + 8]
mov dword [esi + 0x9f4], 0
mov dword [esi + 0x9f8], 0
mov dword [esi + 0x9fc], 0
mov dword [esi + 0x174c], 0
mov dword [esi + 0xae4], 1
call fcn.00429100
push eax
call fcn.005b6cc0
add esp, 4
test eax, eax
je 0x61392c
lea ecx, [ebp + 8]
call fcn.00429100
push eax
lea eax, [ebp - 0x48]
push eax
call fcn.005b4a50
add esp, 4
mov byte [ebp - 4], 4
lea eax, [ebp - 0x48]
mov ecx, esp
push eax
call fcn.00428690
lea eax, [ebp - 0x44]
push eax
call fcn.0057ff90
add esp, 8
push 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 5
call fcn.00429100
push eax
lea ecx, [ebp + 8]
call fcn.00429100
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp + 8]
call fcn.004289a0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 4
call fcn.00428810
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.00428810
cmp dword [esi + 0x14b8], 0
je 0x613966
cmp dword [esi + 0x334], 0
je 0x613966
mov edx, dword [esi + 0x3c0]
xor ecx, ecx
test edx, edx
jle 0x613966
mov edi, dword [esi + 0x3a4]
mov eax, dword [esi + 0x3bc]
cmp edi, dword [eax + ecx*4]
jne 0x613961
mov dword [esi + 0x1580], ecx
inc ecx
cmp ecx, edx
jl 0x613950
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
lea ebx, [esi + 0x18a4]
mov byte [esi + 0x18a0], 1
lea esp, [esp]
push ebx
call fcn.006b2128
add esp, 4
test eax, eax
je 0x6139a1
cmp eax, 3
je 0x61399b
push eax
call fcn.006b1c82
add esp, 4
push 0xa
call edi
jmp 0x613980
lea edi, [esi + 0x17c8]
push 0
push edi
call fcn.00549410
add esp, 8
test al, al
je 0x6139e3
mov eax, dword [edi]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x6139d0
mov eax, dword [edi]
push dword [eax + 4]
call dword [sym.imp.USER32.dll_DestroyWindow]
mov ecx, dword [edi]
mov dword [edi], 0
test ecx, ecx
je 0x6139e3
mov eax, dword [ecx]
push 1
call dword [eax + 4]
mov byte [esi + 0x18c0], 0
mov eax, dword [esi + 0x18c4]
push ecx
mov dword [esi + 0x18c8], eax
mov ecx, esp
lea eax, [ebp + 0xc]
mov dword [ebp - 0x4c], esp
push eax
call fcn.00428690
push ecx
lea eax, [ebp + 8]
mov byte [ebp - 4], 6
mov ecx, esp
push eax
call fcn.00428690
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.00615df0
test eax, eax
jne 0x613c37
push 0xffffffffffffffff
push ecx
mov ecx, esp
mov dword [ebp - 0x4c], esp
push 0x790eb0
call fcn.00428840
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 7
push eax
call fcn.005b6a10
mov ecx, esp
mov byte [ebp - 4], 8
push 0x744bc4
push eax
push ecx
call fcn.00428bd0
push str.SKINPATH
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 9
push 0x7494a8
push eax
call fcn.005b55c0
add esp, 0x18
push eax
mov ecx, 0x7f724c
mov byte [ebp - 4], 0xa
call fcn.004289a0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 9
call fcn.00428810
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 1
call fcn.00428810
push str.skin.xml
mov ecx, 0x7f7250
call fcn.00428a30
push 0x790eb0
mov ecx, 0x7f7254
call fcn.00428a30
push ecx
mov ecx, esp
mov dword [ebp - 0x50], esp
push 0x7f7250
call fcn.00428690
push ecx
mov ecx, esp
mov byte [ebp - 4], 0xb
push 0x7f724c
call fcn.00428690
mov ecx, esi
mov byte [ebp - 4], 1
call fcn.00615df0
test eax, eax
jne 0x613c37
mov ecx, dword [0x7f7170]
test ecx, ecx
je 0x613b07
mov eax, dword [ecx]
push 0x7425a0
push str.IDS_APP_NAME
call dword [eax + 8]
jmp 0x613b0c
mov eax, 0x790eb0
push eax
lea ecx, [ebp - 0x40]
call fcn.00424600
mov ecx, dword [0x7f7170]
mov byte [ebp - 4], 0xc
test ecx, ecx
je 0x613b34
mov eax, dword [ecx]
push 0x7425a0
push str.IDS_FAIL_REOPEN_SKIN
call dword [eax + 8]
jmp 0x613b39
mov eax, 0x790eb0
push eax
lea ecx, [ebp - 0x28]
call fcn.00424600
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x40]
mov byte [ebp - 4], 0xd
push eax
lea eax, [ebp - 0x28]
push eax
push dword [esi + 4]
call fcn.0042f4d0
add esp, 0x20
cmp dword [ebp - 0x14], 8
jb 0x613b74
push dword [ebp - 0x28]
call fcn.00428680
add esp, 4
xor eax, eax
mov dword [ebp - 0x14], 7
cmp dword [ebp - 0x2c], 8
mov dword [ebp - 0x18], 0
mov word [ebp - 0x28], ax
mov byte [ebp - 4], 1
jb 0x613b9d
push dword [ebp - 0x40]
call fcn.00428680
add esp, 4
xor edi, edi
push ebx
mov dword [esi + 0xae4], 0
mov byte [esi + 0x18a0], 0
call fcn.006b2160
add esp, 4
test eax, eax
je 0x613bc6
push eax
call fcn.006b1c82
add esp, 4
push dword [esi + 0x9c0]
call dword [sym.imp.KERNEL32.dll_SetEvent]
push 1
push 0
lea eax, [ebp - 0x44]
mov dword [0x7f76cc], 0
push eax
mov ecx, esi
call fcn.0061b090
lea ecx, [ebp - 0x44]
call fcn.00428810
push 1
mov ecx, esi
call fcn.005fd510
lea ecx, [ebp + 8]
mov byte [ebp - 4], 0
call fcn.00428810
lea ecx, [ebp + 0xc]
mov dword [ebp - 4], 0xffffffff
call fcn.00428810
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.006b3266
mov esp, ebp
pop ebp
ret 8
mov eax, dword [esi + 0x34]
mov ecx, esi
mov eax, dword [eax + 0x2f8]
mov dword [esi + 0xae8], eax
call fcn.00600e80
test eax, eax
jne 0x613c58
mov ecx, esi
call fcn.005dafa0
push 0
mov ecx, esi
call fcn.005f5f60
cmp dword [esi + 0x15a8], 0
je 0x613c7d
mov eax, dword [esi + 0x34]
mov dword [eax + 0x47c], 0x5c5c90
mov dword [eax + 0x480], esi
mov dword [esi + 0xae0], 0
cmp dword [0x7f7364], 0
je 0x613c97
mov ecx, esi
call fcn.0060a4a0
cmp dword [0x7f723c], 0
je 0x613ccf
cmp dword [0x7f7244], 3
jne 0x613ccf
mov ecx, dword [esi + 0x3a4]
test ecx, ecx
je 0x613ccf
call fcn.00653ee0
test eax, eax
jne 0x613ccf
mov ecx, dword [esi + 0x3a4]
call fcn.0063e050
push eax
mov ecx, esi
call fcn.005f6720
mov ecx, esi
call fcn.005ca7d0
test eax, eax
jne 0x613ce1
mov ecx, esi
call fcn.005dcc70
push 1
mov ecx, esi
call fcn.005c8c70
test eax, eax
je 0x613b9d
mov ecx, esi
call fcn.00602ed0
mov ecx, esi
call fcn.00602200
mov ecx, esi
mov dword [esi + 0xae0], 1
mov edi, 1
call fcn.005e19f0
test al, al
je 0x613d21
mov ecx, esi
call fcn.005e1a20
mov eax, dword [0x7fa9c8]
test eax, eax
jne 0x613d53
push 0x40
call fcn.00428650
add esp, 4
mov dword [ebp - 0x50], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x613d48
mov ecx, eax
call fcn.00544800
jmp 0x613d4a
xor eax, eax
mov byte [ebp - 4], 1
mov dword [0x7fa9c8], eax
lea ecx, [ebp - 0x24]
push ecx
mov ecx, eax
call fcn.00629ed0
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0xf
call fcn.004290f0
test eax, eax
jne 0x613d9f
push eax
push dword [ebp - 0x14]
lea eax, [ebp - 0x1c]
push dword [ebp - 0x18]
push ecx
mov ecx, esp
mov dword [ebp - 0x50], esp
push eax
call fcn.00428690
push ecx
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x10
mov ecx, esp
push eax
call fcn.00428690
mov ecx, esi
mov byte [ebp - 4], 0xf
call fcn.005ec640
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x11
call fcn.00428810
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 1
call fcn.00428810
jmp 0x613b9f