Function at 0x4550a8
Capabilities:
Move file

Disassembly:
push ebp
mov ebp, esp
mov ecx, 9
push 0
push 0
dec ecx
jne 0x4550b0
push ecx
push ebx
push esi
push edi
mov esi, 0x5137b0
xor eax, eax
push ebp
push 0x4553b2
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [0x51377d], 1
mov eax, dword [esi]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x5137b4]
mov edx, dword [eax]
call dword [edx + 0x44]
mov eax, dword [0x5137b8]
mov edx, dword [eax]
call dword [edx + 0x44]
call fcn.00445bf8
call fcn.00454120
xor eax, eax
push ebp
push 0x455390
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [0x513a2c]
call fcn.0044968c
xor eax, eax
push ebp
push 0x45536b
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.00449758
xor eax, eax
push ebp
push 0x45533d
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [esi]
call fcn.004498d0
call fcn.00449b40
test al, al
je 0x45514d
mov eax, 0x449e9c
call fcn.0044a048
xor ebx, ebx
jmp 0x455175
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.0040a4bc
test al, al
jne 0x455174
mov edx, ebx
mov eax, dword [esi]
mov ecx, dword [eax]
call dword [ecx + 0x48]
jmp 0x455175
inc ebx
mov eax, dword [esi]
mov edx, dword [eax]
call dword [edx + 0x14]
dec eax
cmp ebx, eax
jle 0x455151
mov eax, dword [0x513644]
test byte [eax + 0x1c3], 2
je 0x4551b3
lea eax, [ebp - 0x14]
call fcn.004494d0
mov eax, dword [ebp - 0x14]
mov edx, dword [esi]
call fcn.00454660
lea eax, [ebp - 0x18]
call fcn.004494d0
mov edx, dword [ebp - 0x18]
mov eax, dword [esi]
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov bl, 1
mov eax, dword [0x513644]
cmp byte [eax + 0x1e0], 0
je 0x4551cc
push ebp
call fcn.00454950
pop ecx
and bl, al
mov eax, dword [0x513644]
cmp byte [eax + 0x1e1], 0
je 0x4551e3
push ebp
call fcn.00454f74
pop ecx
and bl, al
test bl, bl
jne 0x4551ff
mov eax, dword [0x513644]
test byte [eax + 0x205], 0x20
je 0x4551ff
mov eax, dword [0x513704]
call fcn.00445e28
mov eax, dword [0x513644]
test byte [eax + 0x1c2], 2
je 0x45528b
test bl, bl
je 0x45524f
push 0x242040
lea ecx, [ebp - 0x1c]
xor edx, edx
mov eax, dword [0x513644]
call fcn.0043097c
mov eax, dword [ebp - 0x1c]
call fcn.00405088
push eax
lea ecx, [ebp - 0x20]
mov dl, 0x5e
mov eax, dword [0x513644]
call fcn.0043097c
mov eax, dword [ebp - 0x20]
call fcn.00405088
push eax
push 0
call sub.user32.dll_MessageBoxA_1
jmp 0x45528b
push 0x242010
lea ecx, [ebp - 0x24]
xor edx, edx
mov eax, dword [0x513644]
call fcn.0043097c
mov eax, dword [ebp - 0x24]
call fcn.00405088
push eax
lea ecx, [ebp - 0x28]
mov dl, 0x5f
mov eax, dword [0x513644]
call fcn.0043097c
mov eax, dword [ebp - 0x28]
call fcn.00405088
push eax
push 0
call sub.user32.dll_MessageBoxA_1
mov eax, dword [0x513644]
test byte [eax + 0x205], 0x40
je 0x455301
test bl, bl
jne 0x455301
mov eax, dword [0x513644]
test byte [eax + 0x1c3], 2
je 0x4552d4
lea eax, [ebp - 0x2c]
call fcn.00454740
mov eax, dword [ebp - 0x2c]
call fcn.00405088
push eax
lea eax, [ebp - 0x30]
call fcn.004494d0
mov eax, dword [ebp - 0x30]
call fcn.00405088
push eax
call sub.kernel32.dll_MoveFileA
jmp 0x4552e6
lea eax, [ebp - 0x34]
call fcn.00454740
mov eax, dword [ebp - 0x34]
mov edx, dword [esi]
call fcn.00454660
lea eax, [ebp - 0x3c]
call fcn.00454740
mov eax, dword [ebp - 0x3c]
lea edx, [ebp - 0x38]
call fcn.0040a904
mov eax, dword [ebp - 0x38]
call fcn.004547cc
mov eax, dword [0x513644]
test byte [eax + 0x1c3], 2
je 0x45531f
lea eax, [ebp - 0x40]
call fcn.004494d0
mov eax, dword [ebp - 0x40]
call fcn.0040a780
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x455344
lea eax, [ebp - 0x44]
call fcn.004495e0
mov eax, dword [ebp - 0x44]
call fcn.0040a780
ret