Function at 0x4092b0
Capabilities:
Copy file
Get file attributes
Resolve function by parsing pe exports
Set file attributes

Disassembly:
sub esp, 0x214
mov eax, dword [0x4762c4]
xor eax, esp
mov dword [esp + 0x210], eax
push ebx
push ebp
push esi
mov esi, dword [esp + 0x224]
mov dword [esp + 0x10], ecx
push edi
mov ecx, esi
xor ebp, ebp
xor edi, edi
call fcn.00407f60
test eax, eax
jbe 0x409673
mov dword [esp + 0x10], ebp
lea ebx, [ebx]
mov eax, dword [esi + 4]
test eax, eax
je 0x409313
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x409318
call fcn.00440a4f
mov eax, dword [esi + 4]
cmp dword [eax + ebp], 0
jne 0x40963d
test eax, eax
je 0x409345
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x40934a
call fcn.00440a4f
mov eax, dword [esi + 4]
cmp byte [eax + ebp + 4], 0
je 0x409497
test eax, eax
je 0x409378
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x40937d
call fcn.00440a4f
mov eax, dword [esi + 4]
lea eax, [eax + ebp + 0x40]
mov ebx, 0x10
cmp dword [eax + 0x18], ebx
jb 0x409393
mov eax, dword [eax + 4]
jmp 0x409396
add eax, 4
push eax
call fcn.0042de80
add esp, 4
test al, al
je 0x40948d
mov eax, dword [esi + 4]
test eax, eax
je 0x4093ca
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4093cf
call fcn.00440a4f
mov eax, dword [esi + 4]
cmp dword [eax + ebp + 0x20], ebx
jb 0x4093de
mov ebx, dword [eax + ebp + 0xc]
jmp 0x4093e2
lea ebx, [eax + ebp + 0xc]
test eax, eax
je 0x409402
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x409407
call fcn.00440a4f
mov ecx, dword [esi + 4]
cmp dword [ecx + ebp + 0x58], 0x10
lea eax, [ecx + ebp + 0x40]
jb 0x40941a
mov eax, dword [eax + 4]
jmp 0x40941d
add eax, 4
push ebx
push eax
push str._s_s
lea edx, [esp + 0x24]
push 0x104
push edx
call fcn.00408330
lea eax, [esp + 0x2c]
push eax
call fcn.0042d5f0
add esp, 0x18
test al, al
jne 0x40963d
push edi
mov ecx, esi
call fcn.00407f90
add eax, 0x40
cmp dword [eax + 0x18], 0x10
jb 0x40945e
mov ebx, dword [eax + 4]
jmp 0x409461
lea ebx, [eax + 4]
push edi
mov ecx, esi
call fcn.00407f90
add eax, 0x24
cmp dword [eax + 0x18], 0x10
jb 0x409477
mov eax, dword [eax + 4]
jmp 0x40947a
add eax, 4
mov ecx, dword [esp + 0x14]
push ebx
push eax
call fcn.00409250
test eax, eax
jne 0x40963d
mov eax, 8
jmp 0x409675
test eax, eax
je 0x4094b7
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4094bc
call fcn.00440a4f
mov eax, dword [esi + 4]
cmp dword [eax + ebp + 0x20], 0x10
jb 0x4094cc
mov ebx, dword [eax + ebp + 0xc]
jmp 0x4094d0
lea ebx, [eax + ebp + 0xc]
test eax, eax
je 0x4094f0
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4094f5
call fcn.00440a4f
mov ecx, dword [esi + 4]
cmp dword [ecx + ebp + 0x3c], 0x10
lea eax, [ecx + ebp + 0x24]
jb 0x409508
mov eax, dword [eax + 4]
jmp 0x40950b
add eax, 4
push ebx
push eax
push str._s_s
lea edx, [esp + 0x128]
push 0x104
push edx
call fcn.00408330
mov eax, dword [esi + 4]
add esp, 0x14
test eax, eax
je 0x40954a
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x40954f
call fcn.00440a4f
mov eax, dword [esi + 4]
cmp dword [eax + ebp + 0x20], 0x10
jb 0x40955f
mov ebx, dword [eax + ebp + 0xc]
jmp 0x409563
lea ebx, [eax + ebp + 0xc]
test eax, eax
je 0x409583
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x409588
call fcn.00440a4f
mov eax, dword [esi + 4]
cmp dword [eax + ebp + 0x58], 0x10
lea eax, [eax + ebp + 0x40]
jb 0x40959b
mov eax, dword [eax + 4]
jmp 0x40959e
add eax, 4
push ebx
push eax
push str._s_s
lea ecx, [esp + 0x24]
push 0x104
push ecx
call fcn.00408330
mov eax, dword [esi + 4]
add esp, 0x14
test eax, eax
je 0x4095da
mov ecx, dword [esi + 8]
sub ecx, eax
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp edi, eax
jb 0x4095df
call fcn.00440a4f
mov edx, dword [esi + 4]
cmp dword [edx + ebp + 0x58], 0x10
lea eax, [edx + ebp + 0x40]
jb 0x4095f2
mov eax, dword [eax + 4]
jmp 0x4095f5
add eax, 4
push eax
call fcn.0042de80
add esp, 4
test al, al
je 0x40948d
push 0
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x124]
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x409690
lea edx, [esp + 0x18]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
test al, 1
je 0x40963d
and eax, 0xfffffffe
push eax
lea eax, [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
mov ebx, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
xor edx, edx
mov eax, ebx
div dword [ecx + 0x720]
push 1
push eax
call fcn.004080f0
add ebx, 0x1d
mov ecx, esi
add edi, 1
add ebp, 0x78
mov dword [esp + 0x10], ebx
call fcn.00407f60
cmp edi, eax
jb 0x4092f0
xor eax, eax
mov ecx, dword [esp + 0x220]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.004404d4
add esp, 0x214
ret 4
mov eax, 9
jmp 0x409675