Function at 0x4f02f0
Capabilities:
Copy file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6acbe8
mov eax, dword fs:[0]
push eax
sub esp, 0x688
mov eax, dword [0x7e2670]
xor eax, ebp
mov dword [ebp - 0x14], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x66c], ecx
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x63c], eax
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x638]
call fcn.0040dbe0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x638]
call fcn.0040e940
movzx edx, al
test edx, edx
je 0x4f0379
mov dword [ebp - 0x650], 0x205
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x638]
call fcn.004014d0
mov eax, dword [ebp - 0x650]
jmp 0x4f0a47
mov byte [ebp - 0x634], 0
push 0x1ff
push 0
lea eax, [ebp - 0x633]
push eax
call fcn.006665c0
add esp, 0xc
mov byte [ebp - 0x42c], 0
push 0x1ff
push 0
lea ecx, [ebp - 0x42b]
push ecx
call fcn.006665c0
add esp, 0xc
mov byte [ebp - 0x214], 0
push 0x1ff
push 0
lea edx, [ebp - 0x213]
push edx
call fcn.006665c0
add esp, 0xc
push 0x200
mov eax, dword [ebp + 8]
push eax
lea ecx, [ebp - 0x634]
push ecx
call fcn.0066c260
add esp, 0xc
push 0x200
mov edx, dword [ebp + 8]
push edx
lea eax, [ebp - 0x42c]
push eax
call fcn.0066c260
add esp, 0xc
push 0x7437a8
lea ecx, [ebp - 0x42c]
push ecx
call fcn.00666bb0
add esp, 8
cmp dword [ebp + 0x10], 0
je 0x4f0426
mov dword [ebp - 0x670], 0x7437b0
jmp 0x4f0430
mov dword [ebp - 0x670], 0x7437c8
push 1
lea edx, [ebp - 0x214]
push edx
mov eax, dword [ebp - 0x670]
push eax
lea ecx, [ebp - 0x634]
push ecx
mov ecx, dword [ebp - 0x66c]
call fcn.004f0050
test eax, eax
je 0x4f0498
cmp dword [ebp + 0x10], 0
je 0x4f0468
mov dword [ebp - 0x674], 0x7437e4
jmp 0x4f0472
mov dword [ebp - 0x674], 0x7437fc
push 1
lea edx, [ebp - 0x214]
push edx
mov eax, dword [ebp - 0x674]
push eax
lea ecx, [ebp - 0x42c]
push ecx
mov ecx, dword [ebp - 0x66c]
call fcn.004f0050
test eax, eax
jne 0x4f049d
jmp 0x4f059c
cmp dword [ebp + 0x10], 0
jne 0x4f04af
mov dword [ebp - 0x678], 0x743818
jmp 0x4f04b9
mov dword [ebp - 0x678], 0x743830
push 1
lea edx, [ebp - 0x214]
push edx
mov eax, dword [ebp - 0x678]
push eax
lea ecx, [ebp - 0x634]
push ecx
mov ecx, dword [ebp - 0x66c]
call fcn.004f0050
test eax, eax
je 0x4f0521
cmp dword [ebp + 0x10], 0
jne 0x4f04f1
mov dword [ebp - 0x67c], 0x74384c
jmp 0x4f04fb
mov dword [ebp - 0x67c], 0x743864
push 1
lea edx, [ebp - 0x214]
push edx
mov eax, dword [ebp - 0x67c]
push eax
lea ecx, [ebp - 0x42c]
push ecx
mov ecx, dword [ebp - 0x66c]
call fcn.004f0050
test eax, eax
jne 0x4f0523
jmp 0x4f059c
push 0x741edb
mov edx, dword [ebp - 0x63c]
add edx, 0x10
push edx
call fcn.00413840
add esp, 8
movzx eax, al
test eax, eax
je 0x4f0557
lea ecx, [ebp - 0x634]
push ecx
push 0x743880
call fcn.0066610b
add esp, 8
jmp 0x4f0575
lea edx, [ebp - 0x634]
push edx
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax + 0x10]
push ecx
push str.__s_error__cant_find_scatter_file_from__s_dir_cant_down_scatter__r_n
call fcn.0066610b
add esp, 0xc
mov dword [ebp - 0x654], 0xfffffffe
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x638]
call fcn.004014d0
mov eax, dword [ebp - 0x654]
jmp 0x4f0a47
push 0x7f85d8
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea edx, [ebp - 0x214]
push edx
lea ecx, [ebp - 0x430]
call fcn.0040dbe0
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x63c]
mov ecx, dword [eax + 0x10]
push ecx
push 0x7438c4
lea edx, [ebp - 0x430]
push edx
call fcn.0040e0f0
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x430]
call fcn.004018a0
push eax
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
push 0
push 0
lea ecx, [ebp - 0x430]
call fcn.004018a0
push eax
lea ecx, [ebp - 0x22c]
call fcn.0057b441
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.00401490
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x22c]
call fcn.0057b2f8
test eax, eax
je 0x4f0940
push ecx
mov ecx, esp
mov dword [ebp - 0x658], esp
lea edx, [ebp - 0x10]
push edx
call fcn.004014b0
mov dword [ebp - 0x680], eax
mov ecx, dword [ebp - 0x66c]
call fcn.004f0230
mov byte [ebp - 0x681], al
movzx eax, byte [ebp - 0x681]
test eax, eax
jne 0x4f0670
jmp 0x4f0623
lea ecx, [ebp - 0x214]
push ecx
lea ecx, [ebp - 0x640]
call fcn.0040dbe0
mov byte [ebp - 4], 4
push 0x5c
lea ecx, [ebp - 0x640]
call fcn.00401220
mov dword [ebp - 0x644], eax
mov edx, dword [ebp - 0x644]
add edx, 1
push edx
lea eax, [ebp - 0x65c]
push eax
lea ecx, [ebp - 0x640]
call fcn.00401270
mov dword [ebp - 0x688], eax
mov ecx, dword [ebp - 0x688]
mov dword [ebp - 0x68c], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x68c]
push edx
lea ecx, [ebp - 0x640]
call fcn.0040fe20
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x65c]
call fcn.004014d0
mov dword [ebp - 0x644], 0xffffffff
push 0
push 0x743910
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push str..fex
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push str..img
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push str..dat
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push str..bmp
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push 0x743938
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push 0x74393c
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push str..mbn
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push 0x743948
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
jne 0x4f0836
push 0
push str..sig
lea ecx, [ebp - 0x10]
call fcn.00404540
mov dword [ebp - 0x644], eax
cmp dword [ebp - 0x644], 0xffffffff
je 0x4f0838
jmp 0x4f0840
xor eax, eax
jne 0x4f06f6
cmp dword [ebp - 0x644], 0xffffffff
je 0x4f091d
lea ecx, [ebp - 0x10]
push ecx
lea ecx, [ebp - 0x648]
call fcn.004014b0
mov byte [ebp - 4], 6
mov dword [ebp - 0x64c], 0
push 0x20
lea ecx, [ebp - 0x648]
call fcn.00401220
mov dword [ebp - 0x64c], eax
mov edx, dword [ebp - 0x64c]
cmp edx, dword [ebp - 0x644]
jle 0x4f08f0
mov eax, dword [ebp - 0x64c]
push eax
lea ecx, [ebp - 0x660]
push ecx
lea ecx, [ebp - 0x648]
call fcn.00401270
mov dword [ebp - 0x690], eax
mov edx, dword [ebp - 0x690]
mov dword [ebp - 0x694], edx
mov byte [ebp - 4], 7
mov eax, dword [ebp - 0x694]
push eax
lea ecx, [ebp - 0x648]
call fcn.0040fe20
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x660]
call fcn.004014d0
push 0x20
lea ecx, [ebp - 0x648]
call fcn.00401220
mov dword [ebp - 0x64c], eax
jmp 0x4f087d
lea ecx, [ebp - 0x640]
call fcn.00489570
push eax
mov ecx, dword [ebp - 0x64c]
add ecx, 1
push ecx
lea ecx, [ebp - 0x10]
call fcn.004f1960
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x648]
call fcn.004014d0
lea edx, [ebp - 0x10]
push edx
mov ecx, dword [ebp - 0x66c]
call fcn.00454fa0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x640]
call fcn.004014d0
jmp 0x4f0623
lea ecx, [ebp - 0x22c]
call fcn.0057b199
push 0x7f85d8
call dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
mov ecx, dword [ebp - 0x66c]
call fcn.00468f40
test eax, eax
jne 0x4f09fb
push 0x741ef9
mov eax, dword [ebp - 0x63c]
add eax, 0x10
push eax
call fcn.00413840
add esp, 8
movzx ecx, al
test ecx, ecx
je 0x4f0996
push str.error__scatterFile_has_no_cmdline_r_n
call fcn.0066610b
add esp, 4
jmp 0x4f09ad
mov edx, dword [ebp - 0x63c]
mov eax, dword [edx + 0x10]
push eax
push str.__s_error__scatterFile_has_no_cmdline_r_n
call fcn.0066610b
add esp, 8
mov dword [ebp - 0x664], 0xfffffffe
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.004014d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x22c]
call fcn.0057b1d7
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x430]
call fcn.004014d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x638]
call fcn.004014d0
mov eax, dword [ebp - 0x664]
jmp 0x4f0a47
mov dword [ebp - 0x668], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x10]
call fcn.004014d0
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x22c]
call fcn.0057b1d7
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x430]
call fcn.004014d0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x638]
call fcn.004014d0
mov eax, dword [ebp - 0x668]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.006665ac
mov esp, ebp
pop ebp
ret 0xc