Function at 0x41f160
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10044
call fcn.004932c0
mov eax, dword [0x659300]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
mov eax, ecx
mov ecx, dword [ebp + 0xc]
mov dword [ebp - 0x10018], eax
mov dword [ebp - 0x10040], esi
mov dword [ebp - 0x10010], ecx
push edi
test esi, esi
je 0x41f4ab
mov edx, dword [esi]
lea ecx, [eax + 0x38]
push ecx
add eax, 0x30
mov dword [ebp - 0x10038], ecx
push eax
mov ecx, esi
call dword [edx + 8]
test al, al
je 0x41f4ab
mov ecx, esi
call fcn.00403440
mov edi, eax
test edi, edi
je 0x41f4ab
mov ecx, edi
call fcn.0041dd29
movzx eax, ax
mov dword [ebp - 0x10024], eax
test al, 0x10
jne 0x41f4ab
xor ebx, ebx
mov byte [ebp - 0x10005], bl
test eax, 0x800
je 0x41f207
mov ecx, dword [ebp - 0x10038]
mov byte [ebp - 0x10005], 1
cmp dword [ecx], 8
jg 0x41f4ab
push dword [ebp - 0x10010]
and eax, 0x4000
mov dword [ebp - 0x10028], eax
call fcn.0041e756
mov dword [esp], 0x4c0b60
push eax
call fcn.0049e7b0
mov dword [ebp - 0x10014], eax
pop ecx
pop ecx
test eax, eax
je 0x41f4ab
mov ecx, edi
call fcn.0041dd5a
mov dword [ebp - 0x10020], eax
mov eax, 0x10000
mov dword [ebp - 0x1000c], edx
mov dword [ebp - 0x10030], eax
cmp word [ebp - 0x10028], bx
je 0x41f279
push eax
lea eax, [ebp - 0x10004]
push eax
lea eax, [ebp - 0x1002c]
push eax
push esi
call fcn.0041f9bf
add esp, 0x10
mov ecx, edi
call fcn.0041dd46
xor esi, esi
mov dword [ebp - 0x10028], eax
inc esi
test eax, eax
je 0x41f3c9
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 4]
test al, al
je 0x41f34b
xorps xmm0, xmm0
mov byte [ebp - 0x1004], bl
movlpd qword [ebp - 0x1001c], xmm0
call fcn.0047b26a
cmp dword [eax], 0x1000
jne 0x41f2c5
mov eax, 0x10000
jmp 0x41f2d0
mov eax, 0x2000
mov dword [ebp - 0x10030], eax
push eax
call fcn.00493242
push dword [ebp - 0x10030]
mov dword [ebp - 0x1000c], eax
push ebx
push eax
call fcn.00495f40
push dword [ebp - 0x1000c]
lea eax, [ebp - 0x1004]
push 0x1000
push eax
lea eax, [ebp - 0x1001c]
push eax
push dword [ebp - 0x10040]
call fcn.0041f957
add esp, 0x24
test al, al
je 0x41f338
push dword [ebp - 0x10014]
lea eax, [ebp - 0x1004]
push 1
push dword [ebp - 0x1001c]
push eax
call fcn.0049ea8f
xor ecx, ecx
add esp, 0x10
cmp ecx, eax
sbb esi, esi
inc esi
mov eax, dword [ebp - 0x1000c]
test eax, eax
je 0x41f3bb
push eax
call fcn.0049324b
pop ecx
jmp 0x41f3bb
cmp byte [ebp - 0x10005], bl
je 0x41f395
mov eax, dword [ebp - 0x10038]
cmp dword [eax], 8
jle 0x41f363
xor esi, esi
inc esi
jmp 0x41f3bb
call fcn.0047b26a
cmp dword [eax], 0x200
jne 0x41f3bb
push dword [ebp - 0x1000c]
mov ecx, dword [ebp - 0x10018]
push dword [ebp - 0x10020]
push dword [ebp - 0x10028]
push dword [ebp - 0x10014]
call fcn.0041e87e
jmp 0x41f3b9
mov ecx, dword [ebp - 0x10018]
push ebx
push dword [ebp - 0x1000c]
push dword [ebp - 0x10020]
push dword [ebp - 0x10028]
push dword [ebp - 0x10014]
call fcn.0042048d
mov esi, eax
mov ecx, dword [ebp - 0x10028]
push 1
mov eax, dword [ecx]
call dword [eax]
jmp 0x41f3d9
mov eax, dword [ebp - 0x10020]
or eax, dword [ebp - 0x1000c]
jne 0x41f3d9
mov esi, ebx
push dword [ebp - 0x10014]
call fcn.0049e6c9
pop ecx
test esi, esi
je 0x41f3f0
mov eax, esi
jmp 0x41f4ae
mov eax, dword [ebp - 0x10024]
mov esi, dword [ebp - 0x10010]
and eax, 0xfffd
push eax
push esi
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
push ebx
push 0x80
push 3
push ebx
push 3
push 0xc0000000
push esi
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov ecx, edi
mov dword [ebp - 0x10024], eax
call fcn.0041dd54
mov dword [ebp - 0x10010], eax
test al, 0x10
je 0x41f453
lea eax, [ebp - 0x10044]
mov ecx, edi
push eax
call fcn.0041dd10
mov dword [ebp - 0x10018], eax
mov eax, dword [ebp - 0x10010]
jmp 0x41f459
mov dword [ebp - 0x10018], ebx
test al, 0x20
je 0x41f475
lea eax, [ebp - 0x1003c]
mov ecx, edi
push eax
call fcn.0041dd10
mov esi, eax
mov eax, dword [ebp - 0x10010]
jmp 0x41f477
mov esi, ebx
test al, 8
je 0x41f48b
lea eax, [ebp - 0x10034]
mov ecx, edi
push eax
call fcn.0041dd10
mov ebx, eax
push dword [ebp - 0x10018]
push esi
mov esi, dword [ebp - 0x10024]
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_SetFileTime]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor eax, eax
jmp 0x41f4ae
xor eax, eax
inc eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00492f9a
leave
ret 8