Function at 0x8ba780
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x574
mov eax, dword [0xb196ec]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
push esi
push edi
push str.C:Program_Files__x86_eScanGroupsTemp
lea eax, [ebp - 0x218]
push eax
call ebx
cmp byte [ebp - 0x218], 0
je 0x8ba7e8
lea eax, [ebp - 0x218]
lea esp, [esp]
inc eax
cmp byte [eax], 0
jne 0x8ba7c0
lea ecx, [ebp - 0x218]
sub eax, ecx
je 0x8ba7e8
cmp byte [ebp + eax - 0x219], 0x5c
je 0x8ba7e8
push 0xaa1564
mov edx, ecx
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
push str..tx_
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea esi, [ebp - 0x568]
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x56c], 1
call fcn.0094df40
mov edi, eax
mov dword [ebp - 0x570], edi
cmp edi, 0xffffffff
je 0x8babc6
jmp 0x8ba830
cmp dword [ebp - 0x56c], 0
je 0x8babbf
test byte [ebp - 0x568], 0x10
jne 0x8baba7
push str.C:Program_Files__x86_eScanGroupsTemp
lea ecx, [ebp - 0x218]
push ecx
call ebx
cmp byte [ebp - 0x218], 0
je 0x8ba893
lea eax, [ebp - 0x218]
inc eax
cmp byte [eax], 0
jne 0x8ba867
lea edx, [ebp - 0x218]
sub eax, edx
je 0x8ba893
cmp byte [ebp + eax - 0x219], 0x5c
je 0x8ba893
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0xaa1564
mov eax, edx
push eax
call edi
jmp 0x8ba899
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea ecx, [ebp - 0x53c]
push ecx
lea edx, [ebp - 0x218]
push edx
call edi
test byte [ebp - 0x568], 7
je 0x8ba8f9
xor esi, esi
mov dword [ebp - 0x56c], esi
call fcn.00968110
test eax, eax
je 0x8ba8d4
lea eax, [ebp - 0x56c]
push eax
call fcn.009681c0
add esp, 4
mov esi, eax
push 0x80
lea ecx, [ebp - 0x218]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test esi, esi
je 0x8ba8f9
mov edx, dword [ebp - 0x56c]
push edx
call fcn.00968240
add esp, 4
cmp dword [ebp - 0x54c], 0
ja 0x8ba90b
cmp dword [ebp - 0x548], 0
jne 0x8ba916
lea eax, [ebp - 0x218]
call fcn.0094dd20
mov al, byte [ebp - 0x53c]
xor edx, edx
test al, al
je 0x8ba93e
lea ecx, [ebp - 0x53c]
cmp al, 0x2e
jne 0x8ba92d
inc edx
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x8ba928
cmp edx, 2
je 0x8ba9bc
push str.C:PROGRA2eScanGroups
lea eax, [ebp - 0x110]
push eax
xor esi, esi
call ebx
cmp byte [ebp - 0x110], 0
je 0x8ba984
lea eax, [ebp - 0x110]
lea ecx, [ecx]
inc eax
cmp byte [eax], 0
jne 0x8ba960
lea ecx, [ebp - 0x110]
sub eax, ecx
je 0x8ba984
cmp byte [ebp + eax - 0x111], 0x5c
je 0x8ba984
push 0xaa1564
mov edx, ecx
push edx
call edi
push 0
lea ecx, [ebp - 0x218]
call fcn.0095af90
add esp, 4
push eax
lea eax, [ebp - 0x110]
push eax
call edi
cmp byte [ebp - 0x110], 0
lea eax, [ebp - 0x110]
je 0x8baae0
inc eax
cmp byte [eax], 0
jne 0x8ba9b1
jmp 0x8baae0
lea ecx, [ebp - 0x53c]
push ecx
lea edx, [ebp - 0x320]
push edx
mov dword [ebp - 0x56c], 1
call ebx
lea eax, [ebp - 0x320]
push 0x2e
push eax
call fcn.00a7a2c0
mov edi, eax
add esp, 8
lea esi, [edi + 1]
push esi
lea ecx, [ebp - 0x428]
push ecx
call ebx
lea edx, [ebp - 0x428]
push 0x2e
push edx
call fcn.00a7a2c0
add esp, 8
test eax, eax
je 0x8baa0e
mov byte [eax], 0
push 0x2e
push esi
call fcn.00a7a2c0
add esp, 8
push eax
push edi
call ebx
push 0xb55508
lea eax, [ebp - 0x110]
push eax
call ebx
cmp byte [ebp - 0x110], 0
je 0x8baa6c
lea eax, [ebp - 0x110]
lea ebx, [ebx]
inc eax
cmp byte [eax], 0
jne 0x8baa40
lea ecx, [ebp - 0x110]
sub eax, ecx
je 0x8baa6c
cmp byte [ebp + eax - 0x111], 0x5c
je 0x8baa6c
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push 0xaa1564
mov edx, ecx
push edx
call esi
jmp 0x8baa72
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x428]
push eax
lea ecx, [ebp - 0x110]
push ecx
call esi
cmp byte [ebp - 0x110], 0
je 0x8baab5
lea eax, [ebp - 0x110]
inc eax
cmp byte [eax], 0
jne 0x8baa91
lea edx, [ebp - 0x110]
sub eax, edx
je 0x8baab5
cmp byte [ebp + eax - 0x111], 0x5c
je 0x8baab5
push 0xaa1564
mov eax, edx
push eax
call esi
lea ecx, [ebp - 0x320]
push ecx
lea edx, [ebp - 0x110]
push edx
call esi
cmp byte [ebp - 0x110], 0
lea eax, [ebp - 0x110]
je 0x8baada
inc eax
cmp byte [eax], 0
jne 0x8baad4
mov esi, dword [ebp - 0x56c]
push 0
lea edi, [ebp - 0x110]
lea ebx, [ebp - 0x218]
mov byte [eax - 1], 0x54
call fcn.00980a90
add esp, 4
cmp esi, 1
jne 0x8bab90
push str.C:PROGRA2eScanGroups
mov eax, edi
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
cmp byte [ebp - 0x110], 0
je 0x8bab48
mov eax, edi
lea esp, [esp]
inc eax
cmp byte [eax], 0
jne 0x8bab20
lea ecx, [ebp - 0x110]
sub eax, ecx
je 0x8bab48
cmp byte [ebp + eax - 0x111], 0x5c
je 0x8bab48
push 0xaa1564
mov edx, ecx
push edx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
lea eax, [ebp - 0x320]
push eax
lea ecx, [ebp - 0x110]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcatA]
cmp byte [ebp - 0x110], 0
lea eax, [ebp - 0x110]
je 0x8bab76
jmp 0x8bab70
inc eax
cmp byte [eax], 0
jne 0x8bab70
push 0
lea edi, [ebp - 0x110]
lea ebx, [ebp - 0x218]
mov byte [eax - 1], 0x54
call fcn.00980a90
add esp, 4
lea eax, [ebp - 0x218]
call fcn.0094dd20
mov edi, dword [ebp - 0x570]
mov ebx, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea esi, [ebp - 0x568]
mov ecx, edi
call fcn.0094e160
mov dword [ebp - 0x56c], eax
jmp 0x8ba830
push edi
call dword [sym.imp.KERNEL32.dll_FindClose]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00a78f21
mov esp, ebp
pop ebp
ret