Function at 0x4251d0
Capabilities:
Copy file
Delete file

Disassembly:
sub esp, 0x10
push esi
mov esi, ecx
mov eax, dword [esi + 8]
cmp eax, 2
je 0x4253a1
cmp eax, 3
je 0x4253a1
mov ecx, dword [esp + 0x18]
mov eax, ecx
imul eax, eax, 0x128
mov edx, dword [eax + esi + 0x9a4]
push ebx
push ebp
push edi
push edx
mov edx, dword [eax + esi + 0x9a0]
add eax, esi
push edx
mov edx, dword [eax + 0x99c]
mov eax, dword [eax + 0x998]
push edx
push eax
push ecx
push str.OnAntWorkOver__d____d__d_
mov edi, 1
push edi
push 0
call fcn.00424d10
mov ecx, dword [esi + 0xab8]
add esp, 0x20
cmp ecx, edi
jne 0x4252da
mov eax, dword [esi + 0xcf0]
test eax, eax
jne 0x4252da
push 0
lea ecx, [esi + 0x834]
push ecx
lea ebx, [esi + 0x9b0]
push ebx
mov dword [esi + 0xcf0], edi
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov eax, dword [esi + 0xab8]
xor edi, edi
test eax, eax
mov dword [esi + 0xcf0], 0
mov dword [esi + 0xc], 6
mov dword [esi + 8], 2
jle 0x4252a6
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
push ebx
call ebp
mov eax, dword [esi + 0xab8]
inc edi
add ebx, 0x128
cmp edi, eax
jl 0x425292
mov eax, dword [esi + 0xae0]
test eax, eax
je 0x4252c3
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
push edx
mov edx, dword [esi + 0x938]
push ecx
push 0
push edx
call eax
mov eax, dword [esi + 0xcec]
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x10
mov dword [esp + 4], eax
jmp dword [sym.imp.KERNEL32.dll_SetEvent]
xor ebx, ebx
test ecx, ecx
jle 0x425308
mov edx, dword [esi + 0xab8]
lea eax, [esi + 0x9a0]
lea esp, [esp]
mov ebp, dword [eax + 8]
cmp ebp, dword [eax]
jne 0x425300
mov ebp, dword [eax + 0xc]
cmp ebp, dword [eax + 4]
jne 0x425300
inc ebx
add eax, 0x128
dec edx
jne 0x4252f0
cmp ebx, ecx
jne 0x42539e
mov eax, dword [esi + 0xcf0]
test eax, eax
jne 0x42539e
lea eax, [esi + 0x834]
push 0x45385c
push eax
mov dword [esi + 0xcf0], edi
call fcn.00430c3e
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0x24], ebx
jne 0x4253a8
cmp dword [esi + 0xab8], edi
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov dword [esi + 0xc], 7
mov dword [esi + 8], 3
jle 0x425378
lea ebx, [esi + 0xad8]
push ebx
call ebp
mov eax, dword [esi + 0xab8]
inc edi
add ebx, 0x128
cmp edi, eax
jl 0x425364
lea eax, [esi + 0x834]
push eax
call ebp
mov eax, dword [esi + 0xae0]
test eax, eax
je 0x42539e
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 8]
push ecx
mov ecx, dword [esi + 0x938]
push edx
push 0
push ecx
call eax
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x10
ret 4
mov eax, dword [esi + 0xae0]
test eax, eax
mov dword [esi + 0xc], 5
mov dword [esi + 8], edi
je 0x4253ca
mov edx, dword [esi + 0x938]
push 5
push edi
push 0
push edx
call eax
mov eax, dword [esi + 0x9a4]
mov ecx, dword [esi + 0x9a0]
push 0
push 0x1000
push eax
push ecx
call fcn.00433880
mov edi, eax
mov dword [esp + 0x1c], edx
lea edx, [edi + 0x20]
push edx
mov dword [esp + 0x1c], edi
call fcn.0044691a
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x42544f
push ebx
call fcn.00430a3e
mov eax, dword [esi + 0xab8]
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov edi, 1
add esp, 4
cmp eax, edi
mov dword [esi + 0xc], 7
mov dword [esi + 8], 3
jle 0x425378
lea ebx, [esi + 0xad8]
push ebx
call ebp
mov eax, dword [esi + 0xab8]
inc edi
add ebx, 0x128
cmp edi, eax
jl 0x425436
jmp 0x425378
mov eax, dword [esi + 0xab8]
test eax, eax
mov dword [esp + 0x14], 0
jle 0x4254eb
lea edx, [esi + 0x9b0]
mov dword [esp + 0x10], edx
jmp 0x425475
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x10]
push 0x453860
push eax
call fcn.00430c3e
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x42556e
push ebx
push edi
push 1
push ebp
call fcn.00430efd
mov edi, eax
add esp, 0x10
test edi, edi
jle 0x4254bd
mov ecx, dword [esp + 0x24]
push ecx
push edi
push 1
push ebp
call fcn.00430b96
add esp, 0x10
cmp edi, eax
jne 0x4255c1
push ebx
call fcn.00430a3e
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
mov ecx, dword [esi + 0xab8]
add esp, 4
inc eax
add edx, 0x128
cmp eax, ecx
mov dword [esp + 0x14], eax
mov dword [esp + 0x10], edx
jl 0x425471
mov ebx, dword [esp + 0x24]
push ebp
call fcn.00446915
push ebx
call fcn.00430a3e
mov eax, dword [esi + 0xab8]
xor edi, edi
add esp, 8
test eax, eax
mov dword [esi + 0xcf0], edi
mov dword [esi + 0xc], 6
mov dword [esi + 8], 2
jle 0x42553a
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ebx, [esi + 0x9b0]
push ebx
call ebp
mov eax, dword [esi + 0xab8]
inc edi
add ebx, 0x128
cmp edi, eax
jl 0x425526
mov eax, dword [esi + 0xae0]
test eax, eax
je 0x425557
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 8]
push edx
mov edx, dword [esi + 0x938]
push ecx
push 0
push edx
call eax
mov eax, dword [esi + 0xcec]
pop edi
pop ebp
pop ebx
pop esi
add esp, 0x10
mov dword [esp + 4], eax
jmp dword [sym.imp.KERNEL32.dll_SetEvent]
mov edx, dword [esp + 0x24]
push edx
call fcn.00430a3e
mov eax, dword [esi + 0xab8]
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov edi, 1
add esp, 4
cmp eax, edi
mov dword [esi + 0xc], 7
mov dword [esi + 8], 3
jle 0x425378
lea ebx, [esi + 0xad8]
push ebx
call ebp
mov eax, dword [esi + 0xab8]
inc edi
add ebx, 0x128
cmp edi, eax
jl 0x4255a8
jmp 0x425378
mov edx, dword [esp + 0x24]
push edx
call fcn.00430a3e
mov eax, dword [esi + 0xab8]
mov ebp, dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov edi, 1
add esp, 4
cmp eax, edi
mov dword [esi + 0xc], 7
mov dword [esi + 8], 3
jle 0x425378
lea ebx, [esi + 0xad8]
jmp 0x425600
push ebx
call ebp
mov eax, dword [esi + 0xab8]
inc edi
add ebx, 0x128
cmp edi, eax
jl 0x425600
jmp 0x425378