Function at 0x40c92a
Capabilities:
Move file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x214
mov eax, dword [0x460544]
xor eax, esp
mov dword [esp + 0x210], eax
push ebx
push esi
mov esi, ecx
push edi
push dword [esi + 0x14]
call fcn.0042d371
mov ebx, str..trace.txt
push ebx
mov edi, eax
call fcn.0042d371
push 0x464118
mov dword [esp + 0x18], eax
xor ecx, ecx
push 2
pop edx
lea eax, [edi + 5]
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0042ce9d
add esp, 0x10
mov dword [esp + 0x14], eax
test eax, eax
je 0x40cb43
push ebx
call fcn.0042d371
pop ecx
cmp dword [esp + 0xc], eax
jb 0x40c9c5
mov ecx, dword [esi + 0x14]
mov eax, edi
sub eax, dword [esp + 0xc]
push ebx
mov dword [esp + 0x14], eax
lea eax, [ecx + eax*2]
push eax
call fcn.0042d49c
pop ecx
pop ecx
test eax, eax
jne 0x40c9c5
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x10], str..trace.txt
jmp 0x40ca15
push 0x45329c
lea eax, [esp + 0x1c]
push 0x100
push eax
call fcn.0042cf12
add esp, 0xc
lea eax, [esp + 0x18]
mov dword [esp + 0x10], eax
mov ebx, edi
test edi, edi
jbe 0x40ca15
mov eax, dword [esi + 0x14]
lea ecx, [eax + edi*2]
cmp word [ecx], 0x2e
je 0x40c9ff
dec ebx
dec ecx
dec ecx
test ebx, ebx
ja 0x40c9f0
jmp 0x40ca15
lea eax, [eax + ebx*2]
push eax
lea eax, [esp + 0x1c]
push 0x100
push eax
call fcn.0042cf12
add esp, 0xc
push ebx
push dword [esi + 0x14]
lea eax, [edi + 5]
push eax
push dword [esp + 0x20]
call fcn.0042d52f
mov eax, dword [esp + 0x24]
and dword [esp + 0x1c], 0
sub edi, ebx
add esp, 0x10
add edi, 5
lea ebx, [eax + ebx*2]
push dword [esp + 0x10]
push dword [esp + 0x10]
push str.__3.3d_s
push edi
push ebx
call fcn.0042d602
add esp, 0x14
cmp byte [esi + 0xe], 0
je 0x40ca73
push dword [esp + 0x14]
call fcn.0040c522
pop ecx
test al, al
je 0x40ca73
inc dword [esp + 0xc]
cmp dword [esp + 0xc], 0x3e8
jb 0x40ca3a
cmp dword [esp + 0xc], 0x3e8
jb 0x40ca91
push str..trace.txt
push str._aaa_s
push edi
push ebx
call fcn.0042d602
add esp, 0x10
push 0xb
push dword [esp + 0x18]
push dword [esi + 0x14]
call dword [sym.imp.KERNEL32.dll_MoveFileExW]
mov dword [esp + 0x10], eax
test eax, eax
je 0x40caeb
mov ebx, dword [esi + 0x20]
mov edi, dword [esi + 0x28]
and dword [esi + 0x28], 0
and dword [esi + 0x20], 0
mov ecx, esi
call fcn.0040cc05
push dword [esp + 0x10]
call fcn.0040c355
push eax
push dword [esp + 0x14]
push str.31.12.2030_23:59:59.999_t9999_t9999_twarning_tCCOpusTrace_tFileSwitch_tInternal_tMoveFileExW_returned_last_error_0x_8.8lx___s_n
push dword [esi + 0x40]
push dword [esi + 0x3c]
call fcn.0042d620
add esp, 0x14
mov ecx, esi
call fcn.0040cc05
mov dword [esi + 0x20], ebx
mov dword [esi + 0x28], edi
push dword [esp + 0x14]
call fcn.0040c522
pop ecx
test al, al
je 0x40cb00
call fcn.0040c890
jmp 0x40cb39
mov ebx, dword [esi + 0x20]
mov edi, dword [esi + 0x28]
and dword [esi + 0x28], 0
and dword [esi + 0x20], 0
mov ecx, esi
call fcn.0040cc05
push dword [esp + 0x14]
push str.31.12.2030_23:59:59.999_t9999_t9999_terror_tCCOpusTrace_tFileSwitch_tException_tMoveFileExW_could_not_create_file__S_n
push dword [esi + 0x40]
push dword [esi + 0x3c]
call fcn.0042d620
add esp, 0x10
mov ecx, esi
call fcn.0040cc05
mov dword [esi + 0x20], ebx
mov dword [esi + 0x28], edi
push dword [esp + 0x14]
call fcn.0040e260
pop ecx
mov ecx, dword [esp + 0x21c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.0042b12c
mov esp, ebp
pop ebp
ret