Function at 0x426d1b
Capabilities:
Delete file

Disassembly:
mov eax, 0x466800
call fcn.0045ea44
sub esp, 0x40
push ebx
push esi
push edi
lea ecx, [ebp - 0x30]
call fcn.00405580
xor ebx, ebx
mov dword [ebp - 4], ebx
cmp dword [ebp + 0xc], ebx
jne 0x426f7f
push 0x47c964
push 8
push dword [0x48d1c4]
call fcn.00454eb0
mov esi, dword [ebp + 8]
mov edi, dword [esi + 0x1694]
add esp, 0xc
lea eax, [ebp - 0x4c]
push eax
call fcn.0043066f
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 1
call fcn.00409280
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], bl
call fcn.00407d30
mov ecx, dword [esi + 0x1694]
mov edi, 0xb0
add ecx, edi
call fcn.00405c20
push eax
lea ecx, [ebp - 0x30]
call fcn.00405c20
push eax
push 0x47c980
push 8
push dword [0x48d1c4]
call fcn.00454eb0
mov ecx, dword [esi + 0x1694]
add esp, 0x14
add ecx, edi
call fcn.004015b0
test al, al
jne 0x426e2e
mov eax, dword [esi + 0x1694]
add eax, edi
push eax
lea ecx, [ebp - 0x30]
call fcn.004052c0
test eax, eax
je 0x426e2e
mov ecx, dword [esi + 0x1694]
add ecx, edi
call fcn.00405c20
push eax
push 0x47c99c
push 8
push dword [0x48d1c4]
call fcn.00454eb0
add esp, 0x10
call fcn.004273a3
test al, al
je 0x426e2b
mov eax, esi
mov ecx, dword [eax + 0xf4]
cmp ecx, ebx
je 0x427192
push ebx
push dword [eax + 0xf8]
push 0x2431
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x427192
mov esi, dword [ebp + 8]
lea ebx, [esi + 0x1768]
call fcn.004294c6
mov eax, dword [esi + 0x1694]
push 1
call fcn.00430188
test al, al
je 0x426e7f
mov edi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ebx, [esi + 0x1640]
push ebx
call edi
lea eax, [esi + 0x610]
push eax
mov dword [esi + 0x630], 2
mov dword [ebp - 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x426f57
push 0x47c9b4
push 8
push dword [0x48d1c4]
call fcn.00454eb0
add esp, 0xc
push dword [esi + 0x1694]
call fcn.004302ec
push 0
push 0
lea ecx, [ebp - 0x14]
call fcn.00407d50
push dword [eax]
mov eax, dword [esi + 0x1694]
add eax, 8
push eax
lea eax, [ebp - 0x4c]
call fcn.0041ac45
pop ecx
pop ecx
mov ecx, eax
call fcn.00405c20
push eax
push 0x47c9cc
push 8
push dword [0x48d1c4]
call fcn.00454eb0
add esp, 0x10
lea ecx, [ebp - 0x4c]
call fcn.00407d30
mov edi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ebx, [esi + 0x1640]
push ebx
call edi
mov ecx, dword [esi + 0x1694]
push 0xff
add ecx, 8
call fcn.00401d50
push eax
lea eax, [esi + 0x100]
push eax
call fcn.0043fb0d
lea eax, [esi + 0x610]
add esp, 0xc
push eax
mov dword [esi + 0x630], 2
mov dword [ebp - 0x10], eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esi + 0xf4]
test eax, eax
je 0x426f57
push 0
push dword [esi + 0xf8]
push 0x2434
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [esi + 0x1694]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x426f73
push eax
call fcn.0042e9a6
push dword [ebp - 0x14]
call fcn.0043bc7d
pop ecx
and dword [esi + 0x1694], 0
jmp 0x427015
push 0x47c9dc
push 8
push dword [0x48d1c4]
call fcn.00454eb0
mov esi, dword [ebp + 8]
mov eax, dword [esi + 0x1694]
add esp, 0xc
cmp eax, ebx
je 0x426fc4
push ebx
call fcn.00430188
mov edi, dword [esi + 0x1694]
cmp edi, ebx
je 0x426fbe
push edi
call fcn.0042e9a6
push edi
call fcn.0043bc7d
pop ecx
mov dword [esi + 0x1694], ebx
test dword [esi + 0x1690], 0xfffffff8
je 0x426fe2
lea ecx, [esi + 0x1674]
call fcn.00401d50
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov edi, dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ebx, [esi + 0x1640]
push ebx
call edi
mov dword [esi + 0x630], 4
add esi, 0x610
push esi
mov dword [ebp - 0x10], esi
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [ebp + 8]
push ebx
call edi
lea eax, [esi + 0x600]
cmp word [eax], 0
mov dword [ebp - 0x14], eax
jne 0x427047
or dword [esi + 0x94], 0xffffffff
push ebx
call edi
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0x14]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push ebx
movsd dword es:[edi], dword [esi]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [ebp + 8]
jmp 0x42706f
sub esp, 0x10
mov esi, eax
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x10]
sub esp, 0x10
mov edi, esp
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00424ceb
mov esi, dword [ebp + 8]
add esp, 0x20
mov dword [esi + 0x94], eax
push 0xff
lea ecx, [ebp - 0x30]
call fcn.00405c20
push eax
lea eax, [esi + 0x500]
push eax
call fcn.0043fb60
add esp, 0xc
push ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, dword [ebp + 0xc]
xor edi, edi
test dword [esi + 0x1690], 0xfffffff8
mov dword [esi + 0x84], ebx
je 0x4270c1
mov eax, dword [esi + 0x186c]
cmp eax, edi
je 0x4270c1
push dword [esi + 0x188c]
push edi
push edi
call eax
add esp, 0xc
mov eax, dword [esi + 0xf4]
cmp eax, edi
je 0x4270e2
cmp ebx, edi
jne 0x4270e2
push edi
push dword [esi + 0xf8]
push 0x2402
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [esi + 0x10]
push eax
push esi
call fcn.00427f92
mov eax, dword [esi + 0xf4]
cmp eax, edi
je 0x427109
push ebx
push dword [esi + 0xf8]
push 0x2401
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
call fcn.0042742f
mov eax, dword [esi + 0x1720]
push edi
push edi
push 0x12
push dword [eax]
call dword [sym.imp.USER32.dll_PostThreadMessageW]
push edi
push edi
push edi
lea eax, [ebp - 0x4c]
push eax
call dword [sym.imp.USER32.dll_GetMessageW]
cmp dword [ebp - 0x48], 0x900
jne 0x427145
mov eax, dword [ebp - 0x40]
push dword [eax]
mov dword [eax + 4], edi
call dword [sym.imp.KERNEL32.dll_SetEvent]
mov eax, dword [esi + 0x1720]
push edi
push dword [eax + 4]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x427121
push str.ServerThread
push 8
push dword [0x48d1c4]
call fcn.00454eb0
add esp, 0xc
cmp ebx, edi
jne 0x42718b
sub esp, 0x1c
lea eax, [ebp - 0x30]
mov ecx, esp
mov dword [ebp + 8], esp
push eax
call fcn.00406180
call fcn.004283c0
mov byte [esi + 0x1760], 1
lea ecx, [ebp - 0x30]
call fcn.00407d30
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 8