Function at 0x4111b0
Capabilities:
Set file attributes

Disassembly:
sub esp, 0x3b4
push ebx
push ebp
push esi
push edi
mov ebp, ecx
call fcn.00408670
test eax, eax
jne 0x4111d2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x3b4
ret 4
mov ebx, dword [esp + 0x3c8]
mov ecx, 0xab
xor eax, eax
lea edi, [esp + 0x118]
rep stosd dword es:[edi], eax
lea esi, [ebx + 0x114]
mov ecx, 0x50
lea edi, [esp + 0x120]
mov dword [esp + 0x10], esi
mov eax, 1
rep movsd dword es:[edi], dword [esi]
mov dword [esp + 0x3a0], eax
mov dword [esp + 0x3a4], eax
mov eax, dword [ebx + 0x134]
xor ecx, ecx
mov dword [ebp + 0x5518], eax
mov dword [ebp + 0x551c], ecx
mov eax, dword [ebx + 0x130]
mov dword [esp + 0x118], 0x8994
cmp eax, ecx
je 0x411251
mov edx, dword [ebx + 0x134]
sub edx, eax
mov dword [ebp + 0x5518], edx
mov dword [ebp + 0x551c], ecx
push ecx
push ecx
mov dword [ebp + 0x5520], ecx
push ecx
mov dword [ebp + 0x5524], ecx
call fcn.00435640
mov esi, dword [esp + 0x1c]
lea edi, [ebp + 0x52c0]
mov ecx, 0x50
mov dword [ebp + 0x5410], eax
mov al, byte [ebp + 0x552c]
add esp, 0xc
rep movsd dword es:[edi], dword [esi]
lea esi, [ebp + 0x552c]
test al, al
je 0x4112b7
mov al, byte [ebp + 0x5630]
test al, al
je 0x4112b7
push 0x104
lea eax, [esp + 0x18]
push esi
push eax
call fcn.0042f1a0
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0xc
jmp 0x411443
mov ecx, dword [0x482c8c]
mov dword [ebp + 0x5734], ecx
mov al, byte [0x482b88]
test al, al
je 0x411314
cmp al, 0x2a
je 0x411314
push 0x104
lea edx, [esp + 0x18]
push 0x482b88
push edx
call fcn.0042f1a0
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0xc
lea eax, [esp + 0x14]
push eax
call edi
cmp byte [esp + eax + 0x13], 0x5c
je 0x41136c
push 0x104
lea ecx, [esp + 0x18]
push 0x4695f4
push ecx
call fcn.0042f1f0
add esp, 0xc
jmp 0x41136c
lea edx, [esp + 0x14]
push 0x104
push edx
call fcn.0042b3a0
add esp, 8
lea eax, [esp + 0x14]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp byte [esp + eax + 0x13], 0x5c
je 0x41134f
push 0x104
lea ecx, [esp + 0x18]
push 0x4695f4
push ecx
call fcn.0042f1f0
add esp, 0xc
push 0x104
lea edx, [esp + 0x18]
push 0x4695e4
push edx
call fcn.0042f1f0
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
add esp, 0xc
lea eax, [ebp + 0x2424]
lea esi, [ebp + 0x5630]
push 0x104
push eax
push esi
call fcn.0042f1a0
add esp, 0xc
push esi
call edi
test eax, eax
jne 0x4113c3
mov ecx, dword [ebp + 0x5f90]
call fcn.004493a0
push eax
call fcn.0045b401
mov edi, eax
add esp, 4
test edi, edi
je 0x4113bd
push 0x104
push edi
push esi
call fcn.0042f1a0
push edi
call fcn.00451fb9
add esp, 0x10
mov edi, dword [sym.imp.KERNEL32.dll_lstrlenA]
mov eax, dword [ebp + 0x5734]
test eax, eax
je 0x41142a
lea ecx, [esp + 0x14]
push ecx
call edi
cmp byte [esp + eax + 0x13], 0x5c
je 0x4113f2
push 0x104
lea edx, [esp + 0x18]
push 0x4695f4
push edx
call fcn.0042f1f0
add esp, 0xc
push 0x104
lea eax, [esp + 0x18]
push esi
push eax
call fcn.0042f1f0
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
call edi
cmp byte [esp + eax + 0x13], 0x5c
je 0x41142a
push 0x104
lea edx, [esp + 0x18]
push 0x4695f4
push edx
call fcn.0042f1f0
add esp, 0xc
lea eax, [esp + 0x14]
push 0x104
lea esi, [ebp + 0x552c]
push eax
push esi
call fcn.0042f1a0
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
call fcn.004118d0
add esp, 4
test eax, eax
jne 0x411534
lea edx, [esp + 0x14]
push 0x104
push edx
call fcn.0042b3a0
add esp, 8
lea eax, [esp + 0x14]
push eax
call edi
cmp byte [esp + eax + 0x13], 0x5c
je 0x41148f
push 0x104
lea ecx, [esp + 0x18]
push 0x4695f4
push ecx
call fcn.0042f1f0
add esp, 0xc
push 0x104
lea edx, [esp + 0x18]
push 0x4695e4
push edx
call fcn.0042f1f0
lea eax, [esp + 0x20]
push eax
call fcn.004118d0
add esp, 0x10
test eax, eax
push 0x104
jne 0x411526
lea ecx, [esp + 0x18]
add ebx, 0x10
push ecx
push ebx
call fcn.0042f1a0
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp + 0x5f90]
lea edx, [esp + 0x118]
xor esi, esi
push 0x2ac
push edx
mov dword [esp + 0x124], eax
mov dword [esp + 0x3ac], esi
call fcn.004494c0
mov eax, dword [ebp + 0x52bc]
cmp eax, esi
je 0x41150e
cmp eax, 0xffffffff
je 0x41150e
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp + 0x52bc], esi
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3b4
ret 4
lea edx, [esp + 0x18]
push edx
push esi
call fcn.0042f1a0
add esp, 0xc
mov eax, dword [esp + 0x10]
test byte [eax], 0x10
je 0x4115a1
add ebx, 0x10
push 0x104
lea ecx, [esp + 0x18]
push ebx
push ecx
call fcn.0042f1f0
add esp, 0xc
lea edx, [esp + 0x14]
push edx
call edi
cmp byte [esp + eax + 0x13], 0x5c
je 0x411578
push 0x104
lea eax, [esp + 0x18]
push 0x4695f4
push eax
call fcn.0042f1f0
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
call fcn.004118d0
add esp, 4
test eax, eax
je 0x4114ca
mov ecx, ebp
call fcn.00408670
test eax, eax
je 0x4114ca
jmp 0x411805
mov cl, byte [ebx + 0x10]
lea eax, [ebx + 0x10]
test cl, cl
je 0x4115be
push 0x104
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.0042f1f0
add esp, 0xc
lea ecx, [esp + 0x14]
push ecx
call edi
cmp byte [esp + eax + 0x13], 0x5c
je 0x4115e3
push 0x104
lea edx, [esp + 0x18]
push 0x4695f4
push edx
call fcn.0042f1f0
add esp, 0xc
mov cl, byte [ebx + 0x140]
lea eax, [ebx + 0x140]
test cl, cl
push 0x104
je 0x411600
push eax
lea eax, [esp + 0x1c]
push eax
jmp 0x41160c
add ebx, 0x244
lea ecx, [esp + 0x18]
push ebx
push ecx
call fcn.0042f1f0
add esp, 0xc
lea edx, [esp + 0x14]
lea eax, [ebp + 0x5414]
push 0x104
push edx
push eax
call fcn.0042f1a0
add esp, 0xc
mov esi, dword [sym.imp.KERNEL32.dll_CreateFileA]
lea ecx, [esp + 0x14]
push 0
push 0x80
push 1
push 0
push 3
push 0xc0000000
push ecx
call esi
test eax, eax
mov dword [ebp + 0x52bc], eax
je 0x41165f
cmp eax, 0xffffffff
jne 0x411780
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
mov ebx, eax
cmp ebx, 0xb7
je 0x41167a
cmp ebx, 0x50
jne 0x411728
mov edx, dword [esp + 0x3c8]
mov eax, dword [edx + 0x394]
test eax, eax
jne 0x4116d7
lea eax, [esp + 0x260]
lea ecx, [esp + 0x14]
push eax
push ecx
call fcn.0042b8c0
mov esi, dword [esp + 0x18]
mov ecx, 0x50
lea edi, [esp + 0x128]
add esp, 8
rep movsd dword es:[edi], dword [esi]
mov ecx, ebp
mov dword [ebp + 0x52bc], 0
call fcn.00408670
test eax, eax
je 0x4114ca
mov dword [esp + 0x11c], ebx
jmp 0x411805
mov dword [ebp + 0x540c], eax
add eax, 0xffffd94a
cmp eax, 0x1e
ja case.0x4116f3.9912
xor ecx, ecx
mov cl, byte [eax + 0x4118a4]
jmp dword [ecx*4 + 0x411898]
push 0
push 0
push 2
push 0
push 3
lea eax, [esp + 0x28]
push 0xc0000000
push eax
mov dword [esp + 0x138], ebx
mov dword [esp + 0x3c0], 1
call esi
mov dword [ebp + 0x52bc], eax
mov eax, dword [ebp + 0x52bc]
test eax, eax
je 0x411737
cmp eax, 0xffffffff
jne 0x411769
lea ecx, [esp + 0x14]
push 0x80
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
jne 0x41174d
call edi
push 0
push 0
push 2
push 0
push 3
lea edx, [esp + 0x28]
push 0xc0000000
push edx
call esi
mov dword [ebp + 0x52bc], eax
mov eax, dword [ebp + 0x52bc]
test eax, eax
je 0x411837
cmp eax, 0xffffffff
je 0x411837
mov ecx, ebp
call fcn.00408670
test eax, eax
je 0x4114ca
mov ecx, dword [ebp + 0x5f90]
lea eax, [esp + 0x118]
push 0x2ac
push eax
call fcn.004494c0
test eax, eax
jne 0x411514
jmp 0x4114ca
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x3a4], 1
jmp 0x4117e5
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x3a8], 1
mov dword [esp + 0x3a4], 0
mov eax, dword [ebp + 0x52bc]
test eax, eax
je 0x4117fb
cmp eax, 0xffffffff
je 0x4117fb
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp + 0x52bc], 0
mov ecx, dword [ebp + 0x5f90]
lea edx, [esp + 0x118]
push 0x2ac
push edx
call fcn.004494c0
test eax, eax
je 0x4114ca
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3b4
ret 4
call edi
test eax, eax
mov dword [esp + 0x11c], eax
jne 0x41184f
mov dword [esp + 0x11c], 2
mov ecx, ebp
call fcn.00408670
test eax, eax
je 0x4114ca
lea ecx, [esp + 0x118]
push 0x2ac
push ecx
mov ecx, dword [ebp + 0x5f90]
call fcn.004494c0
test eax, eax
je 0x4114ca
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x3b4
ret 4