Function at 0x40890d
Capabilities:
Move file

Disassembly:
push 0x2e4
mov eax, 0x536f95
call fcn.00512b64
xor esi, esi
lea edi, [ebp - 0x220]
mov dword [ebp - 0x240], esi
call fcn.004012c9
push 0x560668
lea ecx, [ebp - 0x2d0]
call fcn.0040a2a0
lea eax, [ebp - 0x2ec]
push eax
mov dword [ebp - 4], esi
call fcn.004015f0
pop ecx
push eax
lea eax, [ebp - 0x2d0]
push eax
xor ebx, ebx
lea eax, [ebp - 0x23c]
inc ebx
push eax
mov byte [ebp - 4], bl
call fcn.004785f0
add esp, 0xc
push esi
push ebx
lea ecx, [ebp - 0x2ec]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 4
call fcn.0040aca3
cmp dword [ebp - 0x224], 0x10
mov eax, dword [ebp - 0x238]
jae 0x40899f
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x118]
push eax
call fcn.0050b650
lea eax, [ebp - 0x118]
push eax
call fcn.0050b770
add esp, 0xc
cmp byte [ebp + eax - 0x119], 0x5c
mov esi, 0x5605a0
je 0x4089d9
lea eax, [ebp - 0x118]
push esi
push eax
call fcn.0050b660
pop ecx
pop ecx
lea eax, [ebp - 0x220]
push eax
call fcn.0050b770
cmp byte [ebp + eax - 0x221], 0x5c
pop ecx
je 0x4089ff
lea eax, [ebp - 0x220]
push esi
push eax
call fcn.0050b660
pop ecx
pop ecx
mov esi, str.popcreg.dat
push esi
lea ecx, [ebp - 0x298]
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x27c]
mov byte [ebp - 4], 5
push eax
mov dword [ebp - 0x240], ebx
call fcn.0040dcca
add esp, 0xc
mov dword [ebp - 4], 6
push eax
mov dword [ebp - 0x240], 3
call fcn.00476b20
test al, al
pop ecx
jne 0x408a9e
push esi
lea ecx, [ebp - 0x2b4]
call fcn.0040a2a0
push 7
pop ecx
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x260]
mov dword [ebp - 4], ecx
push eax
mov dword [ebp - 0x240], ecx
call fcn.0040dcca
add esp, 0xc
mov dword [ebp - 4], 8
push eax
mov dword [ebp - 0x240], 0xf
call fcn.00476b20
test al, al
pop ecx
mov byte [ebp - 0x241], bl
jne 0x408aa5
mov byte [ebp - 0x241], 0
xor edi, edi
test byte [ebp - 0x240], 8
je 0x408ac4
and dword [ebp - 0x240], 0xfffffff7
push edi
push ebx
lea ecx, [ebp - 0x260]
call fcn.0040aca3
test byte [ebp - 0x240], 4
je 0x408ae1
and dword [ebp - 0x240], 0xfffffffb
push edi
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0040aca3
test byte [ebp - 0x240], 2
je 0x408afe
and dword [ebp - 0x240], 0xfffffffd
push edi
push ebx
lea ecx, [ebp - 0x27c]
call fcn.0040aca3
mov dword [ebp - 4], 4
test byte [ebp - 0x240], bl
je 0x408b21
and dword [ebp - 0x240], 0xfffffffe
push edi
push ebx
lea ecx, [ebp - 0x298]
call fcn.0040aca3
cmp byte [ebp - 0x241], 0
je 0x408c47
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
lea eax, [ebp - 0x260]
push eax
mov byte [ebp - 4], 9
call fcn.00477c80
pop ecx
push edi
push ebx
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 4
call fcn.0040aca3
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
lea edi, [ebp - 0x260]
mov byte [ebp - 4], 0xa
call fcn.00401481
push 0
push ebx
mov ecx, edi
mov byte [ebp - 4], 4
call fcn.0040aca3
push esi
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x2b4]
push eax
mov byte [ebp - 4], 0xb
call fcn.0040dcca
add esp, 0xc
mov edi, eax
push esi
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0xc
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x298]
push eax
mov byte [ebp - 4], 0xd
call fcn.0040dcca
add esp, 0xc
cmp dword [edi + 0x18], 0x10
jb 0x408bf0
mov edi, dword [edi + 4]
jmp 0x408bf3
add edi, 4
cmp dword [eax + 0x18], 0x10
jb 0x408bfe
mov eax, dword [eax + 4]
jmp 0x408c01
add eax, 4
push 0xb
push edi
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
xor esi, esi
push esi
push ebx
lea ecx, [ebp - 0x298]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x27c]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 4
call fcn.0040aca3
xor edi, edi
mov esi, str.popcinfot.dat
push esi
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x2b4]
mov byte [ebp - 4], 0xe
or dword [ebp - 0x240], 0x10
push eax
call fcn.0040dcca
add esp, 0xc
mov dword [ebp - 4], 0xf
or dword [ebp - 0x240], 0x20
push eax
call fcn.00476b20
test al, al
pop ecx
jne 0x408ce6
push esi
lea ecx, [ebp - 0x27c]
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x298]
mov dword [ebp - 4], 0x10
or dword [ebp - 0x240], 0x40
push eax
call fcn.0040dcca
add esp, 0xc
mov dword [ebp - 4], 0x11
or dword [ebp - 0x240], 0x80
push eax
call fcn.00476b20
test al, al
pop ecx
mov byte [ebp - 0x241], bl
jne 0x408ced
mov byte [ebp - 0x241], 0
test byte [ebp - 0x240], 0x80
je 0x408d0d
and dword [ebp - 0x240], 0xffffff7f
push edi
push ebx
lea ecx, [ebp - 0x298]
call fcn.0040aca3
test byte [ebp - 0x240], 0x40
je 0x408d2a
and dword [ebp - 0x240], 0xffffffbf
push edi
push ebx
lea ecx, [ebp - 0x27c]
call fcn.0040aca3
test byte [ebp - 0x240], 0x20
je 0x408d47
and dword [ebp - 0x240], 0xffffffdf
push edi
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0040aca3
mov dword [ebp - 4], 4
test byte [ebp - 0x240], 0x10
je 0x408d64
push edi
push ebx
lea ecx, [ebp - 0x260]
call fcn.0040aca3
cmp byte [ebp - 0x241], 0
je 0x408e86
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
lea eax, [ebp - 0x260]
push eax
mov byte [ebp - 4], 0x12
call fcn.00477c80
pop ecx
push edi
push ebx
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 4
call fcn.0040aca3
lea eax, [ebp - 0x118]
push eax
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
lea edi, [ebp - 0x260]
mov byte [ebp - 4], 0x13
call fcn.00401481
push 0
push ebx
mov ecx, edi
mov byte [ebp - 4], 4
call fcn.0040aca3
push esi
lea ecx, [ebp - 0x260]
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x2b4]
push eax
mov byte [ebp - 4], 0x14
call fcn.0040dcca
add esp, 0xc
mov edi, eax
push esi
lea ecx, [ebp - 0x27c]
mov byte [ebp - 4], 0x15
call fcn.0040a2a0
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x298]
push eax
mov byte [ebp - 4], 0x16
call fcn.0040dcca
add esp, 0xc
cmp dword [edi + 0x18], 0x10
jb 0x408e33
mov edi, dword [edi + 4]
jmp 0x408e36
add edi, 4
cmp dword [eax + 0x18], 0x10
jb 0x408e41
mov eax, dword [eax + 4]
jmp 0x408e44
add eax, 4
push 0xb
push edi
push eax
call dword [sym.imp.KERNEL32.dll_MoveFileExA]
xor esi, esi
push esi
push ebx
lea ecx, [ebp - 0x298]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x27c]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x2b4]
call fcn.0040aca3
push esi
push ebx
lea ecx, [ebp - 0x260]
call fcn.0040aca3
xor edi, edi
push edi
push ebx
lea ecx, [ebp - 0x23c]
call fcn.0040aca3
call fcn.00512be7
ret