Function at 0x4579c0
Capabilities:
Move file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 9
push 0
push 0
dec ecx
jne 0x4579c8
push ecx
push ebx
push esi
push edi
mov esi, 0x6437b0
xor eax, eax
push ebp
push 0x457cca
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [0x64377d], 1
mov eax, dword [esi]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x6437b4]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x6437b8]
mov edx, dword [eax]
call dword [edx + 0x44]
call fcn.00448510
call fcn.00456a38
xor eax, eax
push ebp
push 0x457ca8
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x643a2c]
call fcn.0044bfa4
xor eax, eax
push ebp
push 0x457c83
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.0044c070
xor eax, eax
push ebp
push 0x457c55
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [esi]
call fcn.0044c1e8
call fcn.0044c458
test al, al
je 0x457a65
mov eax, 0x44c7b4
call fcn.0044c960
xor ebx, ebx
jmp 0x457a8d
lea ecx, [ebp - 0x10]
mov edx, ebx
mov eax, dword [esi]
mov edi, dword [eax]
call dword [edi + 0xc]
mov eax, dword [ebp - 0x10]
call fcn.0040b0b8
test al, al
jne 0x457a8c
mov edx, ebx
mov eax, dword [esi]
mov ecx, dword [eax]
call dword [ecx + 0x48]
jmp 0x457a8d
inc ebx
mov eax, dword [esi]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
cmp ebx, eax
jle 0x457a69
mov eax, dword [0x643644]
test byte [eax + 0x1c3], 2
je 0x457acb
lea eax, [ebp - 0x14]
call fcn.0044bde8
mov eax, dword [ebp - 0x14]
mov edx, dword [esi]
call fcn.00456f78
lea eax, [ebp - 0x18]
call fcn.0044bde8
mov edx, dword [ebp - 0x18]
mov eax, dword [esi]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov bl, 1
mov eax, dword [0x643644]
cmp byte [eax + 0x1e0], 0
je 0x457ae4
push ebp
call fcn.00457268
pop ecx
and bl, al
mov eax, dword [0x643644]
cmp byte [eax + 0x1e1], 0
je 0x457afb
push ebp
call fcn.0045788c
pop ecx
and bl, al
test bl, bl
jne 0x457b17
mov eax, dword [0x643644]
test byte [eax + 0x205], 0x20
je 0x457b17
mov eax, dword [0x643704]
call fcn.00448740
mov eax, dword [0x643644]
test byte [eax + 0x1c2], 2
je 0x457ba3
test bl, bl
je 0x457b67
push 0x242040
lea ecx, [ebp - 0x1c]
xor edx, edx
mov eax, dword [0x643644]
call fcn.0043321c
mov eax, dword [ebp - 0x1c]
call fcn.004054b8
push eax
lea ecx, [ebp - 0x20]
mov dl, 0x5e
mov eax, dword [0x643644]
call fcn.0043321c
mov eax, dword [ebp - 0x20]
call fcn.004054b8
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x457ba3
push 0x242010
lea ecx, [ebp - 0x24]
xor edx, edx
mov eax, dword [0x643644]
call fcn.0043321c
mov eax, dword [ebp - 0x24]
call fcn.004054b8
push eax
lea ecx, [ebp - 0x28]
mov dl, 0x5f
mov eax, dword [0x643644]
call fcn.0043321c
mov eax, dword [ebp - 0x28]
call fcn.004054b8
push eax
push 0
call sub.user32.dll_MessageBoxA_1
mov eax, dword [0x643644]
test byte [eax + 0x205], 0x40
je 0x457c19
test bl, bl
jne 0x457c19
mov eax, dword [0x643644]
test byte [eax + 0x1c3], 2
je 0x457bec
lea eax, [ebp - 0x2c]
call fcn.00457058
mov eax, dword [ebp - 0x2c]
call fcn.004054b8
push eax
lea eax, [ebp - 0x30]
call fcn.0044bde8
mov eax, dword [ebp - 0x30]
call fcn.004054b8
push eax
call sub.kernel32.dll_MoveFileA
jmp 0x457bfe
lea eax, [ebp - 0x34]
call fcn.00457058
mov eax, dword [ebp - 0x34]
mov edx, dword [esi]
call fcn.00456f78
lea eax, [ebp - 0x3c]
call fcn.00457058
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x38]
call fcn.0040b534
mov eax, dword [ebp - 0x38]
call fcn.004570e4
mov eax, dword [0x643644]
test byte [eax + 0x1c3], 2
je 0x457c37
lea eax, [ebp - 0x40]
call fcn.0044bde8
mov eax, dword [ebp - 0x40]
call fcn.0040b37c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x457c5c
lea eax, [ebp - 0x44]
call fcn.0044bef8
mov eax, dword [ebp - 0x44]
call fcn.0040b37c
ret