Function at 0x40af42
Capabilities:
Set file attributes

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xf64
mov eax, dword [0x412004]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
xor eax, eax
mov ebx, 0x1fe
push edi
push ebx
push eax
mov dword [ebp - 0xf48], eax
mov esi, ecx
mov dword [ebp - 0xf4c], eax
mov edi, edx
mov dword [ebp - 0xf60], eax
mov dword [ebp - 0xf3c], eax
lea eax, [ebp - 0x408]
push eax
mov dword [ebp - 0xf44], esi
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x608]
push 0x1fc
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x208]
push ebx
push 0
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
xor eax, eax
mov dword [ebp - 0xf30], eax
mov dword [ebp - 0xf54], eax
mov dword [ebp - 0xf58], eax
push ebx
push eax
mov dword [ebp - 0xf5c], eax
mov dword [ebp - 0xf50], eax
lea eax, [ebp - 0xc08]
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0xa08]
push ebx
xor ebx, ebx
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
lea eax, [ebp - 0x808]
push 0x1fc
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0xf2c], ebx
mov ecx, 0x320
lea eax, [ebp - 0xf28]
mov byte [eax], bl
inc eax
sub ecx, 1
jne 0x40b026
push 0xfe
mov edx, 0x4011ec
lea ecx, [ebp - 0x608]
call fcn.0040e35d
push 8
mov edx, 0x40110c
lea ecx, [ebp - 0xf28]
call fcn.0040e2ff
xor ebx, ebx
mov dword [ebp - 0xf08], 0x40118c
lea eax, [ebp - 0xf60]
mov dword [ebp - 0xf20], 0xa
inc ebx
mov dword [ebp - 0xefc], eax
push 8
mov edx, 0x40110c
mov dword [ebp - 0xf10], ebx
lea ecx, [ebp - 0xed8]
call fcn.0040e2ff
and dword [ebp - 0xec4], 0
lea ecx, [ebp - 0xe88]
push 8
mov edx, 0x40110c
mov dword [ebp - 0xeb8], 0x4011f0
mov dword [ebp - 0xec8], 0x12000
mov dword [ebp - 0xed0], ebx
mov dword [ebp - 0xec0], ebx
call fcn.0040e2ff
and dword [ebp - 0xe74], 0
lea ecx, [ebp - 0xe38]
push 8
mov edx, 0x40110c
mov dword [ebp - 0xe68], 0x4011f4
mov dword [ebp - 0xe78], 0x12000
mov dword [ebp - 0xe80], ebx
mov dword [ebp - 0xe70], ebx
call fcn.0040e2ff
and dword [ebp - 0xe24], 0
lea eax, [ebp - 0x608]
push 8
mov edx, 0x40110c
mov dword [ebp - 0xe18], 0x4011f8
lea ecx, [ebp - 0xde8]
mov dword [ebp - 0xe28], 0x10
mov dword [ebp - 0xe30], ebx
mov dword [ebp - 0xe20], ebx
mov dword [ebp - 0xe0c], eax
mov dword [ebp - 0xe08], 0xfe
call fcn.0040e2ff
and dword [ebp - 0xdd4], 0
lea eax, [ebp - 0xf48]
push 8
mov edx, 0x40110c
mov dword [ebp - 0xdc8], 0x40113c
lea ecx, [ebp - 0xd98]
mov dword [ebp - 0xdd8], 0x20000
mov dword [ebp - 0xde0], 0xa
mov dword [ebp - 0xdd0], ebx
mov dword [ebp - 0xdbc], eax
call fcn.0040e2ff
and dword [ebp - 0xd84], 0
lea eax, [ebp - 0xf3c]
push 8
mov edx, 0x40110c
mov dword [ebp - 0xd78], 0x401200
lea ecx, [ebp - 0xd48]
mov dword [ebp - 0xd88], 0x82000
mov dword [ebp - 0xd90], 3
mov dword [ebp - 0xd80], ebx
mov dword [ebp - 0xd6c], eax
call fcn.0040e2ff
lea eax, [ebp - 0xf50]
mov dword [ebp - 0xd28], 0x401660
push 8
mov edx, 0x40110c
mov dword [ebp - 0xd40], 0xa
lea ecx, [ebp - 0xcf8]
mov dword [ebp - 0xd30], ebx
mov dword [ebp - 0xd1c], eax
call fcn.0040e2ff
mov dword [ebp - 0xcd8], 0x401668
lea eax, [ebp - 0xf54]
mov dword [ebp - 0xcf0], 0xa
push 8
mov edx, 0x40110c
mov dword [ebp - 0xce0], ebx
lea ecx, [ebp - 0xca8]
mov dword [ebp - 0xccc], eax
call fcn.0040e2ff
lea eax, [ebp - 0xf5c]
mov dword [ebp - 0xc88], 0x401670
push 8
mov edx, 0x40110c
mov dword [ebp - 0xca0], 0xa
lea ecx, [ebp - 0xc58]
mov dword [ebp - 0xc90], ebx
mov dword [ebp - 0xc7c], eax
call fcn.0040e2ff
push 0xa
pop ecx
lea eax, [ebp - 0xf58]
mov dword [ebp - 0xc50], ecx
push ecx
mov dword [ebp - 0xc2c], eax
mov edx, edi
lea eax, [ebp - 0xf28]
mov dword [ebp - 0xc38], 0x401678
push eax
push ecx
push 0
mov ecx, esi
mov dword [ebp - 0xc40], ebx
call fcn.00411190
test eax, eax
jne 0x40b2e1
push 2
call fcn.00411dc9
pop ecx
mov edx, 0x20001
mov ecx, eax
call fcn.0040d7c6
jmp 0x40ba9a
mov esi, dword [ebp - 0xe5c]
mov edi, dword [ebp - 0xeac]
mov dword [ebp - 0xf40], edi
mov dword [ebp - 0xf38], esi
test esi, esi
jne 0x40b313
mov ecx, 0x1fc
call fcn.0040ebd3
mov esi, eax
mov dword [ebp - 0xf38], esi
test esi, esi
je 0x40b2c8
push ecx
xor edx, edx
mov ecx, edi
call fcn.0040df49
push ecx
xor edx, edx
mov ecx, esi
call fcn.0040df49
cmp dword [ebp - 0xf48], ebx
jne 0x40b35a
cmp dword [ebp - 0xf44], 3
jbe 0x40b35a
mov ecx, 0x42f
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
jmp 0x40ba9a
cmp dword [ebp - 0xebc], 0
je 0x40b390
mov ecx, edi
call fcn.0040e3f2
test eax, eax
jne 0x40b390
mov ecx, 0x30e
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
jmp 0x40ba84
mov eax, dword [ebp - 0xe6c]
test eax, eax
je 0x40b3b2
mov ecx, esi
call fcn.0040e3f2
test eax, eax
jne 0x40b3ac
mov ecx, 0x30f
jmp 0x40b373
mov eax, dword [ebp - 0xe6c]
cmp dword [ebp - 0xebc], 0
jne 0x40b3c6
test eax, eax
je 0x40b3ca
mov ecx, 0x30b
jmp 0x40b373
test eax, eax
jne 0x40b3da
cmp dword [ebp - 0xe1c], 0
je 0x40b3da
mov ecx, 0x30c
jmp 0x40b373
cmp dword [ebp - 0xf48], 0
mov ecx, edi
je 0x40b420
call fcn.0040cc0e
cmp eax, ebx
je 0x40ba84
mov edi, 0x3ca
mov ecx, edi
call fcn.0040d995
push ebx
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
inc edi
cmp edi, 0x3e8
jbe 0x40b3f7
xor ebx, ebx
jmp 0x40ba84
call fcn.0040f9d8
test eax, eax
je 0x40b459
call fcn.0040f91b
test eax, eax
jne 0x40b459
mov ecx, 0xe87
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
call fcn.0040d859
jmp 0x40ba9a
cmp dword [ebp - 0xf50], 0
jne 0x40b487
cmp dword [ebp - 0xf54], 0
jne 0x40b487
cmp dword [ebp - 0xf5c], 0
jne 0x40b487
cmp dword [ebp - 0xf58], 0
jne 0x40b487
mov ecx, 0x42e
jmp 0x40b373
mov ecx, edi
call fcn.0040f9d8
test eax, eax
jne 0x40b4ee
cmp dword [ebp - 0xe1c], eax
je 0x40b4c1
push eax
push ebx
mov edx, 0x4011ec
lea ecx, [ebp - 0x608]
call fcn.0040e401
test eax, eax
jne 0x40b4b8
mov dword [ebp - 0xf4c], ebx
jmp 0x40b4ee
cmp dword [ebp - 0xe1c], 0
jne 0x40b4ee
cmp dword [ebp - 0xebc], 0
jne 0x40b4d3
cmp dword [ebp - 0xe6c], 0
je 0x40b4ee
push 0xfe
mov edx, 0x401104
mov dword [ebp - 0xf4c], ebx
lea ecx, [ebp - 0x608]
call fcn.0040e35d
push 2
push 0x401208
push edi
call dword [sym.imp.api_ms_win_core_shlwapi_obsolete_l1_1_0.dll_StrCmpNW]
test eax, eax
jne 0x40b55a
push 3
push 0x401210
push edi
call dword [sym.imp.api_ms_win_core_shlwapi_obsolete_l1_1_0.dll_StrCmpNW]
test eax, eax
je 0x40b55a
push 0x401208
push edi
call dword [sym.imp.msvcrt.dll_wcstok]
mov dword [ebp - 0xf44], eax
pop ecx
pop ecx
test eax, eax
jne 0x40b54c
push eax
push ebx
mov edx, 0x401208
mov ecx, edi
call fcn.0040e401
test eax, eax
je 0x40b546
mov ecx, 0xe7d
jmp 0x40b33d
mov eax, dword [ebp - 0xf44]
push 0xfe
mov edx, eax
mov ecx, edi
call fcn.0040e35d
lea eax, [ebp - 0xf2c]
mov edx, esi
push eax
push dword [ebp - 0xf4c]
lea eax, [ebp - 0x208]
mov ecx, edi
push eax
lea eax, [ebp - 0x608]
push eax
call fcn.004052aa
test eax, eax
je 0x40ba73
mov ecx, edi
call fcn.0040f9d8
cmp eax, ebx
jne 0x40b5b9
mov ecx, esi
call fcn.0040e3f2
test eax, eax
je 0x40b5b9
mov ecx, 0x313
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
lea ecx, [ebp - 0x208]
call fcn.00404f7f
mov esi, eax
mov dword [ebp - 0xf34], esi
test esi, esi
jne 0x40b61e
mov eax, dword [0x41248c]
test bl, al
je 0x40b5de
or eax, 0x21
jmp 0x40b5e1
or eax, 0x20
push eax
mov dword [0x41248c], eax
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
test eax, eax
jne 0x40ba68
mov ecx, 0x8d
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
jmp 0x40ba68
mov edx, dword [ebp - 0xf3c]
test edx, edx
je 0x40b9fd
mov ecx, esi
call fcn.0040f4ff
cmp edx, eax
ja 0x40b9fd
dec edx
call fcn.0040f556
mov ecx, eax
mov dword [ebp - 0xf44], eax
call fcn.0040e3f2
mov ecx, 0xfe
cmp eax, ecx
jbe 0x40b69f
push ecx
mov ecx, 0xc12
call fcn.0040d995
push eax
push ebx
push ebx
push 2
call fcn.00411dc9
pop ecx
push eax
call fcn.0040e6ab
add esp, 0x14
push 2
call fcn.00411dc9
pop ecx
lea edx, [ebp - 0xa08]
mov ecx, eax
call fcn.0040e454
push 2
call fcn.00411dc9
pop ecx
mov ecx, eax
call fcn.0040d79d
jmp 0x40ba18
mov edx, dword [ebp - 0xf44]
test edx, edx
je 0x40b9df
push 0xff
lea ecx, [ebp - 0x408]
call fcn.0040e35d
cmp dword [ebp - 0xf50], ebx
jne 0x40b791
push 0
push ebx
mov edx, 0x401680
lea ecx, [ebp - 0x408]
call fcn.0040dea7
cmp eax, 0xffffffff
je 0x40b787
lea eax, [ebp + eax*2 - 0x408]
test eax, eax
je 0x40b787
push 0xfe
mov edx, 0x401108
lea ecx, [ebp - 0xc08]
call fcn.0040e35d
lea eax, [ebp - 0x808]
mov edx, 0x401680
push eax
lea ecx, [ebp - 0x408]
call fcn.0040baab
test eax, eax
jne 0x40b791
lea edx, [ebp - 0x808]
lea ecx, [ebp - 0x408]
call fcn.00405199
cmp eax, ebx
jne 0x40b791
mov eax, dword [0x41248c]
test bl, al
je 0x40b747
or eax, 0x21
jmp 0x40b74a
or eax, 0x20
push eax
mov dword [0x41248c], eax
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
test eax, eax
jne 0x40ba73
mov ecx, 0x8d
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
jmp 0x40ba73
mov ecx, 0x31b
jmp 0x40ba00
cmp dword [ebp - 0xf54], ebx
jne 0x40b7dc
push 0
push ebx
mov edx, 0x401690
lea ecx, [ebp - 0x408]
call fcn.0040dea7
cmp eax, 0xffffffff
je 0x40b8c7
lea eax, [ebp + eax*2 - 0x408]
test eax, eax
je 0x40b8c7
mov edx, 0x401690
lea ecx, [ebp - 0x408]
call fcn.00405199
cmp eax, ebx
je 0x40ba18
cmp dword [ebp - 0xf58], ebx
jne 0x40b827
push 0
push ebx
mov edx, 0x4016a8
lea ecx, [ebp - 0x408]
call fcn.0040dea7
cmp eax, 0xffffffff
je 0x40b8d1
lea eax, [ebp + eax*2 - 0x408]
test eax, eax
je 0x40b8d1
mov edx, 0x4016a8
lea ecx, [ebp - 0x408]
call fcn.00405199
cmp eax, ebx
je 0x40ba18
cmp dword [ebp - 0xf5c], ebx
jne 0x40b872
push 0
push ebx
mov edx, 0x4016b4
lea ecx, [ebp - 0x408]
call fcn.0040dea7
cmp eax, 0xffffffff
je 0x40b8db
lea eax, [ebp + eax*2 - 0x408]
test eax, eax
je 0x40b8db
mov edx, 0x4016b4
lea ecx, [ebp - 0x408]
call fcn.00405199
cmp eax, ebx
je 0x40ba18
mov edx, dword [ebp - 0xf3c]
mov ecx, esi
lea edx, [edx - 1]
call fcn.0040f4af
mov edx, dword [ebp - 0xf3c]
lea eax, [ebp - 0x408]
push 0
push eax
mov ecx, esi
lea edx, [edx - 1]
call fcn.0040f441
lea edx, [ebp - 0xf30]
mov ecx, esi
call fcn.00405791
cmp eax, ebx
jne 0x40b8e5
lea ecx, [ebp - 0xf34]
call fcn.0040f1de
lea ecx, [ebp - 0xf30]
call fcn.0040eb2f
jmp 0x40b739
mov ecx, 0x31d
jmp 0x40ba00
mov ecx, 0x31c
jmp 0x40ba00
mov ecx, 0x31e
jmp 0x40ba00
lea eax, [ebp - 0x208]
push eax
push dword [ebp - 0xf30]
push 0x401218
call dword [sym.imp.api_ms_win_core_privateprofile_l1_1_1.dll_WritePrivateProfileSectionW]
push dword [ebp - 0xf3c]
test eax, eax
je 0x40b9b1
mov ecx, 0x31f
call fcn.0040d995
push eax
push ebx
push ebx
push ebx
call fcn.00411dc9
pop ecx
push eax
call fcn.0040e6ab
mov eax, dword [0x41248c]
add esp, 0x14
test bl, al
je 0x40b936
or eax, 0x21
jmp 0x40b939
or eax, 0x20
push eax
mov dword [0x41248c], eax
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
test eax, eax
jne 0x40b96d
mov ecx, 0x8d
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
lea ecx, [ebp - 0xf34]
call fcn.0040f1de
lea ecx, [ebp - 0xf30]
call fcn.0040eb2f
cmp dword [ebp - 0xf2c], 0
je 0x40b994
push ecx
mov ecx, edi
call fcn.0041005b
lea ecx, [ebp - 0xf40]
call fcn.0040eb2f
lea ecx, [ebp - 0xf38]
call fcn.0040eb2f
xor eax, eax
jmp 0x40ba9c
mov ecx, 0x320
call fcn.0040d995
push eax
push ebx
push ebx
push 2
call fcn.00411dc9
pop ecx
push eax
call fcn.0040e6ab
add esp, 0x14
lea ecx, [ebp - 0xf34]
call fcn.0040f1de
jmp 0x40b5d0
push 8
call dword [sym.imp.api_ms_win_core_errorhandling_l1_1_0.dll_SetLastError]
push 2
call fcn.00411dc9
pop ecx
mov edx, 0x10001
mov ecx, eax
call fcn.0040d7c6
jmp 0x40ba18
push 0x7d
pop ecx
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
mov eax, dword [0x41248c]
test bl, al
je 0x40ba26
or eax, 0x21
jmp 0x40ba29
or eax, 0x20
push eax
mov dword [0x41248c], eax
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.api_ms_win_core_file_l1_1_0.dll_SetFileAttributesW]
test eax, eax
jne 0x40ba5d
mov ecx, 0x8d
call fcn.0040d995
push 2
mov esi, eax
call fcn.00411dc9
pop ecx
mov edx, esi
mov ecx, eax
call fcn.0040e454
lea ecx, [ebp - 0xf34]
call fcn.0040f1de
lea ecx, [ebp - 0xf30]
call fcn.0040eb2f
cmp dword [ebp - 0xf2c], 0
je 0x40ba84
push ecx
mov ecx, edi
call fcn.0041005b
lea ecx, [ebp - 0xf40]
call fcn.0040eb2f
lea ecx, [ebp - 0xf38]
call fcn.0040eb2f
mov eax, ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004117f0
leave
ret